bundle.yaml 1.7 MB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136201372013820139201402014120142201432014420145201462014720148201492015020151201522015320154201552015620157201582015920160201612016220163201642016520166201672016820169201702017120172201732017420175201762017720178201792018020181201822018320184201852018620187201882018920190201912019220193201942019520196201972019820199202002020120202202032020420205202062020720208202092021020211202122021320214202152021620217202182021920220202212022220223202242022520226202272022820229202302023120232202332023420235202362023720238202392024020241202422024320244202452024620247202482024920250202512025220253202542025520256202572025820259202602026120262202632026420265202662026720268202692027020271202722027320274202752027620277202782027920280202812028220283202842028520286202872028820289202902029120292202932029420295202962029720298202992030020301203022030320304203052030620307203082030920310203112031220313203142031520316203172031820319203202032120322203232032420325203262032720328203292033020331203322033320334203352033620337203382033920340203412034220343203442034520346203472034820349203502035120352203532035420355203562035720358203592036020361203622036320364203652036620367203682036920370203712037220373203742037520376203772037820379203802038120382203832038420385203862038720388203892039020391203922039320394203952039620397203982039920400204012040220403204042040520406204072040820409204102041120412204132041420415204162041720418204192042020421204222042320424204252042620427204282042920430204312043220433204342043520436204372043820439204402044120442204432044420445204462044720448204492045020451204522045320454204552045620457204582045920460204612046220463204642046520466204672046820469204702047120472204732047420475204762047720478204792048020481204822048320484204852048620487204882048920490204912049220493204942049520496204972049820499205002050120502205032050420505205062050720508205092051020511205122051320514205152051620517205182051920520205212052220523205242052520526205272052820529205302053120532205332053420535205362053720538205392054020541205422054320544205452054620547205482054920550205512055220553205542055520556205572055820559205602056120562205632056420565205662056720568205692057020571205722057320574205752057620577205782057920580205812058220583205842058520586205872058820589205902059120592205932059420595205962059720598205992060020601206022060320604206052060620607206082060920610206112061220613206142061520616206172061820619206202062120622206232062420625206262062720628206292063020631206322063320634206352063620637206382063920640206412064220643206442064520646206472064820649206502065120652206532065420655206562065720658206592066020661206622066320664206652066620667206682066920670206712067220673206742067520676206772067820679206802068120682206832068420685206862068720688206892069020691206922069320694206952069620697206982069920700207012070220703207042070520706207072070820709207102071120712207132071420715207162071720718207192072020721207222072320724207252072620727207282072920730207312073220733207342073520736207372073820739207402074120742207432074420745207462074720748207492075020751207522075320754207552075620757207582075920760207612076220763207642076520766207672076820769207702077120772207732077420775207762077720778207792078020781207822078320784207852078620787207882078920790207912079220793207942079520796207972079820799208002080120802208032080420805208062080720808208092081020811208122081320814208152081620817208182081920820208212082220823208242082520826208272082820829208302083120832208332083420835208362083720838208392084020841208422084320844208452084620847208482084920850208512085220853208542085520856208572085820859208602086120862208632086420865208662086720868208692087020871208722087320874208752087620877208782087920880208812088220883208842088520886208872088820889208902089120892208932089420895208962089720898208992090020901209022090320904209052090620907209082090920910209112091220913209142091520916209172091820919209202092120922209232092420925209262092720928209292093020931209322093320934209352093620937209382093920940209412094220943209442094520946209472094820949209502095120952209532095420955209562095720958209592096020961209622096320964209652096620967209682096920970209712097220973209742097520976209772097820979209802098120982209832098420985209862098720988209892099020991209922099320994209952099620997209982099921000210012100221003210042100521006210072100821009210102101121012210132101421015210162101721018210192102021021210222102321024210252102621027210282102921030210312103221033210342103521036210372103821039210402104121042210432104421045210462104721048210492105021051210522105321054210552105621057210582105921060210612106221063210642106521066210672106821069210702107121072210732107421075210762107721078210792108021081210822108321084210852108621087210882108921090210912109221093210942109521096210972109821099211002110121102211032110421105211062110721108211092111021111211122111321114211152111621117211182111921120211212112221123211242112521126211272112821129211302113121132211332113421135211362113721138211392114021141211422114321144211452114621147211482114921150211512115221153211542115521156211572115821159211602116121162211632116421165211662116721168211692117021171211722117321174211752117621177211782117921180211812118221183211842118521186211872118821189211902119121192211932119421195211962119721198211992120021201212022120321204212052120621207212082120921210212112121221213212142121521216212172121821219212202122121222212232122421225212262122721228212292123021231212322123321234212352123621237212382123921240212412124221243212442124521246212472124821249212502125121252212532125421255212562125721258212592126021261212622126321264212652126621267212682126921270212712127221273212742127521276212772127821279212802128121282212832128421285212862128721288212892129021291212922129321294212952129621297212982129921300213012130221303213042130521306213072130821309213102131121312213132131421315213162131721318213192132021321213222132321324213252132621327213282132921330213312133221333213342133521336213372133821339213402134121342213432134421345213462134721348213492135021351213522135321354213552135621357213582135921360213612136221363213642136521366213672136821369213702137121372213732137421375213762137721378213792138021381213822138321384213852138621387213882138921390213912139221393213942139521396213972139821399214002140121402214032140421405214062140721408214092141021411214122141321414214152141621417214182141921420214212142221423214242142521426214272142821429214302143121432214332143421435214362143721438214392144021441214422144321444214452144621447214482144921450214512145221453214542145521456214572145821459214602146121462214632146421465214662146721468214692147021471214722147321474214752147621477214782147921480214812148221483214842148521486214872148821489214902149121492214932149421495214962149721498214992150021501215022150321504215052150621507215082150921510215112151221513215142151521516215172151821519215202152121522215232152421525215262152721528215292153021531215322153321534215352153621537215382153921540215412154221543215442154521546215472154821549215502155121552215532155421555215562155721558215592156021561215622156321564215652156621567215682156921570215712157221573215742157521576215772157821579215802158121582215832158421585215862158721588215892159021591215922159321594215952159621597215982159921600216012160221603216042160521606216072160821609216102161121612216132161421615216162161721618216192162021621216222162321624216252162621627216282162921630216312163221633216342163521636216372163821639216402164121642216432164421645216462164721648216492165021651216522165321654216552165621657216582165921660216612166221663216642166521666216672166821669216702167121672216732167421675216762167721678216792168021681216822168321684216852168621687216882168921690216912169221693216942169521696216972169821699217002170121702217032170421705217062170721708217092171021711217122171321714217152171621717217182171921720217212172221723217242172521726217272172821729217302173121732217332173421735217362173721738217392174021741217422174321744217452174621747217482174921750217512175221753217542175521756217572175821759217602176121762217632176421765217662176721768217692177021771217722177321774217752177621777217782177921780217812178221783217842178521786217872178821789217902179121792217932179421795217962179721798217992180021801218022180321804218052180621807218082180921810218112181221813218142181521816218172181821819218202182121822218232182421825218262182721828218292183021831218322183321834218352183621837218382183921840218412184221843218442184521846218472184821849218502185121852218532185421855218562185721858218592186021861218622186321864218652186621867218682186921870218712187221873218742187521876218772187821879218802188121882218832188421885218862188721888218892189021891218922189321894218952189621897218982189921900219012190221903219042190521906219072190821909219102191121912219132191421915219162191721918219192192021921219222192321924219252192621927219282192921930219312193221933219342193521936219372193821939219402194121942219432194421945219462194721948219492195021951219522195321954219552195621957219582195921960219612196221963219642196521966219672196821969219702197121972219732197421975219762197721978219792198021981219822198321984219852198621987219882198921990219912199221993219942199521996219972199821999220002200122002220032200422005220062200722008220092201022011220122201322014220152201622017220182201922020220212202222023220242202522026220272202822029220302203122032220332203422035220362203722038220392204022041220422204322044220452204622047220482204922050220512205222053220542205522056220572205822059220602206122062220632206422065220662206722068220692207022071220722207322074220752207622077220782207922080220812208222083220842208522086220872208822089220902209122092220932209422095220962209722098220992210022101221022210322104221052210622107221082210922110221112211222113221142211522116221172211822119221202212122122221232212422125221262212722128221292213022131221322213322134221352213622137221382213922140221412214222143221442214522146221472214822149221502215122152221532215422155221562215722158221592216022161221622216322164221652216622167221682216922170221712217222173221742217522176221772217822179221802218122182221832218422185221862218722188221892219022191221922219322194221952219622197221982219922200222012220222203222042220522206222072220822209222102221122212222132221422215222162221722218222192222022221222222222322224222252222622227222282222922230222312223222233222342223522236222372223822239222402224122242222432224422245222462224722248222492225022251222522225322254222552225622257222582225922260222612226222263222642226522266222672226822269222702227122272222732227422275222762227722278222792228022281222822228322284222852228622287222882228922290222912229222293222942229522296222972229822299223002230122302223032230422305223062230722308223092231022311223122231322314223152231622317223182231922320223212232222323223242232522326223272232822329223302233122332223332233422335223362233722338223392234022341223422234322344223452234622347223482234922350223512235222353223542235522356223572235822359223602236122362223632236422365223662236722368223692237022371223722237322374223752237622377223782237922380223812238222383223842238522386223872238822389223902239122392223932239422395223962239722398223992240022401224022240322404224052240622407224082240922410224112241222413224142241522416224172241822419224202242122422224232242422425224262242722428224292243022431224322243322434224352243622437224382243922440224412244222443224442244522446224472244822449224502245122452224532245422455224562245722458224592246022461224622246322464224652246622467224682246922470224712247222473224742247522476224772247822479224802248122482224832248422485224862248722488224892249022491224922249322494224952249622497224982249922500225012250222503225042250522506225072250822509225102251122512225132251422515225162251722518225192252022521225222252322524225252252622527225282252922530225312253222533225342253522536225372253822539225402254122542225432254422545225462254722548225492255022551225522255322554225552255622557225582255922560225612256222563225642256522566225672256822569225702257122572225732257422575225762257722578225792258022581225822258322584225852258622587225882258922590225912259222593225942259522596225972259822599226002260122602226032260422605226062260722608226092261022611226122261322614226152261622617226182261922620226212262222623226242262522626226272262822629226302263122632226332263422635226362263722638226392264022641226422264322644226452264622647226482264922650226512265222653226542265522656226572265822659226602266122662226632266422665226662266722668226692267022671226722267322674226752267622677226782267922680226812268222683226842268522686226872268822689226902269122692226932269422695226962269722698226992270022701227022270322704227052270622707227082270922710227112271222713227142271522716227172271822719227202272122722227232272422725227262272722728227292273022731227322273322734227352273622737227382273922740227412274222743227442274522746227472274822749227502275122752227532275422755227562275722758227592276022761227622276322764227652276622767227682276922770227712277222773227742277522776227772277822779227802278122782227832278422785227862278722788227892279022791227922279322794227952279622797227982279922800228012280222803228042280522806228072280822809228102281122812228132281422815228162281722818228192282022821228222282322824228252282622827228282282922830228312283222833228342283522836228372283822839228402284122842228432284422845228462284722848228492285022851228522285322854228552285622857228582285922860228612286222863228642286522866228672286822869228702287122872228732287422875228762287722878228792288022881228822288322884228852288622887228882288922890228912289222893228942289522896228972289822899229002290122902229032290422905229062290722908229092291022911229122291322914229152291622917229182291922920229212292222923229242292522926229272292822929229302293122932229332293422935229362293722938229392294022941229422294322944229452294622947229482294922950229512295222953229542295522956229572295822959229602296122962229632296422965229662296722968229692297022971229722297322974229752297622977229782297922980229812298222983229842298522986229872298822989229902299122992229932299422995229962299722998229992300023001230022300323004230052300623007230082300923010230112301223013230142301523016230172301823019230202302123022230232302423025230262302723028230292303023031230322303323034230352303623037230382303923040230412304223043230442304523046230472304823049230502305123052230532305423055230562305723058230592306023061230622306323064230652306623067230682306923070230712307223073230742307523076230772307823079230802308123082230832308423085230862308723088230892309023091230922309323094230952309623097230982309923100231012310223103231042310523106231072310823109231102311123112231132311423115231162311723118231192312023121231222312323124231252312623127231282312923130231312313223133231342313523136231372313823139231402314123142231432314423145231462314723148231492315023151231522315323154231552315623157231582315923160231612316223163231642316523166231672316823169231702317123172231732317423175231762317723178231792318023181231822318323184231852318623187231882318923190231912319223193231942319523196231972319823199232002320123202232032320423205232062320723208232092321023211232122321323214232152321623217232182321923220232212322223223232242322523226232272322823229232302323123232232332323423235232362323723238232392324023241232422324323244232452324623247232482324923250232512325223253232542325523256232572325823259232602326123262232632326423265232662326723268232692327023271232722327323274232752327623277232782327923280232812328223283232842328523286232872328823289232902329123292232932329423295232962329723298232992330023301233022330323304233052330623307233082330923310233112331223313233142331523316233172331823319233202332123322233232332423325233262332723328233292333023331233322333323334233352333623337233382333923340233412334223343233442334523346233472334823349233502335123352233532335423355233562335723358233592336023361233622336323364233652336623367233682336923370233712337223373233742337523376233772337823379233802338123382233832338423385233862338723388233892339023391233922339323394233952339623397233982339923400234012340223403234042340523406234072340823409234102341123412234132341423415234162341723418234192342023421234222342323424234252342623427234282342923430234312343223433234342343523436234372343823439234402344123442234432344423445234462344723448234492345023451234522345323454234552345623457234582345923460234612346223463234642346523466234672346823469234702347123472234732347423475234762347723478234792348023481234822348323484234852348623487234882348923490234912349223493234942349523496234972349823499235002350123502235032350423505235062350723508235092351023511235122351323514235152351623517235182351923520235212352223523235242352523526235272352823529235302353123532235332353423535235362353723538235392354023541235422354323544235452354623547235482354923550235512355223553235542355523556235572355823559235602356123562235632356423565235662356723568235692357023571235722357323574235752357623577235782357923580235812358223583235842358523586235872358823589235902359123592235932359423595235962359723598235992360023601236022360323604236052360623607236082360923610236112361223613236142361523616236172361823619236202362123622236232362423625236262362723628236292363023631236322363323634236352363623637236382363923640236412364223643236442364523646236472364823649236502365123652236532365423655236562365723658236592366023661236622366323664236652366623667236682366923670236712367223673236742367523676236772367823679236802368123682236832368423685236862368723688236892369023691236922369323694236952369623697236982369923700237012370223703237042370523706237072370823709237102371123712237132371423715237162371723718237192372023721237222372323724237252372623727237282372923730237312373223733237342373523736237372373823739237402374123742237432374423745237462374723748237492375023751237522375323754237552375623757237582375923760237612376223763237642376523766237672376823769237702377123772237732377423775237762377723778237792378023781237822378323784237852378623787237882378923790237912379223793237942379523796237972379823799238002380123802238032380423805238062380723808238092381023811238122381323814238152381623817238182381923820238212382223823238242382523826238272382823829238302383123832238332383423835238362383723838238392384023841238422384323844238452384623847238482384923850238512385223853238542385523856238572385823859238602386123862238632386423865238662386723868238692387023871238722387323874238752387623877238782387923880238812388223883238842388523886238872388823889238902389123892238932389423895238962389723898238992390023901239022390323904239052390623907239082390923910239112391223913239142391523916239172391823919239202392123922239232392423925239262392723928239292393023931239322393323934239352393623937239382393923940239412394223943239442394523946239472394823949239502395123952239532395423955239562395723958239592396023961239622396323964239652396623967239682396923970239712397223973239742397523976239772397823979239802398123982239832398423985239862398723988239892399023991239922399323994239952399623997239982399924000240012400224003240042400524006240072400824009240102401124012240132401424015240162401724018240192402024021240222402324024240252402624027240282402924030240312403224033240342403524036240372403824039240402404124042240432404424045240462404724048240492405024051240522405324054240552405624057240582405924060240612406224063240642406524066240672406824069240702407124072240732407424075240762407724078240792408024081240822408324084240852408624087240882408924090240912409224093240942409524096240972409824099241002410124102241032410424105241062410724108241092411024111241122411324114241152411624117241182411924120241212412224123241242412524126241272412824129241302413124132241332413424135241362413724138241392414024141241422414324144241452414624147241482414924150241512415224153241542415524156241572415824159241602416124162241632416424165241662416724168241692417024171241722417324174241752417624177241782417924180241812418224183241842418524186241872418824189241902419124192241932419424195241962419724198241992420024201242022420324204242052420624207242082420924210242112421224213242142421524216242172421824219242202422124222242232422424225242262422724228242292423024231242322423324234242352423624237242382423924240242412424224243242442424524246242472424824249242502425124252242532425424255242562425724258242592426024261242622426324264242652426624267242682426924270242712427224273242742427524276242772427824279242802428124282242832428424285242862428724288242892429024291242922429324294242952429624297242982429924300243012430224303243042430524306243072430824309243102431124312243132431424315243162431724318243192432024321243222432324324243252432624327243282432924330243312433224333243342433524336243372433824339243402434124342243432434424345243462434724348243492435024351243522435324354243552435624357243582435924360243612436224363243642436524366243672436824369243702437124372243732437424375243762437724378243792438024381243822438324384243852438624387243882438924390243912439224393243942439524396243972439824399244002440124402244032440424405244062440724408244092441024411244122441324414244152441624417244182441924420244212442224423244242442524426244272442824429244302443124432244332443424435244362443724438244392444024441244422444324444244452444624447244482444924450244512445224453244542445524456244572445824459244602446124462244632446424465244662446724468244692447024471244722447324474244752447624477244782447924480244812448224483244842448524486244872448824489244902449124492244932449424495244962449724498244992450024501245022450324504245052450624507245082450924510245112451224513245142451524516245172451824519245202452124522245232452424525245262452724528245292453024531245322453324534245352453624537245382453924540245412454224543245442454524546245472454824549245502455124552245532455424555245562455724558245592456024561245622456324564245652456624567245682456924570245712457224573245742457524576245772457824579245802458124582245832458424585245862458724588245892459024591245922459324594245952459624597245982459924600246012460224603246042460524606246072460824609246102461124612246132461424615246162461724618246192462024621246222462324624246252462624627246282462924630246312463224633246342463524636246372463824639246402464124642246432464424645246462464724648246492465024651246522465324654246552465624657246582465924660246612466224663246642466524666246672466824669246702467124672246732467424675246762467724678246792468024681246822468324684246852468624687246882468924690246912469224693246942469524696246972469824699247002470124702247032470424705247062470724708247092471024711247122471324714247152471624717247182471924720247212472224723247242472524726247272472824729247302473124732247332473424735247362473724738247392474024741247422474324744247452474624747247482474924750247512475224753247542475524756247572475824759247602476124762247632476424765247662476724768247692477024771247722477324774247752477624777247782477924780247812478224783247842478524786247872478824789247902479124792247932479424795247962479724798247992480024801248022480324804248052480624807248082480924810248112481224813248142481524816248172481824819248202482124822248232482424825248262482724828248292483024831248322483324834248352483624837248382483924840248412484224843248442484524846248472484824849248502485124852248532485424855248562485724858248592486024861248622486324864248652486624867248682486924870248712487224873248742487524876248772487824879248802488124882248832488424885248862488724888248892489024891248922489324894248952489624897248982489924900249012490224903249042490524906249072490824909249102491124912249132491424915249162491724918249192492024921249222492324924249252492624927249282492924930249312493224933249342493524936249372493824939249402494124942249432494424945249462494724948249492495024951249522495324954249552495624957249582495924960249612496224963249642496524966249672496824969249702497124972249732497424975249762497724978249792498024981249822498324984249852498624987249882498924990249912499224993249942499524996249972499824999250002500125002250032500425005250062500725008250092501025011250122501325014250152501625017250182501925020250212502225023250242502525026250272502825029250302503125032250332503425035250362503725038250392504025041250422504325044250452504625047250482504925050250512505225053250542505525056250572505825059250602506125062250632506425065250662506725068250692507025071250722507325074250752507625077250782507925080250812508225083250842508525086250872508825089250902509125092250932509425095250962509725098250992510025101251022510325104251052510625107251082510925110251112511225113251142511525116251172511825119251202512125122251232512425125251262512725128251292513025131251322513325134251352513625137251382513925140251412514225143251442514525146251472514825149251502515125152251532515425155251562515725158251592516025161251622516325164251652516625167251682516925170251712517225173251742517525176251772517825179251802518125182251832518425185251862518725188251892519025191251922519325194251952519625197251982519925200252012520225203252042520525206252072520825209252102521125212252132521425215252162521725218252192522025221252222522325224252252522625227252282522925230252312523225233252342523525236252372523825239252402524125242252432524425245252462524725248252492525025251252522525325254252552525625257252582525925260252612526225263252642526525266252672526825269252702527125272252732527425275252762527725278252792528025281252822528325284252852528625287252882528925290252912529225293252942529525296252972529825299253002530125302253032530425305253062530725308253092531025311253122531325314253152531625317253182531925320253212532225323253242532525326253272532825329253302533125332253332533425335253362533725338253392534025341253422534325344253452534625347253482534925350253512535225353253542535525356253572535825359253602536125362253632536425365253662536725368253692537025371253722537325374253752537625377253782537925380253812538225383253842538525386253872538825389253902539125392253932539425395253962539725398253992540025401254022540325404254052540625407254082540925410254112541225413254142541525416254172541825419254202542125422254232542425425254262542725428254292543025431254322543325434254352543625437254382543925440254412544225443254442544525446254472544825449254502545125452254532545425455254562545725458254592546025461254622546325464254652546625467254682546925470254712547225473254742547525476254772547825479254802548125482254832548425485254862548725488254892549025491254922549325494254952549625497254982549925500255012550225503255042550525506255072550825509255102551125512255132551425515255162551725518255192552025521255222552325524255252552625527255282552925530255312553225533255342553525536255372553825539255402554125542255432554425545255462554725548255492555025551255522555325554255552555625557255582555925560255612556225563255642556525566255672556825569255702557125572255732557425575255762557725578255792558025581255822558325584255852558625587255882558925590255912559225593255942559525596255972559825599256002560125602256032560425605256062560725608256092561025611256122561325614256152561625617256182561925620256212562225623256242562525626256272562825629256302563125632256332563425635256362563725638256392564025641256422564325644256452564625647256482564925650256512565225653256542565525656256572565825659256602566125662256632566425665256662566725668256692567025671256722567325674256752567625677256782567925680256812568225683256842568525686256872568825689256902569125692256932569425695256962569725698256992570025701257022570325704257052570625707257082570925710257112571225713257142571525716257172571825719257202572125722257232572425725257262572725728257292573025731257322573325734257352573625737257382573925740257412574225743257442574525746257472574825749257502575125752257532575425755257562575725758257592576025761257622576325764257652576625767257682576925770257712577225773257742577525776257772577825779257802578125782257832578425785257862578725788257892579025791257922579325794257952579625797257982579925800258012580225803258042580525806258072580825809258102581125812258132581425815258162581725818258192582025821258222582325824258252582625827258282582925830258312583225833258342583525836258372583825839258402584125842258432584425845258462584725848258492585025851258522585325854258552585625857258582585925860258612586225863258642586525866258672586825869258702587125872258732587425875258762587725878258792588025881258822588325884258852588625887258882588925890258912589225893258942589525896258972589825899259002590125902259032590425905259062590725908259092591025911259122591325914259152591625917259182591925920259212592225923259242592525926259272592825929259302593125932259332593425935259362593725938259392594025941259422594325944259452594625947259482594925950259512595225953259542595525956259572595825959259602596125962259632596425965259662596725968259692597025971259722597325974259752597625977259782597925980259812598225983259842598525986259872598825989259902599125992259932599425995259962599725998259992600026001260022600326004260052600626007260082600926010260112601226013260142601526016260172601826019260202602126022260232602426025260262602726028260292603026031260322603326034260352603626037260382603926040260412604226043260442604526046260472604826049260502605126052260532605426055260562605726058260592606026061260622606326064260652606626067260682606926070260712607226073260742607526076260772607826079260802608126082260832608426085260862608726088260892609026091260922609326094260952609626097260982609926100261012610226103261042610526106261072610826109261102611126112261132611426115261162611726118261192612026121261222612326124261252612626127261282612926130261312613226133261342613526136261372613826139261402614126142261432614426145261462614726148261492615026151261522615326154261552615626157261582615926160261612616226163261642616526166261672616826169261702617126172261732617426175261762617726178261792618026181261822618326184261852618626187261882618926190261912619226193261942619526196261972619826199262002620126202262032620426205262062620726208262092621026211262122621326214262152621626217262182621926220262212622226223262242622526226262272622826229262302623126232262332623426235262362623726238262392624026241262422624326244262452624626247262482624926250262512625226253262542625526256262572625826259262602626126262262632626426265262662626726268262692627026271262722627326274262752627626277262782627926280262812628226283262842628526286262872628826289262902629126292262932629426295262962629726298262992630026301263022630326304263052630626307263082630926310263112631226313263142631526316263172631826319263202632126322263232632426325263262632726328263292633026331263322633326334263352633626337263382633926340263412634226343263442634526346263472634826349263502635126352263532635426355263562635726358263592636026361263622636326364263652636626367263682636926370263712637226373263742637526376263772637826379263802638126382263832638426385263862638726388263892639026391263922639326394263952639626397263982639926400264012640226403264042640526406264072640826409264102641126412264132641426415264162641726418264192642026421264222642326424264252642626427264282642926430264312643226433264342643526436264372643826439264402644126442264432644426445264462644726448264492645026451264522645326454264552645626457264582645926460264612646226463264642646526466264672646826469264702647126472264732647426475264762647726478264792648026481264822648326484264852648626487264882648926490264912649226493264942649526496264972649826499265002650126502265032650426505265062650726508265092651026511265122651326514265152651626517265182651926520265212652226523265242652526526265272652826529265302653126532265332653426535265362653726538265392654026541265422654326544265452654626547265482654926550265512655226553265542655526556265572655826559265602656126562265632656426565265662656726568265692657026571265722657326574265752657626577265782657926580265812658226583265842658526586265872658826589265902659126592265932659426595265962659726598265992660026601266022660326604266052660626607266082660926610266112661226613266142661526616266172661826619266202662126622266232662426625266262662726628266292663026631266322663326634266352663626637266382663926640266412664226643266442664526646266472664826649266502665126652266532665426655266562665726658266592666026661266622666326664266652666626667266682666926670266712667226673266742667526676266772667826679266802668126682266832668426685266862668726688266892669026691266922669326694266952669626697266982669926700267012670226703267042670526706267072670826709267102671126712267132671426715267162671726718267192672026721267222672326724267252672626727267282672926730267312673226733267342673526736267372673826739267402674126742267432674426745267462674726748267492675026751267522675326754267552675626757267582675926760267612676226763267642676526766267672676826769267702677126772267732677426775267762677726778267792678026781267822678326784267852678626787267882678926790267912679226793267942679526796267972679826799268002680126802268032680426805268062680726808268092681026811268122681326814268152681626817268182681926820268212682226823268242682526826268272682826829268302683126832268332683426835268362683726838268392684026841268422684326844268452684626847268482684926850268512685226853268542685526856268572685826859268602686126862268632686426865268662686726868268692687026871268722687326874268752687626877268782687926880268812688226883268842688526886268872688826889268902689126892268932689426895268962689726898268992690026901269022690326904269052690626907269082690926910269112691226913269142691526916269172691826919269202692126922269232692426925269262692726928269292693026931269322693326934269352693626937269382693926940269412694226943269442694526946269472694826949269502695126952269532695426955269562695726958269592696026961269622696326964269652696626967269682696926970269712697226973269742697526976269772697826979269802698126982269832698426985269862698726988269892699026991269922699326994269952699626997269982699927000270012700227003270042700527006270072700827009270102701127012270132701427015270162701727018270192702027021270222702327024270252702627027270282702927030270312703227033270342703527036270372703827039270402704127042270432704427045270462704727048270492705027051270522705327054270552705627057270582705927060270612706227063270642706527066270672706827069270702707127072270732707427075270762707727078270792708027081270822708327084270852708627087270882708927090270912709227093270942709527096270972709827099271002710127102271032710427105271062710727108271092711027111271122711327114271152711627117271182711927120271212712227123271242712527126271272712827129271302713127132271332713427135271362713727138271392714027141271422714327144271452714627147271482714927150271512715227153271542715527156271572715827159271602716127162271632716427165271662716727168271692717027171271722717327174271752717627177271782717927180271812718227183271842718527186271872718827189271902719127192271932719427195271962719727198271992720027201272022720327204272052720627207272082720927210272112721227213272142721527216272172721827219272202722127222272232722427225272262722727228272292723027231272322723327234272352723627237272382723927240272412724227243272442724527246272472724827249272502725127252272532725427255272562725727258272592726027261272622726327264272652726627267272682726927270272712727227273272742727527276272772727827279272802728127282272832728427285272862728727288272892729027291272922729327294272952729627297272982729927300273012730227303273042730527306273072730827309273102731127312273132731427315273162731727318273192732027321273222732327324273252732627327273282732927330273312733227333273342733527336273372733827339273402734127342273432734427345273462734727348273492735027351273522735327354273552735627357273582735927360273612736227363273642736527366273672736827369273702737127372273732737427375273762737727378273792738027381273822738327384273852738627387273882738927390273912739227393273942739527396273972739827399274002740127402274032740427405274062740727408274092741027411274122741327414274152741627417274182741927420274212742227423274242742527426274272742827429274302743127432274332743427435274362743727438274392744027441274422744327444274452744627447274482744927450274512745227453274542745527456274572745827459274602746127462274632746427465274662746727468274692747027471274722747327474274752747627477274782747927480274812748227483274842748527486274872748827489274902749127492274932749427495274962749727498274992750027501275022750327504275052750627507275082750927510275112751227513275142751527516275172751827519275202752127522275232752427525275262752727528275292753027531275322753327534275352753627537275382753927540275412754227543275442754527546275472754827549275502755127552275532755427555275562755727558275592756027561275622756327564275652756627567275682756927570275712757227573275742757527576275772757827579275802758127582275832758427585275862758727588275892759027591275922759327594275952759627597275982759927600276012760227603276042760527606276072760827609276102761127612276132761427615276162761727618276192762027621276222762327624276252762627627276282762927630276312763227633276342763527636276372763827639276402764127642276432764427645276462764727648276492765027651276522765327654276552765627657276582765927660276612766227663276642766527666276672766827669276702767127672276732767427675276762767727678276792768027681276822768327684276852768627687276882768927690276912769227693276942769527696276972769827699277002770127702277032770427705277062770727708277092771027711277122771327714277152771627717277182771927720277212772227723277242772527726277272772827729277302773127732277332773427735277362773727738277392774027741277422774327744277452774627747277482774927750277512775227753277542775527756277572775827759277602776127762277632776427765277662776727768277692777027771277722777327774277752777627777277782777927780277812778227783277842778527786277872778827789277902779127792277932779427795277962779727798277992780027801278022780327804278052780627807278082780927810278112781227813278142781527816278172781827819278202782127822278232782427825278262782727828278292783027831278322783327834278352783627837278382783927840278412784227843278442784527846278472784827849278502785127852278532785427855278562785727858278592786027861278622786327864278652786627867278682786927870278712787227873278742787527876278772787827879278802788127882278832788427885278862788727888278892789027891278922789327894278952789627897278982789927900279012790227903279042790527906279072790827909279102791127912279132791427915279162791727918279192792027921279222792327924279252792627927279282792927930279312793227933279342793527936279372793827939279402794127942279432794427945279462794727948279492795027951279522795327954279552795627957279582795927960279612796227963279642796527966279672796827969279702797127972279732797427975279762797727978279792798027981279822798327984279852798627987279882798927990279912799227993279942799527996279972799827999280002800128002280032800428005280062800728008280092801028011280122801328014280152801628017280182801928020280212802228023280242802528026280272802828029280302803128032280332803428035280362803728038280392804028041280422804328044280452804628047280482804928050280512805228053280542805528056280572805828059280602806128062280632806428065280662806728068280692807028071280722807328074280752807628077280782807928080280812808228083280842808528086280872808828089280902809128092280932809428095280962809728098280992810028101281022810328104281052810628107281082810928110281112811228113281142811528116281172811828119281202812128122281232812428125281262812728128281292813028131281322813328134281352813628137281382813928140281412814228143281442814528146281472814828149281502815128152281532815428155281562815728158281592816028161281622816328164281652816628167281682816928170281712817228173281742817528176281772817828179281802818128182281832818428185281862818728188281892819028191281922819328194281952819628197281982819928200282012820228203282042820528206282072820828209282102821128212282132821428215282162821728218282192822028221282222822328224282252822628227282282822928230282312823228233282342823528236282372823828239282402824128242282432824428245282462824728248282492825028251282522825328254282552825628257282582825928260282612826228263282642826528266282672826828269282702827128272282732827428275282762827728278282792828028281282822828328284282852828628287282882828928290282912829228293282942829528296282972829828299283002830128302283032830428305283062830728308283092831028311283122831328314283152831628317283182831928320283212832228323283242832528326283272832828329283302833128332283332833428335283362833728338283392834028341283422834328344283452834628347283482834928350283512835228353283542835528356283572835828359283602836128362283632836428365283662836728368283692837028371283722837328374283752837628377283782837928380283812838228383283842838528386283872838828389283902839128392283932839428395283962839728398283992840028401284022840328404284052840628407284082840928410284112841228413284142841528416284172841828419284202842128422284232842428425284262842728428284292843028431284322843328434284352843628437284382843928440284412844228443284442844528446284472844828449284502845128452284532845428455284562845728458284592846028461284622846328464284652846628467284682846928470284712847228473284742847528476284772847828479284802848128482284832848428485284862848728488284892849028491284922849328494284952849628497284982849928500285012850228503285042850528506285072850828509285102851128512285132851428515285162851728518285192852028521285222852328524285252852628527285282852928530285312853228533285342853528536285372853828539285402854128542285432854428545285462854728548285492855028551285522855328554285552855628557285582855928560285612856228563285642856528566285672856828569285702857128572285732857428575285762857728578285792858028581285822858328584285852858628587285882858928590285912859228593285942859528596285972859828599286002860128602286032860428605286062860728608286092861028611286122861328614286152861628617286182861928620286212862228623286242862528626286272862828629286302863128632286332863428635286362863728638286392864028641286422864328644286452864628647286482864928650286512865228653286542865528656286572865828659286602866128662286632866428665286662866728668286692867028671286722867328674286752867628677286782867928680286812868228683286842868528686286872868828689286902869128692286932869428695286962869728698286992870028701287022870328704287052870628707287082870928710287112871228713287142871528716287172871828719287202872128722287232872428725287262872728728287292873028731287322873328734287352873628737287382873928740287412874228743287442874528746287472874828749287502875128752287532875428755287562875728758287592876028761287622876328764287652876628767287682876928770287712877228773287742877528776287772877828779287802878128782287832878428785287862878728788287892879028791287922879328794287952879628797287982879928800288012880228803288042880528806288072880828809288102881128812288132881428815288162881728818288192882028821288222882328824288252882628827288282882928830288312883228833288342883528836288372883828839288402884128842288432884428845288462884728848288492885028851288522885328854288552885628857288582885928860288612886228863288642886528866288672886828869288702887128872288732887428875288762887728878288792888028881288822888328884288852888628887288882888928890288912889228893288942889528896288972889828899289002890128902289032890428905289062890728908289092891028911289122891328914289152891628917289182891928920289212892228923289242892528926289272892828929289302893128932289332893428935289362893728938289392894028941289422894328944289452894628947289482894928950289512895228953289542895528956289572895828959289602896128962289632896428965289662896728968289692897028971289722897328974289752897628977289782897928980289812898228983289842898528986289872898828989289902899128992289932899428995289962899728998289992900029001290022900329004290052900629007290082900929010290112901229013290142901529016290172901829019290202902129022290232902429025290262902729028290292903029031290322903329034290352903629037290382903929040290412904229043290442904529046290472904829049290502905129052290532905429055290562905729058290592906029061290622906329064290652906629067290682906929070290712907229073290742907529076290772907829079290802908129082290832908429085290862908729088290892909029091290922909329094290952909629097290982909929100291012910229103291042910529106291072910829109291102911129112291132911429115291162911729118291192912029121291222912329124291252912629127291282912929130291312913229133291342913529136291372913829139291402914129142291432914429145291462914729148291492915029151291522915329154291552915629157291582915929160291612916229163291642916529166291672916829169291702917129172291732917429175291762917729178291792918029181291822918329184291852918629187291882918929190291912919229193291942919529196291972919829199292002920129202292032920429205292062920729208292092921029211292122921329214292152921629217292182921929220292212922229223292242922529226292272922829229292302923129232292332923429235292362923729238292392924029241292422924329244292452924629247292482924929250292512925229253292542925529256292572925829259292602926129262292632926429265292662926729268292692927029271292722927329274292752927629277292782927929280292812928229283292842928529286292872928829289292902929129292292932929429295292962929729298292992930029301293022930329304293052930629307293082930929310293112931229313293142931529316293172931829319293202932129322293232932429325293262932729328293292933029331293322933329334293352933629337293382933929340293412934229343293442934529346293472934829349293502935129352293532935429355293562935729358293592936029361293622936329364293652936629367293682936929370293712937229373293742937529376293772937829379293802938129382293832938429385293862938729388293892939029391293922939329394293952939629397293982939929400294012940229403294042940529406294072940829409294102941129412294132941429415294162941729418294192942029421294222942329424294252942629427294282942929430294312943229433294342943529436294372943829439294402944129442294432944429445294462944729448294492945029451294522945329454294552945629457294582945929460294612946229463294642946529466294672946829469294702947129472294732947429475294762947729478294792948029481294822948329484294852948629487294882948929490294912949229493294942949529496294972949829499295002950129502295032950429505295062950729508295092951029511295122951329514295152951629517295182951929520295212952229523295242952529526295272952829529295302953129532295332953429535295362953729538295392954029541295422954329544295452954629547295482954929550295512955229553295542955529556295572955829559295602956129562295632956429565295662956729568295692957029571295722957329574295752957629577295782957929580295812958229583295842958529586295872958829589295902959129592295932959429595295962959729598295992960029601296022960329604296052960629607296082960929610296112961229613296142961529616296172961829619296202962129622296232962429625296262962729628296292963029631296322963329634296352963629637296382963929640296412964229643296442964529646296472964829649296502965129652296532965429655296562965729658296592966029661296622966329664296652966629667296682966929670296712967229673296742967529676296772967829679296802968129682296832968429685296862968729688296892969029691296922969329694296952969629697296982969929700297012970229703297042970529706297072970829709297102971129712297132971429715297162971729718297192972029721297222972329724297252972629727297282972929730297312973229733297342973529736297372973829739297402974129742297432974429745297462974729748297492975029751297522975329754297552975629757297582975929760297612976229763297642976529766297672976829769297702977129772297732977429775297762977729778297792978029781297822978329784297852978629787297882978929790297912979229793297942979529796297972979829799298002980129802298032980429805298062980729808298092981029811298122981329814298152981629817298182981929820298212982229823298242982529826298272982829829298302983129832298332983429835298362983729838298392984029841298422984329844298452984629847298482984929850298512985229853298542985529856298572985829859298602986129862298632986429865298662986729868298692987029871298722987329874298752987629877298782987929880298812988229883298842988529886298872988829889298902989129892298932989429895298962989729898298992990029901299022990329904299052990629907299082990929910299112991229913299142991529916299172991829919299202992129922299232992429925299262992729928299292993029931299322993329934299352993629937299382993929940299412994229943299442994529946299472994829949299502995129952299532995429955299562995729958299592996029961299622996329964299652996629967299682996929970299712997229973299742997529976299772997829979299802998129982299832998429985299862998729988299892999029991299922999329994299952999629997299982999930000300013000230003300043000530006300073000830009300103001130012300133001430015300163001730018300193002030021300223002330024300253002630027300283002930030300313003230033300343003530036300373003830039300403004130042300433004430045300463004730048300493005030051300523005330054300553005630057300583005930060300613006230063300643006530066300673006830069300703007130072300733007430075300763007730078300793008030081300823008330084300853008630087300883008930090300913009230093300943009530096300973009830099301003010130102301033010430105301063010730108301093011030111301123011330114301153011630117301183011930120301213012230123301243012530126301273012830129301303013130132301333013430135301363013730138301393014030141301423014330144301453014630147301483014930150301513015230153301543015530156301573015830159301603016130162301633016430165301663016730168301693017030171301723017330174301753017630177301783017930180301813018230183301843018530186301873018830189301903019130192301933019430195301963019730198301993020030201302023020330204302053020630207302083020930210302113021230213302143021530216302173021830219302203022130222302233022430225302263022730228302293023030231302323023330234302353023630237302383023930240302413024230243302443024530246302473024830249302503025130252302533025430255302563025730258302593026030261302623026330264302653026630267302683026930270302713027230273302743027530276302773027830279302803028130282302833028430285302863028730288302893029030291302923029330294302953029630297302983029930300303013030230303303043030530306303073030830309303103031130312303133031430315303163031730318303193032030321303223032330324303253032630327303283032930330303313033230333303343033530336303373033830339303403034130342303433034430345303463034730348303493035030351303523035330354303553035630357303583035930360303613036230363303643036530366303673036830369303703037130372303733037430375303763037730378303793038030381303823038330384303853038630387303883038930390303913039230393303943039530396303973039830399304003040130402304033040430405304063040730408304093041030411304123041330414304153041630417304183041930420304213042230423304243042530426304273042830429304303043130432304333043430435304363043730438304393044030441304423044330444304453044630447304483044930450304513045230453304543045530456304573045830459304603046130462304633046430465304663046730468304693047030471304723047330474304753047630477304783047930480304813048230483304843048530486304873048830489304903049130492304933049430495304963049730498304993050030501305023050330504
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: clusterexternalsecrets.external-secrets.io
  9. spec:
  10. group: external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. kind: ClusterExternalSecret
  15. listKind: ClusterExternalSecretList
  16. plural: clusterexternalsecrets
  17. shortNames:
  18. - ces
  19. singular: clusterexternalsecret
  20. scope: Cluster
  21. versions:
  22. - additionalPrinterColumns:
  23. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  24. name: Store
  25. type: string
  26. - jsonPath: .spec.refreshTime
  27. name: Refresh Interval
  28. type: string
  29. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  30. name: Ready
  31. type: string
  32. name: v1
  33. schema:
  34. openAPIV3Schema:
  35. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  36. properties:
  37. apiVersion:
  38. description: |-
  39. APIVersion defines the versioned schema of this representation of an object.
  40. Servers should convert recognized schemas to the latest internal value, and
  41. may reject unrecognized values.
  42. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  43. type: string
  44. kind:
  45. description: |-
  46. Kind is a string value representing the REST resource this object represents.
  47. Servers may infer this from the endpoint the client submits requests to.
  48. Cannot be updated.
  49. In CamelCase.
  50. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  51. type: string
  52. metadata:
  53. type: object
  54. spec:
  55. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  56. properties:
  57. externalSecretMetadata:
  58. description: The metadata of the external secrets to be created
  59. properties:
  60. annotations:
  61. additionalProperties:
  62. type: string
  63. type: object
  64. labels:
  65. additionalProperties:
  66. type: string
  67. type: object
  68. type: object
  69. externalSecretName:
  70. description: |-
  71. The name of the external secrets to be created.
  72. Defaults to the name of the ClusterExternalSecret
  73. maxLength: 253
  74. minLength: 1
  75. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  76. type: string
  77. externalSecretSpec:
  78. description: The spec for the ExternalSecrets to be created
  79. properties:
  80. data:
  81. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  82. items:
  83. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  84. properties:
  85. remoteRef:
  86. description: |-
  87. RemoteRef points to the remote secret and defines
  88. which secret (version/property/..) to fetch.
  89. properties:
  90. conversionStrategy:
  91. default: Default
  92. description: Used to define a conversion Strategy
  93. enum:
  94. - Default
  95. - Unicode
  96. type: string
  97. decodingStrategy:
  98. default: None
  99. description: Used to define a decoding Strategy
  100. enum:
  101. - Auto
  102. - Base64
  103. - Base64URL
  104. - None
  105. type: string
  106. key:
  107. description: Key is the key used in the Provider, mandatory
  108. type: string
  109. metadataPolicy:
  110. default: None
  111. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  112. enum:
  113. - None
  114. - Fetch
  115. type: string
  116. nullBytePolicy:
  117. default: Ignore
  118. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  119. enum:
  120. - Ignore
  121. - Fail
  122. type: string
  123. property:
  124. description: Used to select a specific property of the Provider value (if a map), if supported
  125. type: string
  126. version:
  127. description: Used to select a specific version of the Provider value, if supported
  128. type: string
  129. required:
  130. - key
  131. type: object
  132. secretKey:
  133. description: The key in the Kubernetes Secret to store the value.
  134. maxLength: 253
  135. minLength: 1
  136. pattern: ^[-._a-zA-Z0-9]+$
  137. type: string
  138. sourceRef:
  139. description: |-
  140. SourceRef allows you to override the source
  141. from which the value will be pulled.
  142. maxProperties: 1
  143. minProperties: 1
  144. properties:
  145. generatorRef:
  146. description: |-
  147. GeneratorRef points to a generator custom resource.
  148. Deprecated: The generatorRef is not implemented in .data[].
  149. this will be removed with v1.
  150. properties:
  151. apiVersion:
  152. default: generators.external-secrets.io/v1alpha1
  153. description: Specify the apiVersion of the generator resource
  154. type: string
  155. kind:
  156. description: Specify the Kind of the generator resource
  157. enum:
  158. - ACRAccessToken
  159. - ClusterGenerator
  160. - CloudsmithAccessToken
  161. - ECRAuthorizationToken
  162. - Fake
  163. - GCRAccessToken
  164. - GithubAccessToken
  165. - QuayAccessToken
  166. - Password
  167. - SSHKey
  168. - STSAssumeRoleToken
  169. - STSSessionToken
  170. - UUID
  171. - VaultDynamicSecret
  172. - Webhook
  173. - Grafana
  174. - MFA
  175. type: string
  176. name:
  177. description: Specify the name of the generator resource
  178. maxLength: 253
  179. minLength: 1
  180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  181. type: string
  182. required:
  183. - kind
  184. - name
  185. type: object
  186. storeRef:
  187. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  188. properties:
  189. kind:
  190. description: |-
  191. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  192. Defaults to `SecretStore`
  193. enum:
  194. - SecretStore
  195. - ClusterSecretStore
  196. type: string
  197. name:
  198. description: Name of the SecretStore resource
  199. maxLength: 253
  200. minLength: 1
  201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  202. type: string
  203. type: object
  204. type: object
  205. required:
  206. - remoteRef
  207. - secretKey
  208. type: object
  209. type: array
  210. dataFrom:
  211. description: |-
  212. DataFrom is used to fetch all properties from a specific Provider data
  213. If multiple entries are specified, the Secret keys are merged in the specified order
  214. items:
  215. description: |-
  216. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  217. when using DataFrom to fetch multiple values from a Provider.
  218. properties:
  219. extract:
  220. description: |-
  221. Used to extract multiple key/value pairs from one secret
  222. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  223. properties:
  224. conversionStrategy:
  225. default: Default
  226. description: Used to define a conversion Strategy
  227. enum:
  228. - Default
  229. - Unicode
  230. type: string
  231. decodingStrategy:
  232. default: None
  233. description: Used to define a decoding Strategy
  234. enum:
  235. - Auto
  236. - Base64
  237. - Base64URL
  238. - None
  239. type: string
  240. key:
  241. description: Key is the key used in the Provider, mandatory
  242. type: string
  243. metadataPolicy:
  244. default: None
  245. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  246. enum:
  247. - None
  248. - Fetch
  249. type: string
  250. nullBytePolicy:
  251. default: Ignore
  252. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  253. enum:
  254. - Ignore
  255. - Fail
  256. type: string
  257. property:
  258. description: Used to select a specific property of the Provider value (if a map), if supported
  259. type: string
  260. version:
  261. description: Used to select a specific version of the Provider value, if supported
  262. type: string
  263. required:
  264. - key
  265. type: object
  266. find:
  267. description: |-
  268. Used to find secrets based on tags or regular expressions
  269. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  270. properties:
  271. conversionStrategy:
  272. default: Default
  273. description: Used to define a conversion Strategy
  274. enum:
  275. - Default
  276. - Unicode
  277. type: string
  278. decodingStrategy:
  279. default: None
  280. description: Used to define a decoding Strategy
  281. enum:
  282. - Auto
  283. - Base64
  284. - Base64URL
  285. - None
  286. type: string
  287. name:
  288. description: Finds secrets based on the name.
  289. properties:
  290. regexp:
  291. description: Finds secrets base
  292. type: string
  293. type: object
  294. nullBytePolicy:
  295. default: Ignore
  296. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  297. enum:
  298. - Ignore
  299. - Fail
  300. type: string
  301. path:
  302. description: A root path to start the find operations.
  303. type: string
  304. tags:
  305. additionalProperties:
  306. type: string
  307. description: Find secrets based on tags.
  308. type: object
  309. type: object
  310. rewrite:
  311. description: |-
  312. Used to rewrite secret Keys after getting them from the secret Provider
  313. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  314. items:
  315. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  316. maxProperties: 1
  317. minProperties: 1
  318. properties:
  319. merge:
  320. description: |-
  321. Used to merge key/values in one single Secret
  322. The resulting key will contain all values from the specified secrets
  323. properties:
  324. conflictPolicy:
  325. default: Error
  326. description: Used to define the policy to use in conflict resolution.
  327. enum:
  328. - Ignore
  329. - Error
  330. type: string
  331. into:
  332. default: ""
  333. description: |-
  334. Used to define the target key of the merge operation.
  335. Required if strategy is JSON. Ignored otherwise.
  336. type: string
  337. priority:
  338. description: Used to define key priority in conflict resolution.
  339. items:
  340. type: string
  341. type: array
  342. priorityPolicy:
  343. default: Strict
  344. description: Used to define the policy when a key in the priority list does not exist in the input.
  345. enum:
  346. - IgnoreNotFound
  347. - Strict
  348. type: string
  349. strategy:
  350. default: Extract
  351. description: Used to define the strategy to use in the merge operation.
  352. enum:
  353. - Extract
  354. - JSON
  355. type: string
  356. type: object
  357. regexp:
  358. description: |-
  359. Used to rewrite with regular expressions.
  360. The resulting key will be the output of a regexp.ReplaceAll operation.
  361. properties:
  362. source:
  363. description: Used to define the regular expression of a re.Compiler.
  364. type: string
  365. target:
  366. description: Used to define the target pattern of a ReplaceAll operation.
  367. type: string
  368. required:
  369. - source
  370. - target
  371. type: object
  372. transform:
  373. description: |-
  374. Used to apply string transformation on the secrets.
  375. The resulting key will be the output of the template applied by the operation.
  376. properties:
  377. template:
  378. description: |-
  379. Used to define the template to apply on the secret name.
  380. `.value ` will specify the secret name in the template.
  381. type: string
  382. required:
  383. - template
  384. type: object
  385. type: object
  386. type: array
  387. sourceRef:
  388. description: |-
  389. SourceRef points to a store or generator
  390. which contains secret values ready to use.
  391. Use this in combination with Extract or Find pull values out of
  392. a specific SecretStore.
  393. When sourceRef points to a generator Extract or Find is not supported.
  394. The generator returns a static map of values
  395. maxProperties: 1
  396. minProperties: 1
  397. properties:
  398. generatorRef:
  399. description: GeneratorRef points to a generator custom resource.
  400. properties:
  401. apiVersion:
  402. default: generators.external-secrets.io/v1alpha1
  403. description: Specify the apiVersion of the generator resource
  404. type: string
  405. kind:
  406. description: Specify the Kind of the generator resource
  407. enum:
  408. - ACRAccessToken
  409. - ClusterGenerator
  410. - CloudsmithAccessToken
  411. - ECRAuthorizationToken
  412. - Fake
  413. - GCRAccessToken
  414. - GithubAccessToken
  415. - QuayAccessToken
  416. - Password
  417. - SSHKey
  418. - STSAssumeRoleToken
  419. - STSSessionToken
  420. - UUID
  421. - VaultDynamicSecret
  422. - Webhook
  423. - Grafana
  424. - MFA
  425. type: string
  426. name:
  427. description: Specify the name of the generator resource
  428. maxLength: 253
  429. minLength: 1
  430. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  431. type: string
  432. required:
  433. - kind
  434. - name
  435. type: object
  436. storeRef:
  437. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  438. properties:
  439. kind:
  440. description: |-
  441. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  442. Defaults to `SecretStore`
  443. enum:
  444. - SecretStore
  445. - ClusterSecretStore
  446. type: string
  447. name:
  448. description: Name of the SecretStore resource
  449. maxLength: 253
  450. minLength: 1
  451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  452. type: string
  453. type: object
  454. type: object
  455. type: object
  456. type: array
  457. refreshInterval:
  458. default: 1h0m0s
  459. description: |-
  460. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  461. specified as Golang Duration strings.
  462. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  463. Example values: "1h0m0s", "2h30m0s", "10m0s"
  464. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  465. type: string
  466. refreshPolicy:
  467. description: |-
  468. RefreshPolicy determines how the ExternalSecret should be refreshed:
  469. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  470. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  471. No periodic updates occur if refreshInterval is 0.
  472. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  473. enum:
  474. - CreatedOnce
  475. - Periodic
  476. - OnChange
  477. type: string
  478. secretStoreRef:
  479. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  480. properties:
  481. kind:
  482. description: |-
  483. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  484. Defaults to `SecretStore`
  485. enum:
  486. - SecretStore
  487. - ClusterSecretStore
  488. type: string
  489. name:
  490. description: Name of the SecretStore resource
  491. maxLength: 253
  492. minLength: 1
  493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  494. type: string
  495. type: object
  496. target:
  497. default:
  498. creationPolicy: Owner
  499. deletionPolicy: Retain
  500. description: |-
  501. ExternalSecretTarget defines the Kubernetes Secret to be created,
  502. there can be only one target per ExternalSecret.
  503. properties:
  504. creationPolicy:
  505. default: Owner
  506. description: |-
  507. CreationPolicy defines rules on how to create the resulting Secret.
  508. Defaults to "Owner"
  509. enum:
  510. - Owner
  511. - Orphan
  512. - Merge
  513. - None
  514. type: string
  515. deletionPolicy:
  516. default: Retain
  517. description: |-
  518. DeletionPolicy defines rules on how to delete the resulting Secret.
  519. Defaults to "Retain"
  520. enum:
  521. - Delete
  522. - Merge
  523. - Retain
  524. type: string
  525. immutable:
  526. description: Immutable defines if the final secret will be immutable
  527. type: boolean
  528. manifest:
  529. description: |-
  530. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  531. When specified, ExternalSecret will create the resource type defined here
  532. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  533. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  534. properties:
  535. apiVersion:
  536. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  537. minLength: 1
  538. type: string
  539. kind:
  540. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  541. minLength: 1
  542. type: string
  543. required:
  544. - apiVersion
  545. - kind
  546. type: object
  547. name:
  548. description: |-
  549. The name of the Secret resource to be managed.
  550. Defaults to the .metadata.name of the ExternalSecret resource
  551. maxLength: 253
  552. minLength: 1
  553. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  554. type: string
  555. template:
  556. description: Template defines a blueprint for the created Secret resource.
  557. properties:
  558. data:
  559. additionalProperties:
  560. type: string
  561. type: object
  562. engineVersion:
  563. default: v2
  564. description: |-
  565. EngineVersion specifies the template engine version
  566. that should be used to compile/execute the
  567. template specified in .data and .templateFrom[].
  568. enum:
  569. - v2
  570. type: string
  571. mergePolicy:
  572. default: Replace
  573. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  574. enum:
  575. - Replace
  576. - Merge
  577. type: string
  578. metadata:
  579. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  580. properties:
  581. annotations:
  582. additionalProperties:
  583. type: string
  584. type: object
  585. finalizers:
  586. items:
  587. type: string
  588. type: array
  589. labels:
  590. additionalProperties:
  591. type: string
  592. type: object
  593. type: object
  594. templateFrom:
  595. items:
  596. description: |-
  597. TemplateFrom specifies a source for templates.
  598. Each item in the list can either reference a ConfigMap or a Secret resource.
  599. properties:
  600. configMap:
  601. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  602. properties:
  603. items:
  604. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  605. items:
  606. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  607. properties:
  608. key:
  609. description: A key in the ConfigMap/Secret
  610. maxLength: 253
  611. minLength: 1
  612. pattern: ^[-._a-zA-Z0-9]+$
  613. type: string
  614. templateAs:
  615. default: Values
  616. description: TemplateScope specifies how the template keys should be interpreted.
  617. enum:
  618. - Values
  619. - KeysAndValues
  620. type: string
  621. required:
  622. - key
  623. type: object
  624. type: array
  625. name:
  626. description: The name of the ConfigMap/Secret resource
  627. maxLength: 253
  628. minLength: 1
  629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  630. type: string
  631. required:
  632. - items
  633. - name
  634. type: object
  635. literal:
  636. type: string
  637. secret:
  638. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  639. properties:
  640. items:
  641. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  642. items:
  643. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  644. properties:
  645. key:
  646. description: A key in the ConfigMap/Secret
  647. maxLength: 253
  648. minLength: 1
  649. pattern: ^[-._a-zA-Z0-9]+$
  650. type: string
  651. templateAs:
  652. default: Values
  653. description: TemplateScope specifies how the template keys should be interpreted.
  654. enum:
  655. - Values
  656. - KeysAndValues
  657. type: string
  658. required:
  659. - key
  660. type: object
  661. type: array
  662. name:
  663. description: The name of the ConfigMap/Secret resource
  664. maxLength: 253
  665. minLength: 1
  666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  667. type: string
  668. required:
  669. - items
  670. - name
  671. type: object
  672. target:
  673. default: Data
  674. description: |-
  675. Target specifies where to place the template result.
  676. For Secret resources, common values are: "Data", "Annotations", "Labels".
  677. For custom resources (when spec.target.manifest is set), this supports
  678. nested paths like "spec.database.config" or "data".
  679. type: string
  680. type: object
  681. type: array
  682. type:
  683. type: string
  684. type: object
  685. type: object
  686. type: object
  687. namespaceSelector:
  688. description: |-
  689. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  690. Deprecated: Use NamespaceSelectors instead.
  691. properties:
  692. matchExpressions:
  693. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  694. items:
  695. description: |-
  696. A label selector requirement is a selector that contains values, a key, and an operator that
  697. relates the key and values.
  698. properties:
  699. key:
  700. description: key is the label key that the selector applies to.
  701. type: string
  702. operator:
  703. description: |-
  704. operator represents a key's relationship to a set of values.
  705. Valid operators are In, NotIn, Exists and DoesNotExist.
  706. type: string
  707. values:
  708. description: |-
  709. values is an array of string values. If the operator is In or NotIn,
  710. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  711. the values array must be empty. This array is replaced during a strategic
  712. merge patch.
  713. items:
  714. type: string
  715. type: array
  716. x-kubernetes-list-type: atomic
  717. required:
  718. - key
  719. - operator
  720. type: object
  721. type: array
  722. x-kubernetes-list-type: atomic
  723. matchLabels:
  724. additionalProperties:
  725. type: string
  726. description: |-
  727. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  728. map is equivalent to an element of matchExpressions, whose key field is "key", the
  729. operator is "In", and the values array contains only "value". The requirements are ANDed.
  730. type: object
  731. type: object
  732. x-kubernetes-map-type: atomic
  733. namespaceSelectors:
  734. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  735. items:
  736. description: |-
  737. A label selector is a label query over a set of resources. The result of matchLabels and
  738. matchExpressions are ANDed. An empty label selector matches all objects. A null
  739. label selector matches no objects.
  740. properties:
  741. matchExpressions:
  742. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  743. items:
  744. description: |-
  745. A label selector requirement is a selector that contains values, a key, and an operator that
  746. relates the key and values.
  747. properties:
  748. key:
  749. description: key is the label key that the selector applies to.
  750. type: string
  751. operator:
  752. description: |-
  753. operator represents a key's relationship to a set of values.
  754. Valid operators are In, NotIn, Exists and DoesNotExist.
  755. type: string
  756. values:
  757. description: |-
  758. values is an array of string values. If the operator is In or NotIn,
  759. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  760. the values array must be empty. This array is replaced during a strategic
  761. merge patch.
  762. items:
  763. type: string
  764. type: array
  765. x-kubernetes-list-type: atomic
  766. required:
  767. - key
  768. - operator
  769. type: object
  770. type: array
  771. x-kubernetes-list-type: atomic
  772. matchLabels:
  773. additionalProperties:
  774. type: string
  775. description: |-
  776. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  777. map is equivalent to an element of matchExpressions, whose key field is "key", the
  778. operator is "In", and the values array contains only "value". The requirements are ANDed.
  779. type: object
  780. type: object
  781. x-kubernetes-map-type: atomic
  782. type: array
  783. namespaces:
  784. description: |-
  785. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  786. Deprecated: Use NamespaceSelectors instead.
  787. items:
  788. maxLength: 63
  789. minLength: 1
  790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  791. type: string
  792. type: array
  793. refreshTime:
  794. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  795. type: string
  796. required:
  797. - externalSecretSpec
  798. type: object
  799. status:
  800. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  801. properties:
  802. conditions:
  803. items:
  804. description: ClusterExternalSecretStatusCondition defines the observed state of a ClusterExternalSecret resource.
  805. properties:
  806. message:
  807. type: string
  808. status:
  809. type: string
  810. type:
  811. description: ClusterExternalSecretConditionType defines a value type for ClusterExternalSecret conditions.
  812. type: string
  813. required:
  814. - status
  815. - type
  816. type: object
  817. type: array
  818. externalSecretName:
  819. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  820. type: string
  821. failedNamespaces:
  822. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  823. items:
  824. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  825. properties:
  826. namespace:
  827. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  828. type: string
  829. reason:
  830. description: Reason is why the ExternalSecret failed to apply to the namespace
  831. type: string
  832. required:
  833. - namespace
  834. type: object
  835. type: array
  836. provisionedNamespaces:
  837. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  838. items:
  839. type: string
  840. type: array
  841. type: object
  842. type: object
  843. served: true
  844. storage: true
  845. subresources:
  846. status: {}
  847. - additionalPrinterColumns:
  848. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  849. name: Store
  850. type: string
  851. - jsonPath: .spec.refreshTime
  852. name: Refresh Interval
  853. type: string
  854. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  855. name: Ready
  856. type: string
  857. deprecated: true
  858. name: v1beta1
  859. schema:
  860. openAPIV3Schema:
  861. description: ClusterExternalSecret is the schema for the clusterexternalsecrets API.
  862. properties:
  863. apiVersion:
  864. description: |-
  865. APIVersion defines the versioned schema of this representation of an object.
  866. Servers should convert recognized schemas to the latest internal value, and
  867. may reject unrecognized values.
  868. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  869. type: string
  870. kind:
  871. description: |-
  872. Kind is a string value representing the REST resource this object represents.
  873. Servers may infer this from the endpoint the client submits requests to.
  874. Cannot be updated.
  875. In CamelCase.
  876. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  877. type: string
  878. metadata:
  879. type: object
  880. spec:
  881. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  882. properties:
  883. externalSecretMetadata:
  884. description: The metadata of the external secrets to be created
  885. properties:
  886. annotations:
  887. additionalProperties:
  888. type: string
  889. type: object
  890. labels:
  891. additionalProperties:
  892. type: string
  893. type: object
  894. type: object
  895. externalSecretName:
  896. description: |-
  897. The name of the external secrets to be created.
  898. Defaults to the name of the ClusterExternalSecret
  899. maxLength: 253
  900. minLength: 1
  901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  902. type: string
  903. externalSecretSpec:
  904. description: The spec for the ExternalSecrets to be created
  905. properties:
  906. data:
  907. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  908. items:
  909. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  910. properties:
  911. remoteRef:
  912. description: |-
  913. RemoteRef points to the remote secret and defines
  914. which secret (version/property/..) to fetch.
  915. properties:
  916. conversionStrategy:
  917. default: Default
  918. description: Used to define a conversion Strategy
  919. enum:
  920. - Default
  921. - Unicode
  922. type: string
  923. decodingStrategy:
  924. default: None
  925. description: Used to define a decoding Strategy
  926. enum:
  927. - Auto
  928. - Base64
  929. - Base64URL
  930. - None
  931. type: string
  932. key:
  933. description: Key is the key used in the Provider, mandatory
  934. type: string
  935. metadataPolicy:
  936. default: None
  937. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  938. enum:
  939. - None
  940. - Fetch
  941. type: string
  942. property:
  943. description: Used to select a specific property of the Provider value (if a map), if supported
  944. type: string
  945. version:
  946. description: Used to select a specific version of the Provider value, if supported
  947. type: string
  948. required:
  949. - key
  950. type: object
  951. secretKey:
  952. description: The key in the Kubernetes Secret to store the value.
  953. maxLength: 253
  954. minLength: 1
  955. pattern: ^[-._a-zA-Z0-9]+$
  956. type: string
  957. sourceRef:
  958. description: |-
  959. SourceRef allows you to override the source
  960. from which the value will be pulled.
  961. maxProperties: 1
  962. minProperties: 1
  963. properties:
  964. generatorRef:
  965. description: |-
  966. GeneratorRef points to a generator custom resource.
  967. Deprecated: The generatorRef is not implemented in .data[].
  968. this will be removed with v1.
  969. properties:
  970. apiVersion:
  971. default: generators.external-secrets.io/v1alpha1
  972. description: Specify the apiVersion of the generator resource
  973. type: string
  974. kind:
  975. description: Specify the Kind of the generator resource
  976. enum:
  977. - ACRAccessToken
  978. - ClusterGenerator
  979. - ECRAuthorizationToken
  980. - Fake
  981. - GCRAccessToken
  982. - GithubAccessToken
  983. - QuayAccessToken
  984. - Password
  985. - SSHKey
  986. - STSSessionToken
  987. - UUID
  988. - VaultDynamicSecret
  989. - Webhook
  990. - Grafana
  991. type: string
  992. name:
  993. description: Specify the name of the generator resource
  994. maxLength: 253
  995. minLength: 1
  996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  997. type: string
  998. required:
  999. - kind
  1000. - name
  1001. type: object
  1002. storeRef:
  1003. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1004. properties:
  1005. kind:
  1006. description: |-
  1007. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1008. Defaults to `SecretStore`
  1009. enum:
  1010. - SecretStore
  1011. - ClusterSecretStore
  1012. type: string
  1013. name:
  1014. description: Name of the SecretStore resource
  1015. maxLength: 253
  1016. minLength: 1
  1017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1018. type: string
  1019. type: object
  1020. type: object
  1021. required:
  1022. - remoteRef
  1023. - secretKey
  1024. type: object
  1025. type: array
  1026. dataFrom:
  1027. description: |-
  1028. DataFrom is used to fetch all properties from a specific Provider data
  1029. If multiple entries are specified, the Secret keys are merged in the specified order
  1030. items:
  1031. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  1032. properties:
  1033. extract:
  1034. description: |-
  1035. Used to extract multiple key/value pairs from one secret
  1036. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1037. properties:
  1038. conversionStrategy:
  1039. default: Default
  1040. description: Used to define a conversion Strategy
  1041. enum:
  1042. - Default
  1043. - Unicode
  1044. type: string
  1045. decodingStrategy:
  1046. default: None
  1047. description: Used to define a decoding Strategy
  1048. enum:
  1049. - Auto
  1050. - Base64
  1051. - Base64URL
  1052. - None
  1053. type: string
  1054. key:
  1055. description: Key is the key used in the Provider, mandatory
  1056. type: string
  1057. metadataPolicy:
  1058. default: None
  1059. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  1060. enum:
  1061. - None
  1062. - Fetch
  1063. type: string
  1064. property:
  1065. description: Used to select a specific property of the Provider value (if a map), if supported
  1066. type: string
  1067. version:
  1068. description: Used to select a specific version of the Provider value, if supported
  1069. type: string
  1070. required:
  1071. - key
  1072. type: object
  1073. find:
  1074. description: |-
  1075. Used to find secrets based on tags or regular expressions
  1076. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1077. properties:
  1078. conversionStrategy:
  1079. default: Default
  1080. description: Used to define a conversion Strategy
  1081. enum:
  1082. - Default
  1083. - Unicode
  1084. type: string
  1085. decodingStrategy:
  1086. default: None
  1087. description: Used to define a decoding Strategy
  1088. enum:
  1089. - Auto
  1090. - Base64
  1091. - Base64URL
  1092. - None
  1093. type: string
  1094. name:
  1095. description: Finds secrets based on the name.
  1096. properties:
  1097. regexp:
  1098. description: Finds secrets base
  1099. type: string
  1100. type: object
  1101. path:
  1102. description: A root path to start the find operations.
  1103. type: string
  1104. tags:
  1105. additionalProperties:
  1106. type: string
  1107. description: Find secrets based on tags.
  1108. type: object
  1109. type: object
  1110. rewrite:
  1111. description: |-
  1112. Used to rewrite secret Keys after getting them from the secret Provider
  1113. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  1114. items:
  1115. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  1116. maxProperties: 1
  1117. minProperties: 1
  1118. properties:
  1119. regexp:
  1120. description: |-
  1121. Used to rewrite with regular expressions.
  1122. The resulting key will be the output of a regexp.ReplaceAll operation.
  1123. properties:
  1124. source:
  1125. description: Used to define the regular expression of a re.Compiler.
  1126. type: string
  1127. target:
  1128. description: Used to define the target pattern of a ReplaceAll operation.
  1129. type: string
  1130. required:
  1131. - source
  1132. - target
  1133. type: object
  1134. transform:
  1135. description: |-
  1136. Used to apply string transformation on the secrets.
  1137. The resulting key will be the output of the template applied by the operation.
  1138. properties:
  1139. template:
  1140. description: |-
  1141. Used to define the template to apply on the secret name.
  1142. `.value ` will specify the secret name in the template.
  1143. type: string
  1144. required:
  1145. - template
  1146. type: object
  1147. type: object
  1148. type: array
  1149. sourceRef:
  1150. description: |-
  1151. SourceRef points to a store or generator
  1152. which contains secret values ready to use.
  1153. Use this in combination with Extract or Find pull values out of
  1154. a specific SecretStore.
  1155. When sourceRef points to a generator Extract or Find is not supported.
  1156. The generator returns a static map of values
  1157. maxProperties: 1
  1158. minProperties: 1
  1159. properties:
  1160. generatorRef:
  1161. description: GeneratorRef points to a generator custom resource.
  1162. properties:
  1163. apiVersion:
  1164. default: generators.external-secrets.io/v1alpha1
  1165. description: Specify the apiVersion of the generator resource
  1166. type: string
  1167. kind:
  1168. description: Specify the Kind of the generator resource
  1169. enum:
  1170. - ACRAccessToken
  1171. - ClusterGenerator
  1172. - ECRAuthorizationToken
  1173. - Fake
  1174. - GCRAccessToken
  1175. - GithubAccessToken
  1176. - QuayAccessToken
  1177. - Password
  1178. - SSHKey
  1179. - STSSessionToken
  1180. - UUID
  1181. - VaultDynamicSecret
  1182. - Webhook
  1183. - Grafana
  1184. type: string
  1185. name:
  1186. description: Specify the name of the generator resource
  1187. maxLength: 253
  1188. minLength: 1
  1189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1190. type: string
  1191. required:
  1192. - kind
  1193. - name
  1194. type: object
  1195. storeRef:
  1196. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1197. properties:
  1198. kind:
  1199. description: |-
  1200. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1201. Defaults to `SecretStore`
  1202. enum:
  1203. - SecretStore
  1204. - ClusterSecretStore
  1205. type: string
  1206. name:
  1207. description: Name of the SecretStore resource
  1208. maxLength: 253
  1209. minLength: 1
  1210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1211. type: string
  1212. type: object
  1213. type: object
  1214. type: object
  1215. type: array
  1216. refreshInterval:
  1217. default: 1h0m0s
  1218. description: |-
  1219. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  1220. specified as Golang Duration strings.
  1221. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  1222. Example values: "1h0m0s", "2h30m0s", "10m0s"
  1223. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  1224. type: string
  1225. refreshPolicy:
  1226. description: |-
  1227. RefreshPolicy determines how the ExternalSecret should be refreshed:
  1228. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  1229. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  1230. No periodic updates occur if refreshInterval is 0.
  1231. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  1232. enum:
  1233. - CreatedOnce
  1234. - Periodic
  1235. - OnChange
  1236. type: string
  1237. secretStoreRef:
  1238. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1239. properties:
  1240. kind:
  1241. description: |-
  1242. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1243. Defaults to `SecretStore`
  1244. enum:
  1245. - SecretStore
  1246. - ClusterSecretStore
  1247. type: string
  1248. name:
  1249. description: Name of the SecretStore resource
  1250. maxLength: 253
  1251. minLength: 1
  1252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1253. type: string
  1254. type: object
  1255. target:
  1256. default:
  1257. creationPolicy: Owner
  1258. deletionPolicy: Retain
  1259. description: |-
  1260. ExternalSecretTarget defines the Kubernetes Secret to be created
  1261. There can be only one target per ExternalSecret.
  1262. properties:
  1263. creationPolicy:
  1264. default: Owner
  1265. description: |-
  1266. CreationPolicy defines rules on how to create the resulting Secret.
  1267. Defaults to "Owner"
  1268. enum:
  1269. - Owner
  1270. - Orphan
  1271. - Merge
  1272. - None
  1273. type: string
  1274. deletionPolicy:
  1275. default: Retain
  1276. description: |-
  1277. DeletionPolicy defines rules on how to delete the resulting Secret.
  1278. Defaults to "Retain"
  1279. enum:
  1280. - Delete
  1281. - Merge
  1282. - Retain
  1283. type: string
  1284. immutable:
  1285. description: Immutable defines if the final secret will be immutable
  1286. type: boolean
  1287. name:
  1288. description: |-
  1289. The name of the Secret resource to be managed.
  1290. Defaults to the .metadata.name of the ExternalSecret resource
  1291. maxLength: 253
  1292. minLength: 1
  1293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1294. type: string
  1295. template:
  1296. description: Template defines a blueprint for the created Secret resource.
  1297. properties:
  1298. data:
  1299. additionalProperties:
  1300. type: string
  1301. type: object
  1302. engineVersion:
  1303. default: v2
  1304. description: |-
  1305. EngineVersion specifies the template engine version
  1306. that should be used to compile/execute the
  1307. template specified in .data and .templateFrom[].
  1308. enum:
  1309. - v2
  1310. type: string
  1311. mergePolicy:
  1312. default: Replace
  1313. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  1314. enum:
  1315. - Replace
  1316. - Merge
  1317. type: string
  1318. metadata:
  1319. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1320. properties:
  1321. annotations:
  1322. additionalProperties:
  1323. type: string
  1324. type: object
  1325. labels:
  1326. additionalProperties:
  1327. type: string
  1328. type: object
  1329. type: object
  1330. templateFrom:
  1331. items:
  1332. description: TemplateFrom defines a source for template data.
  1333. properties:
  1334. configMap:
  1335. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1336. properties:
  1337. items:
  1338. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1339. items:
  1340. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1341. properties:
  1342. key:
  1343. description: A key in the ConfigMap/Secret
  1344. maxLength: 253
  1345. minLength: 1
  1346. pattern: ^[-._a-zA-Z0-9]+$
  1347. type: string
  1348. templateAs:
  1349. default: Values
  1350. description: TemplateScope defines the scope of the template when processing template data.
  1351. enum:
  1352. - Values
  1353. - KeysAndValues
  1354. type: string
  1355. required:
  1356. - key
  1357. type: object
  1358. type: array
  1359. name:
  1360. description: The name of the ConfigMap/Secret resource
  1361. maxLength: 253
  1362. minLength: 1
  1363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1364. type: string
  1365. required:
  1366. - items
  1367. - name
  1368. type: object
  1369. literal:
  1370. type: string
  1371. secret:
  1372. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1373. properties:
  1374. items:
  1375. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1376. items:
  1377. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1378. properties:
  1379. key:
  1380. description: A key in the ConfigMap/Secret
  1381. maxLength: 253
  1382. minLength: 1
  1383. pattern: ^[-._a-zA-Z0-9]+$
  1384. type: string
  1385. templateAs:
  1386. default: Values
  1387. description: TemplateScope defines the scope of the template when processing template data.
  1388. enum:
  1389. - Values
  1390. - KeysAndValues
  1391. type: string
  1392. required:
  1393. - key
  1394. type: object
  1395. type: array
  1396. name:
  1397. description: The name of the ConfigMap/Secret resource
  1398. maxLength: 253
  1399. minLength: 1
  1400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1401. type: string
  1402. required:
  1403. - items
  1404. - name
  1405. type: object
  1406. target:
  1407. default: Data
  1408. description: TemplateTarget defines the target field where the template result will be stored.
  1409. enum:
  1410. - Data
  1411. - Annotations
  1412. - Labels
  1413. type: string
  1414. type: object
  1415. type: array
  1416. type:
  1417. type: string
  1418. type: object
  1419. type: object
  1420. type: object
  1421. namespaceSelector:
  1422. description: The labels to select by to find the Namespaces to create the ExternalSecrets in
  1423. properties:
  1424. matchExpressions:
  1425. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1426. items:
  1427. description: |-
  1428. A label selector requirement is a selector that contains values, a key, and an operator that
  1429. relates the key and values.
  1430. properties:
  1431. key:
  1432. description: key is the label key that the selector applies to.
  1433. type: string
  1434. operator:
  1435. description: |-
  1436. operator represents a key's relationship to a set of values.
  1437. Valid operators are In, NotIn, Exists and DoesNotExist.
  1438. type: string
  1439. values:
  1440. description: |-
  1441. values is an array of string values. If the operator is In or NotIn,
  1442. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1443. the values array must be empty. This array is replaced during a strategic
  1444. merge patch.
  1445. items:
  1446. type: string
  1447. type: array
  1448. x-kubernetes-list-type: atomic
  1449. required:
  1450. - key
  1451. - operator
  1452. type: object
  1453. type: array
  1454. x-kubernetes-list-type: atomic
  1455. matchLabels:
  1456. additionalProperties:
  1457. type: string
  1458. description: |-
  1459. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1460. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1461. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1462. type: object
  1463. type: object
  1464. x-kubernetes-map-type: atomic
  1465. namespaceSelectors:
  1466. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1467. items:
  1468. description: |-
  1469. A label selector is a label query over a set of resources. The result of matchLabels and
  1470. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1471. label selector matches no objects.
  1472. properties:
  1473. matchExpressions:
  1474. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1475. items:
  1476. description: |-
  1477. A label selector requirement is a selector that contains values, a key, and an operator that
  1478. relates the key and values.
  1479. properties:
  1480. key:
  1481. description: key is the label key that the selector applies to.
  1482. type: string
  1483. operator:
  1484. description: |-
  1485. operator represents a key's relationship to a set of values.
  1486. Valid operators are In, NotIn, Exists and DoesNotExist.
  1487. type: string
  1488. values:
  1489. description: |-
  1490. values is an array of string values. If the operator is In or NotIn,
  1491. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1492. the values array must be empty. This array is replaced during a strategic
  1493. merge patch.
  1494. items:
  1495. type: string
  1496. type: array
  1497. x-kubernetes-list-type: atomic
  1498. required:
  1499. - key
  1500. - operator
  1501. type: object
  1502. type: array
  1503. x-kubernetes-list-type: atomic
  1504. matchLabels:
  1505. additionalProperties:
  1506. type: string
  1507. description: |-
  1508. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1509. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1510. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1511. type: object
  1512. type: object
  1513. x-kubernetes-map-type: atomic
  1514. type: array
  1515. namespaces:
  1516. description: |-
  1517. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  1518. Deprecated: Use NamespaceSelectors instead.
  1519. items:
  1520. maxLength: 63
  1521. minLength: 1
  1522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1523. type: string
  1524. type: array
  1525. refreshTime:
  1526. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  1527. type: string
  1528. required:
  1529. - externalSecretSpec
  1530. type: object
  1531. status:
  1532. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  1533. properties:
  1534. conditions:
  1535. items:
  1536. description: ClusterExternalSecretStatusCondition indicates the status of the ClusterExternalSecret.
  1537. properties:
  1538. message:
  1539. type: string
  1540. status:
  1541. type: string
  1542. type:
  1543. description: ClusterExternalSecretConditionType indicates the condition of the ClusterExternalSecret.
  1544. type: string
  1545. required:
  1546. - status
  1547. - type
  1548. type: object
  1549. type: array
  1550. externalSecretName:
  1551. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  1552. type: string
  1553. failedNamespaces:
  1554. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  1555. items:
  1556. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  1557. properties:
  1558. namespace:
  1559. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  1560. type: string
  1561. reason:
  1562. description: Reason is why the ExternalSecret failed to apply to the namespace
  1563. type: string
  1564. required:
  1565. - namespace
  1566. type: object
  1567. type: array
  1568. provisionedNamespaces:
  1569. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  1570. items:
  1571. type: string
  1572. type: array
  1573. type: object
  1574. type: object
  1575. served: false
  1576. storage: false
  1577. subresources:
  1578. status: {}
  1579. ---
  1580. apiVersion: apiextensions.k8s.io/v1
  1581. kind: CustomResourceDefinition
  1582. metadata:
  1583. annotations:
  1584. controller-gen.kubebuilder.io/version: v0.19.0
  1585. labels:
  1586. external-secrets.io/component: controller
  1587. name: clusterpushsecrets.external-secrets.io
  1588. spec:
  1589. group: external-secrets.io
  1590. names:
  1591. categories:
  1592. - external-secrets
  1593. kind: ClusterPushSecret
  1594. listKind: ClusterPushSecretList
  1595. plural: clusterpushsecrets
  1596. singular: clusterpushsecret
  1597. scope: Cluster
  1598. versions:
  1599. - additionalPrinterColumns:
  1600. - jsonPath: .metadata.creationTimestamp
  1601. name: AGE
  1602. type: date
  1603. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1604. name: Status
  1605. type: string
  1606. name: v1alpha1
  1607. schema:
  1608. openAPIV3Schema:
  1609. description: ClusterPushSecret is the Schema for the ClusterPushSecrets API that enables cluster-wide management of pushing Kubernetes secrets to external providers.
  1610. properties:
  1611. apiVersion:
  1612. description: |-
  1613. APIVersion defines the versioned schema of this representation of an object.
  1614. Servers should convert recognized schemas to the latest internal value, and
  1615. may reject unrecognized values.
  1616. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1617. type: string
  1618. kind:
  1619. description: |-
  1620. Kind is a string value representing the REST resource this object represents.
  1621. Servers may infer this from the endpoint the client submits requests to.
  1622. Cannot be updated.
  1623. In CamelCase.
  1624. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1625. type: string
  1626. metadata:
  1627. type: object
  1628. spec:
  1629. description: ClusterPushSecretSpec defines the configuration for a ClusterPushSecret resource.
  1630. properties:
  1631. namespaceSelectors:
  1632. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1633. items:
  1634. description: |-
  1635. A label selector is a label query over a set of resources. The result of matchLabels and
  1636. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1637. label selector matches no objects.
  1638. properties:
  1639. matchExpressions:
  1640. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1641. items:
  1642. description: |-
  1643. A label selector requirement is a selector that contains values, a key, and an operator that
  1644. relates the key and values.
  1645. properties:
  1646. key:
  1647. description: key is the label key that the selector applies to.
  1648. type: string
  1649. operator:
  1650. description: |-
  1651. operator represents a key's relationship to a set of values.
  1652. Valid operators are In, NotIn, Exists and DoesNotExist.
  1653. type: string
  1654. values:
  1655. description: |-
  1656. values is an array of string values. If the operator is In or NotIn,
  1657. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1658. the values array must be empty. This array is replaced during a strategic
  1659. merge patch.
  1660. items:
  1661. type: string
  1662. type: array
  1663. x-kubernetes-list-type: atomic
  1664. required:
  1665. - key
  1666. - operator
  1667. type: object
  1668. type: array
  1669. x-kubernetes-list-type: atomic
  1670. matchLabels:
  1671. additionalProperties:
  1672. type: string
  1673. description: |-
  1674. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1675. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1676. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1677. type: object
  1678. type: object
  1679. x-kubernetes-map-type: atomic
  1680. type: array
  1681. pushSecretMetadata:
  1682. description: The metadata of the external secrets to be created
  1683. properties:
  1684. annotations:
  1685. additionalProperties:
  1686. type: string
  1687. type: object
  1688. labels:
  1689. additionalProperties:
  1690. type: string
  1691. type: object
  1692. type: object
  1693. pushSecretName:
  1694. description: |-
  1695. The name of the push secrets to be created.
  1696. Defaults to the name of the ClusterPushSecret
  1697. maxLength: 253
  1698. minLength: 1
  1699. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1700. type: string
  1701. pushSecretSpec:
  1702. description: PushSecretSpec defines what to do with the secrets.
  1703. properties:
  1704. data:
  1705. description: Secret Data that should be pushed to providers
  1706. items:
  1707. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  1708. properties:
  1709. conversionStrategy:
  1710. default: None
  1711. description: Used to define a conversion Strategy for the secret keys
  1712. enum:
  1713. - None
  1714. - ReverseUnicode
  1715. type: string
  1716. match:
  1717. description: Match a given Secret Key to be pushed to the provider.
  1718. properties:
  1719. remoteRef:
  1720. description: Remote Refs to push to providers.
  1721. properties:
  1722. property:
  1723. description: Name of the property in the resulting secret
  1724. type: string
  1725. remoteKey:
  1726. description: Name of the resulting provider secret.
  1727. type: string
  1728. required:
  1729. - remoteKey
  1730. type: object
  1731. secretKey:
  1732. description: Secret Key to be pushed
  1733. type: string
  1734. required:
  1735. - remoteRef
  1736. type: object
  1737. metadata:
  1738. description: |-
  1739. Metadata is metadata attached to the secret.
  1740. The structure of metadata is provider specific, please look it up in the provider documentation.
  1741. x-kubernetes-preserve-unknown-fields: true
  1742. required:
  1743. - match
  1744. type: object
  1745. type: array
  1746. dataTo:
  1747. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  1748. items:
  1749. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  1750. properties:
  1751. conversionStrategy:
  1752. default: None
  1753. description: Used to define a conversion Strategy for the secret keys
  1754. enum:
  1755. - None
  1756. - ReverseUnicode
  1757. type: string
  1758. match:
  1759. description: |-
  1760. Match pattern for selecting keys from the source Secret.
  1761. If not specified, all keys are selected.
  1762. properties:
  1763. regexp:
  1764. description: |-
  1765. Regexp matches keys by regular expression.
  1766. If not specified, all keys are matched.
  1767. type: string
  1768. type: object
  1769. metadata:
  1770. description: |-
  1771. Metadata is metadata attached to the secret.
  1772. The structure of metadata is provider specific, please look it up in the provider documentation.
  1773. x-kubernetes-preserve-unknown-fields: true
  1774. remoteKey:
  1775. description: |-
  1776. RemoteKey is the name of the single provider secret that will receive ALL
  1777. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  1778. When set, per-key expansion is skipped and a single push is performed.
  1779. The provider's store prefix (if any) is still prepended to this value.
  1780. When not set, each matched key is pushed as its own individual provider secret.
  1781. type: string
  1782. rewrite:
  1783. description: |-
  1784. Rewrite operations to transform keys before pushing to the provider.
  1785. Operations are applied sequentially.
  1786. items:
  1787. description: PushSecretRewrite defines how to transform secret keys before pushing.
  1788. properties:
  1789. regexp:
  1790. description: Used to rewrite with regular expressions.
  1791. properties:
  1792. source:
  1793. description: Used to define the regular expression of a re.Compiler.
  1794. type: string
  1795. target:
  1796. description: Used to define the target pattern of a ReplaceAll operation.
  1797. type: string
  1798. required:
  1799. - source
  1800. - target
  1801. type: object
  1802. transform:
  1803. description: Used to apply string transformation on the secrets.
  1804. properties:
  1805. template:
  1806. description: |-
  1807. Used to define the template to apply on the secret name.
  1808. `.value ` will specify the secret name in the template.
  1809. type: string
  1810. required:
  1811. - template
  1812. type: object
  1813. type: object
  1814. x-kubernetes-validations:
  1815. - message: exactly one of regexp or transform must be set
  1816. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  1817. type: array
  1818. storeRef:
  1819. description: StoreRef specifies which SecretStore to push to. Required.
  1820. properties:
  1821. kind:
  1822. default: SecretStore
  1823. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1824. enum:
  1825. - SecretStore
  1826. - ClusterSecretStore
  1827. type: string
  1828. labelSelector:
  1829. description: Optionally, sync to secret stores with label selector
  1830. properties:
  1831. matchExpressions:
  1832. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1833. items:
  1834. description: |-
  1835. A label selector requirement is a selector that contains values, a key, and an operator that
  1836. relates the key and values.
  1837. properties:
  1838. key:
  1839. description: key is the label key that the selector applies to.
  1840. type: string
  1841. operator:
  1842. description: |-
  1843. operator represents a key's relationship to a set of values.
  1844. Valid operators are In, NotIn, Exists and DoesNotExist.
  1845. type: string
  1846. values:
  1847. description: |-
  1848. values is an array of string values. If the operator is In or NotIn,
  1849. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1850. the values array must be empty. This array is replaced during a strategic
  1851. merge patch.
  1852. items:
  1853. type: string
  1854. type: array
  1855. x-kubernetes-list-type: atomic
  1856. required:
  1857. - key
  1858. - operator
  1859. type: object
  1860. type: array
  1861. x-kubernetes-list-type: atomic
  1862. matchLabels:
  1863. additionalProperties:
  1864. type: string
  1865. description: |-
  1866. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1867. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1868. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1869. type: object
  1870. type: object
  1871. x-kubernetes-map-type: atomic
  1872. name:
  1873. description: Optionally, sync to the SecretStore of the given name
  1874. maxLength: 253
  1875. minLength: 1
  1876. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1877. type: string
  1878. type: object
  1879. type: object
  1880. x-kubernetes-validations:
  1881. - message: storeRef must specify either name or labelSelector
  1882. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  1883. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  1884. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  1885. type: array
  1886. deletionPolicy:
  1887. default: None
  1888. description: Deletion Policy to handle Secrets in the provider.
  1889. enum:
  1890. - Delete
  1891. - None
  1892. type: string
  1893. refreshInterval:
  1894. default: 1h0m0s
  1895. description: The Interval to which External Secrets will try to push a secret definition
  1896. type: string
  1897. secretStoreRefs:
  1898. items:
  1899. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  1900. properties:
  1901. kind:
  1902. default: SecretStore
  1903. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1904. enum:
  1905. - SecretStore
  1906. - ClusterSecretStore
  1907. type: string
  1908. labelSelector:
  1909. description: Optionally, sync to secret stores with label selector
  1910. properties:
  1911. matchExpressions:
  1912. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1913. items:
  1914. description: |-
  1915. A label selector requirement is a selector that contains values, a key, and an operator that
  1916. relates the key and values.
  1917. properties:
  1918. key:
  1919. description: key is the label key that the selector applies to.
  1920. type: string
  1921. operator:
  1922. description: |-
  1923. operator represents a key's relationship to a set of values.
  1924. Valid operators are In, NotIn, Exists and DoesNotExist.
  1925. type: string
  1926. values:
  1927. description: |-
  1928. values is an array of string values. If the operator is In or NotIn,
  1929. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1930. the values array must be empty. This array is replaced during a strategic
  1931. merge patch.
  1932. items:
  1933. type: string
  1934. type: array
  1935. x-kubernetes-list-type: atomic
  1936. required:
  1937. - key
  1938. - operator
  1939. type: object
  1940. type: array
  1941. x-kubernetes-list-type: atomic
  1942. matchLabels:
  1943. additionalProperties:
  1944. type: string
  1945. description: |-
  1946. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1947. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1948. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1949. type: object
  1950. type: object
  1951. x-kubernetes-map-type: atomic
  1952. name:
  1953. description: Optionally, sync to the SecretStore of the given name
  1954. maxLength: 253
  1955. minLength: 1
  1956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1957. type: string
  1958. type: object
  1959. type: array
  1960. selector:
  1961. description: The Secret Selector (k8s source) for the Push Secret
  1962. maxProperties: 1
  1963. minProperties: 1
  1964. properties:
  1965. generatorRef:
  1966. description: Point to a generator to create a Secret.
  1967. properties:
  1968. apiVersion:
  1969. default: generators.external-secrets.io/v1alpha1
  1970. description: Specify the apiVersion of the generator resource
  1971. type: string
  1972. kind:
  1973. description: Specify the Kind of the generator resource
  1974. enum:
  1975. - ACRAccessToken
  1976. - ClusterGenerator
  1977. - CloudsmithAccessToken
  1978. - ECRAuthorizationToken
  1979. - Fake
  1980. - GCRAccessToken
  1981. - GithubAccessToken
  1982. - QuayAccessToken
  1983. - Password
  1984. - SSHKey
  1985. - STSAssumeRoleToken
  1986. - STSSessionToken
  1987. - UUID
  1988. - VaultDynamicSecret
  1989. - Webhook
  1990. - Grafana
  1991. - MFA
  1992. type: string
  1993. name:
  1994. description: Specify the name of the generator resource
  1995. maxLength: 253
  1996. minLength: 1
  1997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1998. type: string
  1999. required:
  2000. - kind
  2001. - name
  2002. type: object
  2003. secret:
  2004. description: Select a Secret to Push.
  2005. properties:
  2006. name:
  2007. description: |-
  2008. Name of the Secret.
  2009. The Secret must exist in the same namespace as the PushSecret manifest.
  2010. maxLength: 253
  2011. minLength: 1
  2012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2013. type: string
  2014. selector:
  2015. description: Selector chooses secrets using a labelSelector.
  2016. properties:
  2017. matchExpressions:
  2018. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2019. items:
  2020. description: |-
  2021. A label selector requirement is a selector that contains values, a key, and an operator that
  2022. relates the key and values.
  2023. properties:
  2024. key:
  2025. description: key is the label key that the selector applies to.
  2026. type: string
  2027. operator:
  2028. description: |-
  2029. operator represents a key's relationship to a set of values.
  2030. Valid operators are In, NotIn, Exists and DoesNotExist.
  2031. type: string
  2032. values:
  2033. description: |-
  2034. values is an array of string values. If the operator is In or NotIn,
  2035. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2036. the values array must be empty. This array is replaced during a strategic
  2037. merge patch.
  2038. items:
  2039. type: string
  2040. type: array
  2041. x-kubernetes-list-type: atomic
  2042. required:
  2043. - key
  2044. - operator
  2045. type: object
  2046. type: array
  2047. x-kubernetes-list-type: atomic
  2048. matchLabels:
  2049. additionalProperties:
  2050. type: string
  2051. description: |-
  2052. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2053. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2054. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2055. type: object
  2056. type: object
  2057. x-kubernetes-map-type: atomic
  2058. type: object
  2059. type: object
  2060. template:
  2061. description: Template defines a blueprint for the created Secret resource.
  2062. properties:
  2063. data:
  2064. additionalProperties:
  2065. type: string
  2066. type: object
  2067. engineVersion:
  2068. default: v2
  2069. description: |-
  2070. EngineVersion specifies the template engine version
  2071. that should be used to compile/execute the
  2072. template specified in .data and .templateFrom[].
  2073. enum:
  2074. - v2
  2075. type: string
  2076. mergePolicy:
  2077. default: Replace
  2078. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  2079. enum:
  2080. - Replace
  2081. - Merge
  2082. type: string
  2083. metadata:
  2084. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2085. properties:
  2086. annotations:
  2087. additionalProperties:
  2088. type: string
  2089. type: object
  2090. finalizers:
  2091. items:
  2092. type: string
  2093. type: array
  2094. labels:
  2095. additionalProperties:
  2096. type: string
  2097. type: object
  2098. type: object
  2099. templateFrom:
  2100. items:
  2101. description: |-
  2102. TemplateFrom specifies a source for templates.
  2103. Each item in the list can either reference a ConfigMap or a Secret resource.
  2104. properties:
  2105. configMap:
  2106. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2107. properties:
  2108. items:
  2109. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2110. items:
  2111. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2112. properties:
  2113. key:
  2114. description: A key in the ConfigMap/Secret
  2115. maxLength: 253
  2116. minLength: 1
  2117. pattern: ^[-._a-zA-Z0-9]+$
  2118. type: string
  2119. templateAs:
  2120. default: Values
  2121. description: TemplateScope specifies how the template keys should be interpreted.
  2122. enum:
  2123. - Values
  2124. - KeysAndValues
  2125. type: string
  2126. required:
  2127. - key
  2128. type: object
  2129. type: array
  2130. name:
  2131. description: The name of the ConfigMap/Secret resource
  2132. maxLength: 253
  2133. minLength: 1
  2134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2135. type: string
  2136. required:
  2137. - items
  2138. - name
  2139. type: object
  2140. literal:
  2141. type: string
  2142. secret:
  2143. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2144. properties:
  2145. items:
  2146. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2147. items:
  2148. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2149. properties:
  2150. key:
  2151. description: A key in the ConfigMap/Secret
  2152. maxLength: 253
  2153. minLength: 1
  2154. pattern: ^[-._a-zA-Z0-9]+$
  2155. type: string
  2156. templateAs:
  2157. default: Values
  2158. description: TemplateScope specifies how the template keys should be interpreted.
  2159. enum:
  2160. - Values
  2161. - KeysAndValues
  2162. type: string
  2163. required:
  2164. - key
  2165. type: object
  2166. type: array
  2167. name:
  2168. description: The name of the ConfigMap/Secret resource
  2169. maxLength: 253
  2170. minLength: 1
  2171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2172. type: string
  2173. required:
  2174. - items
  2175. - name
  2176. type: object
  2177. target:
  2178. default: Data
  2179. description: |-
  2180. Target specifies where to place the template result.
  2181. For Secret resources, common values are: "Data", "Annotations", "Labels".
  2182. For custom resources (when spec.target.manifest is set), this supports
  2183. nested paths like "spec.database.config" or "data".
  2184. type: string
  2185. type: object
  2186. type: array
  2187. type:
  2188. type: string
  2189. type: object
  2190. updatePolicy:
  2191. default: Replace
  2192. description: UpdatePolicy to handle Secrets in the provider.
  2193. enum:
  2194. - Replace
  2195. - IfNotExists
  2196. type: string
  2197. required:
  2198. - secretStoreRefs
  2199. - selector
  2200. type: object
  2201. refreshTime:
  2202. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  2203. type: string
  2204. required:
  2205. - pushSecretSpec
  2206. type: object
  2207. status:
  2208. description: ClusterPushSecretStatus contains the status information for the ClusterPushSecret resource.
  2209. properties:
  2210. conditions:
  2211. items:
  2212. description: PushSecretStatusCondition indicates the status of the PushSecret.
  2213. properties:
  2214. lastTransitionTime:
  2215. format: date-time
  2216. type: string
  2217. message:
  2218. type: string
  2219. reason:
  2220. type: string
  2221. status:
  2222. type: string
  2223. type:
  2224. description: PushSecretConditionType indicates the condition of the PushSecret.
  2225. type: string
  2226. required:
  2227. - status
  2228. - type
  2229. type: object
  2230. type: array
  2231. failedNamespaces:
  2232. description: Failed namespaces are the namespaces that failed to apply an PushSecret
  2233. items:
  2234. description: ClusterPushSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  2235. properties:
  2236. namespace:
  2237. description: Namespace is the namespace that failed when trying to apply an PushSecret
  2238. type: string
  2239. reason:
  2240. description: Reason is why the PushSecret failed to apply to the namespace
  2241. type: string
  2242. required:
  2243. - namespace
  2244. type: object
  2245. type: array
  2246. provisionedNamespaces:
  2247. description: ProvisionedNamespaces are the namespaces where the ClusterPushSecret has secrets
  2248. items:
  2249. type: string
  2250. type: array
  2251. pushSecretName:
  2252. type: string
  2253. type: object
  2254. type: object
  2255. served: true
  2256. storage: true
  2257. subresources:
  2258. status: {}
  2259. ---
  2260. apiVersion: apiextensions.k8s.io/v1
  2261. kind: CustomResourceDefinition
  2262. metadata:
  2263. annotations:
  2264. controller-gen.kubebuilder.io/version: v0.19.0
  2265. labels:
  2266. external-secrets.io/component: controller
  2267. name: clustersecretstores.external-secrets.io
  2268. spec:
  2269. group: external-secrets.io
  2270. names:
  2271. categories:
  2272. - external-secrets
  2273. kind: ClusterSecretStore
  2274. listKind: ClusterSecretStoreList
  2275. plural: clustersecretstores
  2276. shortNames:
  2277. - css
  2278. singular: clustersecretstore
  2279. scope: Cluster
  2280. versions:
  2281. - additionalPrinterColumns:
  2282. - jsonPath: .metadata.creationTimestamp
  2283. name: AGE
  2284. type: date
  2285. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2286. name: Status
  2287. type: string
  2288. - jsonPath: .status.capabilities
  2289. name: Capabilities
  2290. type: string
  2291. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2292. name: Ready
  2293. type: string
  2294. name: v1
  2295. schema:
  2296. openAPIV3Schema:
  2297. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2298. properties:
  2299. apiVersion:
  2300. description: |-
  2301. APIVersion defines the versioned schema of this representation of an object.
  2302. Servers should convert recognized schemas to the latest internal value, and
  2303. may reject unrecognized values.
  2304. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2305. type: string
  2306. kind:
  2307. description: |-
  2308. Kind is a string value representing the REST resource this object represents.
  2309. Servers may infer this from the endpoint the client submits requests to.
  2310. Cannot be updated.
  2311. In CamelCase.
  2312. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2313. type: string
  2314. metadata:
  2315. type: object
  2316. spec:
  2317. description: SecretStoreSpec defines the desired state of SecretStore.
  2318. properties:
  2319. conditions:
  2320. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  2321. items:
  2322. description: |-
  2323. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2324. for a ClusterSecretStore instance.
  2325. properties:
  2326. namespaceRegexes:
  2327. description: Choose namespaces by using regex matching
  2328. items:
  2329. type: string
  2330. type: array
  2331. namespaceSelector:
  2332. description: Choose namespace using a labelSelector
  2333. properties:
  2334. matchExpressions:
  2335. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2336. items:
  2337. description: |-
  2338. A label selector requirement is a selector that contains values, a key, and an operator that
  2339. relates the key and values.
  2340. properties:
  2341. key:
  2342. description: key is the label key that the selector applies to.
  2343. type: string
  2344. operator:
  2345. description: |-
  2346. operator represents a key's relationship to a set of values.
  2347. Valid operators are In, NotIn, Exists and DoesNotExist.
  2348. type: string
  2349. values:
  2350. description: |-
  2351. values is an array of string values. If the operator is In or NotIn,
  2352. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2353. the values array must be empty. This array is replaced during a strategic
  2354. merge patch.
  2355. items:
  2356. type: string
  2357. type: array
  2358. x-kubernetes-list-type: atomic
  2359. required:
  2360. - key
  2361. - operator
  2362. type: object
  2363. type: array
  2364. x-kubernetes-list-type: atomic
  2365. matchLabels:
  2366. additionalProperties:
  2367. type: string
  2368. description: |-
  2369. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2370. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2371. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2372. type: object
  2373. type: object
  2374. x-kubernetes-map-type: atomic
  2375. namespaces:
  2376. description: Choose namespaces by name
  2377. items:
  2378. maxLength: 63
  2379. minLength: 1
  2380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2381. type: string
  2382. type: array
  2383. type: object
  2384. type: array
  2385. controller:
  2386. description: |-
  2387. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2388. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2389. type: string
  2390. provider:
  2391. description: Used to configure the provider. Only one provider may be set
  2392. maxProperties: 1
  2393. minProperties: 1
  2394. properties:
  2395. akeyless:
  2396. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2397. properties:
  2398. akeylessGWApiURL:
  2399. description: Akeyless GW API Url from which the secrets to be fetched from.
  2400. type: string
  2401. authSecretRef:
  2402. description: Auth configures how the operator authenticates with Akeyless.
  2403. properties:
  2404. kubernetesAuth:
  2405. description: |-
  2406. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2407. token stored in the named Secret resource.
  2408. properties:
  2409. accessID:
  2410. description: the Akeyless Kubernetes auth-method access-id
  2411. type: string
  2412. k8sConfName:
  2413. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2414. type: string
  2415. secretRef:
  2416. description: |-
  2417. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2418. for authenticating with Akeyless. If a name is specified without a key,
  2419. `token` is the default. If one is not specified, the one bound to
  2420. the controller will be used.
  2421. properties:
  2422. key:
  2423. description: |-
  2424. A key in the referenced Secret.
  2425. Some instances of this field may be defaulted, in others it may be required.
  2426. maxLength: 253
  2427. minLength: 1
  2428. pattern: ^[-._a-zA-Z0-9]+$
  2429. type: string
  2430. name:
  2431. description: The name of the Secret resource being referred to.
  2432. maxLength: 253
  2433. minLength: 1
  2434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2435. type: string
  2436. namespace:
  2437. description: |-
  2438. The namespace of the Secret resource being referred to.
  2439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2440. maxLength: 63
  2441. minLength: 1
  2442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2443. type: string
  2444. type: object
  2445. serviceAccountRef:
  2446. description: |-
  2447. Optional service account field containing the name of a kubernetes ServiceAccount.
  2448. If the service account is specified, the service account secret token JWT will be used
  2449. for authenticating with Akeyless. If the service account selector is not supplied,
  2450. the secretRef will be used instead.
  2451. properties:
  2452. audiences:
  2453. description: |-
  2454. Audience specifies the `aud` claim for the service account token
  2455. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2456. then this audiences will be appended to the list
  2457. items:
  2458. type: string
  2459. type: array
  2460. name:
  2461. description: The name of the ServiceAccount resource being referred to.
  2462. maxLength: 253
  2463. minLength: 1
  2464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2465. type: string
  2466. namespace:
  2467. description: |-
  2468. Namespace of the resource being referred to.
  2469. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2470. maxLength: 63
  2471. minLength: 1
  2472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2473. type: string
  2474. required:
  2475. - name
  2476. type: object
  2477. required:
  2478. - accessID
  2479. - k8sConfName
  2480. type: object
  2481. secretRef:
  2482. description: |-
  2483. Reference to a Secret that contains the details
  2484. to authenticate with Akeyless.
  2485. properties:
  2486. accessID:
  2487. description: The SecretAccessID is used for authentication
  2488. properties:
  2489. key:
  2490. description: |-
  2491. A key in the referenced Secret.
  2492. Some instances of this field may be defaulted, in others it may be required.
  2493. maxLength: 253
  2494. minLength: 1
  2495. pattern: ^[-._a-zA-Z0-9]+$
  2496. type: string
  2497. name:
  2498. description: The name of the Secret resource being referred to.
  2499. maxLength: 253
  2500. minLength: 1
  2501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2502. type: string
  2503. namespace:
  2504. description: |-
  2505. The namespace of the Secret resource being referred to.
  2506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2507. maxLength: 63
  2508. minLength: 1
  2509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2510. type: string
  2511. type: object
  2512. accessType:
  2513. description: |-
  2514. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2515. In some instances, `key` is a required field.
  2516. properties:
  2517. key:
  2518. description: |-
  2519. A key in the referenced Secret.
  2520. Some instances of this field may be defaulted, in others it may be required.
  2521. maxLength: 253
  2522. minLength: 1
  2523. pattern: ^[-._a-zA-Z0-9]+$
  2524. type: string
  2525. name:
  2526. description: The name of the Secret resource being referred to.
  2527. maxLength: 253
  2528. minLength: 1
  2529. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2530. type: string
  2531. namespace:
  2532. description: |-
  2533. The namespace of the Secret resource being referred to.
  2534. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2535. maxLength: 63
  2536. minLength: 1
  2537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2538. type: string
  2539. type: object
  2540. accessTypeParam:
  2541. description: |-
  2542. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2543. In some instances, `key` is a required field.
  2544. properties:
  2545. key:
  2546. description: |-
  2547. A key in the referenced Secret.
  2548. Some instances of this field may be defaulted, in others it may be required.
  2549. maxLength: 253
  2550. minLength: 1
  2551. pattern: ^[-._a-zA-Z0-9]+$
  2552. type: string
  2553. name:
  2554. description: The name of the Secret resource being referred to.
  2555. maxLength: 253
  2556. minLength: 1
  2557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2558. type: string
  2559. namespace:
  2560. description: |-
  2561. The namespace of the Secret resource being referred to.
  2562. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2563. maxLength: 63
  2564. minLength: 1
  2565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2566. type: string
  2567. type: object
  2568. type: object
  2569. type: object
  2570. caBundle:
  2571. description: |-
  2572. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2573. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2574. are used to validate the TLS connection.
  2575. format: byte
  2576. type: string
  2577. caProvider:
  2578. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2579. properties:
  2580. key:
  2581. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2582. maxLength: 253
  2583. minLength: 1
  2584. pattern: ^[-._a-zA-Z0-9]+$
  2585. type: string
  2586. name:
  2587. description: The name of the object located at the provider type.
  2588. maxLength: 253
  2589. minLength: 1
  2590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2591. type: string
  2592. namespace:
  2593. description: |-
  2594. The namespace the Provider type is in.
  2595. Can only be defined when used in a ClusterSecretStore.
  2596. maxLength: 63
  2597. minLength: 1
  2598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2599. type: string
  2600. type:
  2601. description: The type of provider to use such as "Secret", or "ConfigMap".
  2602. enum:
  2603. - Secret
  2604. - ConfigMap
  2605. type: string
  2606. required:
  2607. - name
  2608. - type
  2609. type: object
  2610. required:
  2611. - akeylessGWApiURL
  2612. - authSecretRef
  2613. type: object
  2614. aws:
  2615. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2616. properties:
  2617. additionalRoles:
  2618. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2619. items:
  2620. type: string
  2621. type: array
  2622. auth:
  2623. description: |-
  2624. Auth defines the information necessary to authenticate against AWS
  2625. if not set aws sdk will infer credentials from your environment
  2626. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2627. properties:
  2628. jwt:
  2629. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  2630. properties:
  2631. serviceAccountRef:
  2632. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  2633. properties:
  2634. audiences:
  2635. description: |-
  2636. Audience specifies the `aud` claim for the service account token
  2637. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2638. then this audiences will be appended to the list
  2639. items:
  2640. type: string
  2641. type: array
  2642. name:
  2643. description: The name of the ServiceAccount resource being referred to.
  2644. maxLength: 253
  2645. minLength: 1
  2646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2647. type: string
  2648. namespace:
  2649. description: |-
  2650. Namespace of the resource being referred to.
  2651. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2652. maxLength: 63
  2653. minLength: 1
  2654. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2655. type: string
  2656. required:
  2657. - name
  2658. type: object
  2659. type: object
  2660. secretRef:
  2661. description: |-
  2662. AWSAuthSecretRef holds secret references for AWS credentials
  2663. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2664. properties:
  2665. accessKeyIDSecretRef:
  2666. description: The AccessKeyID is used for authentication
  2667. properties:
  2668. key:
  2669. description: |-
  2670. A key in the referenced Secret.
  2671. Some instances of this field may be defaulted, in others it may be required.
  2672. maxLength: 253
  2673. minLength: 1
  2674. pattern: ^[-._a-zA-Z0-9]+$
  2675. type: string
  2676. name:
  2677. description: The name of the Secret resource being referred to.
  2678. maxLength: 253
  2679. minLength: 1
  2680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2681. type: string
  2682. namespace:
  2683. description: |-
  2684. The namespace of the Secret resource being referred to.
  2685. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2686. maxLength: 63
  2687. minLength: 1
  2688. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2689. type: string
  2690. type: object
  2691. secretAccessKeySecretRef:
  2692. description: The SecretAccessKey is used for authentication
  2693. properties:
  2694. key:
  2695. description: |-
  2696. A key in the referenced Secret.
  2697. Some instances of this field may be defaulted, in others it may be required.
  2698. maxLength: 253
  2699. minLength: 1
  2700. pattern: ^[-._a-zA-Z0-9]+$
  2701. type: string
  2702. name:
  2703. description: The name of the Secret resource being referred to.
  2704. maxLength: 253
  2705. minLength: 1
  2706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2707. type: string
  2708. namespace:
  2709. description: |-
  2710. The namespace of the Secret resource being referred to.
  2711. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2712. maxLength: 63
  2713. minLength: 1
  2714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2715. type: string
  2716. type: object
  2717. sessionTokenSecretRef:
  2718. description: |-
  2719. The SessionToken used for authentication
  2720. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2721. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2722. properties:
  2723. key:
  2724. description: |-
  2725. A key in the referenced Secret.
  2726. Some instances of this field may be defaulted, in others it may be required.
  2727. maxLength: 253
  2728. minLength: 1
  2729. pattern: ^[-._a-zA-Z0-9]+$
  2730. type: string
  2731. name:
  2732. description: The name of the Secret resource being referred to.
  2733. maxLength: 253
  2734. minLength: 1
  2735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2736. type: string
  2737. namespace:
  2738. description: |-
  2739. The namespace of the Secret resource being referred to.
  2740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2741. maxLength: 63
  2742. minLength: 1
  2743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2744. type: string
  2745. type: object
  2746. type: object
  2747. type: object
  2748. customSessionTags:
  2749. additionalProperties:
  2750. type: string
  2751. description: |-
  2752. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  2753. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  2754. type: object
  2755. x-kubernetes-validations:
  2756. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  2757. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  2758. externalID:
  2759. description: AWS External ID set on assumed IAM roles
  2760. type: string
  2761. prefix:
  2762. description: Prefix adds a prefix to all retrieved values.
  2763. type: string
  2764. region:
  2765. description: AWS Region to be used for the provider
  2766. type: string
  2767. role:
  2768. description: Role is a Role ARN which the provider will assume
  2769. type: string
  2770. secretsManager:
  2771. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2772. properties:
  2773. forceDeleteWithoutRecovery:
  2774. description: |-
  2775. Specifies whether to delete the secret without any recovery window. You
  2776. can't use both this parameter and RecoveryWindowInDays in the same call.
  2777. If you don't use either, then by default Secrets Manager uses a 30 day
  2778. recovery window.
  2779. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2780. type: boolean
  2781. recoveryWindowInDays:
  2782. description: |-
  2783. The number of days from 7 to 30 that Secrets Manager waits before
  2784. permanently deleting the secret. You can't use both this parameter and
  2785. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2786. then by default Secrets Manager uses a 30-day recovery window.
  2787. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2788. format: int64
  2789. type: integer
  2790. type: object
  2791. service:
  2792. description: Service defines which service should be used to fetch the secrets
  2793. enum:
  2794. - SecretsManager
  2795. - ParameterStore
  2796. type: string
  2797. sessionTags:
  2798. description: AWS STS assume role session tags
  2799. items:
  2800. description: |-
  2801. Tag is a key-value pair that can be attached to an AWS resource.
  2802. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  2803. properties:
  2804. key:
  2805. type: string
  2806. value:
  2807. type: string
  2808. required:
  2809. - key
  2810. - value
  2811. type: object
  2812. type: array
  2813. sessionTagsPolicy:
  2814. default: None
  2815. description: |-
  2816. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  2817. None (default): no tags are added.
  2818. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  2819. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  2820. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  2821. enum:
  2822. - None
  2823. - Simple
  2824. - Custom
  2825. type: string
  2826. transitiveTagKeys:
  2827. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2828. items:
  2829. type: string
  2830. type: array
  2831. required:
  2832. - region
  2833. - service
  2834. type: object
  2835. azurekv:
  2836. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2837. properties:
  2838. authSecretRef:
  2839. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2840. properties:
  2841. clientCertificate:
  2842. description: The Azure ClientCertificate of the service principle used for authentication.
  2843. properties:
  2844. key:
  2845. description: |-
  2846. A key in the referenced Secret.
  2847. Some instances of this field may be defaulted, in others it may be required.
  2848. maxLength: 253
  2849. minLength: 1
  2850. pattern: ^[-._a-zA-Z0-9]+$
  2851. type: string
  2852. name:
  2853. description: The name of the Secret resource being referred to.
  2854. maxLength: 253
  2855. minLength: 1
  2856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2857. type: string
  2858. namespace:
  2859. description: |-
  2860. The namespace of the Secret resource being referred to.
  2861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2862. maxLength: 63
  2863. minLength: 1
  2864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2865. type: string
  2866. type: object
  2867. clientId:
  2868. description: The Azure clientId of the service principle or managed identity used for authentication.
  2869. properties:
  2870. key:
  2871. description: |-
  2872. A key in the referenced Secret.
  2873. Some instances of this field may be defaulted, in others it may be required.
  2874. maxLength: 253
  2875. minLength: 1
  2876. pattern: ^[-._a-zA-Z0-9]+$
  2877. type: string
  2878. name:
  2879. description: The name of the Secret resource being referred to.
  2880. maxLength: 253
  2881. minLength: 1
  2882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2883. type: string
  2884. namespace:
  2885. description: |-
  2886. The namespace of the Secret resource being referred to.
  2887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2888. maxLength: 63
  2889. minLength: 1
  2890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2891. type: string
  2892. type: object
  2893. clientSecret:
  2894. description: The Azure ClientSecret of the service principle used for authentication.
  2895. properties:
  2896. key:
  2897. description: |-
  2898. A key in the referenced Secret.
  2899. Some instances of this field may be defaulted, in others it may be required.
  2900. maxLength: 253
  2901. minLength: 1
  2902. pattern: ^[-._a-zA-Z0-9]+$
  2903. type: string
  2904. name:
  2905. description: The name of the Secret resource being referred to.
  2906. maxLength: 253
  2907. minLength: 1
  2908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2909. type: string
  2910. namespace:
  2911. description: |-
  2912. The namespace of the Secret resource being referred to.
  2913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2914. maxLength: 63
  2915. minLength: 1
  2916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2917. type: string
  2918. type: object
  2919. tenantId:
  2920. description: The Azure tenantId of the managed identity used for authentication.
  2921. properties:
  2922. key:
  2923. description: |-
  2924. A key in the referenced Secret.
  2925. Some instances of this field may be defaulted, in others it may be required.
  2926. maxLength: 253
  2927. minLength: 1
  2928. pattern: ^[-._a-zA-Z0-9]+$
  2929. type: string
  2930. name:
  2931. description: The name of the Secret resource being referred to.
  2932. maxLength: 253
  2933. minLength: 1
  2934. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2935. type: string
  2936. namespace:
  2937. description: |-
  2938. The namespace of the Secret resource being referred to.
  2939. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2940. maxLength: 63
  2941. minLength: 1
  2942. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2943. type: string
  2944. type: object
  2945. type: object
  2946. authType:
  2947. default: ServicePrincipal
  2948. description: |-
  2949. Auth type defines how to authenticate to the keyvault service.
  2950. Valid values are:
  2951. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2952. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2953. enum:
  2954. - ServicePrincipal
  2955. - ManagedIdentity
  2956. - WorkloadIdentity
  2957. type: string
  2958. customCloudConfig:
  2959. description: |-
  2960. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  2961. Required when EnvironmentType is AzureStackCloud.
  2962. Optional for other environment types - useful for Azure China when using Workload Identity
  2963. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  2964. standard China Cloud endpoint (login.chinacloudapi.cn).
  2965. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  2966. configuration is not supported with the legacy go-autorest SDK.
  2967. properties:
  2968. activeDirectoryEndpoint:
  2969. description: |-
  2970. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  2971. Required when using custom cloud configuration
  2972. type: string
  2973. keyVaultDNSSuffix:
  2974. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  2975. type: string
  2976. keyVaultEndpoint:
  2977. description: KeyVaultEndpoint is the Key Vault service endpoint
  2978. type: string
  2979. resourceManagerEndpoint:
  2980. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  2981. type: string
  2982. required:
  2983. - activeDirectoryEndpoint
  2984. type: object
  2985. environmentType:
  2986. default: PublicCloud
  2987. description: |-
  2988. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2989. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2990. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2991. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  2992. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  2993. enum:
  2994. - PublicCloud
  2995. - USGovernmentCloud
  2996. - ChinaCloud
  2997. - GermanCloud
  2998. - AzureStackCloud
  2999. type: string
  3000. identityId:
  3001. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3002. type: string
  3003. serviceAccountRef:
  3004. description: |-
  3005. ServiceAccountRef specified the service account
  3006. that should be used when authenticating with WorkloadIdentity.
  3007. properties:
  3008. audiences:
  3009. description: |-
  3010. Audience specifies the `aud` claim for the service account token
  3011. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3012. then this audiences will be appended to the list
  3013. items:
  3014. type: string
  3015. type: array
  3016. name:
  3017. description: The name of the ServiceAccount resource being referred to.
  3018. maxLength: 253
  3019. minLength: 1
  3020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3021. type: string
  3022. namespace:
  3023. description: |-
  3024. Namespace of the resource being referred to.
  3025. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3026. maxLength: 63
  3027. minLength: 1
  3028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3029. type: string
  3030. required:
  3031. - name
  3032. type: object
  3033. tenantId:
  3034. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3035. type: string
  3036. useAzureSDK:
  3037. default: false
  3038. description: |-
  3039. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3040. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3041. type: boolean
  3042. vaultUrl:
  3043. description: Vault Url from which the secrets to be fetched from.
  3044. type: string
  3045. required:
  3046. - vaultUrl
  3047. type: object
  3048. barbican:
  3049. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3050. properties:
  3051. auth:
  3052. description: BarbicanAuth contains the authentication information for Barbican.
  3053. properties:
  3054. password:
  3055. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3056. properties:
  3057. secretRef:
  3058. description: |-
  3059. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3060. In some instances, `key` is a required field.
  3061. properties:
  3062. key:
  3063. description: |-
  3064. A key in the referenced Secret.
  3065. Some instances of this field may be defaulted, in others it may be required.
  3066. maxLength: 253
  3067. minLength: 1
  3068. pattern: ^[-._a-zA-Z0-9]+$
  3069. type: string
  3070. name:
  3071. description: The name of the Secret resource being referred to.
  3072. maxLength: 253
  3073. minLength: 1
  3074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3075. type: string
  3076. namespace:
  3077. description: |-
  3078. The namespace of the Secret resource being referred to.
  3079. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3080. maxLength: 63
  3081. minLength: 1
  3082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3083. type: string
  3084. type: object
  3085. required:
  3086. - secretRef
  3087. type: object
  3088. username:
  3089. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3090. maxProperties: 1
  3091. minProperties: 1
  3092. properties:
  3093. secretRef:
  3094. description: |-
  3095. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3096. In some instances, `key` is a required field.
  3097. properties:
  3098. key:
  3099. description: |-
  3100. A key in the referenced Secret.
  3101. Some instances of this field may be defaulted, in others it may be required.
  3102. maxLength: 253
  3103. minLength: 1
  3104. pattern: ^[-._a-zA-Z0-9]+$
  3105. type: string
  3106. name:
  3107. description: The name of the Secret resource being referred to.
  3108. maxLength: 253
  3109. minLength: 1
  3110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3111. type: string
  3112. namespace:
  3113. description: |-
  3114. The namespace of the Secret resource being referred to.
  3115. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3116. maxLength: 63
  3117. minLength: 1
  3118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3119. type: string
  3120. type: object
  3121. value:
  3122. type: string
  3123. type: object
  3124. required:
  3125. - password
  3126. - username
  3127. type: object
  3128. authURL:
  3129. type: string
  3130. domainName:
  3131. type: string
  3132. region:
  3133. type: string
  3134. tenantName:
  3135. type: string
  3136. required:
  3137. - auth
  3138. type: object
  3139. beyondtrust:
  3140. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3141. properties:
  3142. auth:
  3143. description: Auth configures how the operator authenticates with Beyondtrust.
  3144. properties:
  3145. apiKey:
  3146. description: APIKey If not provided then ClientID/ClientSecret become required.
  3147. properties:
  3148. secretRef:
  3149. description: SecretRef references a key in a secret that will be used as value.
  3150. properties:
  3151. key:
  3152. description: |-
  3153. A key in the referenced Secret.
  3154. Some instances of this field may be defaulted, in others it may be required.
  3155. maxLength: 253
  3156. minLength: 1
  3157. pattern: ^[-._a-zA-Z0-9]+$
  3158. type: string
  3159. name:
  3160. description: The name of the Secret resource being referred to.
  3161. maxLength: 253
  3162. minLength: 1
  3163. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3164. type: string
  3165. namespace:
  3166. description: |-
  3167. The namespace of the Secret resource being referred to.
  3168. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3169. maxLength: 63
  3170. minLength: 1
  3171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3172. type: string
  3173. type: object
  3174. value:
  3175. description: Value can be specified directly to set a value without using a secret.
  3176. type: string
  3177. type: object
  3178. certificate:
  3179. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3180. properties:
  3181. secretRef:
  3182. description: SecretRef references a key in a secret that will be used as value.
  3183. properties:
  3184. key:
  3185. description: |-
  3186. A key in the referenced Secret.
  3187. Some instances of this field may be defaulted, in others it may be required.
  3188. maxLength: 253
  3189. minLength: 1
  3190. pattern: ^[-._a-zA-Z0-9]+$
  3191. type: string
  3192. name:
  3193. description: The name of the Secret resource being referred to.
  3194. maxLength: 253
  3195. minLength: 1
  3196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3197. type: string
  3198. namespace:
  3199. description: |-
  3200. The namespace of the Secret resource being referred to.
  3201. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3202. maxLength: 63
  3203. minLength: 1
  3204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3205. type: string
  3206. type: object
  3207. value:
  3208. description: Value can be specified directly to set a value without using a secret.
  3209. type: string
  3210. type: object
  3211. certificateKey:
  3212. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3213. properties:
  3214. secretRef:
  3215. description: SecretRef references a key in a secret that will be used as value.
  3216. properties:
  3217. key:
  3218. description: |-
  3219. A key in the referenced Secret.
  3220. Some instances of this field may be defaulted, in others it may be required.
  3221. maxLength: 253
  3222. minLength: 1
  3223. pattern: ^[-._a-zA-Z0-9]+$
  3224. type: string
  3225. name:
  3226. description: The name of the Secret resource being referred to.
  3227. maxLength: 253
  3228. minLength: 1
  3229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3230. type: string
  3231. namespace:
  3232. description: |-
  3233. The namespace of the Secret resource being referred to.
  3234. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3235. maxLength: 63
  3236. minLength: 1
  3237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3238. type: string
  3239. type: object
  3240. value:
  3241. description: Value can be specified directly to set a value without using a secret.
  3242. type: string
  3243. type: object
  3244. clientId:
  3245. description: ClientID is the API OAuth Client ID.
  3246. properties:
  3247. secretRef:
  3248. description: SecretRef references a key in a secret that will be used as value.
  3249. properties:
  3250. key:
  3251. description: |-
  3252. A key in the referenced Secret.
  3253. Some instances of this field may be defaulted, in others it may be required.
  3254. maxLength: 253
  3255. minLength: 1
  3256. pattern: ^[-._a-zA-Z0-9]+$
  3257. type: string
  3258. name:
  3259. description: The name of the Secret resource being referred to.
  3260. maxLength: 253
  3261. minLength: 1
  3262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3263. type: string
  3264. namespace:
  3265. description: |-
  3266. The namespace of the Secret resource being referred to.
  3267. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3268. maxLength: 63
  3269. minLength: 1
  3270. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3271. type: string
  3272. type: object
  3273. value:
  3274. description: Value can be specified directly to set a value without using a secret.
  3275. type: string
  3276. type: object
  3277. clientSecret:
  3278. description: ClientSecret is the API OAuth Client Secret.
  3279. properties:
  3280. secretRef:
  3281. description: SecretRef references a key in a secret that will be used as value.
  3282. properties:
  3283. key:
  3284. description: |-
  3285. A key in the referenced Secret.
  3286. Some instances of this field may be defaulted, in others it may be required.
  3287. maxLength: 253
  3288. minLength: 1
  3289. pattern: ^[-._a-zA-Z0-9]+$
  3290. type: string
  3291. name:
  3292. description: The name of the Secret resource being referred to.
  3293. maxLength: 253
  3294. minLength: 1
  3295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3296. type: string
  3297. namespace:
  3298. description: |-
  3299. The namespace of the Secret resource being referred to.
  3300. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3301. maxLength: 63
  3302. minLength: 1
  3303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3304. type: string
  3305. type: object
  3306. value:
  3307. description: Value can be specified directly to set a value without using a secret.
  3308. type: string
  3309. type: object
  3310. type: object
  3311. server:
  3312. description: Auth configures how API server works.
  3313. properties:
  3314. apiUrl:
  3315. type: string
  3316. apiVersion:
  3317. type: string
  3318. clientTimeOutSeconds:
  3319. 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.
  3320. type: integer
  3321. decrypt:
  3322. default: true
  3323. 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.'
  3324. type: boolean
  3325. retrievalType:
  3326. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3327. type: string
  3328. separator:
  3329. description: A character that separates the folder names.
  3330. type: string
  3331. verifyCA:
  3332. type: boolean
  3333. required:
  3334. - apiUrl
  3335. - verifyCA
  3336. type: object
  3337. required:
  3338. - auth
  3339. - server
  3340. type: object
  3341. bitwardensecretsmanager:
  3342. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3343. properties:
  3344. apiURL:
  3345. type: string
  3346. auth:
  3347. description: |-
  3348. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3349. Make sure that the token being used has permissions on the given secret.
  3350. properties:
  3351. secretRef:
  3352. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3353. properties:
  3354. credentials:
  3355. description: AccessToken used for the bitwarden instance.
  3356. properties:
  3357. key:
  3358. description: |-
  3359. A key in the referenced Secret.
  3360. Some instances of this field may be defaulted, in others it may be required.
  3361. maxLength: 253
  3362. minLength: 1
  3363. pattern: ^[-._a-zA-Z0-9]+$
  3364. type: string
  3365. name:
  3366. description: The name of the Secret resource being referred to.
  3367. maxLength: 253
  3368. minLength: 1
  3369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3370. type: string
  3371. namespace:
  3372. description: |-
  3373. The namespace of the Secret resource being referred to.
  3374. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3375. maxLength: 63
  3376. minLength: 1
  3377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3378. type: string
  3379. type: object
  3380. required:
  3381. - credentials
  3382. type: object
  3383. required:
  3384. - secretRef
  3385. type: object
  3386. bitwardenServerSDKURL:
  3387. type: string
  3388. caBundle:
  3389. description: |-
  3390. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3391. can be performed.
  3392. type: string
  3393. caProvider:
  3394. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3395. properties:
  3396. key:
  3397. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3398. maxLength: 253
  3399. minLength: 1
  3400. pattern: ^[-._a-zA-Z0-9]+$
  3401. type: string
  3402. name:
  3403. description: The name of the object located at the provider type.
  3404. maxLength: 253
  3405. minLength: 1
  3406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3407. type: string
  3408. namespace:
  3409. description: |-
  3410. The namespace the Provider type is in.
  3411. Can only be defined when used in a ClusterSecretStore.
  3412. maxLength: 63
  3413. minLength: 1
  3414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3415. type: string
  3416. type:
  3417. description: The type of provider to use such as "Secret", or "ConfigMap".
  3418. enum:
  3419. - Secret
  3420. - ConfigMap
  3421. type: string
  3422. required:
  3423. - name
  3424. - type
  3425. type: object
  3426. identityURL:
  3427. type: string
  3428. organizationID:
  3429. description: OrganizationID determines which organization this secret store manages.
  3430. type: string
  3431. projectID:
  3432. description: ProjectID determines which project this secret store manages.
  3433. type: string
  3434. required:
  3435. - auth
  3436. - organizationID
  3437. - projectID
  3438. type: object
  3439. chef:
  3440. description: Chef configures this store to sync secrets with chef server
  3441. properties:
  3442. auth:
  3443. description: Auth defines the information necessary to authenticate against chef Server
  3444. properties:
  3445. secretRef:
  3446. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3447. properties:
  3448. privateKeySecretRef:
  3449. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3450. properties:
  3451. key:
  3452. description: |-
  3453. A key in the referenced Secret.
  3454. Some instances of this field may be defaulted, in others it may be required.
  3455. maxLength: 253
  3456. minLength: 1
  3457. pattern: ^[-._a-zA-Z0-9]+$
  3458. type: string
  3459. name:
  3460. description: The name of the Secret resource being referred to.
  3461. maxLength: 253
  3462. minLength: 1
  3463. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3464. type: string
  3465. namespace:
  3466. description: |-
  3467. The namespace of the Secret resource being referred to.
  3468. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3469. maxLength: 63
  3470. minLength: 1
  3471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3472. type: string
  3473. type: object
  3474. required:
  3475. - privateKeySecretRef
  3476. type: object
  3477. required:
  3478. - secretRef
  3479. type: object
  3480. serverUrl:
  3481. 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 "/"
  3482. type: string
  3483. username:
  3484. description: UserName should be the user ID on the chef server
  3485. type: string
  3486. required:
  3487. - auth
  3488. - serverUrl
  3489. - username
  3490. type: object
  3491. cloudrusm:
  3492. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3493. properties:
  3494. auth:
  3495. description: CSMAuth contains a secretRef for credentials.
  3496. properties:
  3497. secretRef:
  3498. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3499. properties:
  3500. accessKeyIDSecretRef:
  3501. description: The AccessKeyID is used for authentication
  3502. properties:
  3503. key:
  3504. description: |-
  3505. A key in the referenced Secret.
  3506. Some instances of this field may be defaulted, in others it may be required.
  3507. maxLength: 253
  3508. minLength: 1
  3509. pattern: ^[-._a-zA-Z0-9]+$
  3510. type: string
  3511. name:
  3512. description: The name of the Secret resource being referred to.
  3513. maxLength: 253
  3514. minLength: 1
  3515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3516. type: string
  3517. namespace:
  3518. description: |-
  3519. The namespace of the Secret resource being referred to.
  3520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3521. maxLength: 63
  3522. minLength: 1
  3523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3524. type: string
  3525. type: object
  3526. accessKeySecretSecretRef:
  3527. description: The AccessKeySecret is used for authentication
  3528. properties:
  3529. key:
  3530. description: |-
  3531. A key in the referenced Secret.
  3532. Some instances of this field may be defaulted, in others it may be required.
  3533. maxLength: 253
  3534. minLength: 1
  3535. pattern: ^[-._a-zA-Z0-9]+$
  3536. type: string
  3537. name:
  3538. description: The name of the Secret resource being referred to.
  3539. maxLength: 253
  3540. minLength: 1
  3541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3542. type: string
  3543. namespace:
  3544. description: |-
  3545. The namespace of the Secret resource being referred to.
  3546. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3547. maxLength: 63
  3548. minLength: 1
  3549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3550. type: string
  3551. type: object
  3552. required:
  3553. - accessKeyIDSecretRef
  3554. - accessKeySecretSecretRef
  3555. type: object
  3556. type: object
  3557. projectID:
  3558. description: ProjectID is the project, which the secrets are stored in.
  3559. type: string
  3560. required:
  3561. - auth
  3562. type: object
  3563. conjur:
  3564. description: Conjur configures this store to sync secrets using conjur provider
  3565. properties:
  3566. auth:
  3567. description: Defines authentication settings for connecting to Conjur.
  3568. properties:
  3569. apikey:
  3570. description: Authenticates with Conjur using an API key.
  3571. properties:
  3572. account:
  3573. description: Account is the Conjur organization account name.
  3574. type: string
  3575. apiKeyRef:
  3576. description: |-
  3577. A reference to a specific 'key' containing the Conjur API key
  3578. within a Secret resource. In some instances, `key` is a required field.
  3579. properties:
  3580. key:
  3581. description: |-
  3582. A key in the referenced Secret.
  3583. Some instances of this field may be defaulted, in others it may be required.
  3584. maxLength: 253
  3585. minLength: 1
  3586. pattern: ^[-._a-zA-Z0-9]+$
  3587. type: string
  3588. name:
  3589. description: The name of the Secret resource being referred to.
  3590. maxLength: 253
  3591. minLength: 1
  3592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3593. type: string
  3594. namespace:
  3595. description: |-
  3596. The namespace of the Secret resource being referred to.
  3597. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3598. maxLength: 63
  3599. minLength: 1
  3600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3601. type: string
  3602. type: object
  3603. userRef:
  3604. description: |-
  3605. A reference to a specific 'key' containing the Conjur username
  3606. within a Secret resource. In some instances, `key` is a required field.
  3607. properties:
  3608. key:
  3609. description: |-
  3610. A key in the referenced Secret.
  3611. Some instances of this field may be defaulted, in others it may be required.
  3612. maxLength: 253
  3613. minLength: 1
  3614. pattern: ^[-._a-zA-Z0-9]+$
  3615. type: string
  3616. name:
  3617. description: The name of the Secret resource being referred to.
  3618. maxLength: 253
  3619. minLength: 1
  3620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3621. type: string
  3622. namespace:
  3623. description: |-
  3624. The namespace of the Secret resource being referred to.
  3625. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3626. maxLength: 63
  3627. minLength: 1
  3628. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3629. type: string
  3630. type: object
  3631. required:
  3632. - account
  3633. - apiKeyRef
  3634. - userRef
  3635. type: object
  3636. jwt:
  3637. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3638. properties:
  3639. account:
  3640. description: Account is the Conjur organization account name.
  3641. type: string
  3642. hostId:
  3643. description: |-
  3644. Optional HostID for JWT authentication. This may be used depending
  3645. on how the Conjur JWT authenticator policy is configured.
  3646. type: string
  3647. secretRef:
  3648. description: |-
  3649. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3650. authenticate with Conjur using the JWT authentication method.
  3651. properties:
  3652. key:
  3653. description: |-
  3654. A key in the referenced Secret.
  3655. Some instances of this field may be defaulted, in others it may be required.
  3656. maxLength: 253
  3657. minLength: 1
  3658. pattern: ^[-._a-zA-Z0-9]+$
  3659. type: string
  3660. name:
  3661. description: The name of the Secret resource being referred to.
  3662. maxLength: 253
  3663. minLength: 1
  3664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3665. type: string
  3666. namespace:
  3667. description: |-
  3668. The namespace of the Secret resource being referred to.
  3669. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3670. maxLength: 63
  3671. minLength: 1
  3672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3673. type: string
  3674. type: object
  3675. serviceAccountRef:
  3676. description: |-
  3677. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3678. a token for with the `TokenRequest` API.
  3679. properties:
  3680. audiences:
  3681. description: |-
  3682. Audience specifies the `aud` claim for the service account token
  3683. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3684. then this audiences will be appended to the list
  3685. items:
  3686. type: string
  3687. type: array
  3688. name:
  3689. description: The name of the ServiceAccount resource being referred to.
  3690. maxLength: 253
  3691. minLength: 1
  3692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3693. type: string
  3694. namespace:
  3695. description: |-
  3696. Namespace of the resource being referred to.
  3697. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3698. maxLength: 63
  3699. minLength: 1
  3700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3701. type: string
  3702. required:
  3703. - name
  3704. type: object
  3705. serviceID:
  3706. description: The conjur authn jwt webservice id
  3707. type: string
  3708. required:
  3709. - account
  3710. - serviceID
  3711. type: object
  3712. type: object
  3713. caBundle:
  3714. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3715. type: string
  3716. caProvider:
  3717. description: |-
  3718. Used to provide custom certificate authority (CA) certificates
  3719. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3720. that contains a PEM-encoded certificate.
  3721. properties:
  3722. key:
  3723. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3724. maxLength: 253
  3725. minLength: 1
  3726. pattern: ^[-._a-zA-Z0-9]+$
  3727. type: string
  3728. name:
  3729. description: The name of the object located at the provider type.
  3730. maxLength: 253
  3731. minLength: 1
  3732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3733. type: string
  3734. namespace:
  3735. description: |-
  3736. The namespace the Provider type is in.
  3737. Can only be defined when used in a ClusterSecretStore.
  3738. maxLength: 63
  3739. minLength: 1
  3740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3741. type: string
  3742. type:
  3743. description: The type of provider to use such as "Secret", or "ConfigMap".
  3744. enum:
  3745. - Secret
  3746. - ConfigMap
  3747. type: string
  3748. required:
  3749. - name
  3750. - type
  3751. type: object
  3752. url:
  3753. description: URL is the endpoint of the Conjur instance.
  3754. type: string
  3755. required:
  3756. - auth
  3757. - url
  3758. type: object
  3759. delinea:
  3760. description: |-
  3761. Delinea DevOps Secrets Vault
  3762. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3763. properties:
  3764. clientId:
  3765. description: ClientID is the non-secret part of the credential.
  3766. properties:
  3767. secretRef:
  3768. description: SecretRef references a key in a secret that will be used as value.
  3769. properties:
  3770. key:
  3771. description: |-
  3772. A key in the referenced Secret.
  3773. Some instances of this field may be defaulted, in others it may be required.
  3774. maxLength: 253
  3775. minLength: 1
  3776. pattern: ^[-._a-zA-Z0-9]+$
  3777. type: string
  3778. name:
  3779. description: The name of the Secret resource being referred to.
  3780. maxLength: 253
  3781. minLength: 1
  3782. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3783. type: string
  3784. namespace:
  3785. description: |-
  3786. The namespace of the Secret resource being referred to.
  3787. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3788. maxLength: 63
  3789. minLength: 1
  3790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3791. type: string
  3792. type: object
  3793. value:
  3794. description: Value can be specified directly to set a value without using a secret.
  3795. type: string
  3796. type: object
  3797. clientSecret:
  3798. description: ClientSecret is the secret part of the credential.
  3799. properties:
  3800. secretRef:
  3801. description: SecretRef references a key in a secret that will be used as value.
  3802. properties:
  3803. key:
  3804. description: |-
  3805. A key in the referenced Secret.
  3806. Some instances of this field may be defaulted, in others it may be required.
  3807. maxLength: 253
  3808. minLength: 1
  3809. pattern: ^[-._a-zA-Z0-9]+$
  3810. type: string
  3811. name:
  3812. description: The name of the Secret resource being referred to.
  3813. maxLength: 253
  3814. minLength: 1
  3815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3816. type: string
  3817. namespace:
  3818. description: |-
  3819. The namespace of the Secret resource being referred to.
  3820. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3821. maxLength: 63
  3822. minLength: 1
  3823. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3824. type: string
  3825. type: object
  3826. value:
  3827. description: Value can be specified directly to set a value without using a secret.
  3828. type: string
  3829. type: object
  3830. tenant:
  3831. description: Tenant is the chosen hostname / site name.
  3832. type: string
  3833. tld:
  3834. description: |-
  3835. TLD is based on the server location that was chosen during provisioning.
  3836. If unset, defaults to "com".
  3837. type: string
  3838. urlTemplate:
  3839. description: |-
  3840. URLTemplate
  3841. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  3842. type: string
  3843. required:
  3844. - clientId
  3845. - clientSecret
  3846. - tenant
  3847. type: object
  3848. doppler:
  3849. description: Doppler configures this store to sync secrets using the Doppler provider
  3850. properties:
  3851. auth:
  3852. description: Auth configures how the Operator authenticates with the Doppler API
  3853. properties:
  3854. oidcConfig:
  3855. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  3856. properties:
  3857. expirationSeconds:
  3858. default: 600
  3859. description: |-
  3860. ExpirationSeconds sets the ServiceAccount token validity duration.
  3861. Defaults to 10 minutes.
  3862. format: int64
  3863. type: integer
  3864. identity:
  3865. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  3866. type: string
  3867. serviceAccountRef:
  3868. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  3869. properties:
  3870. audiences:
  3871. description: |-
  3872. Audience specifies the `aud` claim for the service account token
  3873. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3874. then this audiences will be appended to the list
  3875. items:
  3876. type: string
  3877. type: array
  3878. name:
  3879. description: The name of the ServiceAccount resource being referred to.
  3880. maxLength: 253
  3881. minLength: 1
  3882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3883. type: string
  3884. namespace:
  3885. description: |-
  3886. Namespace of the resource being referred to.
  3887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3888. maxLength: 63
  3889. minLength: 1
  3890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3891. type: string
  3892. required:
  3893. - name
  3894. type: object
  3895. required:
  3896. - identity
  3897. - serviceAccountRef
  3898. type: object
  3899. secretRef:
  3900. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  3901. properties:
  3902. dopplerToken:
  3903. description: |-
  3904. The DopplerToken is used for authentication.
  3905. See https://docs.doppler.com/reference/api#authentication for auth token types.
  3906. The Key attribute defaults to dopplerToken if not specified.
  3907. properties:
  3908. key:
  3909. description: |-
  3910. A key in the referenced Secret.
  3911. Some instances of this field may be defaulted, in others it may be required.
  3912. maxLength: 253
  3913. minLength: 1
  3914. pattern: ^[-._a-zA-Z0-9]+$
  3915. type: string
  3916. name:
  3917. description: The name of the Secret resource being referred to.
  3918. maxLength: 253
  3919. minLength: 1
  3920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3921. type: string
  3922. namespace:
  3923. description: |-
  3924. The namespace of the Secret resource being referred to.
  3925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3926. maxLength: 63
  3927. minLength: 1
  3928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3929. type: string
  3930. type: object
  3931. required:
  3932. - dopplerToken
  3933. type: object
  3934. type: object
  3935. x-kubernetes-validations:
  3936. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  3937. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  3938. config:
  3939. description: Doppler config (required if not using a Service Token)
  3940. type: string
  3941. format:
  3942. description: Format enables the downloading of secrets as a file (string)
  3943. enum:
  3944. - json
  3945. - dotnet-json
  3946. - env
  3947. - yaml
  3948. - docker
  3949. type: string
  3950. nameTransformer:
  3951. description: Environment variable compatible name transforms that change secret names to a different format
  3952. enum:
  3953. - upper-camel
  3954. - camel
  3955. - lower-snake
  3956. - tf-var
  3957. - dotnet-env
  3958. - lower-kebab
  3959. type: string
  3960. project:
  3961. description: Doppler project (required if not using a Service Token)
  3962. type: string
  3963. required:
  3964. - auth
  3965. type: object
  3966. dvls:
  3967. description: DVLS configures this store to sync secrets using Devolutions Server provider
  3968. properties:
  3969. auth:
  3970. description: Auth defines the authentication method to use.
  3971. properties:
  3972. secretRef:
  3973. description: SecretRef contains the Application ID and Application Secret for authentication.
  3974. properties:
  3975. appId:
  3976. description: AppID is the reference to the secret containing the Application ID.
  3977. properties:
  3978. key:
  3979. description: |-
  3980. A key in the referenced Secret.
  3981. Some instances of this field may be defaulted, in others it may be required.
  3982. maxLength: 253
  3983. minLength: 1
  3984. pattern: ^[-._a-zA-Z0-9]+$
  3985. type: string
  3986. name:
  3987. description: The name of the Secret resource being referred to.
  3988. maxLength: 253
  3989. minLength: 1
  3990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3991. type: string
  3992. namespace:
  3993. description: |-
  3994. The namespace of the Secret resource being referred to.
  3995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3996. maxLength: 63
  3997. minLength: 1
  3998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3999. type: string
  4000. type: object
  4001. appSecret:
  4002. description: AppSecret is the reference to the secret containing the Application Secret.
  4003. properties:
  4004. key:
  4005. description: |-
  4006. A key in the referenced Secret.
  4007. Some instances of this field may be defaulted, in others it may be required.
  4008. maxLength: 253
  4009. minLength: 1
  4010. pattern: ^[-._a-zA-Z0-9]+$
  4011. type: string
  4012. name:
  4013. description: The name of the Secret resource being referred to.
  4014. maxLength: 253
  4015. minLength: 1
  4016. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4017. type: string
  4018. namespace:
  4019. description: |-
  4020. The namespace of the Secret resource being referred to.
  4021. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4022. maxLength: 63
  4023. minLength: 1
  4024. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4025. type: string
  4026. type: object
  4027. required:
  4028. - appId
  4029. - appSecret
  4030. type: object
  4031. required:
  4032. - secretRef
  4033. type: object
  4034. insecure:
  4035. description: |-
  4036. Insecure allows connecting to DVLS over plain HTTP.
  4037. This is NOT RECOMMENDED for production use.
  4038. Set to true only if you understand the security implications.
  4039. type: boolean
  4040. serverUrl:
  4041. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4042. type: string
  4043. vault:
  4044. description: |-
  4045. Vault is the name or UUID of the vault to fetch secrets from.
  4046. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  4047. type: string
  4048. required:
  4049. - auth
  4050. - serverUrl
  4051. type: object
  4052. fake:
  4053. description: Fake configures a store with static key/value pairs
  4054. properties:
  4055. data:
  4056. items:
  4057. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4058. properties:
  4059. key:
  4060. type: string
  4061. value:
  4062. type: string
  4063. version:
  4064. type: string
  4065. required:
  4066. - key
  4067. - value
  4068. type: object
  4069. type: array
  4070. validationResult:
  4071. description: ValidationResult is defined type for the number of validation results.
  4072. type: integer
  4073. required:
  4074. - data
  4075. type: object
  4076. fortanix:
  4077. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4078. properties:
  4079. apiKey:
  4080. description: APIKey is the API token to access SDKMS Applications.
  4081. properties:
  4082. secretRef:
  4083. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4084. properties:
  4085. key:
  4086. description: |-
  4087. A key in the referenced Secret.
  4088. Some instances of this field may be defaulted, in others it may be required.
  4089. maxLength: 253
  4090. minLength: 1
  4091. pattern: ^[-._a-zA-Z0-9]+$
  4092. type: string
  4093. name:
  4094. description: The name of the Secret resource being referred to.
  4095. maxLength: 253
  4096. minLength: 1
  4097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4098. type: string
  4099. namespace:
  4100. description: |-
  4101. The namespace of the Secret resource being referred to.
  4102. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4103. maxLength: 63
  4104. minLength: 1
  4105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4106. type: string
  4107. type: object
  4108. type: object
  4109. apiUrl:
  4110. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4111. type: string
  4112. type: object
  4113. gcpsm:
  4114. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4115. properties:
  4116. auth:
  4117. description: Auth defines the information necessary to authenticate against GCP
  4118. properties:
  4119. secretRef:
  4120. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4121. properties:
  4122. secretAccessKeySecretRef:
  4123. description: The SecretAccessKey is used for authentication
  4124. properties:
  4125. key:
  4126. description: |-
  4127. A key in the referenced Secret.
  4128. Some instances of this field may be defaulted, in others it may be required.
  4129. maxLength: 253
  4130. minLength: 1
  4131. pattern: ^[-._a-zA-Z0-9]+$
  4132. type: string
  4133. name:
  4134. description: The name of the Secret resource being referred to.
  4135. maxLength: 253
  4136. minLength: 1
  4137. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4138. type: string
  4139. namespace:
  4140. description: |-
  4141. The namespace of the Secret resource being referred to.
  4142. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4143. maxLength: 63
  4144. minLength: 1
  4145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4146. type: string
  4147. type: object
  4148. type: object
  4149. workloadIdentity:
  4150. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4151. properties:
  4152. clusterLocation:
  4153. description: |-
  4154. ClusterLocation is the location of the cluster
  4155. If not specified, it fetches information from the metadata server
  4156. type: string
  4157. clusterName:
  4158. description: |-
  4159. ClusterName is the name of the cluster
  4160. If not specified, it fetches information from the metadata server
  4161. type: string
  4162. clusterProjectID:
  4163. description: |-
  4164. ClusterProjectID is the project ID of the cluster
  4165. If not specified, it fetches information from the metadata server
  4166. type: string
  4167. serviceAccountRef:
  4168. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4169. properties:
  4170. audiences:
  4171. description: |-
  4172. Audience specifies the `aud` claim for the service account token
  4173. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4174. then this audiences will be appended to the list
  4175. items:
  4176. type: string
  4177. type: array
  4178. name:
  4179. description: The name of the ServiceAccount 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. Namespace of the 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. required:
  4193. - name
  4194. type: object
  4195. required:
  4196. - serviceAccountRef
  4197. type: object
  4198. workloadIdentityFederation:
  4199. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4200. properties:
  4201. audience:
  4202. description: |-
  4203. 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.
  4204. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4205. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4206. type: string
  4207. awsSecurityCredentials:
  4208. description: |-
  4209. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4210. when using the AWS metadata server is not an option.
  4211. properties:
  4212. awsCredentialsSecretRef:
  4213. description: |-
  4214. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4215. Secret should be created with below names for keys
  4216. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4217. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4218. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4219. properties:
  4220. name:
  4221. description: name of the secret.
  4222. maxLength: 253
  4223. minLength: 1
  4224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4225. type: string
  4226. namespace:
  4227. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4228. maxLength: 63
  4229. minLength: 1
  4230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4231. type: string
  4232. required:
  4233. - name
  4234. type: object
  4235. region:
  4236. description: region is for configuring the AWS region to be used.
  4237. example: ap-south-1
  4238. maxLength: 50
  4239. minLength: 1
  4240. pattern: ^[a-z0-9-]+$
  4241. type: string
  4242. required:
  4243. - awsCredentialsSecretRef
  4244. - region
  4245. type: object
  4246. credConfig:
  4247. description: |-
  4248. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4249. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4250. serviceAccountRef must be used by providing operators service account details.
  4251. properties:
  4252. key:
  4253. description: key name holding the external account credential config.
  4254. maxLength: 253
  4255. minLength: 1
  4256. pattern: ^[-._a-zA-Z0-9]+$
  4257. type: string
  4258. name:
  4259. description: name of the configmap.
  4260. maxLength: 253
  4261. minLength: 1
  4262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4263. type: string
  4264. namespace:
  4265. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4266. maxLength: 63
  4267. minLength: 1
  4268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4269. type: string
  4270. required:
  4271. - key
  4272. - name
  4273. type: object
  4274. externalTokenEndpoint:
  4275. description: |-
  4276. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4277. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4278. URL is having the expected value.
  4279. type: string
  4280. gcpServiceAccountEmail:
  4281. description: |-
  4282. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  4283. after Workload Identity Federation. Use this to grant access through the service account's
  4284. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  4285. service_account_impersonation_url in the external account JSON from credConfig;
  4286. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  4287. on that ServiceAccount.
  4288. example: my-gsa@my-project.iam.gserviceaccount.com
  4289. minLength: 1
  4290. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  4291. type: string
  4292. serviceAccountRef:
  4293. description: |-
  4294. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4295. when Kubernetes is configured as provider in workload identity pool.
  4296. properties:
  4297. audiences:
  4298. description: |-
  4299. Audience specifies the `aud` claim for the service account token
  4300. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4301. then this audiences will be appended to the list
  4302. items:
  4303. type: string
  4304. type: array
  4305. name:
  4306. description: The name of the ServiceAccount resource being referred to.
  4307. maxLength: 253
  4308. minLength: 1
  4309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4310. type: string
  4311. namespace:
  4312. description: |-
  4313. Namespace of the resource being referred to.
  4314. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4315. maxLength: 63
  4316. minLength: 1
  4317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4318. type: string
  4319. required:
  4320. - name
  4321. type: object
  4322. type: object
  4323. type: object
  4324. location:
  4325. description: Location optionally defines a location for a secret
  4326. type: string
  4327. projectID:
  4328. description: ProjectID project where secret is located
  4329. type: string
  4330. secretVersionSelectionPolicy:
  4331. default: LatestOrFail
  4332. description: |-
  4333. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4334. when "latest" is disabled or destroyed.
  4335. Possible values are:
  4336. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4337. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4338. type: string
  4339. type: object
  4340. github:
  4341. description: |-
  4342. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4343. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4344. properties:
  4345. appID:
  4346. description: appID specifies the Github APP that will be used to authenticate the client
  4347. format: int64
  4348. type: integer
  4349. auth:
  4350. description: auth configures how secret-manager authenticates with a Github instance.
  4351. properties:
  4352. privateKey:
  4353. description: |-
  4354. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4355. In some instances, `key` is a required field.
  4356. properties:
  4357. key:
  4358. description: |-
  4359. A key in the referenced Secret.
  4360. Some instances of this field may be defaulted, in others it may be required.
  4361. maxLength: 253
  4362. minLength: 1
  4363. pattern: ^[-._a-zA-Z0-9]+$
  4364. type: string
  4365. name:
  4366. description: The name of the Secret resource being referred to.
  4367. maxLength: 253
  4368. minLength: 1
  4369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4370. type: string
  4371. namespace:
  4372. description: |-
  4373. The namespace of the Secret resource being referred to.
  4374. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4375. maxLength: 63
  4376. minLength: 1
  4377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4378. type: string
  4379. type: object
  4380. required:
  4381. - privateKey
  4382. type: object
  4383. environment:
  4384. description: environment will be used to fetch secrets from a particular environment within a github repository
  4385. type: string
  4386. installationID:
  4387. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4388. format: int64
  4389. type: integer
  4390. orgSecretVisibility:
  4391. description: |-
  4392. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  4393. Valid values are "all" or "private".
  4394. When unset, new secrets are created with visibility "all" and existing secrets preserve
  4395. whatever visibility they already have in GitHub.
  4396. enum:
  4397. - all
  4398. - private
  4399. type: string
  4400. organization:
  4401. description: organization will be used to fetch secrets from the Github organization
  4402. type: string
  4403. repository:
  4404. description: repository will be used to fetch secrets from the Github repository within an organization
  4405. type: string
  4406. uploadURL:
  4407. description: Upload URL for enterprise instances. Default to URL.
  4408. type: string
  4409. url:
  4410. default: https://github.com/
  4411. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4412. type: string
  4413. required:
  4414. - appID
  4415. - auth
  4416. - installationID
  4417. - organization
  4418. type: object
  4419. gitlab:
  4420. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4421. properties:
  4422. auth:
  4423. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4424. properties:
  4425. SecretRef:
  4426. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4427. properties:
  4428. accessToken:
  4429. description: AccessToken is used for authentication.
  4430. properties:
  4431. key:
  4432. description: |-
  4433. A key in the referenced Secret.
  4434. Some instances of this field may be defaulted, in others it may be required.
  4435. maxLength: 253
  4436. minLength: 1
  4437. pattern: ^[-._a-zA-Z0-9]+$
  4438. type: string
  4439. name:
  4440. description: The name of the Secret resource being referred to.
  4441. maxLength: 253
  4442. minLength: 1
  4443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4444. type: string
  4445. namespace:
  4446. description: |-
  4447. The namespace of the Secret resource being referred to.
  4448. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4449. maxLength: 63
  4450. minLength: 1
  4451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4452. type: string
  4453. type: object
  4454. type: object
  4455. required:
  4456. - SecretRef
  4457. type: object
  4458. caBundle:
  4459. description: |-
  4460. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4461. can be performed.
  4462. format: byte
  4463. type: string
  4464. caProvider:
  4465. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4466. properties:
  4467. key:
  4468. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4469. maxLength: 253
  4470. minLength: 1
  4471. pattern: ^[-._a-zA-Z0-9]+$
  4472. type: string
  4473. name:
  4474. description: The name of the object located at the provider type.
  4475. maxLength: 253
  4476. minLength: 1
  4477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4478. type: string
  4479. namespace:
  4480. description: |-
  4481. The namespace the Provider type is in.
  4482. Can only be defined when used in a ClusterSecretStore.
  4483. maxLength: 63
  4484. minLength: 1
  4485. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4486. type: string
  4487. type:
  4488. description: The type of provider to use such as "Secret", or "ConfigMap".
  4489. enum:
  4490. - Secret
  4491. - ConfigMap
  4492. type: string
  4493. required:
  4494. - name
  4495. - type
  4496. type: object
  4497. environment:
  4498. 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)
  4499. type: string
  4500. groupIDs:
  4501. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4502. items:
  4503. type: string
  4504. type: array
  4505. inheritFromGroups:
  4506. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4507. type: boolean
  4508. projectID:
  4509. description: ProjectID specifies a project where secrets are located.
  4510. type: string
  4511. url:
  4512. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4513. type: string
  4514. required:
  4515. - auth
  4516. type: object
  4517. ibm:
  4518. description: IBM configures this store to sync secrets using IBM Cloud provider
  4519. properties:
  4520. auth:
  4521. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4522. maxProperties: 1
  4523. minProperties: 1
  4524. properties:
  4525. containerAuth:
  4526. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4527. properties:
  4528. iamEndpoint:
  4529. type: string
  4530. profile:
  4531. description: the IBM Trusted Profile
  4532. type: string
  4533. tokenLocation:
  4534. description: Location the token is mounted on the pod
  4535. type: string
  4536. required:
  4537. - profile
  4538. type: object
  4539. secretRef:
  4540. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4541. properties:
  4542. iamEndpoint:
  4543. description: The IAM endpoint used to obain a token
  4544. type: string
  4545. secretApiKeySecretRef:
  4546. description: The SecretAccessKey is used for authentication
  4547. properties:
  4548. key:
  4549. description: |-
  4550. A key in the referenced Secret.
  4551. Some instances of this field may be defaulted, in others it may be required.
  4552. maxLength: 253
  4553. minLength: 1
  4554. pattern: ^[-._a-zA-Z0-9]+$
  4555. type: string
  4556. name:
  4557. description: The name of the Secret resource being referred to.
  4558. maxLength: 253
  4559. minLength: 1
  4560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4561. type: string
  4562. namespace:
  4563. description: |-
  4564. The namespace of the Secret resource being referred to.
  4565. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4566. maxLength: 63
  4567. minLength: 1
  4568. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4569. type: string
  4570. type: object
  4571. type: object
  4572. type: object
  4573. serviceUrl:
  4574. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4575. type: string
  4576. required:
  4577. - auth
  4578. type: object
  4579. infisical:
  4580. description: Infisical configures this store to sync secrets using the Infisical provider
  4581. properties:
  4582. auth:
  4583. description: Auth configures how the Operator authenticates with the Infisical API
  4584. properties:
  4585. awsAuthCredentials:
  4586. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4587. properties:
  4588. identityId:
  4589. description: |-
  4590. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4591. In some instances, `key` is a required field.
  4592. properties:
  4593. key:
  4594. description: |-
  4595. A key in the referenced Secret.
  4596. Some instances of this field may be defaulted, in others it may be required.
  4597. maxLength: 253
  4598. minLength: 1
  4599. pattern: ^[-._a-zA-Z0-9]+$
  4600. type: string
  4601. name:
  4602. description: The name of the Secret resource being referred to.
  4603. maxLength: 253
  4604. minLength: 1
  4605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4606. type: string
  4607. namespace:
  4608. description: |-
  4609. The namespace of the Secret resource being referred to.
  4610. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4611. maxLength: 63
  4612. minLength: 1
  4613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4614. type: string
  4615. type: object
  4616. required:
  4617. - identityId
  4618. type: object
  4619. azureAuthCredentials:
  4620. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4621. properties:
  4622. identityId:
  4623. description: |-
  4624. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4625. In some instances, `key` is a required field.
  4626. properties:
  4627. key:
  4628. description: |-
  4629. A key in the referenced Secret.
  4630. Some instances of this field may be defaulted, in others it may be required.
  4631. maxLength: 253
  4632. minLength: 1
  4633. pattern: ^[-._a-zA-Z0-9]+$
  4634. type: string
  4635. name:
  4636. description: The name of the Secret resource being referred to.
  4637. maxLength: 253
  4638. minLength: 1
  4639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4640. type: string
  4641. namespace:
  4642. description: |-
  4643. The namespace of the Secret resource being referred to.
  4644. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4645. maxLength: 63
  4646. minLength: 1
  4647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4648. type: string
  4649. type: object
  4650. resource:
  4651. description: |-
  4652. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4653. In some instances, `key` is a required field.
  4654. properties:
  4655. key:
  4656. description: |-
  4657. A key in the referenced Secret.
  4658. Some instances of this field may be defaulted, in others it may be required.
  4659. maxLength: 253
  4660. minLength: 1
  4661. pattern: ^[-._a-zA-Z0-9]+$
  4662. type: string
  4663. name:
  4664. description: The name of the Secret resource being referred to.
  4665. maxLength: 253
  4666. minLength: 1
  4667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4668. type: string
  4669. namespace:
  4670. description: |-
  4671. The namespace of the Secret resource being referred to.
  4672. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4673. maxLength: 63
  4674. minLength: 1
  4675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4676. type: string
  4677. type: object
  4678. required:
  4679. - identityId
  4680. type: object
  4681. gcpIamAuthCredentials:
  4682. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4683. properties:
  4684. identityId:
  4685. description: |-
  4686. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4687. In some instances, `key` is a required field.
  4688. properties:
  4689. key:
  4690. description: |-
  4691. A key in the referenced Secret.
  4692. Some instances of this field may be defaulted, in others it may be required.
  4693. maxLength: 253
  4694. minLength: 1
  4695. pattern: ^[-._a-zA-Z0-9]+$
  4696. type: string
  4697. name:
  4698. description: The name of the Secret resource being referred to.
  4699. maxLength: 253
  4700. minLength: 1
  4701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4702. type: string
  4703. namespace:
  4704. description: |-
  4705. The namespace of the Secret resource being referred to.
  4706. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4707. maxLength: 63
  4708. minLength: 1
  4709. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4710. type: string
  4711. type: object
  4712. serviceAccountKeyFilePath:
  4713. description: |-
  4714. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4715. In some instances, `key` is a required field.
  4716. properties:
  4717. key:
  4718. description: |-
  4719. A key in the referenced Secret.
  4720. Some instances of this field may be defaulted, in others it may be required.
  4721. maxLength: 253
  4722. minLength: 1
  4723. pattern: ^[-._a-zA-Z0-9]+$
  4724. type: string
  4725. name:
  4726. description: The name of the Secret resource being referred to.
  4727. maxLength: 253
  4728. minLength: 1
  4729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4730. type: string
  4731. namespace:
  4732. description: |-
  4733. The namespace of the Secret resource being referred to.
  4734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4735. maxLength: 63
  4736. minLength: 1
  4737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4738. type: string
  4739. type: object
  4740. required:
  4741. - identityId
  4742. - serviceAccountKeyFilePath
  4743. type: object
  4744. gcpIdTokenAuthCredentials:
  4745. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4746. properties:
  4747. identityId:
  4748. description: |-
  4749. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4750. In some instances, `key` is a required field.
  4751. properties:
  4752. key:
  4753. description: |-
  4754. A key in the referenced Secret.
  4755. Some instances of this field may be defaulted, in others it may be required.
  4756. maxLength: 253
  4757. minLength: 1
  4758. pattern: ^[-._a-zA-Z0-9]+$
  4759. type: string
  4760. name:
  4761. description: The name of the Secret resource being referred to.
  4762. maxLength: 253
  4763. minLength: 1
  4764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4765. type: string
  4766. namespace:
  4767. description: |-
  4768. The namespace of the Secret resource being referred to.
  4769. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4770. maxLength: 63
  4771. minLength: 1
  4772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4773. type: string
  4774. type: object
  4775. required:
  4776. - identityId
  4777. type: object
  4778. jwtAuthCredentials:
  4779. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4780. properties:
  4781. identityId:
  4782. description: |-
  4783. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4784. In some instances, `key` is a required field.
  4785. properties:
  4786. key:
  4787. description: |-
  4788. A key in the referenced Secret.
  4789. Some instances of this field may be defaulted, in others it may be required.
  4790. maxLength: 253
  4791. minLength: 1
  4792. pattern: ^[-._a-zA-Z0-9]+$
  4793. type: string
  4794. name:
  4795. description: The name of the Secret resource being referred to.
  4796. maxLength: 253
  4797. minLength: 1
  4798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4799. type: string
  4800. namespace:
  4801. description: |-
  4802. The namespace of the Secret resource being referred to.
  4803. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4804. maxLength: 63
  4805. minLength: 1
  4806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4807. type: string
  4808. type: object
  4809. jwt:
  4810. description: |-
  4811. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4812. In some instances, `key` is a required field.
  4813. properties:
  4814. key:
  4815. description: |-
  4816. A key in the referenced Secret.
  4817. Some instances of this field may be defaulted, in others it may be required.
  4818. maxLength: 253
  4819. minLength: 1
  4820. pattern: ^[-._a-zA-Z0-9]+$
  4821. type: string
  4822. name:
  4823. description: The name of the Secret resource being referred to.
  4824. maxLength: 253
  4825. minLength: 1
  4826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4827. type: string
  4828. namespace:
  4829. description: |-
  4830. The namespace of the Secret resource being referred to.
  4831. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4832. maxLength: 63
  4833. minLength: 1
  4834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4835. type: string
  4836. type: object
  4837. required:
  4838. - identityId
  4839. - jwt
  4840. type: object
  4841. kubernetesAuthCredentials:
  4842. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  4843. properties:
  4844. identityId:
  4845. description: |-
  4846. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4847. In some instances, `key` is a required field.
  4848. properties:
  4849. key:
  4850. description: |-
  4851. A key in the referenced Secret.
  4852. Some instances of this field may be defaulted, in others it may be required.
  4853. maxLength: 253
  4854. minLength: 1
  4855. pattern: ^[-._a-zA-Z0-9]+$
  4856. type: string
  4857. name:
  4858. description: The name of the Secret resource being referred to.
  4859. maxLength: 253
  4860. minLength: 1
  4861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4862. type: string
  4863. namespace:
  4864. description: |-
  4865. The namespace of the Secret resource being referred to.
  4866. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4867. maxLength: 63
  4868. minLength: 1
  4869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4870. type: string
  4871. type: object
  4872. serviceAccountTokenPath:
  4873. description: |-
  4874. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4875. In some instances, `key` is a required field.
  4876. properties:
  4877. key:
  4878. description: |-
  4879. A key in the referenced Secret.
  4880. Some instances of this field may be defaulted, in others it may be required.
  4881. maxLength: 253
  4882. minLength: 1
  4883. pattern: ^[-._a-zA-Z0-9]+$
  4884. type: string
  4885. name:
  4886. description: The name of the Secret resource being referred to.
  4887. maxLength: 253
  4888. minLength: 1
  4889. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4890. type: string
  4891. namespace:
  4892. description: |-
  4893. The namespace of the Secret resource being referred to.
  4894. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4895. maxLength: 63
  4896. minLength: 1
  4897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4898. type: string
  4899. type: object
  4900. required:
  4901. - identityId
  4902. type: object
  4903. ldapAuthCredentials:
  4904. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  4905. properties:
  4906. identityId:
  4907. description: |-
  4908. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4909. In some instances, `key` is a required field.
  4910. properties:
  4911. key:
  4912. description: |-
  4913. A key in the referenced Secret.
  4914. Some instances of this field may be defaulted, in others it may be required.
  4915. maxLength: 253
  4916. minLength: 1
  4917. pattern: ^[-._a-zA-Z0-9]+$
  4918. type: string
  4919. name:
  4920. description: The name of the Secret resource being referred to.
  4921. maxLength: 253
  4922. minLength: 1
  4923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4924. type: string
  4925. namespace:
  4926. description: |-
  4927. The namespace of the Secret resource being referred to.
  4928. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4929. maxLength: 63
  4930. minLength: 1
  4931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4932. type: string
  4933. type: object
  4934. ldapPassword:
  4935. description: |-
  4936. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4937. In some instances, `key` is a required field.
  4938. properties:
  4939. key:
  4940. description: |-
  4941. A key in the referenced Secret.
  4942. Some instances of this field may be defaulted, in others it may be required.
  4943. maxLength: 253
  4944. minLength: 1
  4945. pattern: ^[-._a-zA-Z0-9]+$
  4946. type: string
  4947. name:
  4948. description: The name of the Secret resource being referred to.
  4949. maxLength: 253
  4950. minLength: 1
  4951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4952. type: string
  4953. namespace:
  4954. description: |-
  4955. The namespace of the Secret resource being referred to.
  4956. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4957. maxLength: 63
  4958. minLength: 1
  4959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4960. type: string
  4961. type: object
  4962. ldapUsername:
  4963. description: |-
  4964. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4965. In some instances, `key` is a required field.
  4966. properties:
  4967. key:
  4968. description: |-
  4969. A key in the referenced Secret.
  4970. Some instances of this field may be defaulted, in others it may be required.
  4971. maxLength: 253
  4972. minLength: 1
  4973. pattern: ^[-._a-zA-Z0-9]+$
  4974. type: string
  4975. name:
  4976. description: The name of the Secret resource being referred to.
  4977. maxLength: 253
  4978. minLength: 1
  4979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4980. type: string
  4981. namespace:
  4982. description: |-
  4983. The namespace of the Secret resource being referred to.
  4984. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4985. maxLength: 63
  4986. minLength: 1
  4987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4988. type: string
  4989. type: object
  4990. required:
  4991. - identityId
  4992. - ldapPassword
  4993. - ldapUsername
  4994. type: object
  4995. ociAuthCredentials:
  4996. description: OciAuthCredentials represents the credentials for OCI authentication.
  4997. properties:
  4998. fingerprint:
  4999. description: |-
  5000. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5001. In some instances, `key` is a required field.
  5002. properties:
  5003. key:
  5004. description: |-
  5005. A key in the referenced Secret.
  5006. Some instances of this field may be defaulted, in others it may be required.
  5007. maxLength: 253
  5008. minLength: 1
  5009. pattern: ^[-._a-zA-Z0-9]+$
  5010. type: string
  5011. name:
  5012. description: The name of the Secret resource being referred to.
  5013. maxLength: 253
  5014. minLength: 1
  5015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5016. type: string
  5017. namespace:
  5018. description: |-
  5019. The namespace of the Secret resource being referred to.
  5020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5021. maxLength: 63
  5022. minLength: 1
  5023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5024. type: string
  5025. type: object
  5026. identityId:
  5027. description: |-
  5028. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5029. In some instances, `key` is a required field.
  5030. properties:
  5031. key:
  5032. description: |-
  5033. A key in the referenced Secret.
  5034. Some instances of this field may be defaulted, in others it may be required.
  5035. maxLength: 253
  5036. minLength: 1
  5037. pattern: ^[-._a-zA-Z0-9]+$
  5038. type: string
  5039. name:
  5040. description: The name of the Secret resource being referred to.
  5041. maxLength: 253
  5042. minLength: 1
  5043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5044. type: string
  5045. namespace:
  5046. description: |-
  5047. The namespace of the Secret resource being referred to.
  5048. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5049. maxLength: 63
  5050. minLength: 1
  5051. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5052. type: string
  5053. type: object
  5054. privateKey:
  5055. description: |-
  5056. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5057. In some instances, `key` is a required field.
  5058. properties:
  5059. key:
  5060. description: |-
  5061. A key in the referenced Secret.
  5062. Some instances of this field may be defaulted, in others it may be required.
  5063. maxLength: 253
  5064. minLength: 1
  5065. pattern: ^[-._a-zA-Z0-9]+$
  5066. type: string
  5067. name:
  5068. description: The name of the Secret resource being referred to.
  5069. maxLength: 253
  5070. minLength: 1
  5071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5072. type: string
  5073. namespace:
  5074. description: |-
  5075. The namespace of the Secret resource being referred to.
  5076. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5077. maxLength: 63
  5078. minLength: 1
  5079. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5080. type: string
  5081. type: object
  5082. privateKeyPassphrase:
  5083. description: |-
  5084. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5085. In some instances, `key` is a required field.
  5086. properties:
  5087. key:
  5088. description: |-
  5089. A key in the referenced Secret.
  5090. Some instances of this field may be defaulted, in others it may be required.
  5091. maxLength: 253
  5092. minLength: 1
  5093. pattern: ^[-._a-zA-Z0-9]+$
  5094. type: string
  5095. name:
  5096. description: The name of the Secret resource being referred to.
  5097. maxLength: 253
  5098. minLength: 1
  5099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5100. type: string
  5101. namespace:
  5102. description: |-
  5103. The namespace of the Secret resource being referred to.
  5104. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5105. maxLength: 63
  5106. minLength: 1
  5107. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5108. type: string
  5109. type: object
  5110. region:
  5111. description: |-
  5112. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5113. In some instances, `key` is a required field.
  5114. properties:
  5115. key:
  5116. description: |-
  5117. A key in the referenced Secret.
  5118. Some instances of this field may be defaulted, in others it may be required.
  5119. maxLength: 253
  5120. minLength: 1
  5121. pattern: ^[-._a-zA-Z0-9]+$
  5122. type: string
  5123. name:
  5124. description: The name of the Secret resource being referred to.
  5125. maxLength: 253
  5126. minLength: 1
  5127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5128. type: string
  5129. namespace:
  5130. description: |-
  5131. The namespace of the Secret resource being referred to.
  5132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5133. maxLength: 63
  5134. minLength: 1
  5135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5136. type: string
  5137. type: object
  5138. tenancyId:
  5139. description: |-
  5140. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5141. In some instances, `key` is a required field.
  5142. properties:
  5143. key:
  5144. description: |-
  5145. A key in the referenced Secret.
  5146. Some instances of this field may be defaulted, in others it may be required.
  5147. maxLength: 253
  5148. minLength: 1
  5149. pattern: ^[-._a-zA-Z0-9]+$
  5150. type: string
  5151. name:
  5152. description: The name of the Secret resource being referred to.
  5153. maxLength: 253
  5154. minLength: 1
  5155. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5156. type: string
  5157. namespace:
  5158. description: |-
  5159. The namespace of the Secret resource being referred to.
  5160. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5161. maxLength: 63
  5162. minLength: 1
  5163. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5164. type: string
  5165. type: object
  5166. userId:
  5167. description: |-
  5168. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5169. In some instances, `key` is a required field.
  5170. properties:
  5171. key:
  5172. description: |-
  5173. A key in the referenced Secret.
  5174. Some instances of this field may be defaulted, in others it may be required.
  5175. maxLength: 253
  5176. minLength: 1
  5177. pattern: ^[-._a-zA-Z0-9]+$
  5178. type: string
  5179. name:
  5180. description: The name of the Secret resource being referred to.
  5181. maxLength: 253
  5182. minLength: 1
  5183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5184. type: string
  5185. namespace:
  5186. description: |-
  5187. The namespace of the Secret resource being referred to.
  5188. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5189. maxLength: 63
  5190. minLength: 1
  5191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5192. type: string
  5193. type: object
  5194. required:
  5195. - fingerprint
  5196. - identityId
  5197. - privateKey
  5198. - region
  5199. - tenancyId
  5200. - userId
  5201. type: object
  5202. tokenAuthCredentials:
  5203. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5204. properties:
  5205. accessToken:
  5206. description: |-
  5207. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5208. In some instances, `key` is a required field.
  5209. properties:
  5210. key:
  5211. description: |-
  5212. A key in the referenced Secret.
  5213. Some instances of this field may be defaulted, in others it may be required.
  5214. maxLength: 253
  5215. minLength: 1
  5216. pattern: ^[-._a-zA-Z0-9]+$
  5217. type: string
  5218. name:
  5219. description: The name of the Secret resource being referred to.
  5220. maxLength: 253
  5221. minLength: 1
  5222. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5223. type: string
  5224. namespace:
  5225. description: |-
  5226. The namespace of the Secret resource being referred to.
  5227. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5228. maxLength: 63
  5229. minLength: 1
  5230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5231. type: string
  5232. type: object
  5233. required:
  5234. - accessToken
  5235. type: object
  5236. universalAuthCredentials:
  5237. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5238. properties:
  5239. clientId:
  5240. description: |-
  5241. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5242. In some instances, `key` is a required field.
  5243. properties:
  5244. key:
  5245. description: |-
  5246. A key in the referenced Secret.
  5247. Some instances of this field may be defaulted, in others it may be required.
  5248. maxLength: 253
  5249. minLength: 1
  5250. pattern: ^[-._a-zA-Z0-9]+$
  5251. type: string
  5252. name:
  5253. description: The name of the Secret resource being referred to.
  5254. maxLength: 253
  5255. minLength: 1
  5256. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5257. type: string
  5258. namespace:
  5259. description: |-
  5260. The namespace of the Secret resource being referred to.
  5261. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5262. maxLength: 63
  5263. minLength: 1
  5264. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5265. type: string
  5266. type: object
  5267. clientSecret:
  5268. description: |-
  5269. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5270. In some instances, `key` is a required field.
  5271. properties:
  5272. key:
  5273. description: |-
  5274. A key in the referenced Secret.
  5275. Some instances of this field may be defaulted, in others it may be required.
  5276. maxLength: 253
  5277. minLength: 1
  5278. pattern: ^[-._a-zA-Z0-9]+$
  5279. type: string
  5280. name:
  5281. description: The name of the Secret resource being referred to.
  5282. maxLength: 253
  5283. minLength: 1
  5284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5285. type: string
  5286. namespace:
  5287. description: |-
  5288. The namespace of the Secret resource being referred to.
  5289. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5290. maxLength: 63
  5291. minLength: 1
  5292. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5293. type: string
  5294. type: object
  5295. required:
  5296. - clientId
  5297. - clientSecret
  5298. type: object
  5299. type: object
  5300. caBundle:
  5301. description: |-
  5302. CABundle is a PEM-encoded CA certificate bundle used to validate
  5303. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5304. format: byte
  5305. type: string
  5306. caProvider:
  5307. description: |-
  5308. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5309. The certificate is used to validate the Infisical server's TLS certificate.
  5310. Mutually exclusive with CABundle.
  5311. properties:
  5312. key:
  5313. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5314. maxLength: 253
  5315. minLength: 1
  5316. pattern: ^[-._a-zA-Z0-9]+$
  5317. type: string
  5318. name:
  5319. description: The name of the object located at the provider type.
  5320. maxLength: 253
  5321. minLength: 1
  5322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5323. type: string
  5324. namespace:
  5325. description: |-
  5326. The namespace the Provider type is in.
  5327. Can only be defined when used in a ClusterSecretStore.
  5328. maxLength: 63
  5329. minLength: 1
  5330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5331. type: string
  5332. type:
  5333. description: The type of provider to use such as "Secret", or "ConfigMap".
  5334. enum:
  5335. - Secret
  5336. - ConfigMap
  5337. type: string
  5338. required:
  5339. - name
  5340. - type
  5341. type: object
  5342. hostAPI:
  5343. default: https://app.infisical.com/api
  5344. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5345. type: string
  5346. secretsScope:
  5347. description: SecretsScope defines the scope of the secrets within the workspace
  5348. properties:
  5349. environmentSlug:
  5350. description: EnvironmentSlug is the required slug identifier for the environment.
  5351. type: string
  5352. expandSecretReferences:
  5353. default: true
  5354. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5355. type: boolean
  5356. projectSlug:
  5357. description: ProjectSlug is the required slug identifier for the project.
  5358. type: string
  5359. recursive:
  5360. default: false
  5361. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5362. type: boolean
  5363. secretsPath:
  5364. default: /
  5365. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5366. type: string
  5367. required:
  5368. - environmentSlug
  5369. - projectSlug
  5370. type: object
  5371. required:
  5372. - auth
  5373. - secretsScope
  5374. type: object
  5375. keepersecurity:
  5376. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5377. properties:
  5378. authRef:
  5379. description: |-
  5380. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5381. In some instances, `key` is a required field.
  5382. properties:
  5383. key:
  5384. description: |-
  5385. A key in the referenced Secret.
  5386. Some instances of this field may be defaulted, in others it may be required.
  5387. maxLength: 253
  5388. minLength: 1
  5389. pattern: ^[-._a-zA-Z0-9]+$
  5390. type: string
  5391. name:
  5392. description: The name of the Secret resource being referred to.
  5393. maxLength: 253
  5394. minLength: 1
  5395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5396. type: string
  5397. namespace:
  5398. description: |-
  5399. The namespace of the Secret resource being referred to.
  5400. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5401. maxLength: 63
  5402. minLength: 1
  5403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5404. type: string
  5405. type: object
  5406. folderID:
  5407. type: string
  5408. getByTitleFallback:
  5409. type: boolean
  5410. required:
  5411. - authRef
  5412. - folderID
  5413. type: object
  5414. kubernetes:
  5415. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5416. properties:
  5417. auth:
  5418. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5419. maxProperties: 1
  5420. minProperties: 1
  5421. properties:
  5422. cert:
  5423. description: has both clientCert and clientKey as secretKeySelector
  5424. properties:
  5425. clientCert:
  5426. description: |-
  5427. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5428. In some instances, `key` is a required field.
  5429. properties:
  5430. key:
  5431. description: |-
  5432. A key in the referenced Secret.
  5433. Some instances of this field may be defaulted, in others it may be required.
  5434. maxLength: 253
  5435. minLength: 1
  5436. pattern: ^[-._a-zA-Z0-9]+$
  5437. type: string
  5438. name:
  5439. description: The name of the Secret resource being referred to.
  5440. maxLength: 253
  5441. minLength: 1
  5442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5443. type: string
  5444. namespace:
  5445. description: |-
  5446. The namespace of the Secret resource being referred to.
  5447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5448. maxLength: 63
  5449. minLength: 1
  5450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5451. type: string
  5452. type: object
  5453. clientKey:
  5454. description: |-
  5455. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5456. In some instances, `key` is a required field.
  5457. properties:
  5458. key:
  5459. description: |-
  5460. A key in the referenced Secret.
  5461. Some instances of this field may be defaulted, in others it may be required.
  5462. maxLength: 253
  5463. minLength: 1
  5464. pattern: ^[-._a-zA-Z0-9]+$
  5465. type: string
  5466. name:
  5467. description: The name of the Secret resource being referred to.
  5468. maxLength: 253
  5469. minLength: 1
  5470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5471. type: string
  5472. namespace:
  5473. description: |-
  5474. The namespace of the Secret resource being referred to.
  5475. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5476. maxLength: 63
  5477. minLength: 1
  5478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5479. type: string
  5480. type: object
  5481. type: object
  5482. serviceAccount:
  5483. description: points to a service account that should be used for authentication
  5484. properties:
  5485. audiences:
  5486. description: |-
  5487. Audience specifies the `aud` claim for the service account token
  5488. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5489. then this audiences will be appended to the list
  5490. items:
  5491. type: string
  5492. type: array
  5493. name:
  5494. description: The name of the ServiceAccount resource being referred to.
  5495. maxLength: 253
  5496. minLength: 1
  5497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5498. type: string
  5499. namespace:
  5500. description: |-
  5501. Namespace of the resource being referred to.
  5502. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5503. maxLength: 63
  5504. minLength: 1
  5505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5506. type: string
  5507. required:
  5508. - name
  5509. type: object
  5510. token:
  5511. description: use static token to authenticate with
  5512. properties:
  5513. bearerToken:
  5514. description: |-
  5515. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5516. In some instances, `key` is a required field.
  5517. properties:
  5518. key:
  5519. description: |-
  5520. A key in the referenced Secret.
  5521. Some instances of this field may be defaulted, in others it may be required.
  5522. maxLength: 253
  5523. minLength: 1
  5524. pattern: ^[-._a-zA-Z0-9]+$
  5525. type: string
  5526. name:
  5527. description: The name of the Secret resource being referred to.
  5528. maxLength: 253
  5529. minLength: 1
  5530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5531. type: string
  5532. namespace:
  5533. description: |-
  5534. The namespace of the Secret resource being referred to.
  5535. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5536. maxLength: 63
  5537. minLength: 1
  5538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5539. type: string
  5540. type: object
  5541. type: object
  5542. type: object
  5543. authRef:
  5544. description: A reference to a secret that contains the auth information.
  5545. properties:
  5546. key:
  5547. description: |-
  5548. A key in the referenced Secret.
  5549. Some instances of this field may be defaulted, in others it may be required.
  5550. maxLength: 253
  5551. minLength: 1
  5552. pattern: ^[-._a-zA-Z0-9]+$
  5553. type: string
  5554. name:
  5555. description: The name of the Secret resource being referred to.
  5556. maxLength: 253
  5557. minLength: 1
  5558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5559. type: string
  5560. namespace:
  5561. description: |-
  5562. The namespace of the Secret resource being referred to.
  5563. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5564. maxLength: 63
  5565. minLength: 1
  5566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5567. type: string
  5568. type: object
  5569. remoteNamespace:
  5570. default: default
  5571. description: Remote namespace to fetch the secrets from
  5572. maxLength: 63
  5573. minLength: 1
  5574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5575. type: string
  5576. server:
  5577. description: configures the Kubernetes server Address.
  5578. properties:
  5579. caBundle:
  5580. description: CABundle is a base64-encoded CA certificate
  5581. format: byte
  5582. type: string
  5583. caProvider:
  5584. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5585. properties:
  5586. key:
  5587. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5588. maxLength: 253
  5589. minLength: 1
  5590. pattern: ^[-._a-zA-Z0-9]+$
  5591. type: string
  5592. name:
  5593. description: The name of the object located at the provider type.
  5594. maxLength: 253
  5595. minLength: 1
  5596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5597. type: string
  5598. namespace:
  5599. description: |-
  5600. The namespace the Provider type is in.
  5601. Can only be defined when used in a ClusterSecretStore.
  5602. maxLength: 63
  5603. minLength: 1
  5604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5605. type: string
  5606. type:
  5607. description: The type of provider to use such as "Secret", or "ConfigMap".
  5608. enum:
  5609. - Secret
  5610. - ConfigMap
  5611. type: string
  5612. required:
  5613. - name
  5614. - type
  5615. type: object
  5616. url:
  5617. default: kubernetes.default
  5618. description: configures the Kubernetes server Address.
  5619. type: string
  5620. type: object
  5621. type: object
  5622. nebiusmysterybox:
  5623. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5624. properties:
  5625. apiDomain:
  5626. description: NebiusMysterybox API endpoint
  5627. type: string
  5628. auth:
  5629. description: Auth defines parameters to authenticate in MysteryBox
  5630. properties:
  5631. serviceAccountCredsSecretRef:
  5632. description: |-
  5633. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5634. document with service account credentials used to get an IAM token.
  5635. Expected JSON structure:
  5636. {
  5637. "subject-credentials": {
  5638. "alg": "RS256",
  5639. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5640. "kid": "<public-key-id>",
  5641. "iss": "<issuer-service-account-id>",
  5642. "sub": "<subject-service-account-id>"
  5643. }
  5644. }
  5645. properties:
  5646. key:
  5647. description: |-
  5648. A key in the referenced Secret.
  5649. Some instances of this field may be defaulted, in others it may be required.
  5650. maxLength: 253
  5651. minLength: 1
  5652. pattern: ^[-._a-zA-Z0-9]+$
  5653. type: string
  5654. name:
  5655. description: The name of the Secret resource being referred to.
  5656. maxLength: 253
  5657. minLength: 1
  5658. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5659. type: string
  5660. namespace:
  5661. description: |-
  5662. The namespace of the Secret resource being referred to.
  5663. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5664. maxLength: 63
  5665. minLength: 1
  5666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5667. type: string
  5668. type: object
  5669. tokenSecretRef:
  5670. description: Token authenticates with Nebius Mysterybox by presenting a token.
  5671. properties:
  5672. key:
  5673. description: |-
  5674. A key in the referenced Secret.
  5675. Some instances of this field may be defaulted, in others it may be required.
  5676. maxLength: 253
  5677. minLength: 1
  5678. pattern: ^[-._a-zA-Z0-9]+$
  5679. type: string
  5680. name:
  5681. description: The name of the Secret resource being referred to.
  5682. maxLength: 253
  5683. minLength: 1
  5684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5685. type: string
  5686. namespace:
  5687. description: |-
  5688. The namespace of the Secret resource being referred to.
  5689. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5690. maxLength: 63
  5691. minLength: 1
  5692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5693. type: string
  5694. type: object
  5695. type: object
  5696. x-kubernetes-validations:
  5697. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5698. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5699. caProvider:
  5700. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5701. properties:
  5702. certSecretRef:
  5703. description: |-
  5704. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5705. In some instances, `key` is a required field.
  5706. properties:
  5707. key:
  5708. description: |-
  5709. A key in the referenced Secret.
  5710. Some instances of this field may be defaulted, in others it may be required.
  5711. maxLength: 253
  5712. minLength: 1
  5713. pattern: ^[-._a-zA-Z0-9]+$
  5714. type: string
  5715. name:
  5716. description: The name of the Secret resource being referred to.
  5717. maxLength: 253
  5718. minLength: 1
  5719. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5720. type: string
  5721. namespace:
  5722. description: |-
  5723. The namespace of the Secret resource being referred to.
  5724. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5725. maxLength: 63
  5726. minLength: 1
  5727. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5728. type: string
  5729. type: object
  5730. type: object
  5731. required:
  5732. - apiDomain
  5733. - auth
  5734. type: object
  5735. ngrok:
  5736. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5737. properties:
  5738. apiUrl:
  5739. default: https://api.ngrok.com
  5740. description: APIURL is the URL of the ngrok API.
  5741. type: string
  5742. auth:
  5743. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5744. maxProperties: 1
  5745. minProperties: 1
  5746. properties:
  5747. apiKey:
  5748. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5749. properties:
  5750. secretRef:
  5751. description: SecretRef is a reference to a secret containing the ngrok API key.
  5752. properties:
  5753. key:
  5754. description: |-
  5755. A key in the referenced Secret.
  5756. Some instances of this field may be defaulted, in others it may be required.
  5757. maxLength: 253
  5758. minLength: 1
  5759. pattern: ^[-._a-zA-Z0-9]+$
  5760. type: string
  5761. name:
  5762. description: The name of the Secret resource being referred to.
  5763. maxLength: 253
  5764. minLength: 1
  5765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5766. type: string
  5767. namespace:
  5768. description: |-
  5769. The namespace of the Secret resource being referred to.
  5770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5771. maxLength: 63
  5772. minLength: 1
  5773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5774. type: string
  5775. type: object
  5776. type: object
  5777. type: object
  5778. vault:
  5779. description: Vault configures the ngrok vault to sync secrets with.
  5780. properties:
  5781. name:
  5782. description: Name is the name of the ngrok vault to sync secrets with.
  5783. type: string
  5784. required:
  5785. - name
  5786. type: object
  5787. required:
  5788. - auth
  5789. - vault
  5790. type: object
  5791. onboardbase:
  5792. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5793. properties:
  5794. apiHost:
  5795. default: https://public.onboardbase.com/api/v1/
  5796. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5797. type: string
  5798. auth:
  5799. description: Auth configures how the Operator authenticates with the Onboardbase API
  5800. properties:
  5801. apiKeyRef:
  5802. description: |-
  5803. OnboardbaseAPIKey is the APIKey generated by an admin account.
  5804. It is used to recognize and authorize access to a project and environment within onboardbase
  5805. properties:
  5806. key:
  5807. description: |-
  5808. A key in the referenced Secret.
  5809. Some instances of this field may be defaulted, in others it may be required.
  5810. maxLength: 253
  5811. minLength: 1
  5812. pattern: ^[-._a-zA-Z0-9]+$
  5813. type: string
  5814. name:
  5815. description: The name of the Secret resource being referred to.
  5816. maxLength: 253
  5817. minLength: 1
  5818. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5819. type: string
  5820. namespace:
  5821. description: |-
  5822. The namespace of the Secret resource being referred to.
  5823. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5824. maxLength: 63
  5825. minLength: 1
  5826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5827. type: string
  5828. type: object
  5829. passcodeRef:
  5830. description: OnboardbasePasscode is the passcode attached to the API Key
  5831. properties:
  5832. key:
  5833. description: |-
  5834. A key in the referenced Secret.
  5835. Some instances of this field may be defaulted, in others it may be required.
  5836. maxLength: 253
  5837. minLength: 1
  5838. pattern: ^[-._a-zA-Z0-9]+$
  5839. type: string
  5840. name:
  5841. description: The name of the Secret resource being referred to.
  5842. maxLength: 253
  5843. minLength: 1
  5844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5845. type: string
  5846. namespace:
  5847. description: |-
  5848. The namespace of the Secret resource being referred to.
  5849. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5850. maxLength: 63
  5851. minLength: 1
  5852. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5853. type: string
  5854. type: object
  5855. required:
  5856. - apiKeyRef
  5857. - passcodeRef
  5858. type: object
  5859. environment:
  5860. default: development
  5861. description: Environment is the name of an environmnent within a project to pull the secrets from
  5862. type: string
  5863. project:
  5864. default: development
  5865. description: Project is an onboardbase project that the secrets should be pulled from
  5866. type: string
  5867. required:
  5868. - apiHost
  5869. - auth
  5870. - environment
  5871. - project
  5872. type: object
  5873. onepassword:
  5874. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  5875. properties:
  5876. auth:
  5877. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  5878. properties:
  5879. secretRef:
  5880. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  5881. properties:
  5882. connectTokenSecretRef:
  5883. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  5884. properties:
  5885. key:
  5886. description: |-
  5887. A key in the referenced Secret.
  5888. Some instances of this field may be defaulted, in others it may be required.
  5889. maxLength: 253
  5890. minLength: 1
  5891. pattern: ^[-._a-zA-Z0-9]+$
  5892. type: string
  5893. name:
  5894. description: The name of the Secret resource being referred to.
  5895. maxLength: 253
  5896. minLength: 1
  5897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5898. type: string
  5899. namespace:
  5900. description: |-
  5901. The namespace of the Secret resource being referred to.
  5902. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5903. maxLength: 63
  5904. minLength: 1
  5905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5906. type: string
  5907. type: object
  5908. required:
  5909. - connectTokenSecretRef
  5910. type: object
  5911. required:
  5912. - secretRef
  5913. type: object
  5914. connectHost:
  5915. description: ConnectHost defines the OnePassword Connect Server to connect to
  5916. type: string
  5917. vaults:
  5918. additionalProperties:
  5919. type: integer
  5920. description: Vaults defines which OnePassword vaults to search in which order
  5921. type: object
  5922. required:
  5923. - auth
  5924. - connectHost
  5925. - vaults
  5926. type: object
  5927. onepasswordSDK:
  5928. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  5929. properties:
  5930. auth:
  5931. description: Auth defines the information necessary to authenticate against OnePassword API.
  5932. properties:
  5933. serviceAccountSecretRef:
  5934. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  5935. properties:
  5936. key:
  5937. description: |-
  5938. A key in the referenced Secret.
  5939. Some instances of this field may be defaulted, in others it may be required.
  5940. maxLength: 253
  5941. minLength: 1
  5942. pattern: ^[-._a-zA-Z0-9]+$
  5943. type: string
  5944. name:
  5945. description: The name of the Secret resource being referred to.
  5946. maxLength: 253
  5947. minLength: 1
  5948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5949. type: string
  5950. namespace:
  5951. description: |-
  5952. The namespace of the Secret resource being referred to.
  5953. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5954. maxLength: 63
  5955. minLength: 1
  5956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5957. type: string
  5958. type: object
  5959. required:
  5960. - serviceAccountSecretRef
  5961. type: object
  5962. cache:
  5963. description: |-
  5964. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  5965. When enabled, secrets are cached with the specified TTL.
  5966. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  5967. If omitted, caching is disabled (default).
  5968. cache: {} is a valid option to set.
  5969. properties:
  5970. maxSize:
  5971. default: 100
  5972. description: |-
  5973. MaxSize is the maximum number of secrets to cache.
  5974. When the cache is full, least-recently-used entries are evicted.
  5975. minimum: 1
  5976. type: integer
  5977. ttl:
  5978. default: 5m
  5979. description: |-
  5980. TTL is the time-to-live for cached secrets.
  5981. Format: duration string (e.g., "5m", "1h", "30s")
  5982. type: string
  5983. type: object
  5984. integrationInfo:
  5985. description: |-
  5986. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  5987. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  5988. properties:
  5989. name:
  5990. default: 1Password SDK
  5991. description: Name defaults to "1Password SDK".
  5992. type: string
  5993. version:
  5994. default: v1.0.0
  5995. description: Version defaults to "v1.0.0".
  5996. type: string
  5997. type: object
  5998. vault:
  5999. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  6000. type: string
  6001. required:
  6002. - auth
  6003. - vault
  6004. type: object
  6005. oracle:
  6006. description: Oracle configures this store to sync secrets using Oracle Vault provider
  6007. properties:
  6008. auth:
  6009. description: |-
  6010. Auth configures how secret-manager authenticates with the Oracle Vault.
  6011. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  6012. properties:
  6013. secretRef:
  6014. description: SecretRef to pass through sensitive information.
  6015. properties:
  6016. fingerprint:
  6017. description: Fingerprint is the fingerprint of the API private key.
  6018. properties:
  6019. key:
  6020. description: |-
  6021. A key in the referenced Secret.
  6022. Some instances of this field may be defaulted, in others it may be required.
  6023. maxLength: 253
  6024. minLength: 1
  6025. pattern: ^[-._a-zA-Z0-9]+$
  6026. type: string
  6027. name:
  6028. description: The name of the Secret resource being referred to.
  6029. maxLength: 253
  6030. minLength: 1
  6031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6032. type: string
  6033. namespace:
  6034. description: |-
  6035. The namespace of the Secret resource being referred to.
  6036. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6037. maxLength: 63
  6038. minLength: 1
  6039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6040. type: string
  6041. type: object
  6042. privatekey:
  6043. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6044. properties:
  6045. key:
  6046. description: |-
  6047. A key in the referenced Secret.
  6048. Some instances of this field may be defaulted, in others it may be required.
  6049. maxLength: 253
  6050. minLength: 1
  6051. pattern: ^[-._a-zA-Z0-9]+$
  6052. type: string
  6053. name:
  6054. description: The name of the Secret resource being referred to.
  6055. maxLength: 253
  6056. minLength: 1
  6057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6058. type: string
  6059. namespace:
  6060. description: |-
  6061. The namespace of the Secret resource being referred to.
  6062. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6063. maxLength: 63
  6064. minLength: 1
  6065. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6066. type: string
  6067. type: object
  6068. required:
  6069. - fingerprint
  6070. - privatekey
  6071. type: object
  6072. tenancy:
  6073. description: Tenancy is the tenancy OCID where user is located.
  6074. type: string
  6075. user:
  6076. description: User is an access OCID specific to the account.
  6077. type: string
  6078. required:
  6079. - secretRef
  6080. - tenancy
  6081. - user
  6082. type: object
  6083. compartment:
  6084. description: |-
  6085. Compartment is the vault compartment OCID.
  6086. Required for PushSecret
  6087. type: string
  6088. encryptionKey:
  6089. description: |-
  6090. EncryptionKey is the OCID of the encryption key within the vault.
  6091. Required for PushSecret
  6092. type: string
  6093. principalType:
  6094. description: |-
  6095. The type of principal to use for authentication. If left blank, the Auth struct will
  6096. determine the principal type. This optional field must be specified if using
  6097. workload identity.
  6098. enum:
  6099. - ""
  6100. - UserPrincipal
  6101. - InstancePrincipal
  6102. - Workload
  6103. type: string
  6104. region:
  6105. description: Region is the region where vault is located.
  6106. type: string
  6107. serviceAccountRef:
  6108. description: |-
  6109. ServiceAccountRef specified the service account
  6110. that should be used when authenticating with WorkloadIdentity.
  6111. properties:
  6112. audiences:
  6113. description: |-
  6114. Audience specifies the `aud` claim for the service account token
  6115. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6116. then this audiences will be appended to the list
  6117. items:
  6118. type: string
  6119. type: array
  6120. name:
  6121. description: The name of the ServiceAccount resource being referred to.
  6122. maxLength: 253
  6123. minLength: 1
  6124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6125. type: string
  6126. namespace:
  6127. description: |-
  6128. Namespace of the resource being referred to.
  6129. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6130. maxLength: 63
  6131. minLength: 1
  6132. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6133. type: string
  6134. required:
  6135. - name
  6136. type: object
  6137. vault:
  6138. description: Vault is the vault's OCID of the specific vault where secret is located.
  6139. type: string
  6140. required:
  6141. - region
  6142. - vault
  6143. type: object
  6144. ovh:
  6145. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6146. properties:
  6147. auth:
  6148. description: Authentication method (mtls or token).
  6149. properties:
  6150. mtls:
  6151. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6152. properties:
  6153. caBundle:
  6154. format: byte
  6155. type: string
  6156. caProvider:
  6157. description: |-
  6158. CAProvider provides a custom certificate authority for accessing the provider's store.
  6159. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6160. properties:
  6161. key:
  6162. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6163. maxLength: 253
  6164. minLength: 1
  6165. pattern: ^[-._a-zA-Z0-9]+$
  6166. type: string
  6167. name:
  6168. description: The name of the object located at the provider type.
  6169. maxLength: 253
  6170. minLength: 1
  6171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6172. type: string
  6173. namespace:
  6174. description: |-
  6175. The namespace the Provider type is in.
  6176. Can only be defined when used in a ClusterSecretStore.
  6177. maxLength: 63
  6178. minLength: 1
  6179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6180. type: string
  6181. type:
  6182. description: The type of provider to use such as "Secret", or "ConfigMap".
  6183. enum:
  6184. - Secret
  6185. - ConfigMap
  6186. type: string
  6187. required:
  6188. - name
  6189. - type
  6190. type: object
  6191. certSecretRef:
  6192. description: |-
  6193. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6194. In some instances, `key` is a required field.
  6195. properties:
  6196. key:
  6197. description: |-
  6198. A key in the referenced Secret.
  6199. Some instances of this field may be defaulted, in others it may be required.
  6200. maxLength: 253
  6201. minLength: 1
  6202. pattern: ^[-._a-zA-Z0-9]+$
  6203. type: string
  6204. name:
  6205. description: The name of the Secret resource being referred to.
  6206. maxLength: 253
  6207. minLength: 1
  6208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6209. type: string
  6210. namespace:
  6211. description: |-
  6212. The namespace of the Secret resource being referred to.
  6213. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6214. maxLength: 63
  6215. minLength: 1
  6216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6217. type: string
  6218. type: object
  6219. keySecretRef:
  6220. description: |-
  6221. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6222. In some instances, `key` is a required field.
  6223. properties:
  6224. key:
  6225. description: |-
  6226. A key in the referenced Secret.
  6227. Some instances of this field may be defaulted, in others it may be required.
  6228. maxLength: 253
  6229. minLength: 1
  6230. pattern: ^[-._a-zA-Z0-9]+$
  6231. type: string
  6232. name:
  6233. description: The name of the Secret resource being referred to.
  6234. maxLength: 253
  6235. minLength: 1
  6236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6237. type: string
  6238. namespace:
  6239. description: |-
  6240. The namespace of the Secret resource being referred to.
  6241. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6242. maxLength: 63
  6243. minLength: 1
  6244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6245. type: string
  6246. type: object
  6247. required:
  6248. - certSecretRef
  6249. - keySecretRef
  6250. type: object
  6251. token:
  6252. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6253. properties:
  6254. tokenSecretRef:
  6255. description: |-
  6256. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6257. In some instances, `key` is a required field.
  6258. properties:
  6259. key:
  6260. description: |-
  6261. A key in the referenced Secret.
  6262. Some instances of this field may be defaulted, in others it may be required.
  6263. maxLength: 253
  6264. minLength: 1
  6265. pattern: ^[-._a-zA-Z0-9]+$
  6266. type: string
  6267. name:
  6268. description: The name of the Secret resource being referred to.
  6269. maxLength: 253
  6270. minLength: 1
  6271. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6272. type: string
  6273. namespace:
  6274. description: |-
  6275. The namespace of the Secret resource being referred to.
  6276. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6277. maxLength: 63
  6278. minLength: 1
  6279. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6280. type: string
  6281. type: object
  6282. required:
  6283. - tokenSecretRef
  6284. type: object
  6285. type: object
  6286. casRequired:
  6287. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6288. type: boolean
  6289. okmsTimeout:
  6290. default: 30
  6291. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6292. format: int32
  6293. minimum: 1
  6294. type: integer
  6295. okmsid:
  6296. description: specifies the OKMS ID.
  6297. type: string
  6298. server:
  6299. description: specifies the OKMS server endpoint.
  6300. type: string
  6301. required:
  6302. - auth
  6303. - okmsid
  6304. - server
  6305. type: object
  6306. passbolt:
  6307. description: |-
  6308. PassboltProvider provides access to Passbolt secrets manager.
  6309. See: https://www.passbolt.com.
  6310. properties:
  6311. auth:
  6312. description: Auth defines the information necessary to authenticate against Passbolt Server
  6313. properties:
  6314. passwordSecretRef:
  6315. description: |-
  6316. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6317. In some instances, `key` is a required field.
  6318. properties:
  6319. key:
  6320. description: |-
  6321. A key in the referenced Secret.
  6322. Some instances of this field may be defaulted, in others it may be required.
  6323. maxLength: 253
  6324. minLength: 1
  6325. pattern: ^[-._a-zA-Z0-9]+$
  6326. type: string
  6327. name:
  6328. description: The name of the Secret resource being referred to.
  6329. maxLength: 253
  6330. minLength: 1
  6331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6332. type: string
  6333. namespace:
  6334. description: |-
  6335. The namespace of the Secret resource being referred to.
  6336. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6337. maxLength: 63
  6338. minLength: 1
  6339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6340. type: string
  6341. type: object
  6342. privateKeySecretRef:
  6343. description: |-
  6344. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6345. In some instances, `key` is a required field.
  6346. properties:
  6347. key:
  6348. description: |-
  6349. A key in the referenced Secret.
  6350. Some instances of this field may be defaulted, in others it may be required.
  6351. maxLength: 253
  6352. minLength: 1
  6353. pattern: ^[-._a-zA-Z0-9]+$
  6354. type: string
  6355. name:
  6356. description: The name of the Secret resource being referred to.
  6357. maxLength: 253
  6358. minLength: 1
  6359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6360. type: string
  6361. namespace:
  6362. description: |-
  6363. The namespace of the Secret resource being referred to.
  6364. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6365. maxLength: 63
  6366. minLength: 1
  6367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6368. type: string
  6369. type: object
  6370. required:
  6371. - passwordSecretRef
  6372. - privateKeySecretRef
  6373. type: object
  6374. caBundle:
  6375. description: |-
  6376. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  6377. if the Host URL is using HTTPS protocol. If not set the system root certificates
  6378. are used to validate the TLS connection.
  6379. format: byte
  6380. type: string
  6381. caProvider:
  6382. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  6383. properties:
  6384. key:
  6385. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6386. maxLength: 253
  6387. minLength: 1
  6388. pattern: ^[-._a-zA-Z0-9]+$
  6389. type: string
  6390. name:
  6391. description: The name of the object located at the provider type.
  6392. maxLength: 253
  6393. minLength: 1
  6394. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6395. type: string
  6396. namespace:
  6397. description: |-
  6398. The namespace the Provider type is in.
  6399. Can only be defined when used in a ClusterSecretStore.
  6400. maxLength: 63
  6401. minLength: 1
  6402. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6403. type: string
  6404. type:
  6405. description: The type of provider to use such as "Secret", or "ConfigMap".
  6406. enum:
  6407. - Secret
  6408. - ConfigMap
  6409. type: string
  6410. required:
  6411. - name
  6412. - type
  6413. type: object
  6414. host:
  6415. description: Host defines the Passbolt Server to connect to
  6416. type: string
  6417. required:
  6418. - auth
  6419. - host
  6420. type: object
  6421. passworddepot:
  6422. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6423. properties:
  6424. auth:
  6425. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6426. properties:
  6427. secretRef:
  6428. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6429. properties:
  6430. credentials:
  6431. description: Username / Password is used for authentication.
  6432. properties:
  6433. key:
  6434. description: |-
  6435. A key in the referenced Secret.
  6436. Some instances of this field may be defaulted, in others it may be required.
  6437. maxLength: 253
  6438. minLength: 1
  6439. pattern: ^[-._a-zA-Z0-9]+$
  6440. type: string
  6441. name:
  6442. description: The name of the Secret resource being referred to.
  6443. maxLength: 253
  6444. minLength: 1
  6445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6446. type: string
  6447. namespace:
  6448. description: |-
  6449. The namespace of the Secret resource being referred to.
  6450. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6451. maxLength: 63
  6452. minLength: 1
  6453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6454. type: string
  6455. type: object
  6456. type: object
  6457. required:
  6458. - secretRef
  6459. type: object
  6460. database:
  6461. description: Database to use as source
  6462. type: string
  6463. host:
  6464. description: URL configures the Password Depot instance URL.
  6465. type: string
  6466. required:
  6467. - auth
  6468. - database
  6469. - host
  6470. type: object
  6471. previder:
  6472. description: Previder configures this store to sync secrets using the Previder provider
  6473. properties:
  6474. auth:
  6475. description: PreviderAuth contains a secretRef for credentials.
  6476. properties:
  6477. secretRef:
  6478. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6479. properties:
  6480. accessToken:
  6481. description: The AccessToken is used for authentication
  6482. properties:
  6483. key:
  6484. description: |-
  6485. A key in the referenced Secret.
  6486. Some instances of this field may be defaulted, in others it may be required.
  6487. maxLength: 253
  6488. minLength: 1
  6489. pattern: ^[-._a-zA-Z0-9]+$
  6490. type: string
  6491. name:
  6492. description: The name of the Secret resource being referred to.
  6493. maxLength: 253
  6494. minLength: 1
  6495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6496. type: string
  6497. namespace:
  6498. description: |-
  6499. The namespace of the Secret resource being referred to.
  6500. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6501. maxLength: 63
  6502. minLength: 1
  6503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6504. type: string
  6505. type: object
  6506. required:
  6507. - accessToken
  6508. type: object
  6509. type: object
  6510. baseUri:
  6511. type: string
  6512. required:
  6513. - auth
  6514. type: object
  6515. pulumi:
  6516. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6517. properties:
  6518. accessToken:
  6519. description: |-
  6520. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6521. Deprecated: Use auth.accessToken instead.
  6522. properties:
  6523. secretRef:
  6524. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6525. properties:
  6526. key:
  6527. description: |-
  6528. A key in the referenced Secret.
  6529. Some instances of this field may be defaulted, in others it may be required.
  6530. maxLength: 253
  6531. minLength: 1
  6532. pattern: ^[-._a-zA-Z0-9]+$
  6533. type: string
  6534. name:
  6535. description: The name of the Secret resource being referred to.
  6536. maxLength: 253
  6537. minLength: 1
  6538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6539. type: string
  6540. namespace:
  6541. description: |-
  6542. The namespace of the Secret resource being referred to.
  6543. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6544. maxLength: 63
  6545. minLength: 1
  6546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6547. type: string
  6548. type: object
  6549. type: object
  6550. apiUrl:
  6551. default: https://api.pulumi.com/api/esc
  6552. description: APIURL is the URL of the Pulumi API.
  6553. type: string
  6554. auth:
  6555. description: |-
  6556. Auth configures how the Operator authenticates with the Pulumi API.
  6557. Either auth or the deprecated accessToken field must be specified.
  6558. properties:
  6559. accessToken:
  6560. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  6561. properties:
  6562. secretRef:
  6563. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6564. properties:
  6565. key:
  6566. description: |-
  6567. A key in the referenced Secret.
  6568. Some instances of this field may be defaulted, in others it may be required.
  6569. maxLength: 253
  6570. minLength: 1
  6571. pattern: ^[-._a-zA-Z0-9]+$
  6572. type: string
  6573. name:
  6574. description: The name of the Secret resource being referred to.
  6575. maxLength: 253
  6576. minLength: 1
  6577. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6578. type: string
  6579. namespace:
  6580. description: |-
  6581. The namespace of the Secret resource being referred to.
  6582. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6583. maxLength: 63
  6584. minLength: 1
  6585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6586. type: string
  6587. type: object
  6588. type: object
  6589. oidcConfig:
  6590. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  6591. properties:
  6592. expirationSeconds:
  6593. default: 600
  6594. description: |-
  6595. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  6596. Defaults to 10 minutes.
  6597. format: int64
  6598. minimum: 600
  6599. type: integer
  6600. organization:
  6601. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  6602. type: string
  6603. serviceAccountRef:
  6604. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  6605. properties:
  6606. audiences:
  6607. description: |-
  6608. Audience specifies the `aud` claim for the service account token
  6609. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6610. then this audiences will be appended to the list
  6611. items:
  6612. type: string
  6613. type: array
  6614. name:
  6615. description: The name of the ServiceAccount resource being referred to.
  6616. maxLength: 253
  6617. minLength: 1
  6618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6619. type: string
  6620. namespace:
  6621. description: |-
  6622. Namespace of the resource being referred to.
  6623. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6624. maxLength: 63
  6625. minLength: 1
  6626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6627. type: string
  6628. required:
  6629. - name
  6630. type: object
  6631. required:
  6632. - organization
  6633. - serviceAccountRef
  6634. type: object
  6635. type: object
  6636. x-kubernetes-validations:
  6637. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  6638. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  6639. environment:
  6640. description: |-
  6641. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  6642. dynamically retrieved values from supported providers including all major clouds,
  6643. and other Pulumi ESC environments.
  6644. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  6645. type: string
  6646. organization:
  6647. description: |-
  6648. Organization are a space to collaborate on shared projects and stacks.
  6649. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  6650. type: string
  6651. project:
  6652. description: Project is the name of the Pulumi ESC project the environment belongs to.
  6653. type: string
  6654. required:
  6655. - environment
  6656. - organization
  6657. - project
  6658. type: object
  6659. x-kubernetes-validations:
  6660. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  6661. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  6662. scaleway:
  6663. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  6664. properties:
  6665. accessKey:
  6666. description: AccessKey is the non-secret part of the api key.
  6667. properties:
  6668. secretRef:
  6669. description: SecretRef references a key in a secret that will be used as value.
  6670. properties:
  6671. key:
  6672. description: |-
  6673. A key in the referenced Secret.
  6674. Some instances of this field may be defaulted, in others it may be required.
  6675. maxLength: 253
  6676. minLength: 1
  6677. pattern: ^[-._a-zA-Z0-9]+$
  6678. type: string
  6679. name:
  6680. description: The name of the Secret resource being referred to.
  6681. maxLength: 253
  6682. minLength: 1
  6683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6684. type: string
  6685. namespace:
  6686. description: |-
  6687. The namespace of the Secret resource being referred to.
  6688. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6689. maxLength: 63
  6690. minLength: 1
  6691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6692. type: string
  6693. type: object
  6694. value:
  6695. description: Value can be specified directly to set a value without using a secret.
  6696. type: string
  6697. type: object
  6698. apiUrl:
  6699. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  6700. type: string
  6701. projectId:
  6702. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  6703. type: string
  6704. region:
  6705. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  6706. type: string
  6707. secretKey:
  6708. description: SecretKey is the non-secret part of the api key.
  6709. properties:
  6710. secretRef:
  6711. description: SecretRef references a key in a secret that will be used as value.
  6712. properties:
  6713. key:
  6714. description: |-
  6715. A key in the referenced Secret.
  6716. Some instances of this field may be defaulted, in others it may be required.
  6717. maxLength: 253
  6718. minLength: 1
  6719. pattern: ^[-._a-zA-Z0-9]+$
  6720. type: string
  6721. name:
  6722. description: The name of the Secret resource being referred to.
  6723. maxLength: 253
  6724. minLength: 1
  6725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6726. type: string
  6727. namespace:
  6728. description: |-
  6729. The namespace of the Secret resource being referred to.
  6730. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6731. maxLength: 63
  6732. minLength: 1
  6733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6734. type: string
  6735. type: object
  6736. value:
  6737. description: Value can be specified directly to set a value without using a secret.
  6738. type: string
  6739. type: object
  6740. required:
  6741. - accessKey
  6742. - projectId
  6743. - region
  6744. - secretKey
  6745. type: object
  6746. secretserver:
  6747. description: |-
  6748. SecretServer configures this store to sync secrets using SecretServer provider
  6749. https://docs.delinea.com/online-help/secret-server/start.htm
  6750. properties:
  6751. caBundle:
  6752. description: |-
  6753. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  6754. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  6755. are used to validate the TLS connection.
  6756. format: byte
  6757. type: string
  6758. caProvider:
  6759. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  6760. properties:
  6761. key:
  6762. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6763. maxLength: 253
  6764. minLength: 1
  6765. pattern: ^[-._a-zA-Z0-9]+$
  6766. type: string
  6767. name:
  6768. description: The name of the object located at the provider type.
  6769. maxLength: 253
  6770. minLength: 1
  6771. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6772. type: string
  6773. namespace:
  6774. description: |-
  6775. The namespace the Provider type is in.
  6776. Can only be defined when used in a ClusterSecretStore.
  6777. maxLength: 63
  6778. minLength: 1
  6779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6780. type: string
  6781. type:
  6782. description: The type of provider to use such as "Secret", or "ConfigMap".
  6783. enum:
  6784. - Secret
  6785. - ConfigMap
  6786. type: string
  6787. required:
  6788. - name
  6789. - type
  6790. type: object
  6791. domain:
  6792. description: Domain is the secret server domain.
  6793. type: string
  6794. password:
  6795. description: Password is the secret server account password.
  6796. properties:
  6797. secretRef:
  6798. description: SecretRef references a key in a secret that will be used as value.
  6799. properties:
  6800. key:
  6801. description: |-
  6802. A key in the referenced Secret.
  6803. Some instances of this field may be defaulted, in others it may be required.
  6804. maxLength: 253
  6805. minLength: 1
  6806. pattern: ^[-._a-zA-Z0-9]+$
  6807. type: string
  6808. name:
  6809. description: The name of the Secret resource being referred to.
  6810. maxLength: 253
  6811. minLength: 1
  6812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6813. type: string
  6814. namespace:
  6815. description: |-
  6816. The namespace of the Secret resource being referred to.
  6817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6818. maxLength: 63
  6819. minLength: 1
  6820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6821. type: string
  6822. type: object
  6823. value:
  6824. description: Value can be specified directly to set a value without using a secret.
  6825. type: string
  6826. type: object
  6827. serverURL:
  6828. description: |-
  6829. ServerURL
  6830. URL to your secret server installation
  6831. type: string
  6832. username:
  6833. description: Username is the secret server account username.
  6834. properties:
  6835. secretRef:
  6836. description: SecretRef references a key in a secret that will be used as value.
  6837. properties:
  6838. key:
  6839. description: |-
  6840. A key in the referenced Secret.
  6841. Some instances of this field may be defaulted, in others it may be required.
  6842. maxLength: 253
  6843. minLength: 1
  6844. pattern: ^[-._a-zA-Z0-9]+$
  6845. type: string
  6846. name:
  6847. description: The name of the Secret resource being referred to.
  6848. maxLength: 253
  6849. minLength: 1
  6850. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6851. type: string
  6852. namespace:
  6853. description: |-
  6854. The namespace of the Secret resource being referred to.
  6855. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6856. maxLength: 63
  6857. minLength: 1
  6858. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6859. type: string
  6860. type: object
  6861. value:
  6862. description: Value can be specified directly to set a value without using a secret.
  6863. type: string
  6864. type: object
  6865. required:
  6866. - password
  6867. - serverURL
  6868. - username
  6869. type: object
  6870. senhasegura:
  6871. description: Senhasegura configures this store to sync secrets using senhasegura provider
  6872. properties:
  6873. auth:
  6874. description: Auth defines parameters to authenticate in senhasegura
  6875. properties:
  6876. clientId:
  6877. type: string
  6878. clientSecretSecretRef:
  6879. description: |-
  6880. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6881. In some instances, `key` is a required field.
  6882. properties:
  6883. key:
  6884. description: |-
  6885. A key in the referenced Secret.
  6886. Some instances of this field may be defaulted, in others it may be required.
  6887. maxLength: 253
  6888. minLength: 1
  6889. pattern: ^[-._a-zA-Z0-9]+$
  6890. type: string
  6891. name:
  6892. description: The name of the Secret resource being referred to.
  6893. maxLength: 253
  6894. minLength: 1
  6895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6896. type: string
  6897. namespace:
  6898. description: |-
  6899. The namespace of the Secret resource being referred to.
  6900. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6901. maxLength: 63
  6902. minLength: 1
  6903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6904. type: string
  6905. type: object
  6906. required:
  6907. - clientId
  6908. - clientSecretSecretRef
  6909. type: object
  6910. ignoreSslCertificate:
  6911. default: false
  6912. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  6913. type: boolean
  6914. module:
  6915. description: Module defines which senhasegura module should be used to get secrets
  6916. type: string
  6917. url:
  6918. description: URL of senhasegura
  6919. type: string
  6920. required:
  6921. - auth
  6922. - module
  6923. - url
  6924. type: object
  6925. vault:
  6926. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  6927. properties:
  6928. auth:
  6929. description: Auth configures how secret-manager authenticates with the Vault server.
  6930. properties:
  6931. appRole:
  6932. description: |-
  6933. AppRole authenticates with Vault using the App Role auth mechanism,
  6934. with the role and secret stored in a Kubernetes Secret resource.
  6935. properties:
  6936. path:
  6937. default: approle
  6938. description: |-
  6939. Path where the App Role authentication backend is mounted
  6940. in Vault, e.g: "approle"
  6941. type: string
  6942. roleId:
  6943. description: |-
  6944. RoleID configured in the App Role authentication backend when setting
  6945. up the authentication backend in Vault.
  6946. type: string
  6947. roleRef:
  6948. description: |-
  6949. Reference to a key in a Secret that contains the App Role ID used
  6950. to authenticate with Vault.
  6951. The `key` field must be specified and denotes which entry within the Secret
  6952. resource is used as the app role id.
  6953. properties:
  6954. key:
  6955. description: |-
  6956. A key in the referenced Secret.
  6957. Some instances of this field may be defaulted, in others it may be required.
  6958. maxLength: 253
  6959. minLength: 1
  6960. pattern: ^[-._a-zA-Z0-9]+$
  6961. type: string
  6962. name:
  6963. description: The name of the Secret resource being referred to.
  6964. maxLength: 253
  6965. minLength: 1
  6966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6967. type: string
  6968. namespace:
  6969. description: |-
  6970. The namespace of the Secret resource being referred to.
  6971. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6972. maxLength: 63
  6973. minLength: 1
  6974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6975. type: string
  6976. type: object
  6977. secretRef:
  6978. description: |-
  6979. Reference to a key in a Secret that contains the App Role secret used
  6980. to authenticate with Vault.
  6981. The `key` field must be specified and denotes which entry within the Secret
  6982. resource is used as the app role secret.
  6983. properties:
  6984. key:
  6985. description: |-
  6986. A key in the referenced Secret.
  6987. Some instances of this field may be defaulted, in others it may be required.
  6988. maxLength: 253
  6989. minLength: 1
  6990. pattern: ^[-._a-zA-Z0-9]+$
  6991. type: string
  6992. name:
  6993. description: The name of the Secret resource being referred to.
  6994. maxLength: 253
  6995. minLength: 1
  6996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6997. type: string
  6998. namespace:
  6999. description: |-
  7000. The namespace of the Secret resource being referred to.
  7001. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7002. maxLength: 63
  7003. minLength: 1
  7004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7005. type: string
  7006. type: object
  7007. required:
  7008. - path
  7009. - secretRef
  7010. type: object
  7011. cert:
  7012. description: |-
  7013. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7014. Cert authentication method
  7015. properties:
  7016. clientCert:
  7017. description: |-
  7018. ClientCert is a certificate to authenticate using the Cert Vault
  7019. authentication method
  7020. properties:
  7021. key:
  7022. description: |-
  7023. A key in the referenced Secret.
  7024. Some instances of this field may be defaulted, in others it may be required.
  7025. maxLength: 253
  7026. minLength: 1
  7027. pattern: ^[-._a-zA-Z0-9]+$
  7028. type: string
  7029. name:
  7030. description: The name of the Secret resource being referred to.
  7031. maxLength: 253
  7032. minLength: 1
  7033. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7034. type: string
  7035. namespace:
  7036. description: |-
  7037. The namespace of the Secret resource being referred to.
  7038. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7039. maxLength: 63
  7040. minLength: 1
  7041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7042. type: string
  7043. type: object
  7044. path:
  7045. default: cert
  7046. description: |-
  7047. Path where the Certificate authentication backend is mounted
  7048. in Vault, e.g: "cert"
  7049. type: string
  7050. secretRef:
  7051. description: |-
  7052. SecretRef to a key in a Secret resource containing client private key to
  7053. authenticate with Vault using the Cert authentication method
  7054. properties:
  7055. key:
  7056. description: |-
  7057. A key in the referenced Secret.
  7058. Some instances of this field may be defaulted, in others it may be required.
  7059. maxLength: 253
  7060. minLength: 1
  7061. pattern: ^[-._a-zA-Z0-9]+$
  7062. type: string
  7063. name:
  7064. description: The name of the Secret resource being referred to.
  7065. maxLength: 253
  7066. minLength: 1
  7067. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7068. type: string
  7069. namespace:
  7070. description: |-
  7071. The namespace of the Secret resource being referred to.
  7072. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7073. maxLength: 63
  7074. minLength: 1
  7075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7076. type: string
  7077. type: object
  7078. vaultRole:
  7079. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  7080. type: string
  7081. type: object
  7082. gcp:
  7083. description: |-
  7084. Gcp authenticates with Vault using Google Cloud Platform authentication method
  7085. GCP authentication method
  7086. properties:
  7087. location:
  7088. description: Location optionally defines a location/region for the secret
  7089. type: string
  7090. path:
  7091. default: gcp
  7092. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  7093. type: string
  7094. projectID:
  7095. description: Project ID of the Google Cloud Platform project
  7096. type: string
  7097. role:
  7098. 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.
  7099. type: string
  7100. secretRef:
  7101. description: Specify credentials in a Secret object
  7102. properties:
  7103. secretAccessKeySecretRef:
  7104. description: The SecretAccessKey is used for authentication
  7105. properties:
  7106. key:
  7107. description: |-
  7108. A key in the referenced Secret.
  7109. Some instances of this field may be defaulted, in others it may be required.
  7110. maxLength: 253
  7111. minLength: 1
  7112. pattern: ^[-._a-zA-Z0-9]+$
  7113. type: string
  7114. name:
  7115. description: The name of the Secret resource being referred to.
  7116. maxLength: 253
  7117. minLength: 1
  7118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7119. type: string
  7120. namespace:
  7121. description: |-
  7122. The namespace of the Secret resource being referred to.
  7123. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7124. maxLength: 63
  7125. minLength: 1
  7126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7127. type: string
  7128. type: object
  7129. type: object
  7130. serviceAccountRef:
  7131. description: ServiceAccountRef to a service account for impersonation
  7132. properties:
  7133. audiences:
  7134. description: |-
  7135. Audience specifies the `aud` claim for the service account token
  7136. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7137. then this audiences will be appended to the list
  7138. items:
  7139. type: string
  7140. type: array
  7141. name:
  7142. description: The name of the ServiceAccount resource being referred to.
  7143. maxLength: 253
  7144. minLength: 1
  7145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7146. type: string
  7147. namespace:
  7148. description: |-
  7149. Namespace of the resource being referred to.
  7150. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7151. maxLength: 63
  7152. minLength: 1
  7153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7154. type: string
  7155. required:
  7156. - name
  7157. type: object
  7158. workloadIdentity:
  7159. description: Specify a service account with Workload Identity
  7160. properties:
  7161. clusterLocation:
  7162. description: |-
  7163. ClusterLocation is the location of the cluster
  7164. If not specified, it fetches information from the metadata server
  7165. type: string
  7166. clusterName:
  7167. description: |-
  7168. ClusterName is the name of the cluster
  7169. If not specified, it fetches information from the metadata server
  7170. type: string
  7171. clusterProjectID:
  7172. description: |-
  7173. ClusterProjectID is the project ID of the cluster
  7174. If not specified, it fetches information from the metadata server
  7175. type: string
  7176. serviceAccountRef:
  7177. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7178. properties:
  7179. audiences:
  7180. description: |-
  7181. Audience specifies the `aud` claim for the service account token
  7182. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7183. then this audiences will be appended to the list
  7184. items:
  7185. type: string
  7186. type: array
  7187. name:
  7188. description: The name of the ServiceAccount resource being referred to.
  7189. maxLength: 253
  7190. minLength: 1
  7191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7192. type: string
  7193. namespace:
  7194. description: |-
  7195. Namespace of the resource being referred to.
  7196. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7197. maxLength: 63
  7198. minLength: 1
  7199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7200. type: string
  7201. required:
  7202. - name
  7203. type: object
  7204. required:
  7205. - serviceAccountRef
  7206. type: object
  7207. required:
  7208. - role
  7209. type: object
  7210. iam:
  7211. description: |-
  7212. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7213. AWS IAM authentication method
  7214. properties:
  7215. externalID:
  7216. description: AWS External ID set on assumed IAM roles
  7217. type: string
  7218. jwt:
  7219. description: Specify a service account with IRSA enabled
  7220. properties:
  7221. serviceAccountRef:
  7222. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7223. properties:
  7224. audiences:
  7225. description: |-
  7226. Audience specifies the `aud` claim for the service account token
  7227. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7228. then this audiences will be appended to the list
  7229. items:
  7230. type: string
  7231. type: array
  7232. name:
  7233. description: The name of the ServiceAccount resource being referred to.
  7234. maxLength: 253
  7235. minLength: 1
  7236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7237. type: string
  7238. namespace:
  7239. description: |-
  7240. Namespace of the resource being referred to.
  7241. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7242. maxLength: 63
  7243. minLength: 1
  7244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7245. type: string
  7246. required:
  7247. - name
  7248. type: object
  7249. type: object
  7250. path:
  7251. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7252. type: string
  7253. region:
  7254. description: AWS region
  7255. type: string
  7256. role:
  7257. description: This is the AWS role to be assumed before talking to vault
  7258. type: string
  7259. secretRef:
  7260. description: Specify credentials in a Secret object
  7261. properties:
  7262. accessKeyIDSecretRef:
  7263. description: The AccessKeyID is used for authentication
  7264. properties:
  7265. key:
  7266. description: |-
  7267. A key in the referenced Secret.
  7268. Some instances of this field may be defaulted, in others it may be required.
  7269. maxLength: 253
  7270. minLength: 1
  7271. pattern: ^[-._a-zA-Z0-9]+$
  7272. type: string
  7273. name:
  7274. description: The name of the Secret resource being referred to.
  7275. maxLength: 253
  7276. minLength: 1
  7277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7278. type: string
  7279. namespace:
  7280. description: |-
  7281. The namespace of the Secret resource being referred to.
  7282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7283. maxLength: 63
  7284. minLength: 1
  7285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7286. type: string
  7287. type: object
  7288. secretAccessKeySecretRef:
  7289. description: The SecretAccessKey is used for authentication
  7290. properties:
  7291. key:
  7292. description: |-
  7293. A key in the referenced Secret.
  7294. Some instances of this field may be defaulted, in others it may be required.
  7295. maxLength: 253
  7296. minLength: 1
  7297. pattern: ^[-._a-zA-Z0-9]+$
  7298. type: string
  7299. name:
  7300. description: The name of the Secret resource being referred to.
  7301. maxLength: 253
  7302. minLength: 1
  7303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7304. type: string
  7305. namespace:
  7306. description: |-
  7307. The namespace of the Secret resource being referred to.
  7308. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7309. maxLength: 63
  7310. minLength: 1
  7311. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7312. type: string
  7313. type: object
  7314. sessionTokenSecretRef:
  7315. description: |-
  7316. The SessionToken used for authentication
  7317. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7318. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7319. properties:
  7320. key:
  7321. description: |-
  7322. A key in the referenced Secret.
  7323. Some instances of this field may be defaulted, in others it may be required.
  7324. maxLength: 253
  7325. minLength: 1
  7326. pattern: ^[-._a-zA-Z0-9]+$
  7327. type: string
  7328. name:
  7329. description: The name of the Secret resource being referred to.
  7330. maxLength: 253
  7331. minLength: 1
  7332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7333. type: string
  7334. namespace:
  7335. description: |-
  7336. The namespace of the Secret resource being referred to.
  7337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7338. maxLength: 63
  7339. minLength: 1
  7340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7341. type: string
  7342. type: object
  7343. type: object
  7344. vaultAwsIamServerID:
  7345. 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'
  7346. type: string
  7347. vaultRole:
  7348. 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
  7349. type: string
  7350. required:
  7351. - vaultRole
  7352. type: object
  7353. jwt:
  7354. description: |-
  7355. Jwt authenticates with Vault by passing role and JWT token using the
  7356. JWT/OIDC authentication method
  7357. properties:
  7358. kubernetesServiceAccountToken:
  7359. description: |-
  7360. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7361. a token for with the `TokenRequest` API.
  7362. properties:
  7363. audiences:
  7364. description: |-
  7365. Optional audiences field that will be used to request a temporary Kubernetes service
  7366. account token for the service account referenced by `serviceAccountRef`.
  7367. Defaults to a single audience `vault` it not specified.
  7368. Deprecated: use serviceAccountRef.Audiences instead
  7369. items:
  7370. type: string
  7371. type: array
  7372. expirationSeconds:
  7373. description: |-
  7374. Optional expiration time in seconds that will be used to request a temporary
  7375. Kubernetes service account token for the service account referenced by
  7376. `serviceAccountRef`.
  7377. Deprecated: this will be removed in the future.
  7378. Defaults to 10 minutes.
  7379. format: int64
  7380. type: integer
  7381. serviceAccountRef:
  7382. description: Service account field containing the name of a kubernetes ServiceAccount.
  7383. properties:
  7384. audiences:
  7385. description: |-
  7386. Audience specifies the `aud` claim for the service account token
  7387. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7388. then this audiences will be appended to the list
  7389. items:
  7390. type: string
  7391. type: array
  7392. name:
  7393. description: The name of the ServiceAccount resource being referred to.
  7394. maxLength: 253
  7395. minLength: 1
  7396. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7397. type: string
  7398. namespace:
  7399. description: |-
  7400. Namespace of the resource being referred to.
  7401. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7402. maxLength: 63
  7403. minLength: 1
  7404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7405. type: string
  7406. required:
  7407. - name
  7408. type: object
  7409. required:
  7410. - serviceAccountRef
  7411. type: object
  7412. path:
  7413. default: jwt
  7414. description: |-
  7415. Path where the JWT authentication backend is mounted
  7416. in Vault, e.g: "jwt"
  7417. type: string
  7418. role:
  7419. description: |-
  7420. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7421. authentication method
  7422. type: string
  7423. secretRef:
  7424. description: |-
  7425. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7426. authenticate with Vault using the JWT/OIDC authentication method.
  7427. properties:
  7428. key:
  7429. description: |-
  7430. A key in the referenced Secret.
  7431. Some instances of this field may be defaulted, in others it may be required.
  7432. maxLength: 253
  7433. minLength: 1
  7434. pattern: ^[-._a-zA-Z0-9]+$
  7435. type: string
  7436. name:
  7437. description: The name of the Secret resource being referred to.
  7438. maxLength: 253
  7439. minLength: 1
  7440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7441. type: string
  7442. namespace:
  7443. description: |-
  7444. The namespace of the Secret resource being referred to.
  7445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7446. maxLength: 63
  7447. minLength: 1
  7448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7449. type: string
  7450. type: object
  7451. required:
  7452. - path
  7453. type: object
  7454. kubernetes:
  7455. description: |-
  7456. Kubernetes authenticates with Vault by passing the ServiceAccount
  7457. token stored in the named Secret resource to the Vault server.
  7458. properties:
  7459. mountPath:
  7460. default: kubernetes
  7461. description: |-
  7462. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7463. "kubernetes"
  7464. type: string
  7465. role:
  7466. description: |-
  7467. A required field containing the Vault Role to assume. A Role binds a
  7468. Kubernetes ServiceAccount with a set of Vault policies.
  7469. type: string
  7470. secretRef:
  7471. description: |-
  7472. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7473. for authenticating with Vault. If a name is specified without a key,
  7474. `token` is the default. If one is not specified, the one bound to
  7475. the controller will be used.
  7476. properties:
  7477. key:
  7478. description: |-
  7479. A key in the referenced Secret.
  7480. Some instances of this field may be defaulted, in others it may be required.
  7481. maxLength: 253
  7482. minLength: 1
  7483. pattern: ^[-._a-zA-Z0-9]+$
  7484. type: string
  7485. name:
  7486. description: The name of the Secret resource being referred to.
  7487. maxLength: 253
  7488. minLength: 1
  7489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7490. type: string
  7491. namespace:
  7492. description: |-
  7493. The namespace of the Secret resource being referred to.
  7494. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7495. maxLength: 63
  7496. minLength: 1
  7497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7498. type: string
  7499. type: object
  7500. serviceAccountRef:
  7501. description: |-
  7502. Optional service account field containing the name of a kubernetes ServiceAccount.
  7503. If the service account is specified, the service account secret token JWT will be used
  7504. for authenticating with Vault. If the service account selector is not supplied,
  7505. the secretRef will be used instead.
  7506. properties:
  7507. audiences:
  7508. description: |-
  7509. Audience specifies the `aud` claim for the service account token
  7510. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7511. then this audiences will be appended to the list
  7512. items:
  7513. type: string
  7514. type: array
  7515. name:
  7516. description: The name of the ServiceAccount resource being referred to.
  7517. maxLength: 253
  7518. minLength: 1
  7519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7520. type: string
  7521. namespace:
  7522. description: |-
  7523. Namespace of the resource being referred to.
  7524. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7525. maxLength: 63
  7526. minLength: 1
  7527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7528. type: string
  7529. required:
  7530. - name
  7531. type: object
  7532. required:
  7533. - mountPath
  7534. - role
  7535. type: object
  7536. ldap:
  7537. description: |-
  7538. Ldap authenticates with Vault by passing username/password pair using
  7539. the LDAP authentication method
  7540. properties:
  7541. path:
  7542. default: ldap
  7543. description: |-
  7544. Path where the LDAP authentication backend is mounted
  7545. in Vault, e.g: "ldap"
  7546. type: string
  7547. secretRef:
  7548. description: |-
  7549. SecretRef to a key in a Secret resource containing password for the LDAP
  7550. user used to authenticate with Vault using the LDAP authentication
  7551. method
  7552. properties:
  7553. key:
  7554. description: |-
  7555. A key in the referenced Secret.
  7556. Some instances of this field may be defaulted, in others it may be required.
  7557. maxLength: 253
  7558. minLength: 1
  7559. pattern: ^[-._a-zA-Z0-9]+$
  7560. type: string
  7561. name:
  7562. description: The name of the Secret resource being referred to.
  7563. maxLength: 253
  7564. minLength: 1
  7565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7566. type: string
  7567. namespace:
  7568. description: |-
  7569. The namespace of the Secret resource being referred to.
  7570. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7571. maxLength: 63
  7572. minLength: 1
  7573. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7574. type: string
  7575. type: object
  7576. username:
  7577. description: |-
  7578. Username is an LDAP username used to authenticate using the LDAP Vault
  7579. authentication method
  7580. type: string
  7581. required:
  7582. - path
  7583. - username
  7584. type: object
  7585. namespace:
  7586. description: |-
  7587. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  7588. Namespaces is a set of features within Vault Enterprise that allows
  7589. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7590. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7591. This will default to Vault.Namespace field if set, or empty otherwise
  7592. type: string
  7593. tokenSecretRef:
  7594. description: TokenSecretRef authenticates with Vault by presenting a token.
  7595. properties:
  7596. key:
  7597. description: |-
  7598. A key in the referenced Secret.
  7599. Some instances of this field may be defaulted, in others it may be required.
  7600. maxLength: 253
  7601. minLength: 1
  7602. pattern: ^[-._a-zA-Z0-9]+$
  7603. type: string
  7604. name:
  7605. description: The name of the Secret resource being referred to.
  7606. maxLength: 253
  7607. minLength: 1
  7608. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7609. type: string
  7610. namespace:
  7611. description: |-
  7612. The namespace of the Secret resource being referred to.
  7613. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7614. maxLength: 63
  7615. minLength: 1
  7616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7617. type: string
  7618. type: object
  7619. userPass:
  7620. description: UserPass authenticates with Vault by passing username/password pair
  7621. properties:
  7622. path:
  7623. default: userpass
  7624. description: |-
  7625. Path where the UserPassword authentication backend is mounted
  7626. in Vault, e.g: "userpass"
  7627. type: string
  7628. secretRef:
  7629. description: |-
  7630. SecretRef to a key in a Secret resource containing password for the
  7631. user used to authenticate with Vault using the UserPass authentication
  7632. method
  7633. properties:
  7634. key:
  7635. description: |-
  7636. A key in the referenced Secret.
  7637. Some instances of this field may be defaulted, in others it may be required.
  7638. maxLength: 253
  7639. minLength: 1
  7640. pattern: ^[-._a-zA-Z0-9]+$
  7641. type: string
  7642. name:
  7643. description: The name of the Secret resource being referred to.
  7644. maxLength: 253
  7645. minLength: 1
  7646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7647. type: string
  7648. namespace:
  7649. description: |-
  7650. The namespace of the Secret resource being referred to.
  7651. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7652. maxLength: 63
  7653. minLength: 1
  7654. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7655. type: string
  7656. type: object
  7657. username:
  7658. description: |-
  7659. Username is a username used to authenticate using the UserPass Vault
  7660. authentication method
  7661. type: string
  7662. required:
  7663. - path
  7664. - username
  7665. type: object
  7666. type: object
  7667. caBundle:
  7668. description: |-
  7669. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7670. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7671. plain HTTP protocol connection. If not set the system root certificates
  7672. are used to validate the TLS connection.
  7673. format: byte
  7674. type: string
  7675. caProvider:
  7676. description: The provider for the CA bundle to use to validate Vault server certificate.
  7677. properties:
  7678. key:
  7679. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7680. maxLength: 253
  7681. minLength: 1
  7682. pattern: ^[-._a-zA-Z0-9]+$
  7683. type: string
  7684. name:
  7685. description: The name of the object located at the provider type.
  7686. maxLength: 253
  7687. minLength: 1
  7688. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7689. type: string
  7690. namespace:
  7691. description: |-
  7692. The namespace the Provider type is in.
  7693. Can only be defined when used in a ClusterSecretStore.
  7694. maxLength: 63
  7695. minLength: 1
  7696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7697. type: string
  7698. type:
  7699. description: The type of provider to use such as "Secret", or "ConfigMap".
  7700. enum:
  7701. - Secret
  7702. - ConfigMap
  7703. type: string
  7704. required:
  7705. - name
  7706. - type
  7707. type: object
  7708. checkAndSet:
  7709. description: |-
  7710. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  7711. Only applies to Vault KV v2 stores. When enabled, write operations must include
  7712. the current version of the secret to prevent unintentional overwrites.
  7713. properties:
  7714. required:
  7715. description: |-
  7716. Required when true, all write operations must include a check-and-set parameter.
  7717. This helps prevent unintentional overwrites of secrets.
  7718. type: boolean
  7719. type: object
  7720. forwardInconsistent:
  7721. description: |-
  7722. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7723. leader instead of simply retrying within a loop. This can increase performance if
  7724. the option is enabled serverside.
  7725. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7726. type: boolean
  7727. headers:
  7728. additionalProperties:
  7729. type: string
  7730. description: Headers to be added in Vault request
  7731. type: object
  7732. namespace:
  7733. description: |-
  7734. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7735. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7736. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7737. type: string
  7738. path:
  7739. description: |-
  7740. Path is the mount path of the Vault KV backend endpoint, e.g:
  7741. "secret". The v2 KV secret engine version specific "/data" path suffix
  7742. for fetching secrets from Vault is optional and will be appended
  7743. if not present in specified path.
  7744. type: string
  7745. readYourWrites:
  7746. description: |-
  7747. ReadYourWrites ensures isolated read-after-write semantics by
  7748. providing discovered cluster replication states in each request.
  7749. More information about eventual consistency in Vault can be found here
  7750. https://www.vaultproject.io/docs/enterprise/consistency
  7751. type: boolean
  7752. server:
  7753. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7754. type: string
  7755. tls:
  7756. description: |-
  7757. The configuration used for client side related TLS communication, when the Vault server
  7758. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  7759. This parameter is ignored for plain HTTP protocol connection.
  7760. It's worth noting this configuration is different from the "TLS certificates auth method",
  7761. which is available under the `auth.cert` section.
  7762. properties:
  7763. certSecretRef:
  7764. description: |-
  7765. CertSecretRef is a certificate added to the transport layer
  7766. when communicating with the Vault server.
  7767. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  7768. properties:
  7769. key:
  7770. description: |-
  7771. A key in the referenced Secret.
  7772. Some instances of this field may be defaulted, in others it may be required.
  7773. maxLength: 253
  7774. minLength: 1
  7775. pattern: ^[-._a-zA-Z0-9]+$
  7776. type: string
  7777. name:
  7778. description: The name of the Secret resource being referred to.
  7779. maxLength: 253
  7780. minLength: 1
  7781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7782. type: string
  7783. namespace:
  7784. description: |-
  7785. The namespace of the Secret resource being referred to.
  7786. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7787. maxLength: 63
  7788. minLength: 1
  7789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7790. type: string
  7791. type: object
  7792. keySecretRef:
  7793. description: |-
  7794. KeySecretRef to a key in a Secret resource containing client private key
  7795. added to the transport layer when communicating with the Vault server.
  7796. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  7797. properties:
  7798. key:
  7799. description: |-
  7800. A key in the referenced Secret.
  7801. Some instances of this field may be defaulted, in others it may be required.
  7802. maxLength: 253
  7803. minLength: 1
  7804. pattern: ^[-._a-zA-Z0-9]+$
  7805. type: string
  7806. name:
  7807. description: The name of the Secret resource being referred to.
  7808. maxLength: 253
  7809. minLength: 1
  7810. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7811. type: string
  7812. namespace:
  7813. description: |-
  7814. The namespace of the Secret resource being referred to.
  7815. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7816. maxLength: 63
  7817. minLength: 1
  7818. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7819. type: string
  7820. type: object
  7821. type: object
  7822. version:
  7823. default: v2
  7824. description: |-
  7825. Version is the Vault KV secret engine version. This can be either "v1" or
  7826. "v2". Version defaults to "v2".
  7827. enum:
  7828. - v1
  7829. - v2
  7830. type: string
  7831. required:
  7832. - server
  7833. type: object
  7834. volcengine:
  7835. description: Volcengine configures this store to sync secrets using the Volcengine provider
  7836. properties:
  7837. auth:
  7838. description: |-
  7839. Auth defines the authentication method to use.
  7840. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  7841. properties:
  7842. secretRef:
  7843. description: |-
  7844. SecretRef defines the static credentials to use for authentication.
  7845. If not set, IRSA is used.
  7846. properties:
  7847. accessKeyID:
  7848. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  7849. properties:
  7850. key:
  7851. description: |-
  7852. A key in the referenced Secret.
  7853. Some instances of this field may be defaulted, in others it may be required.
  7854. maxLength: 253
  7855. minLength: 1
  7856. pattern: ^[-._a-zA-Z0-9]+$
  7857. type: string
  7858. name:
  7859. description: The name of the Secret resource being referred to.
  7860. maxLength: 253
  7861. minLength: 1
  7862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7863. type: string
  7864. namespace:
  7865. description: |-
  7866. The namespace of the Secret resource being referred to.
  7867. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7868. maxLength: 63
  7869. minLength: 1
  7870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7871. type: string
  7872. type: object
  7873. secretAccessKey:
  7874. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  7875. properties:
  7876. key:
  7877. description: |-
  7878. A key in the referenced Secret.
  7879. Some instances of this field may be defaulted, in others it may be required.
  7880. maxLength: 253
  7881. minLength: 1
  7882. pattern: ^[-._a-zA-Z0-9]+$
  7883. type: string
  7884. name:
  7885. description: The name of the Secret resource being referred to.
  7886. maxLength: 253
  7887. minLength: 1
  7888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7889. type: string
  7890. namespace:
  7891. description: |-
  7892. The namespace of the Secret resource being referred to.
  7893. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7894. maxLength: 63
  7895. minLength: 1
  7896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7897. type: string
  7898. type: object
  7899. token:
  7900. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  7901. properties:
  7902. key:
  7903. description: |-
  7904. A key in the referenced Secret.
  7905. Some instances of this field may be defaulted, in others it may be required.
  7906. maxLength: 253
  7907. minLength: 1
  7908. pattern: ^[-._a-zA-Z0-9]+$
  7909. type: string
  7910. name:
  7911. description: The name of the Secret resource being referred to.
  7912. maxLength: 253
  7913. minLength: 1
  7914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7915. type: string
  7916. namespace:
  7917. description: |-
  7918. The namespace of the Secret resource being referred to.
  7919. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7920. maxLength: 63
  7921. minLength: 1
  7922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7923. type: string
  7924. type: object
  7925. required:
  7926. - accessKeyID
  7927. - secretAccessKey
  7928. type: object
  7929. type: object
  7930. region:
  7931. description: Region specifies the Volcengine region to connect to.
  7932. type: string
  7933. required:
  7934. - region
  7935. type: object
  7936. webhook:
  7937. description: Webhook configures this store to sync secrets using a generic templated webhook
  7938. properties:
  7939. auth:
  7940. description: Auth specifies a authorization protocol. Only one protocol may be set.
  7941. maxProperties: 1
  7942. minProperties: 1
  7943. properties:
  7944. ntlm:
  7945. description: NTLMProtocol configures the store to use NTLM for auth
  7946. properties:
  7947. passwordSecret:
  7948. description: |-
  7949. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7950. In some instances, `key` is a required field.
  7951. properties:
  7952. key:
  7953. description: |-
  7954. A key in the referenced Secret.
  7955. Some instances of this field may be defaulted, in others it may be required.
  7956. maxLength: 253
  7957. minLength: 1
  7958. pattern: ^[-._a-zA-Z0-9]+$
  7959. type: string
  7960. name:
  7961. description: The name of the Secret resource being referred to.
  7962. maxLength: 253
  7963. minLength: 1
  7964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7965. type: string
  7966. namespace:
  7967. description: |-
  7968. The namespace of the Secret resource being referred to.
  7969. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7970. maxLength: 63
  7971. minLength: 1
  7972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7973. type: string
  7974. type: object
  7975. usernameSecret:
  7976. description: |-
  7977. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7978. In some instances, `key` is a required field.
  7979. properties:
  7980. key:
  7981. description: |-
  7982. A key in the referenced Secret.
  7983. Some instances of this field may be defaulted, in others it may be required.
  7984. maxLength: 253
  7985. minLength: 1
  7986. pattern: ^[-._a-zA-Z0-9]+$
  7987. type: string
  7988. name:
  7989. description: The name of the Secret resource being referred to.
  7990. maxLength: 253
  7991. minLength: 1
  7992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7993. type: string
  7994. namespace:
  7995. description: |-
  7996. The namespace of the Secret resource being referred to.
  7997. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7998. maxLength: 63
  7999. minLength: 1
  8000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8001. type: string
  8002. type: object
  8003. required:
  8004. - passwordSecret
  8005. - usernameSecret
  8006. type: object
  8007. type: object
  8008. body:
  8009. description: Body
  8010. type: string
  8011. caBundle:
  8012. description: |-
  8013. PEM encoded CA bundle used to validate webhook server certificate. Only used
  8014. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8015. plain HTTP protocol connection. If not set the system root certificates
  8016. are used to validate the TLS connection.
  8017. format: byte
  8018. type: string
  8019. caProvider:
  8020. description: The provider for the CA bundle to use to validate webhook server certificate.
  8021. properties:
  8022. key:
  8023. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8024. maxLength: 253
  8025. minLength: 1
  8026. pattern: ^[-._a-zA-Z0-9]+$
  8027. type: string
  8028. name:
  8029. description: The name of the object located at the provider type.
  8030. maxLength: 253
  8031. minLength: 1
  8032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8033. type: string
  8034. namespace:
  8035. description: The namespace the Provider type is in.
  8036. maxLength: 63
  8037. minLength: 1
  8038. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8039. type: string
  8040. type:
  8041. description: The type of provider to use such as "Secret", or "ConfigMap".
  8042. enum:
  8043. - Secret
  8044. - ConfigMap
  8045. type: string
  8046. required:
  8047. - name
  8048. - type
  8049. type: object
  8050. headers:
  8051. additionalProperties:
  8052. type: string
  8053. description: Headers
  8054. type: object
  8055. method:
  8056. description: Webhook Method
  8057. type: string
  8058. result:
  8059. description: Result formatting
  8060. properties:
  8061. jsonPath:
  8062. description: Json path of return value
  8063. type: string
  8064. type: object
  8065. secrets:
  8066. description: |-
  8067. Secrets to fill in templates
  8068. These secrets will be passed to the templating function as key value pairs under the given name
  8069. items:
  8070. description: WebhookSecret defines a secret that will be passed to the webhook request.
  8071. properties:
  8072. name:
  8073. description: Name of this secret in templates
  8074. type: string
  8075. secretRef:
  8076. description: Secret ref to fill in credentials
  8077. properties:
  8078. key:
  8079. description: |-
  8080. A key in the referenced Secret.
  8081. Some instances of this field may be defaulted, in others it may be required.
  8082. maxLength: 253
  8083. minLength: 1
  8084. pattern: ^[-._a-zA-Z0-9]+$
  8085. type: string
  8086. name:
  8087. description: The name of the Secret resource being referred to.
  8088. maxLength: 253
  8089. minLength: 1
  8090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8091. type: string
  8092. namespace:
  8093. description: |-
  8094. The namespace of the Secret resource being referred to.
  8095. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8096. maxLength: 63
  8097. minLength: 1
  8098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8099. type: string
  8100. type: object
  8101. required:
  8102. - name
  8103. - secretRef
  8104. type: object
  8105. type: array
  8106. timeout:
  8107. description: Timeout
  8108. type: string
  8109. url:
  8110. description: Webhook url to call
  8111. type: string
  8112. required:
  8113. - url
  8114. type: object
  8115. yandexcertificatemanager:
  8116. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8117. properties:
  8118. apiEndpoint:
  8119. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8120. type: string
  8121. auth:
  8122. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8123. properties:
  8124. authorizedKeySecretRef:
  8125. description: The authorized key used for authentication
  8126. properties:
  8127. key:
  8128. description: |-
  8129. A key in the referenced Secret.
  8130. Some instances of this field may be defaulted, in others it may be required.
  8131. maxLength: 253
  8132. minLength: 1
  8133. pattern: ^[-._a-zA-Z0-9]+$
  8134. type: string
  8135. name:
  8136. description: The name of the Secret resource being referred to.
  8137. maxLength: 253
  8138. minLength: 1
  8139. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8140. type: string
  8141. namespace:
  8142. description: |-
  8143. The namespace of the Secret resource being referred to.
  8144. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8145. maxLength: 63
  8146. minLength: 1
  8147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8148. type: string
  8149. type: object
  8150. type: object
  8151. caProvider:
  8152. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8153. properties:
  8154. certSecretRef:
  8155. description: |-
  8156. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8157. In some instances, `key` is a required field.
  8158. properties:
  8159. key:
  8160. description: |-
  8161. A key in the referenced Secret.
  8162. Some instances of this field may be defaulted, in others it may be required.
  8163. maxLength: 253
  8164. minLength: 1
  8165. pattern: ^[-._a-zA-Z0-9]+$
  8166. type: string
  8167. name:
  8168. description: The name of the Secret resource being referred to.
  8169. maxLength: 253
  8170. minLength: 1
  8171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8172. type: string
  8173. namespace:
  8174. description: |-
  8175. The namespace of the Secret resource being referred to.
  8176. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8177. maxLength: 63
  8178. minLength: 1
  8179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8180. type: string
  8181. type: object
  8182. type: object
  8183. fetching:
  8184. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  8185. maxProperties: 1
  8186. minProperties: 1
  8187. properties:
  8188. byID:
  8189. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8190. type: object
  8191. byName:
  8192. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8193. properties:
  8194. folderID:
  8195. description: The folder to fetch secrets from
  8196. type: string
  8197. required:
  8198. - folderID
  8199. type: object
  8200. type: object
  8201. required:
  8202. - auth
  8203. type: object
  8204. yandexlockbox:
  8205. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8206. properties:
  8207. apiEndpoint:
  8208. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8209. type: string
  8210. auth:
  8211. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8212. properties:
  8213. authorizedKeySecretRef:
  8214. description: The authorized key used for authentication
  8215. properties:
  8216. key:
  8217. description: |-
  8218. A key in the referenced Secret.
  8219. Some instances of this field may be defaulted, in others it may be required.
  8220. maxLength: 253
  8221. minLength: 1
  8222. pattern: ^[-._a-zA-Z0-9]+$
  8223. type: string
  8224. name:
  8225. description: The name of the Secret resource being referred to.
  8226. maxLength: 253
  8227. minLength: 1
  8228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8229. type: string
  8230. namespace:
  8231. description: |-
  8232. The namespace of the Secret resource being referred to.
  8233. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8234. maxLength: 63
  8235. minLength: 1
  8236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8237. type: string
  8238. type: object
  8239. type: object
  8240. caProvider:
  8241. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8242. properties:
  8243. certSecretRef:
  8244. description: |-
  8245. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8246. In some instances, `key` is a required field.
  8247. properties:
  8248. key:
  8249. description: |-
  8250. A key in the referenced Secret.
  8251. Some instances of this field may be defaulted, in others it may be required.
  8252. maxLength: 253
  8253. minLength: 1
  8254. pattern: ^[-._a-zA-Z0-9]+$
  8255. type: string
  8256. name:
  8257. description: The name of the Secret resource being referred to.
  8258. maxLength: 253
  8259. minLength: 1
  8260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8261. type: string
  8262. namespace:
  8263. description: |-
  8264. The namespace of the Secret resource being referred to.
  8265. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8266. maxLength: 63
  8267. minLength: 1
  8268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8269. type: string
  8270. type: object
  8271. type: object
  8272. fetching:
  8273. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8274. maxProperties: 1
  8275. minProperties: 1
  8276. properties:
  8277. byID:
  8278. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8279. type: object
  8280. byName:
  8281. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8282. properties:
  8283. folderID:
  8284. description: The folder to fetch secrets from
  8285. type: string
  8286. required:
  8287. - folderID
  8288. type: object
  8289. type: object
  8290. required:
  8291. - auth
  8292. type: object
  8293. type: object
  8294. refreshInterval:
  8295. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8296. type: integer
  8297. retrySettings:
  8298. description: Used to configure HTTP retries on failures.
  8299. properties:
  8300. maxRetries:
  8301. format: int32
  8302. type: integer
  8303. retryInterval:
  8304. type: string
  8305. type: object
  8306. required:
  8307. - provider
  8308. type: object
  8309. status:
  8310. description: SecretStoreStatus defines the observed state of the SecretStore.
  8311. properties:
  8312. capabilities:
  8313. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8314. type: string
  8315. conditions:
  8316. items:
  8317. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8318. properties:
  8319. lastTransitionTime:
  8320. format: date-time
  8321. type: string
  8322. message:
  8323. type: string
  8324. reason:
  8325. type: string
  8326. status:
  8327. type: string
  8328. type:
  8329. description: SecretStoreConditionType represents the condition of the SecretStore.
  8330. type: string
  8331. required:
  8332. - status
  8333. - type
  8334. type: object
  8335. type: array
  8336. type: object
  8337. type: object
  8338. served: true
  8339. storage: true
  8340. subresources:
  8341. status: {}
  8342. - additionalPrinterColumns:
  8343. - jsonPath: .metadata.creationTimestamp
  8344. name: AGE
  8345. type: date
  8346. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8347. name: Status
  8348. type: string
  8349. - jsonPath: .status.capabilities
  8350. name: Capabilities
  8351. type: string
  8352. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8353. name: Ready
  8354. type: string
  8355. deprecated: true
  8356. name: v1beta1
  8357. schema:
  8358. openAPIV3Schema:
  8359. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8360. properties:
  8361. apiVersion:
  8362. description: |-
  8363. APIVersion defines the versioned schema of this representation of an object.
  8364. Servers should convert recognized schemas to the latest internal value, and
  8365. may reject unrecognized values.
  8366. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8367. type: string
  8368. kind:
  8369. description: |-
  8370. Kind is a string value representing the REST resource this object represents.
  8371. Servers may infer this from the endpoint the client submits requests to.
  8372. Cannot be updated.
  8373. In CamelCase.
  8374. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8375. type: string
  8376. metadata:
  8377. type: object
  8378. spec:
  8379. description: SecretStoreSpec defines the desired state of SecretStore.
  8380. properties:
  8381. conditions:
  8382. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8383. items:
  8384. description: |-
  8385. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8386. for a ClusterSecretStore instance.
  8387. properties:
  8388. namespaceRegexes:
  8389. description: Choose namespaces by using regex matching
  8390. items:
  8391. type: string
  8392. type: array
  8393. namespaceSelector:
  8394. description: Choose namespace using a labelSelector
  8395. properties:
  8396. matchExpressions:
  8397. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8398. items:
  8399. description: |-
  8400. A label selector requirement is a selector that contains values, a key, and an operator that
  8401. relates the key and values.
  8402. properties:
  8403. key:
  8404. description: key is the label key that the selector applies to.
  8405. type: string
  8406. operator:
  8407. description: |-
  8408. operator represents a key's relationship to a set of values.
  8409. Valid operators are In, NotIn, Exists and DoesNotExist.
  8410. type: string
  8411. values:
  8412. description: |-
  8413. values is an array of string values. If the operator is In or NotIn,
  8414. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8415. the values array must be empty. This array is replaced during a strategic
  8416. merge patch.
  8417. items:
  8418. type: string
  8419. type: array
  8420. x-kubernetes-list-type: atomic
  8421. required:
  8422. - key
  8423. - operator
  8424. type: object
  8425. type: array
  8426. x-kubernetes-list-type: atomic
  8427. matchLabels:
  8428. additionalProperties:
  8429. type: string
  8430. description: |-
  8431. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8432. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8433. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8434. type: object
  8435. type: object
  8436. x-kubernetes-map-type: atomic
  8437. namespaces:
  8438. description: Choose namespaces by name
  8439. items:
  8440. maxLength: 63
  8441. minLength: 1
  8442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8443. type: string
  8444. type: array
  8445. type: object
  8446. type: array
  8447. controller:
  8448. description: |-
  8449. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8450. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8451. type: string
  8452. provider:
  8453. description: Used to configure the provider. Only one provider may be set
  8454. maxProperties: 1
  8455. minProperties: 1
  8456. properties:
  8457. akeyless:
  8458. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8459. properties:
  8460. akeylessGWApiURL:
  8461. description: Akeyless GW API Url from which the secrets to be fetched from.
  8462. type: string
  8463. authSecretRef:
  8464. description: Auth configures how the operator authenticates with Akeyless.
  8465. properties:
  8466. kubernetesAuth:
  8467. description: |-
  8468. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8469. token stored in the named Secret resource.
  8470. properties:
  8471. accessID:
  8472. description: the Akeyless Kubernetes auth-method access-id
  8473. type: string
  8474. k8sConfName:
  8475. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8476. type: string
  8477. secretRef:
  8478. description: |-
  8479. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8480. for authenticating with Akeyless. If a name is specified without a key,
  8481. `token` is the default. If one is not specified, the one bound to
  8482. the controller will be used.
  8483. properties:
  8484. key:
  8485. description: |-
  8486. A key in the referenced Secret.
  8487. Some instances of this field may be defaulted, in others it may be required.
  8488. maxLength: 253
  8489. minLength: 1
  8490. pattern: ^[-._a-zA-Z0-9]+$
  8491. type: string
  8492. name:
  8493. description: The name of the Secret resource being referred to.
  8494. maxLength: 253
  8495. minLength: 1
  8496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8497. type: string
  8498. namespace:
  8499. description: |-
  8500. The namespace of the Secret resource being referred to.
  8501. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8502. maxLength: 63
  8503. minLength: 1
  8504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8505. type: string
  8506. type: object
  8507. serviceAccountRef:
  8508. description: |-
  8509. Optional service account field containing the name of a kubernetes ServiceAccount.
  8510. If the service account is specified, the service account secret token JWT will be used
  8511. for authenticating with Akeyless. If the service account selector is not supplied,
  8512. the secretRef will be used instead.
  8513. properties:
  8514. audiences:
  8515. description: |-
  8516. Audience specifies the `aud` claim for the service account token
  8517. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8518. then this audiences will be appended to the list
  8519. items:
  8520. type: string
  8521. type: array
  8522. name:
  8523. description: The name of the ServiceAccount resource being referred to.
  8524. maxLength: 253
  8525. minLength: 1
  8526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8527. type: string
  8528. namespace:
  8529. description: |-
  8530. Namespace of the resource being referred to.
  8531. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8532. maxLength: 63
  8533. minLength: 1
  8534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8535. type: string
  8536. required:
  8537. - name
  8538. type: object
  8539. required:
  8540. - accessID
  8541. - k8sConfName
  8542. type: object
  8543. secretRef:
  8544. description: |-
  8545. Reference to a Secret that contains the details
  8546. to authenticate with Akeyless.
  8547. properties:
  8548. accessID:
  8549. description: The SecretAccessID is used for authentication
  8550. properties:
  8551. key:
  8552. description: |-
  8553. A key in the referenced Secret.
  8554. Some instances of this field may be defaulted, in others it may be required.
  8555. maxLength: 253
  8556. minLength: 1
  8557. pattern: ^[-._a-zA-Z0-9]+$
  8558. type: string
  8559. name:
  8560. description: The name of the Secret resource being referred to.
  8561. maxLength: 253
  8562. minLength: 1
  8563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8564. type: string
  8565. namespace:
  8566. description: |-
  8567. The namespace of the Secret resource being referred to.
  8568. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8569. maxLength: 63
  8570. minLength: 1
  8571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8572. type: string
  8573. type: object
  8574. accessType:
  8575. description: |-
  8576. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8577. In some instances, `key` is a required field.
  8578. properties:
  8579. key:
  8580. description: |-
  8581. A key in the referenced Secret.
  8582. Some instances of this field may be defaulted, in others it may be required.
  8583. maxLength: 253
  8584. minLength: 1
  8585. pattern: ^[-._a-zA-Z0-9]+$
  8586. type: string
  8587. name:
  8588. description: The name of the Secret resource being referred to.
  8589. maxLength: 253
  8590. minLength: 1
  8591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8592. type: string
  8593. namespace:
  8594. description: |-
  8595. The namespace of the Secret resource being referred to.
  8596. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8597. maxLength: 63
  8598. minLength: 1
  8599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8600. type: string
  8601. type: object
  8602. accessTypeParam:
  8603. description: |-
  8604. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8605. In some instances, `key` is a required field.
  8606. properties:
  8607. key:
  8608. description: |-
  8609. A key in the referenced Secret.
  8610. Some instances of this field may be defaulted, in others it may be required.
  8611. maxLength: 253
  8612. minLength: 1
  8613. pattern: ^[-._a-zA-Z0-9]+$
  8614. type: string
  8615. name:
  8616. description: The name of the Secret resource being referred to.
  8617. maxLength: 253
  8618. minLength: 1
  8619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8620. type: string
  8621. namespace:
  8622. description: |-
  8623. The namespace of the Secret resource being referred to.
  8624. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8625. maxLength: 63
  8626. minLength: 1
  8627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8628. type: string
  8629. type: object
  8630. type: object
  8631. type: object
  8632. caBundle:
  8633. description: |-
  8634. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8635. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8636. are used to validate the TLS connection.
  8637. format: byte
  8638. type: string
  8639. caProvider:
  8640. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8641. properties:
  8642. key:
  8643. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8644. maxLength: 253
  8645. minLength: 1
  8646. pattern: ^[-._a-zA-Z0-9]+$
  8647. type: string
  8648. name:
  8649. description: The name of the object located at the provider type.
  8650. maxLength: 253
  8651. minLength: 1
  8652. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8653. type: string
  8654. namespace:
  8655. description: |-
  8656. The namespace the Provider type is in.
  8657. Can only be defined when used in a ClusterSecretStore.
  8658. maxLength: 63
  8659. minLength: 1
  8660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8661. type: string
  8662. type:
  8663. description: The type of provider to use such as "Secret", or "ConfigMap".
  8664. enum:
  8665. - Secret
  8666. - ConfigMap
  8667. type: string
  8668. required:
  8669. - name
  8670. - type
  8671. type: object
  8672. required:
  8673. - akeylessGWApiURL
  8674. - authSecretRef
  8675. type: object
  8676. alibaba:
  8677. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8678. properties:
  8679. auth:
  8680. description: AlibabaAuth contains a secretRef for credentials.
  8681. properties:
  8682. rrsa:
  8683. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  8684. properties:
  8685. oidcProviderArn:
  8686. type: string
  8687. oidcTokenFilePath:
  8688. type: string
  8689. roleArn:
  8690. type: string
  8691. sessionName:
  8692. type: string
  8693. required:
  8694. - oidcProviderArn
  8695. - oidcTokenFilePath
  8696. - roleArn
  8697. - sessionName
  8698. type: object
  8699. secretRef:
  8700. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  8701. properties:
  8702. accessKeyIDSecretRef:
  8703. description: The AccessKeyID is used for authentication
  8704. properties:
  8705. key:
  8706. description: |-
  8707. A key in the referenced Secret.
  8708. Some instances of this field may be defaulted, in others it may be required.
  8709. maxLength: 253
  8710. minLength: 1
  8711. pattern: ^[-._a-zA-Z0-9]+$
  8712. type: string
  8713. name:
  8714. description: The name of the Secret resource being referred to.
  8715. maxLength: 253
  8716. minLength: 1
  8717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8718. type: string
  8719. namespace:
  8720. description: |-
  8721. The namespace of the Secret resource being referred to.
  8722. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8723. maxLength: 63
  8724. minLength: 1
  8725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8726. type: string
  8727. type: object
  8728. accessKeySecretSecretRef:
  8729. description: The AccessKeySecret is used for authentication
  8730. properties:
  8731. key:
  8732. description: |-
  8733. A key in the referenced Secret.
  8734. Some instances of this field may be defaulted, in others it may be required.
  8735. maxLength: 253
  8736. minLength: 1
  8737. pattern: ^[-._a-zA-Z0-9]+$
  8738. type: string
  8739. name:
  8740. description: The name of the Secret resource being referred to.
  8741. maxLength: 253
  8742. minLength: 1
  8743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8744. type: string
  8745. namespace:
  8746. description: |-
  8747. The namespace of the Secret resource being referred to.
  8748. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8749. maxLength: 63
  8750. minLength: 1
  8751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8752. type: string
  8753. type: object
  8754. required:
  8755. - accessKeyIDSecretRef
  8756. - accessKeySecretSecretRef
  8757. type: object
  8758. type: object
  8759. regionID:
  8760. description: Alibaba Region to be used for the provider
  8761. type: string
  8762. required:
  8763. - auth
  8764. - regionID
  8765. type: object
  8766. aws:
  8767. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  8768. properties:
  8769. additionalRoles:
  8770. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  8771. items:
  8772. type: string
  8773. type: array
  8774. auth:
  8775. description: |-
  8776. Auth defines the information necessary to authenticate against AWS
  8777. if not set aws sdk will infer credentials from your environment
  8778. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  8779. properties:
  8780. jwt:
  8781. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  8782. properties:
  8783. serviceAccountRef:
  8784. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  8785. properties:
  8786. audiences:
  8787. description: |-
  8788. Audience specifies the `aud` claim for the service account token
  8789. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8790. then this audiences will be appended to the list
  8791. items:
  8792. type: string
  8793. type: array
  8794. name:
  8795. description: The name of the ServiceAccount resource being referred to.
  8796. maxLength: 253
  8797. minLength: 1
  8798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8799. type: string
  8800. namespace:
  8801. description: |-
  8802. Namespace of the resource being referred to.
  8803. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8804. maxLength: 63
  8805. minLength: 1
  8806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8807. type: string
  8808. required:
  8809. - name
  8810. type: object
  8811. type: object
  8812. secretRef:
  8813. description: |-
  8814. AWSAuthSecretRef holds secret references for AWS credentials
  8815. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8816. properties:
  8817. accessKeyIDSecretRef:
  8818. description: The AccessKeyID is used for authentication
  8819. properties:
  8820. key:
  8821. description: |-
  8822. A key in the referenced Secret.
  8823. Some instances of this field may be defaulted, in others it may be required.
  8824. maxLength: 253
  8825. minLength: 1
  8826. pattern: ^[-._a-zA-Z0-9]+$
  8827. type: string
  8828. name:
  8829. description: The name of the Secret resource being referred to.
  8830. maxLength: 253
  8831. minLength: 1
  8832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8833. type: string
  8834. namespace:
  8835. description: |-
  8836. The namespace of the Secret resource being referred to.
  8837. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8838. maxLength: 63
  8839. minLength: 1
  8840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8841. type: string
  8842. type: object
  8843. secretAccessKeySecretRef:
  8844. description: The SecretAccessKey is used for authentication
  8845. properties:
  8846. key:
  8847. description: |-
  8848. A key in the referenced Secret.
  8849. Some instances of this field may be defaulted, in others it may be required.
  8850. maxLength: 253
  8851. minLength: 1
  8852. pattern: ^[-._a-zA-Z0-9]+$
  8853. type: string
  8854. name:
  8855. description: The name of the Secret resource being referred to.
  8856. maxLength: 253
  8857. minLength: 1
  8858. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8859. type: string
  8860. namespace:
  8861. description: |-
  8862. The namespace of the Secret resource being referred to.
  8863. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8864. maxLength: 63
  8865. minLength: 1
  8866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8867. type: string
  8868. type: object
  8869. sessionTokenSecretRef:
  8870. description: |-
  8871. The SessionToken used for authentication
  8872. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8873. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8874. properties:
  8875. key:
  8876. description: |-
  8877. A key in the referenced Secret.
  8878. Some instances of this field may be defaulted, in others it may be required.
  8879. maxLength: 253
  8880. minLength: 1
  8881. pattern: ^[-._a-zA-Z0-9]+$
  8882. type: string
  8883. name:
  8884. description: The name of the Secret resource being referred to.
  8885. maxLength: 253
  8886. minLength: 1
  8887. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8888. type: string
  8889. namespace:
  8890. description: |-
  8891. The namespace of the Secret resource being referred to.
  8892. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8893. maxLength: 63
  8894. minLength: 1
  8895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8896. type: string
  8897. type: object
  8898. type: object
  8899. type: object
  8900. externalID:
  8901. description: AWS External ID set on assumed IAM roles
  8902. type: string
  8903. prefix:
  8904. description: Prefix adds a prefix to all retrieved values.
  8905. type: string
  8906. region:
  8907. description: AWS Region to be used for the provider
  8908. type: string
  8909. role:
  8910. description: Role is a Role ARN which the provider will assume
  8911. type: string
  8912. secretsManager:
  8913. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  8914. properties:
  8915. forceDeleteWithoutRecovery:
  8916. description: |-
  8917. Specifies whether to delete the secret without any recovery window. You
  8918. can't use both this parameter and RecoveryWindowInDays in the same call.
  8919. If you don't use either, then by default Secrets Manager uses a 30 day
  8920. recovery window.
  8921. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  8922. type: boolean
  8923. recoveryWindowInDays:
  8924. description: |-
  8925. The number of days from 7 to 30 that Secrets Manager waits before
  8926. permanently deleting the secret. You can't use both this parameter and
  8927. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  8928. then by default Secrets Manager uses a 30 day recovery window.
  8929. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  8930. format: int64
  8931. type: integer
  8932. type: object
  8933. service:
  8934. description: Service defines which service should be used to fetch the secrets
  8935. enum:
  8936. - SecretsManager
  8937. - ParameterStore
  8938. type: string
  8939. sessionTags:
  8940. description: AWS STS assume role session tags
  8941. items:
  8942. description: Tag defines a tag key and value for AWS resources.
  8943. properties:
  8944. key:
  8945. type: string
  8946. value:
  8947. type: string
  8948. required:
  8949. - key
  8950. - value
  8951. type: object
  8952. type: array
  8953. transitiveTagKeys:
  8954. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  8955. items:
  8956. type: string
  8957. type: array
  8958. required:
  8959. - region
  8960. - service
  8961. type: object
  8962. azurekv:
  8963. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  8964. properties:
  8965. authSecretRef:
  8966. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8967. properties:
  8968. clientCertificate:
  8969. description: The Azure ClientCertificate of the service principle used for authentication.
  8970. properties:
  8971. key:
  8972. description: |-
  8973. A key in the referenced Secret.
  8974. Some instances of this field may be defaulted, in others it may be required.
  8975. maxLength: 253
  8976. minLength: 1
  8977. pattern: ^[-._a-zA-Z0-9]+$
  8978. type: string
  8979. name:
  8980. description: The name of the Secret resource being referred to.
  8981. maxLength: 253
  8982. minLength: 1
  8983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8984. type: string
  8985. namespace:
  8986. description: |-
  8987. The namespace of the Secret resource being referred to.
  8988. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8989. maxLength: 63
  8990. minLength: 1
  8991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8992. type: string
  8993. type: object
  8994. clientId:
  8995. description: The Azure clientId of the service principle or managed identity used for authentication.
  8996. properties:
  8997. key:
  8998. description: |-
  8999. A key in the referenced Secret.
  9000. Some instances of this field may be defaulted, in others it may be required.
  9001. maxLength: 253
  9002. minLength: 1
  9003. pattern: ^[-._a-zA-Z0-9]+$
  9004. type: string
  9005. name:
  9006. description: The name of the Secret resource being referred to.
  9007. maxLength: 253
  9008. minLength: 1
  9009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9010. type: string
  9011. namespace:
  9012. description: |-
  9013. The namespace of the Secret resource being referred to.
  9014. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9015. maxLength: 63
  9016. minLength: 1
  9017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9018. type: string
  9019. type: object
  9020. clientSecret:
  9021. description: The Azure ClientSecret of the service principle used for authentication.
  9022. properties:
  9023. key:
  9024. description: |-
  9025. A key in the referenced Secret.
  9026. Some instances of this field may be defaulted, in others it may be required.
  9027. maxLength: 253
  9028. minLength: 1
  9029. pattern: ^[-._a-zA-Z0-9]+$
  9030. type: string
  9031. name:
  9032. description: The name of the Secret resource being referred to.
  9033. maxLength: 253
  9034. minLength: 1
  9035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9036. type: string
  9037. namespace:
  9038. description: |-
  9039. The namespace of the Secret resource being referred to.
  9040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9041. maxLength: 63
  9042. minLength: 1
  9043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9044. type: string
  9045. type: object
  9046. tenantId:
  9047. description: The Azure tenantId of the managed identity used for authentication.
  9048. properties:
  9049. key:
  9050. description: |-
  9051. A key in the referenced Secret.
  9052. Some instances of this field may be defaulted, in others it may be required.
  9053. maxLength: 253
  9054. minLength: 1
  9055. pattern: ^[-._a-zA-Z0-9]+$
  9056. type: string
  9057. name:
  9058. description: The name of the Secret resource being referred to.
  9059. maxLength: 253
  9060. minLength: 1
  9061. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9062. type: string
  9063. namespace:
  9064. description: |-
  9065. The namespace of the Secret resource being referred to.
  9066. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9067. maxLength: 63
  9068. minLength: 1
  9069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9070. type: string
  9071. type: object
  9072. type: object
  9073. authType:
  9074. default: ServicePrincipal
  9075. description: |-
  9076. Auth type defines how to authenticate to the keyvault service.
  9077. Valid values are:
  9078. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  9079. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  9080. enum:
  9081. - ServicePrincipal
  9082. - ManagedIdentity
  9083. - WorkloadIdentity
  9084. type: string
  9085. environmentType:
  9086. default: PublicCloud
  9087. description: |-
  9088. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9089. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9090. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9091. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9092. enum:
  9093. - PublicCloud
  9094. - USGovernmentCloud
  9095. - ChinaCloud
  9096. - GermanCloud
  9097. type: string
  9098. identityId:
  9099. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9100. type: string
  9101. serviceAccountRef:
  9102. description: |-
  9103. ServiceAccountRef specified the service account
  9104. that should be used when authenticating with WorkloadIdentity.
  9105. properties:
  9106. audiences:
  9107. description: |-
  9108. Audience specifies the `aud` claim for the service account token
  9109. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9110. then this audiences will be appended to the list
  9111. items:
  9112. type: string
  9113. type: array
  9114. name:
  9115. description: The name of the ServiceAccount resource being referred to.
  9116. maxLength: 253
  9117. minLength: 1
  9118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9119. type: string
  9120. namespace:
  9121. description: |-
  9122. Namespace of the resource being referred to.
  9123. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9124. maxLength: 63
  9125. minLength: 1
  9126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9127. type: string
  9128. required:
  9129. - name
  9130. type: object
  9131. tenantId:
  9132. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9133. type: string
  9134. vaultUrl:
  9135. description: Vault Url from which the secrets to be fetched from.
  9136. type: string
  9137. required:
  9138. - vaultUrl
  9139. type: object
  9140. beyondtrust:
  9141. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  9142. properties:
  9143. auth:
  9144. description: Auth configures how the operator authenticates with Beyondtrust.
  9145. properties:
  9146. apiKey:
  9147. description: APIKey If not provided then ClientID/ClientSecret become required.
  9148. properties:
  9149. secretRef:
  9150. description: SecretRef references a key in a secret that will be used as value.
  9151. properties:
  9152. key:
  9153. description: |-
  9154. A key in the referenced Secret.
  9155. Some instances of this field may be defaulted, in others it may be required.
  9156. maxLength: 253
  9157. minLength: 1
  9158. pattern: ^[-._a-zA-Z0-9]+$
  9159. type: string
  9160. name:
  9161. description: The name of the Secret resource being referred to.
  9162. maxLength: 253
  9163. minLength: 1
  9164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9165. type: string
  9166. namespace:
  9167. description: |-
  9168. The namespace of the Secret resource being referred to.
  9169. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9170. maxLength: 63
  9171. minLength: 1
  9172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9173. type: string
  9174. type: object
  9175. value:
  9176. description: Value can be specified directly to set a value without using a secret.
  9177. type: string
  9178. type: object
  9179. certificate:
  9180. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  9181. properties:
  9182. secretRef:
  9183. description: SecretRef references a key in a secret that will be used as value.
  9184. properties:
  9185. key:
  9186. description: |-
  9187. A key in the referenced Secret.
  9188. Some instances of this field may be defaulted, in others it may be required.
  9189. maxLength: 253
  9190. minLength: 1
  9191. pattern: ^[-._a-zA-Z0-9]+$
  9192. type: string
  9193. name:
  9194. description: The name of the Secret resource being referred to.
  9195. maxLength: 253
  9196. minLength: 1
  9197. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9198. type: string
  9199. namespace:
  9200. description: |-
  9201. The namespace of the Secret resource being referred to.
  9202. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9203. maxLength: 63
  9204. minLength: 1
  9205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9206. type: string
  9207. type: object
  9208. value:
  9209. description: Value can be specified directly to set a value without using a secret.
  9210. type: string
  9211. type: object
  9212. certificateKey:
  9213. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9214. properties:
  9215. secretRef:
  9216. description: SecretRef references a key in a secret that will be used as value.
  9217. properties:
  9218. key:
  9219. description: |-
  9220. A key in the referenced Secret.
  9221. Some instances of this field may be defaulted, in others it may be required.
  9222. maxLength: 253
  9223. minLength: 1
  9224. pattern: ^[-._a-zA-Z0-9]+$
  9225. type: string
  9226. name:
  9227. description: The name of the Secret resource being referred to.
  9228. maxLength: 253
  9229. minLength: 1
  9230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9231. type: string
  9232. namespace:
  9233. description: |-
  9234. The namespace of the Secret resource being referred to.
  9235. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9236. maxLength: 63
  9237. minLength: 1
  9238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9239. type: string
  9240. type: object
  9241. value:
  9242. description: Value can be specified directly to set a value without using a secret.
  9243. type: string
  9244. type: object
  9245. clientId:
  9246. description: ClientID is the API OAuth Client ID.
  9247. properties:
  9248. secretRef:
  9249. description: SecretRef references a key in a secret that will be used as value.
  9250. properties:
  9251. key:
  9252. description: |-
  9253. A key in the referenced Secret.
  9254. Some instances of this field may be defaulted, in others it may be required.
  9255. maxLength: 253
  9256. minLength: 1
  9257. pattern: ^[-._a-zA-Z0-9]+$
  9258. type: string
  9259. name:
  9260. description: The name of the Secret resource being referred to.
  9261. maxLength: 253
  9262. minLength: 1
  9263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9264. type: string
  9265. namespace:
  9266. description: |-
  9267. The namespace of the Secret resource being referred to.
  9268. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9269. maxLength: 63
  9270. minLength: 1
  9271. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9272. type: string
  9273. type: object
  9274. value:
  9275. description: Value can be specified directly to set a value without using a secret.
  9276. type: string
  9277. type: object
  9278. clientSecret:
  9279. description: ClientSecret is the API OAuth Client Secret.
  9280. properties:
  9281. secretRef:
  9282. description: SecretRef references a key in a secret that will be used as value.
  9283. properties:
  9284. key:
  9285. description: |-
  9286. A key in the referenced Secret.
  9287. Some instances of this field may be defaulted, in others it may be required.
  9288. maxLength: 253
  9289. minLength: 1
  9290. pattern: ^[-._a-zA-Z0-9]+$
  9291. type: string
  9292. name:
  9293. description: The name of the Secret resource being referred to.
  9294. maxLength: 253
  9295. minLength: 1
  9296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9297. type: string
  9298. namespace:
  9299. description: |-
  9300. The namespace of the Secret resource being referred to.
  9301. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9302. maxLength: 63
  9303. minLength: 1
  9304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9305. type: string
  9306. type: object
  9307. value:
  9308. description: Value can be specified directly to set a value without using a secret.
  9309. type: string
  9310. type: object
  9311. type: object
  9312. server:
  9313. description: Auth configures how API server works.
  9314. properties:
  9315. apiUrl:
  9316. type: string
  9317. apiVersion:
  9318. type: string
  9319. clientTimeOutSeconds:
  9320. 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.
  9321. type: integer
  9322. decrypt:
  9323. default: true
  9324. 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.'
  9325. type: boolean
  9326. retrievalType:
  9327. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9328. type: string
  9329. separator:
  9330. description: A character that separates the folder names.
  9331. type: string
  9332. verifyCA:
  9333. type: boolean
  9334. required:
  9335. - apiUrl
  9336. - verifyCA
  9337. type: object
  9338. required:
  9339. - auth
  9340. - server
  9341. type: object
  9342. bitwardensecretsmanager:
  9343. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9344. properties:
  9345. apiURL:
  9346. type: string
  9347. auth:
  9348. description: |-
  9349. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9350. Make sure that the token being used has permissions on the given secret.
  9351. properties:
  9352. secretRef:
  9353. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9354. properties:
  9355. credentials:
  9356. description: AccessToken used for the bitwarden instance.
  9357. properties:
  9358. key:
  9359. description: |-
  9360. A key in the referenced Secret.
  9361. Some instances of this field may be defaulted, in others it may be required.
  9362. maxLength: 253
  9363. minLength: 1
  9364. pattern: ^[-._a-zA-Z0-9]+$
  9365. type: string
  9366. name:
  9367. description: The name of the Secret resource being referred to.
  9368. maxLength: 253
  9369. minLength: 1
  9370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9371. type: string
  9372. namespace:
  9373. description: |-
  9374. The namespace of the Secret resource being referred to.
  9375. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9376. maxLength: 63
  9377. minLength: 1
  9378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9379. type: string
  9380. type: object
  9381. required:
  9382. - credentials
  9383. type: object
  9384. required:
  9385. - secretRef
  9386. type: object
  9387. bitwardenServerSDKURL:
  9388. type: string
  9389. caBundle:
  9390. description: |-
  9391. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9392. can be performed.
  9393. type: string
  9394. caProvider:
  9395. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9396. properties:
  9397. key:
  9398. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9399. maxLength: 253
  9400. minLength: 1
  9401. pattern: ^[-._a-zA-Z0-9]+$
  9402. type: string
  9403. name:
  9404. description: The name of the object located at the provider type.
  9405. maxLength: 253
  9406. minLength: 1
  9407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9408. type: string
  9409. namespace:
  9410. description: |-
  9411. The namespace the Provider type is in.
  9412. Can only be defined when used in a ClusterSecretStore.
  9413. maxLength: 63
  9414. minLength: 1
  9415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9416. type: string
  9417. type:
  9418. description: The type of provider to use such as "Secret", or "ConfigMap".
  9419. enum:
  9420. - Secret
  9421. - ConfigMap
  9422. type: string
  9423. required:
  9424. - name
  9425. - type
  9426. type: object
  9427. identityURL:
  9428. type: string
  9429. organizationID:
  9430. description: OrganizationID determines which organization this secret store manages.
  9431. type: string
  9432. projectID:
  9433. description: ProjectID determines which project this secret store manages.
  9434. type: string
  9435. required:
  9436. - auth
  9437. - organizationID
  9438. - projectID
  9439. type: object
  9440. chef:
  9441. description: Chef configures this store to sync secrets with chef server
  9442. properties:
  9443. auth:
  9444. description: Auth defines the information necessary to authenticate against chef Server
  9445. properties:
  9446. secretRef:
  9447. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9448. properties:
  9449. privateKeySecretRef:
  9450. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9451. properties:
  9452. key:
  9453. description: |-
  9454. A key in the referenced Secret.
  9455. Some instances of this field may be defaulted, in others it may be required.
  9456. maxLength: 253
  9457. minLength: 1
  9458. pattern: ^[-._a-zA-Z0-9]+$
  9459. type: string
  9460. name:
  9461. description: The name of the Secret resource being referred to.
  9462. maxLength: 253
  9463. minLength: 1
  9464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9465. type: string
  9466. namespace:
  9467. description: |-
  9468. The namespace of the Secret resource being referred to.
  9469. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9470. maxLength: 63
  9471. minLength: 1
  9472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9473. type: string
  9474. type: object
  9475. required:
  9476. - privateKeySecretRef
  9477. type: object
  9478. required:
  9479. - secretRef
  9480. type: object
  9481. serverUrl:
  9482. 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 "/"
  9483. type: string
  9484. username:
  9485. description: UserName should be the user ID on the chef server
  9486. type: string
  9487. required:
  9488. - auth
  9489. - serverUrl
  9490. - username
  9491. type: object
  9492. cloudrusm:
  9493. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9494. properties:
  9495. auth:
  9496. description: CSMAuth contains a secretRef for credentials.
  9497. properties:
  9498. secretRef:
  9499. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9500. properties:
  9501. accessKeyIDSecretRef:
  9502. description: The AccessKeyID is used for authentication
  9503. properties:
  9504. key:
  9505. description: |-
  9506. A key in the referenced Secret.
  9507. Some instances of this field may be defaulted, in others it may be required.
  9508. maxLength: 253
  9509. minLength: 1
  9510. pattern: ^[-._a-zA-Z0-9]+$
  9511. type: string
  9512. name:
  9513. description: The name of the Secret resource being referred to.
  9514. maxLength: 253
  9515. minLength: 1
  9516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9517. type: string
  9518. namespace:
  9519. description: |-
  9520. The namespace of the Secret resource being referred to.
  9521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9522. maxLength: 63
  9523. minLength: 1
  9524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9525. type: string
  9526. type: object
  9527. accessKeySecretSecretRef:
  9528. description: The AccessKeySecret is used for authentication
  9529. properties:
  9530. key:
  9531. description: |-
  9532. A key in the referenced Secret.
  9533. Some instances of this field may be defaulted, in others it may be required.
  9534. maxLength: 253
  9535. minLength: 1
  9536. pattern: ^[-._a-zA-Z0-9]+$
  9537. type: string
  9538. name:
  9539. description: The name of the Secret resource being referred to.
  9540. maxLength: 253
  9541. minLength: 1
  9542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9543. type: string
  9544. namespace:
  9545. description: |-
  9546. The namespace of the Secret resource being referred to.
  9547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9548. maxLength: 63
  9549. minLength: 1
  9550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9551. type: string
  9552. type: object
  9553. required:
  9554. - accessKeyIDSecretRef
  9555. - accessKeySecretSecretRef
  9556. type: object
  9557. type: object
  9558. projectID:
  9559. description: ProjectID is the project, which the secrets are stored in.
  9560. type: string
  9561. required:
  9562. - auth
  9563. type: object
  9564. conjur:
  9565. description: Conjur configures this store to sync secrets using conjur provider
  9566. properties:
  9567. auth:
  9568. description: Defines authentication settings for connecting to Conjur.
  9569. properties:
  9570. apikey:
  9571. description: Authenticates with Conjur using an API key.
  9572. properties:
  9573. account:
  9574. description: Account is the Conjur organization account name.
  9575. type: string
  9576. apiKeyRef:
  9577. description: |-
  9578. A reference to a specific 'key' containing the Conjur API key
  9579. within a Secret resource. In some instances, `key` is a required field.
  9580. properties:
  9581. key:
  9582. description: |-
  9583. A key in the referenced Secret.
  9584. Some instances of this field may be defaulted, in others it may be required.
  9585. maxLength: 253
  9586. minLength: 1
  9587. pattern: ^[-._a-zA-Z0-9]+$
  9588. type: string
  9589. name:
  9590. description: The name of the Secret resource being referred to.
  9591. maxLength: 253
  9592. minLength: 1
  9593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9594. type: string
  9595. namespace:
  9596. description: |-
  9597. The namespace of the Secret resource being referred to.
  9598. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9599. maxLength: 63
  9600. minLength: 1
  9601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9602. type: string
  9603. type: object
  9604. userRef:
  9605. description: |-
  9606. A reference to a specific 'key' containing the Conjur username
  9607. within a Secret resource. In some instances, `key` is a required field.
  9608. properties:
  9609. key:
  9610. description: |-
  9611. A key in the referenced Secret.
  9612. Some instances of this field may be defaulted, in others it may be required.
  9613. maxLength: 253
  9614. minLength: 1
  9615. pattern: ^[-._a-zA-Z0-9]+$
  9616. type: string
  9617. name:
  9618. description: The name of the Secret resource being referred to.
  9619. maxLength: 253
  9620. minLength: 1
  9621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9622. type: string
  9623. namespace:
  9624. description: |-
  9625. The namespace of the Secret resource being referred to.
  9626. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9627. maxLength: 63
  9628. minLength: 1
  9629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9630. type: string
  9631. type: object
  9632. required:
  9633. - account
  9634. - apiKeyRef
  9635. - userRef
  9636. type: object
  9637. jwt:
  9638. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  9639. properties:
  9640. account:
  9641. description: Account is the Conjur organization account name.
  9642. type: string
  9643. hostId:
  9644. description: |-
  9645. Optional HostID for JWT authentication. This may be used depending
  9646. on how the Conjur JWT authenticator policy is configured.
  9647. type: string
  9648. secretRef:
  9649. description: |-
  9650. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9651. authenticate with Conjur using the JWT authentication method.
  9652. properties:
  9653. key:
  9654. description: |-
  9655. A key in the referenced Secret.
  9656. Some instances of this field may be defaulted, in others it may be required.
  9657. maxLength: 253
  9658. minLength: 1
  9659. pattern: ^[-._a-zA-Z0-9]+$
  9660. type: string
  9661. name:
  9662. description: The name of the Secret resource being referred to.
  9663. maxLength: 253
  9664. minLength: 1
  9665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9666. type: string
  9667. namespace:
  9668. description: |-
  9669. The namespace of the Secret resource being referred to.
  9670. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9671. maxLength: 63
  9672. minLength: 1
  9673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9674. type: string
  9675. type: object
  9676. serviceAccountRef:
  9677. description: |-
  9678. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  9679. a token for with the `TokenRequest` API.
  9680. properties:
  9681. audiences:
  9682. description: |-
  9683. Audience specifies the `aud` claim for the service account token
  9684. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9685. then this audiences will be appended to the list
  9686. items:
  9687. type: string
  9688. type: array
  9689. name:
  9690. description: The name of the ServiceAccount resource being referred to.
  9691. maxLength: 253
  9692. minLength: 1
  9693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9694. type: string
  9695. namespace:
  9696. description: |-
  9697. Namespace of the resource being referred to.
  9698. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9699. maxLength: 63
  9700. minLength: 1
  9701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9702. type: string
  9703. required:
  9704. - name
  9705. type: object
  9706. serviceID:
  9707. description: The conjur authn jwt webservice id
  9708. type: string
  9709. required:
  9710. - account
  9711. - serviceID
  9712. type: object
  9713. type: object
  9714. caBundle:
  9715. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  9716. type: string
  9717. caProvider:
  9718. description: |-
  9719. Used to provide custom certificate authority (CA) certificates
  9720. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  9721. that contains a PEM-encoded certificate.
  9722. properties:
  9723. key:
  9724. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9725. maxLength: 253
  9726. minLength: 1
  9727. pattern: ^[-._a-zA-Z0-9]+$
  9728. type: string
  9729. name:
  9730. description: The name of the object located at the provider type.
  9731. maxLength: 253
  9732. minLength: 1
  9733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9734. type: string
  9735. namespace:
  9736. description: |-
  9737. The namespace the Provider type is in.
  9738. Can only be defined when used in a ClusterSecretStore.
  9739. maxLength: 63
  9740. minLength: 1
  9741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9742. type: string
  9743. type:
  9744. description: The type of provider to use such as "Secret", or "ConfigMap".
  9745. enum:
  9746. - Secret
  9747. - ConfigMap
  9748. type: string
  9749. required:
  9750. - name
  9751. - type
  9752. type: object
  9753. url:
  9754. description: URL is the endpoint of the Conjur instance.
  9755. type: string
  9756. required:
  9757. - auth
  9758. - url
  9759. type: object
  9760. delinea:
  9761. description: |-
  9762. Delinea DevOps Secrets Vault
  9763. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  9764. properties:
  9765. clientId:
  9766. description: ClientID is the non-secret part of the credential.
  9767. properties:
  9768. secretRef:
  9769. description: SecretRef references a key in a secret that will be used as value.
  9770. properties:
  9771. key:
  9772. description: |-
  9773. A key in the referenced Secret.
  9774. Some instances of this field may be defaulted, in others it may be required.
  9775. maxLength: 253
  9776. minLength: 1
  9777. pattern: ^[-._a-zA-Z0-9]+$
  9778. type: string
  9779. name:
  9780. description: The name of the Secret resource being referred to.
  9781. maxLength: 253
  9782. minLength: 1
  9783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9784. type: string
  9785. namespace:
  9786. description: |-
  9787. The namespace of the Secret resource being referred to.
  9788. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9789. maxLength: 63
  9790. minLength: 1
  9791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9792. type: string
  9793. type: object
  9794. value:
  9795. description: Value can be specified directly to set a value without using a secret.
  9796. type: string
  9797. type: object
  9798. clientSecret:
  9799. description: ClientSecret is the secret part of the credential.
  9800. properties:
  9801. secretRef:
  9802. description: SecretRef references a key in a secret that will be used as value.
  9803. properties:
  9804. key:
  9805. description: |-
  9806. A key in the referenced Secret.
  9807. Some instances of this field may be defaulted, in others it may be required.
  9808. maxLength: 253
  9809. minLength: 1
  9810. pattern: ^[-._a-zA-Z0-9]+$
  9811. type: string
  9812. name:
  9813. description: The name of the Secret resource being referred to.
  9814. maxLength: 253
  9815. minLength: 1
  9816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9817. type: string
  9818. namespace:
  9819. description: |-
  9820. The namespace of the Secret resource being referred to.
  9821. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9822. maxLength: 63
  9823. minLength: 1
  9824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9825. type: string
  9826. type: object
  9827. value:
  9828. description: Value can be specified directly to set a value without using a secret.
  9829. type: string
  9830. type: object
  9831. tenant:
  9832. description: Tenant is the chosen hostname / site name.
  9833. type: string
  9834. tld:
  9835. description: |-
  9836. TLD is based on the server location that was chosen during provisioning.
  9837. If unset, defaults to "com".
  9838. type: string
  9839. urlTemplate:
  9840. description: |-
  9841. URLTemplate
  9842. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  9843. type: string
  9844. required:
  9845. - clientId
  9846. - clientSecret
  9847. - tenant
  9848. type: object
  9849. device42:
  9850. description: Device42 configures this store to sync secrets using the Device42 provider
  9851. properties:
  9852. auth:
  9853. description: Auth configures how secret-manager authenticates with a Device42 instance.
  9854. properties:
  9855. secretRef:
  9856. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  9857. properties:
  9858. credentials:
  9859. description: Username / Password is used for authentication.
  9860. properties:
  9861. key:
  9862. description: |-
  9863. A key in the referenced Secret.
  9864. Some instances of this field may be defaulted, in others it may be required.
  9865. maxLength: 253
  9866. minLength: 1
  9867. pattern: ^[-._a-zA-Z0-9]+$
  9868. type: string
  9869. name:
  9870. description: The name of the Secret resource being referred to.
  9871. maxLength: 253
  9872. minLength: 1
  9873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9874. type: string
  9875. namespace:
  9876. description: |-
  9877. The namespace of the Secret resource being referred to.
  9878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9879. maxLength: 63
  9880. minLength: 1
  9881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9882. type: string
  9883. type: object
  9884. type: object
  9885. required:
  9886. - secretRef
  9887. type: object
  9888. host:
  9889. description: URL configures the Device42 instance URL.
  9890. type: string
  9891. required:
  9892. - auth
  9893. - host
  9894. type: object
  9895. doppler:
  9896. description: Doppler configures this store to sync secrets using the Doppler provider
  9897. properties:
  9898. auth:
  9899. description: Auth configures how the Operator authenticates with the Doppler API
  9900. properties:
  9901. secretRef:
  9902. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  9903. properties:
  9904. dopplerToken:
  9905. description: |-
  9906. The DopplerToken is used for authentication.
  9907. See https://docs.doppler.com/reference/api#authentication for auth token types.
  9908. The Key attribute defaults to dopplerToken if not specified.
  9909. properties:
  9910. key:
  9911. description: |-
  9912. A key in the referenced Secret.
  9913. Some instances of this field may be defaulted, in others it may be required.
  9914. maxLength: 253
  9915. minLength: 1
  9916. pattern: ^[-._a-zA-Z0-9]+$
  9917. type: string
  9918. name:
  9919. description: The name of the Secret resource being referred to.
  9920. maxLength: 253
  9921. minLength: 1
  9922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9923. type: string
  9924. namespace:
  9925. description: |-
  9926. The namespace of the Secret resource being referred to.
  9927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9928. maxLength: 63
  9929. minLength: 1
  9930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9931. type: string
  9932. type: object
  9933. required:
  9934. - dopplerToken
  9935. type: object
  9936. required:
  9937. - secretRef
  9938. type: object
  9939. config:
  9940. description: Doppler config (required if not using a Service Token)
  9941. type: string
  9942. format:
  9943. description: Format enables the downloading of secrets as a file (string)
  9944. enum:
  9945. - json
  9946. - dotnet-json
  9947. - env
  9948. - yaml
  9949. - docker
  9950. type: string
  9951. nameTransformer:
  9952. description: Environment variable compatible name transforms that change secret names to a different format
  9953. enum:
  9954. - upper-camel
  9955. - camel
  9956. - lower-snake
  9957. - tf-var
  9958. - dotnet-env
  9959. - lower-kebab
  9960. type: string
  9961. project:
  9962. description: Doppler project (required if not using a Service Token)
  9963. type: string
  9964. required:
  9965. - auth
  9966. type: object
  9967. fake:
  9968. description: Fake configures a store with static key/value pairs
  9969. properties:
  9970. data:
  9971. items:
  9972. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  9973. properties:
  9974. key:
  9975. type: string
  9976. value:
  9977. type: string
  9978. version:
  9979. type: string
  9980. required:
  9981. - key
  9982. - value
  9983. type: object
  9984. type: array
  9985. required:
  9986. - data
  9987. type: object
  9988. fortanix:
  9989. description: Fortanix configures this store to sync secrets using the Fortanix provider
  9990. properties:
  9991. apiKey:
  9992. description: APIKey is the API token to access SDKMS Applications.
  9993. properties:
  9994. secretRef:
  9995. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  9996. properties:
  9997. key:
  9998. description: |-
  9999. A key in the referenced Secret.
  10000. Some instances of this field may be defaulted, in others it may be required.
  10001. maxLength: 253
  10002. minLength: 1
  10003. pattern: ^[-._a-zA-Z0-9]+$
  10004. type: string
  10005. name:
  10006. description: The name of the Secret resource being referred to.
  10007. maxLength: 253
  10008. minLength: 1
  10009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10010. type: string
  10011. namespace:
  10012. description: |-
  10013. The namespace of the Secret resource being referred to.
  10014. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10015. maxLength: 63
  10016. minLength: 1
  10017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10018. type: string
  10019. type: object
  10020. type: object
  10021. apiUrl:
  10022. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  10023. type: string
  10024. type: object
  10025. gcpsm:
  10026. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  10027. properties:
  10028. auth:
  10029. description: Auth defines the information necessary to authenticate against GCP
  10030. properties:
  10031. secretRef:
  10032. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  10033. properties:
  10034. secretAccessKeySecretRef:
  10035. description: The SecretAccessKey is used for authentication
  10036. properties:
  10037. key:
  10038. description: |-
  10039. A key in the referenced Secret.
  10040. Some instances of this field may be defaulted, in others it may be required.
  10041. maxLength: 253
  10042. minLength: 1
  10043. pattern: ^[-._a-zA-Z0-9]+$
  10044. type: string
  10045. name:
  10046. description: The name of the Secret resource being referred to.
  10047. maxLength: 253
  10048. minLength: 1
  10049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10050. type: string
  10051. namespace:
  10052. description: |-
  10053. The namespace of the Secret resource being referred to.
  10054. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10055. maxLength: 63
  10056. minLength: 1
  10057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10058. type: string
  10059. type: object
  10060. type: object
  10061. workloadIdentity:
  10062. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  10063. properties:
  10064. clusterLocation:
  10065. description: |-
  10066. ClusterLocation is the location of the cluster
  10067. If not specified, it fetches information from the metadata server
  10068. type: string
  10069. clusterName:
  10070. description: |-
  10071. ClusterName is the name of the cluster
  10072. If not specified, it fetches information from the metadata server
  10073. type: string
  10074. clusterProjectID:
  10075. description: |-
  10076. ClusterProjectID is the project ID of the cluster
  10077. If not specified, it fetches information from the metadata server
  10078. type: string
  10079. serviceAccountRef:
  10080. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  10081. properties:
  10082. audiences:
  10083. description: |-
  10084. Audience specifies the `aud` claim for the service account token
  10085. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10086. then this audiences will be appended to the list
  10087. items:
  10088. type: string
  10089. type: array
  10090. name:
  10091. description: The name of the ServiceAccount resource being referred to.
  10092. maxLength: 253
  10093. minLength: 1
  10094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10095. type: string
  10096. namespace:
  10097. description: |-
  10098. Namespace of the resource being referred to.
  10099. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10100. maxLength: 63
  10101. minLength: 1
  10102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10103. type: string
  10104. required:
  10105. - name
  10106. type: object
  10107. required:
  10108. - serviceAccountRef
  10109. type: object
  10110. type: object
  10111. location:
  10112. description: Location optionally defines a location for a secret
  10113. type: string
  10114. projectID:
  10115. description: ProjectID project where secret is located
  10116. type: string
  10117. type: object
  10118. github:
  10119. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  10120. properties:
  10121. appID:
  10122. description: appID specifies the Github APP that will be used to authenticate the client
  10123. format: int64
  10124. type: integer
  10125. auth:
  10126. description: auth configures how secret-manager authenticates with a Github instance.
  10127. properties:
  10128. privateKey:
  10129. description: |-
  10130. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10131. In some instances, `key` is a required field.
  10132. properties:
  10133. key:
  10134. description: |-
  10135. A key in the referenced Secret.
  10136. Some instances of this field may be defaulted, in others it may be required.
  10137. maxLength: 253
  10138. minLength: 1
  10139. pattern: ^[-._a-zA-Z0-9]+$
  10140. type: string
  10141. name:
  10142. description: The name of the Secret resource being referred to.
  10143. maxLength: 253
  10144. minLength: 1
  10145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10146. type: string
  10147. namespace:
  10148. description: |-
  10149. The namespace of the Secret resource being referred to.
  10150. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10151. maxLength: 63
  10152. minLength: 1
  10153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10154. type: string
  10155. type: object
  10156. required:
  10157. - privateKey
  10158. type: object
  10159. environment:
  10160. description: environment will be used to fetch secrets from a particular environment within a github repository
  10161. type: string
  10162. installationID:
  10163. description: installationID specifies the Github APP installation that will be used to authenticate the client
  10164. format: int64
  10165. type: integer
  10166. organization:
  10167. description: organization will be used to fetch secrets from the Github organization
  10168. type: string
  10169. repository:
  10170. description: repository will be used to fetch secrets from the Github repository within an organization
  10171. type: string
  10172. uploadURL:
  10173. description: Upload URL for enterprise instances. Default to URL.
  10174. type: string
  10175. url:
  10176. default: https://github.com/
  10177. description: URL configures the Github instance URL. Defaults to https://github.com/.
  10178. type: string
  10179. required:
  10180. - appID
  10181. - auth
  10182. - installationID
  10183. - organization
  10184. type: object
  10185. gitlab:
  10186. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10187. properties:
  10188. auth:
  10189. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10190. properties:
  10191. SecretRef:
  10192. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10193. properties:
  10194. accessToken:
  10195. description: AccessToken is used for authentication.
  10196. properties:
  10197. key:
  10198. description: |-
  10199. A key in the referenced Secret.
  10200. Some instances of this field may be defaulted, in others it may be required.
  10201. maxLength: 253
  10202. minLength: 1
  10203. pattern: ^[-._a-zA-Z0-9]+$
  10204. type: string
  10205. name:
  10206. description: The name of the Secret resource being referred to.
  10207. maxLength: 253
  10208. minLength: 1
  10209. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10210. type: string
  10211. namespace:
  10212. description: |-
  10213. The namespace of the Secret resource being referred to.
  10214. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10215. maxLength: 63
  10216. minLength: 1
  10217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10218. type: string
  10219. type: object
  10220. type: object
  10221. required:
  10222. - SecretRef
  10223. type: object
  10224. caBundle:
  10225. description: |-
  10226. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10227. can be performed.
  10228. format: byte
  10229. type: string
  10230. caProvider:
  10231. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10232. properties:
  10233. key:
  10234. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10235. maxLength: 253
  10236. minLength: 1
  10237. pattern: ^[-._a-zA-Z0-9]+$
  10238. type: string
  10239. name:
  10240. description: The name of the object located at the provider type.
  10241. maxLength: 253
  10242. minLength: 1
  10243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10244. type: string
  10245. namespace:
  10246. description: |-
  10247. The namespace the Provider type is in.
  10248. Can only be defined when used in a ClusterSecretStore.
  10249. maxLength: 63
  10250. minLength: 1
  10251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10252. type: string
  10253. type:
  10254. description: The type of provider to use such as "Secret", or "ConfigMap".
  10255. enum:
  10256. - Secret
  10257. - ConfigMap
  10258. type: string
  10259. required:
  10260. - name
  10261. - type
  10262. type: object
  10263. environment:
  10264. 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)
  10265. type: string
  10266. groupIDs:
  10267. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10268. items:
  10269. type: string
  10270. type: array
  10271. inheritFromGroups:
  10272. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10273. type: boolean
  10274. projectID:
  10275. description: ProjectID specifies a project where secrets are located.
  10276. type: string
  10277. url:
  10278. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10279. type: string
  10280. required:
  10281. - auth
  10282. type: object
  10283. ibm:
  10284. description: IBM configures this store to sync secrets using IBM Cloud provider
  10285. properties:
  10286. auth:
  10287. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10288. maxProperties: 1
  10289. minProperties: 1
  10290. properties:
  10291. containerAuth:
  10292. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10293. properties:
  10294. iamEndpoint:
  10295. type: string
  10296. profile:
  10297. description: the IBM Trusted Profile
  10298. type: string
  10299. tokenLocation:
  10300. description: Location the token is mounted on the pod
  10301. type: string
  10302. required:
  10303. - profile
  10304. type: object
  10305. secretRef:
  10306. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10307. properties:
  10308. secretApiKeySecretRef:
  10309. description: The SecretAccessKey is used for authentication
  10310. properties:
  10311. key:
  10312. description: |-
  10313. A key in the referenced Secret.
  10314. Some instances of this field may be defaulted, in others it may be required.
  10315. maxLength: 253
  10316. minLength: 1
  10317. pattern: ^[-._a-zA-Z0-9]+$
  10318. type: string
  10319. name:
  10320. description: The name of the Secret resource being referred to.
  10321. maxLength: 253
  10322. minLength: 1
  10323. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10324. type: string
  10325. namespace:
  10326. description: |-
  10327. The namespace of the Secret resource being referred to.
  10328. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10329. maxLength: 63
  10330. minLength: 1
  10331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10332. type: string
  10333. type: object
  10334. type: object
  10335. type: object
  10336. serviceUrl:
  10337. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10338. type: string
  10339. required:
  10340. - auth
  10341. type: object
  10342. infisical:
  10343. description: Infisical configures this store to sync secrets using the Infisical provider
  10344. properties:
  10345. auth:
  10346. description: Auth configures how the Operator authenticates with the Infisical API
  10347. properties:
  10348. universalAuthCredentials:
  10349. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10350. properties:
  10351. clientId:
  10352. description: |-
  10353. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10354. In some instances, `key` is a required field.
  10355. properties:
  10356. key:
  10357. description: |-
  10358. A key in the referenced Secret.
  10359. Some instances of this field may be defaulted, in others it may be required.
  10360. maxLength: 253
  10361. minLength: 1
  10362. pattern: ^[-._a-zA-Z0-9]+$
  10363. type: string
  10364. name:
  10365. description: The name of the Secret resource being referred to.
  10366. maxLength: 253
  10367. minLength: 1
  10368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10369. type: string
  10370. namespace:
  10371. description: |-
  10372. The namespace of the Secret resource being referred to.
  10373. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10374. maxLength: 63
  10375. minLength: 1
  10376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10377. type: string
  10378. type: object
  10379. clientSecret:
  10380. description: |-
  10381. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10382. In some instances, `key` is a required field.
  10383. properties:
  10384. key:
  10385. description: |-
  10386. A key in the referenced Secret.
  10387. Some instances of this field may be defaulted, in others it may be required.
  10388. maxLength: 253
  10389. minLength: 1
  10390. pattern: ^[-._a-zA-Z0-9]+$
  10391. type: string
  10392. name:
  10393. description: The name of the Secret resource being referred to.
  10394. maxLength: 253
  10395. minLength: 1
  10396. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10397. type: string
  10398. namespace:
  10399. description: |-
  10400. The namespace of the Secret resource being referred to.
  10401. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10402. maxLength: 63
  10403. minLength: 1
  10404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10405. type: string
  10406. type: object
  10407. required:
  10408. - clientId
  10409. - clientSecret
  10410. type: object
  10411. type: object
  10412. hostAPI:
  10413. default: https://app.infisical.com/api
  10414. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10415. type: string
  10416. secretsScope:
  10417. description: SecretsScope defines the scope of the secrets within the workspace
  10418. properties:
  10419. environmentSlug:
  10420. description: EnvironmentSlug is the required slug identifier for the environment.
  10421. type: string
  10422. expandSecretReferences:
  10423. default: true
  10424. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10425. type: boolean
  10426. projectSlug:
  10427. description: ProjectSlug is the required slug identifier for the project.
  10428. type: string
  10429. recursive:
  10430. default: false
  10431. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10432. type: boolean
  10433. secretsPath:
  10434. default: /
  10435. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10436. type: string
  10437. required:
  10438. - environmentSlug
  10439. - projectSlug
  10440. type: object
  10441. required:
  10442. - auth
  10443. - secretsScope
  10444. type: object
  10445. keepersecurity:
  10446. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10447. properties:
  10448. authRef:
  10449. description: |-
  10450. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10451. In some instances, `key` is a required field.
  10452. properties:
  10453. key:
  10454. description: |-
  10455. A key in the referenced Secret.
  10456. Some instances of this field may be defaulted, in others it may be required.
  10457. maxLength: 253
  10458. minLength: 1
  10459. pattern: ^[-._a-zA-Z0-9]+$
  10460. type: string
  10461. name:
  10462. description: The name of the Secret resource being referred to.
  10463. maxLength: 253
  10464. minLength: 1
  10465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10466. type: string
  10467. namespace:
  10468. description: |-
  10469. The namespace of the Secret resource being referred to.
  10470. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10471. maxLength: 63
  10472. minLength: 1
  10473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10474. type: string
  10475. type: object
  10476. folderID:
  10477. type: string
  10478. required:
  10479. - authRef
  10480. - folderID
  10481. type: object
  10482. kubernetes:
  10483. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10484. properties:
  10485. auth:
  10486. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10487. maxProperties: 1
  10488. minProperties: 1
  10489. properties:
  10490. cert:
  10491. description: has both clientCert and clientKey as secretKeySelector
  10492. properties:
  10493. clientCert:
  10494. description: |-
  10495. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10496. In some instances, `key` is a required field.
  10497. properties:
  10498. key:
  10499. description: |-
  10500. A key in the referenced Secret.
  10501. Some instances of this field may be defaulted, in others it may be required.
  10502. maxLength: 253
  10503. minLength: 1
  10504. pattern: ^[-._a-zA-Z0-9]+$
  10505. type: string
  10506. name:
  10507. description: The name of the Secret resource being referred to.
  10508. maxLength: 253
  10509. minLength: 1
  10510. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10511. type: string
  10512. namespace:
  10513. description: |-
  10514. The namespace of the Secret resource being referred to.
  10515. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10516. maxLength: 63
  10517. minLength: 1
  10518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10519. type: string
  10520. type: object
  10521. clientKey:
  10522. description: |-
  10523. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10524. In some instances, `key` is a required field.
  10525. properties:
  10526. key:
  10527. description: |-
  10528. A key in the referenced Secret.
  10529. Some instances of this field may be defaulted, in others it may be required.
  10530. maxLength: 253
  10531. minLength: 1
  10532. pattern: ^[-._a-zA-Z0-9]+$
  10533. type: string
  10534. name:
  10535. description: The name of the Secret resource being referred to.
  10536. maxLength: 253
  10537. minLength: 1
  10538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10539. type: string
  10540. namespace:
  10541. description: |-
  10542. The namespace of the Secret resource being referred to.
  10543. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10544. maxLength: 63
  10545. minLength: 1
  10546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10547. type: string
  10548. type: object
  10549. type: object
  10550. serviceAccount:
  10551. description: points to a service account that should be used for authentication
  10552. properties:
  10553. audiences:
  10554. description: |-
  10555. Audience specifies the `aud` claim for the service account token
  10556. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10557. then this audiences will be appended to the list
  10558. items:
  10559. type: string
  10560. type: array
  10561. name:
  10562. description: The name of the ServiceAccount resource being referred to.
  10563. maxLength: 253
  10564. minLength: 1
  10565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10566. type: string
  10567. namespace:
  10568. description: |-
  10569. Namespace of the resource being referred to.
  10570. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10571. maxLength: 63
  10572. minLength: 1
  10573. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10574. type: string
  10575. required:
  10576. - name
  10577. type: object
  10578. token:
  10579. description: use static token to authenticate with
  10580. properties:
  10581. bearerToken:
  10582. description: |-
  10583. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10584. In some instances, `key` is a required field.
  10585. properties:
  10586. key:
  10587. description: |-
  10588. A key in the referenced Secret.
  10589. Some instances of this field may be defaulted, in others it may be required.
  10590. maxLength: 253
  10591. minLength: 1
  10592. pattern: ^[-._a-zA-Z0-9]+$
  10593. type: string
  10594. name:
  10595. description: The name of the Secret resource being referred to.
  10596. maxLength: 253
  10597. minLength: 1
  10598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10599. type: string
  10600. namespace:
  10601. description: |-
  10602. The namespace of the Secret resource being referred to.
  10603. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10604. maxLength: 63
  10605. minLength: 1
  10606. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10607. type: string
  10608. type: object
  10609. type: object
  10610. type: object
  10611. authRef:
  10612. description: A reference to a secret that contains the auth information.
  10613. properties:
  10614. key:
  10615. description: |-
  10616. A key in the referenced Secret.
  10617. Some instances of this field may be defaulted, in others it may be required.
  10618. maxLength: 253
  10619. minLength: 1
  10620. pattern: ^[-._a-zA-Z0-9]+$
  10621. type: string
  10622. name:
  10623. description: The name of the Secret resource being referred to.
  10624. maxLength: 253
  10625. minLength: 1
  10626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10627. type: string
  10628. namespace:
  10629. description: |-
  10630. The namespace of the Secret resource being referred to.
  10631. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10632. maxLength: 63
  10633. minLength: 1
  10634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10635. type: string
  10636. type: object
  10637. remoteNamespace:
  10638. default: default
  10639. description: Remote namespace to fetch the secrets from
  10640. maxLength: 63
  10641. minLength: 1
  10642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10643. type: string
  10644. server:
  10645. description: configures the Kubernetes server Address.
  10646. properties:
  10647. caBundle:
  10648. description: CABundle is a base64-encoded CA certificate
  10649. format: byte
  10650. type: string
  10651. caProvider:
  10652. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  10653. properties:
  10654. key:
  10655. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10656. maxLength: 253
  10657. minLength: 1
  10658. pattern: ^[-._a-zA-Z0-9]+$
  10659. type: string
  10660. name:
  10661. description: The name of the object located at the provider type.
  10662. maxLength: 253
  10663. minLength: 1
  10664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10665. type: string
  10666. namespace:
  10667. description: |-
  10668. The namespace the Provider type is in.
  10669. Can only be defined when used in a ClusterSecretStore.
  10670. maxLength: 63
  10671. minLength: 1
  10672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10673. type: string
  10674. type:
  10675. description: The type of provider to use such as "Secret", or "ConfigMap".
  10676. enum:
  10677. - Secret
  10678. - ConfigMap
  10679. type: string
  10680. required:
  10681. - name
  10682. - type
  10683. type: object
  10684. url:
  10685. default: kubernetes.default
  10686. description: configures the Kubernetes server Address.
  10687. type: string
  10688. type: object
  10689. type: object
  10690. onboardbase:
  10691. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  10692. properties:
  10693. apiHost:
  10694. default: https://public.onboardbase.com/api/v1/
  10695. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  10696. type: string
  10697. auth:
  10698. description: Auth configures how the Operator authenticates with the Onboardbase API
  10699. properties:
  10700. apiKeyRef:
  10701. description: |-
  10702. OnboardbaseAPIKey is the APIKey generated by an admin account.
  10703. It is used to recognize and authorize access to a project and environment within onboardbase
  10704. properties:
  10705. key:
  10706. description: |-
  10707. A key in the referenced Secret.
  10708. Some instances of this field may be defaulted, in others it may be required.
  10709. maxLength: 253
  10710. minLength: 1
  10711. pattern: ^[-._a-zA-Z0-9]+$
  10712. type: string
  10713. name:
  10714. description: The name of the Secret resource being referred to.
  10715. maxLength: 253
  10716. minLength: 1
  10717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10718. type: string
  10719. namespace:
  10720. description: |-
  10721. The namespace of the Secret resource being referred to.
  10722. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10723. maxLength: 63
  10724. minLength: 1
  10725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10726. type: string
  10727. type: object
  10728. passcodeRef:
  10729. description: OnboardbasePasscode is the passcode attached to the API Key
  10730. properties:
  10731. key:
  10732. description: |-
  10733. A key in the referenced Secret.
  10734. Some instances of this field may be defaulted, in others it may be required.
  10735. maxLength: 253
  10736. minLength: 1
  10737. pattern: ^[-._a-zA-Z0-9]+$
  10738. type: string
  10739. name:
  10740. description: The name of the Secret resource being referred to.
  10741. maxLength: 253
  10742. minLength: 1
  10743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10744. type: string
  10745. namespace:
  10746. description: |-
  10747. The namespace of the Secret resource being referred to.
  10748. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10749. maxLength: 63
  10750. minLength: 1
  10751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10752. type: string
  10753. type: object
  10754. required:
  10755. - apiKeyRef
  10756. - passcodeRef
  10757. type: object
  10758. environment:
  10759. default: development
  10760. description: Environment is the name of an environmnent within a project to pull the secrets from
  10761. type: string
  10762. project:
  10763. default: development
  10764. description: Project is an onboardbase project that the secrets should be pulled from
  10765. type: string
  10766. required:
  10767. - apiHost
  10768. - auth
  10769. - environment
  10770. - project
  10771. type: object
  10772. onepassword:
  10773. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  10774. properties:
  10775. auth:
  10776. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  10777. properties:
  10778. secretRef:
  10779. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  10780. properties:
  10781. connectTokenSecretRef:
  10782. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  10783. properties:
  10784. key:
  10785. description: |-
  10786. A key in the referenced Secret.
  10787. Some instances of this field may be defaulted, in others it may be required.
  10788. maxLength: 253
  10789. minLength: 1
  10790. pattern: ^[-._a-zA-Z0-9]+$
  10791. type: string
  10792. name:
  10793. description: The name of the Secret resource being referred to.
  10794. maxLength: 253
  10795. minLength: 1
  10796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10797. type: string
  10798. namespace:
  10799. description: |-
  10800. The namespace of the Secret resource being referred to.
  10801. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10802. maxLength: 63
  10803. minLength: 1
  10804. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10805. type: string
  10806. type: object
  10807. required:
  10808. - connectTokenSecretRef
  10809. type: object
  10810. required:
  10811. - secretRef
  10812. type: object
  10813. connectHost:
  10814. description: ConnectHost defines the OnePassword Connect Server to connect to
  10815. type: string
  10816. vaults:
  10817. additionalProperties:
  10818. type: integer
  10819. description: Vaults defines which OnePassword vaults to search in which order
  10820. type: object
  10821. required:
  10822. - auth
  10823. - connectHost
  10824. - vaults
  10825. type: object
  10826. oracle:
  10827. description: Oracle configures this store to sync secrets using Oracle Vault provider
  10828. properties:
  10829. auth:
  10830. description: |-
  10831. Auth configures how secret-manager authenticates with the Oracle Vault.
  10832. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  10833. properties:
  10834. secretRef:
  10835. description: SecretRef to pass through sensitive information.
  10836. properties:
  10837. fingerprint:
  10838. description: Fingerprint is the fingerprint of the API private key.
  10839. properties:
  10840. key:
  10841. description: |-
  10842. A key in the referenced Secret.
  10843. Some instances of this field may be defaulted, in others it may be required.
  10844. maxLength: 253
  10845. minLength: 1
  10846. pattern: ^[-._a-zA-Z0-9]+$
  10847. type: string
  10848. name:
  10849. description: The name of the Secret resource being referred to.
  10850. maxLength: 253
  10851. minLength: 1
  10852. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10853. type: string
  10854. namespace:
  10855. description: |-
  10856. The namespace of the Secret resource being referred to.
  10857. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10858. maxLength: 63
  10859. minLength: 1
  10860. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10861. type: string
  10862. type: object
  10863. privatekey:
  10864. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  10865. properties:
  10866. key:
  10867. description: |-
  10868. A key in the referenced Secret.
  10869. Some instances of this field may be defaulted, in others it may be required.
  10870. maxLength: 253
  10871. minLength: 1
  10872. pattern: ^[-._a-zA-Z0-9]+$
  10873. type: string
  10874. name:
  10875. description: The name of the Secret resource being referred to.
  10876. maxLength: 253
  10877. minLength: 1
  10878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10879. type: string
  10880. namespace:
  10881. description: |-
  10882. The namespace of the Secret resource being referred to.
  10883. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10884. maxLength: 63
  10885. minLength: 1
  10886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10887. type: string
  10888. type: object
  10889. required:
  10890. - fingerprint
  10891. - privatekey
  10892. type: object
  10893. tenancy:
  10894. description: Tenancy is the tenancy OCID where user is located.
  10895. type: string
  10896. user:
  10897. description: User is an access OCID specific to the account.
  10898. type: string
  10899. required:
  10900. - secretRef
  10901. - tenancy
  10902. - user
  10903. type: object
  10904. compartment:
  10905. description: |-
  10906. Compartment is the vault compartment OCID.
  10907. Required for PushSecret
  10908. type: string
  10909. encryptionKey:
  10910. description: |-
  10911. EncryptionKey is the OCID of the encryption key within the vault.
  10912. Required for PushSecret
  10913. type: string
  10914. principalType:
  10915. description: |-
  10916. The type of principal to use for authentication. If left blank, the Auth struct will
  10917. determine the principal type. This optional field must be specified if using
  10918. workload identity.
  10919. enum:
  10920. - ""
  10921. - UserPrincipal
  10922. - InstancePrincipal
  10923. - Workload
  10924. type: string
  10925. region:
  10926. description: Region is the region where vault is located.
  10927. type: string
  10928. serviceAccountRef:
  10929. description: |-
  10930. ServiceAccountRef specified the service account
  10931. that should be used when authenticating with WorkloadIdentity.
  10932. properties:
  10933. audiences:
  10934. description: |-
  10935. Audience specifies the `aud` claim for the service account token
  10936. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10937. then this audiences will be appended to the list
  10938. items:
  10939. type: string
  10940. type: array
  10941. name:
  10942. description: The name of the ServiceAccount resource being referred to.
  10943. maxLength: 253
  10944. minLength: 1
  10945. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10946. type: string
  10947. namespace:
  10948. description: |-
  10949. Namespace of the resource being referred to.
  10950. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10951. maxLength: 63
  10952. minLength: 1
  10953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10954. type: string
  10955. required:
  10956. - name
  10957. type: object
  10958. vault:
  10959. description: Vault is the vault's OCID of the specific vault where secret is located.
  10960. type: string
  10961. required:
  10962. - region
  10963. - vault
  10964. type: object
  10965. passbolt:
  10966. description: PassboltProvider defines configuration for the Passbolt provider.
  10967. properties:
  10968. auth:
  10969. description: Auth defines the information necessary to authenticate against Passbolt Server
  10970. properties:
  10971. passwordSecretRef:
  10972. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  10973. properties:
  10974. key:
  10975. description: |-
  10976. A key in the referenced Secret.
  10977. Some instances of this field may be defaulted, in others it may be required.
  10978. maxLength: 253
  10979. minLength: 1
  10980. pattern: ^[-._a-zA-Z0-9]+$
  10981. type: string
  10982. name:
  10983. description: The name of the Secret resource being referred to.
  10984. maxLength: 253
  10985. minLength: 1
  10986. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10987. type: string
  10988. namespace:
  10989. description: |-
  10990. The namespace of the Secret resource being referred to.
  10991. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10992. maxLength: 63
  10993. minLength: 1
  10994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10995. type: string
  10996. type: object
  10997. privateKeySecretRef:
  10998. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  10999. properties:
  11000. key:
  11001. description: |-
  11002. A key in the referenced Secret.
  11003. Some instances of this field may be defaulted, in others it may be required.
  11004. maxLength: 253
  11005. minLength: 1
  11006. pattern: ^[-._a-zA-Z0-9]+$
  11007. type: string
  11008. name:
  11009. description: The name of the Secret resource being referred to.
  11010. maxLength: 253
  11011. minLength: 1
  11012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11013. type: string
  11014. namespace:
  11015. description: |-
  11016. The namespace of the Secret resource being referred to.
  11017. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11018. maxLength: 63
  11019. minLength: 1
  11020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11021. type: string
  11022. type: object
  11023. required:
  11024. - passwordSecretRef
  11025. - privateKeySecretRef
  11026. type: object
  11027. host:
  11028. description: Host defines the Passbolt Server to connect to
  11029. type: string
  11030. required:
  11031. - auth
  11032. - host
  11033. type: object
  11034. passworddepot:
  11035. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  11036. properties:
  11037. auth:
  11038. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  11039. properties:
  11040. secretRef:
  11041. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  11042. properties:
  11043. credentials:
  11044. description: Username / Password is used for authentication.
  11045. properties:
  11046. key:
  11047. description: |-
  11048. A key in the referenced Secret.
  11049. Some instances of this field may be defaulted, in others it may be required.
  11050. maxLength: 253
  11051. minLength: 1
  11052. pattern: ^[-._a-zA-Z0-9]+$
  11053. type: string
  11054. name:
  11055. description: The name of the Secret resource being referred to.
  11056. maxLength: 253
  11057. minLength: 1
  11058. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11059. type: string
  11060. namespace:
  11061. description: |-
  11062. The namespace of the Secret resource being referred to.
  11063. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11064. maxLength: 63
  11065. minLength: 1
  11066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11067. type: string
  11068. type: object
  11069. type: object
  11070. required:
  11071. - secretRef
  11072. type: object
  11073. database:
  11074. description: Database to use as source
  11075. type: string
  11076. host:
  11077. description: URL configures the Password Depot instance URL.
  11078. type: string
  11079. required:
  11080. - auth
  11081. - database
  11082. - host
  11083. type: object
  11084. previder:
  11085. description: Previder configures this store to sync secrets using the Previder provider
  11086. properties:
  11087. auth:
  11088. description: PreviderAuth contains a secretRef for credentials.
  11089. properties:
  11090. secretRef:
  11091. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  11092. properties:
  11093. accessToken:
  11094. description: The AccessToken is used for authentication
  11095. properties:
  11096. key:
  11097. description: |-
  11098. A key in the referenced Secret.
  11099. Some instances of this field may be defaulted, in others it may be required.
  11100. maxLength: 253
  11101. minLength: 1
  11102. pattern: ^[-._a-zA-Z0-9]+$
  11103. type: string
  11104. name:
  11105. description: The name of the Secret resource being referred to.
  11106. maxLength: 253
  11107. minLength: 1
  11108. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11109. type: string
  11110. namespace:
  11111. description: |-
  11112. The namespace of the Secret resource being referred to.
  11113. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11114. maxLength: 63
  11115. minLength: 1
  11116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11117. type: string
  11118. type: object
  11119. required:
  11120. - accessToken
  11121. type: object
  11122. type: object
  11123. baseUri:
  11124. type: string
  11125. required:
  11126. - auth
  11127. type: object
  11128. pulumi:
  11129. description: Pulumi configures this store to sync secrets using the Pulumi provider
  11130. properties:
  11131. accessToken:
  11132. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  11133. properties:
  11134. secretRef:
  11135. description: SecretRef is a reference to a secret containing the Pulumi API token.
  11136. properties:
  11137. key:
  11138. description: |-
  11139. A key in the referenced Secret.
  11140. Some instances of this field may be defaulted, in others it may be required.
  11141. maxLength: 253
  11142. minLength: 1
  11143. pattern: ^[-._a-zA-Z0-9]+$
  11144. type: string
  11145. name:
  11146. description: The name of the Secret resource being referred to.
  11147. maxLength: 253
  11148. minLength: 1
  11149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11150. type: string
  11151. namespace:
  11152. description: |-
  11153. The namespace of the Secret resource being referred to.
  11154. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11155. maxLength: 63
  11156. minLength: 1
  11157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11158. type: string
  11159. type: object
  11160. type: object
  11161. apiUrl:
  11162. default: https://api.pulumi.com/api/esc
  11163. description: APIURL is the URL of the Pulumi API.
  11164. type: string
  11165. environment:
  11166. description: |-
  11167. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  11168. dynamically retrieved values from supported providers including all major clouds,
  11169. and other Pulumi ESC environments.
  11170. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  11171. type: string
  11172. organization:
  11173. description: |-
  11174. Organization are a space to collaborate on shared projects and stacks.
  11175. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  11176. type: string
  11177. project:
  11178. description: Project is the name of the Pulumi ESC project the environment belongs to.
  11179. type: string
  11180. required:
  11181. - accessToken
  11182. - environment
  11183. - organization
  11184. - project
  11185. type: object
  11186. scaleway:
  11187. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11188. properties:
  11189. accessKey:
  11190. description: AccessKey is the non-secret part of the api key.
  11191. properties:
  11192. secretRef:
  11193. description: SecretRef references a key in a secret that will be used as value.
  11194. properties:
  11195. key:
  11196. description: |-
  11197. A key in the referenced Secret.
  11198. Some instances of this field may be defaulted, in others it may be required.
  11199. maxLength: 253
  11200. minLength: 1
  11201. pattern: ^[-._a-zA-Z0-9]+$
  11202. type: string
  11203. name:
  11204. description: The name of the Secret resource being referred to.
  11205. maxLength: 253
  11206. minLength: 1
  11207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11208. type: string
  11209. namespace:
  11210. description: |-
  11211. The namespace of the Secret resource being referred to.
  11212. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11213. maxLength: 63
  11214. minLength: 1
  11215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11216. type: string
  11217. type: object
  11218. value:
  11219. description: Value can be specified directly to set a value without using a secret.
  11220. type: string
  11221. type: object
  11222. apiUrl:
  11223. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11224. type: string
  11225. projectId:
  11226. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11227. type: string
  11228. region:
  11229. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11230. type: string
  11231. secretKey:
  11232. description: SecretKey is the non-secret part of the api key.
  11233. properties:
  11234. secretRef:
  11235. description: SecretRef references a key in a secret that will be used as value.
  11236. properties:
  11237. key:
  11238. description: |-
  11239. A key in the referenced Secret.
  11240. Some instances of this field may be defaulted, in others it may be required.
  11241. maxLength: 253
  11242. minLength: 1
  11243. pattern: ^[-._a-zA-Z0-9]+$
  11244. type: string
  11245. name:
  11246. description: The name of the Secret resource being referred to.
  11247. maxLength: 253
  11248. minLength: 1
  11249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11250. type: string
  11251. namespace:
  11252. description: |-
  11253. The namespace of the Secret resource being referred to.
  11254. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11255. maxLength: 63
  11256. minLength: 1
  11257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11258. type: string
  11259. type: object
  11260. value:
  11261. description: Value can be specified directly to set a value without using a secret.
  11262. type: string
  11263. type: object
  11264. required:
  11265. - accessKey
  11266. - projectId
  11267. - region
  11268. - secretKey
  11269. type: object
  11270. secretserver:
  11271. description: |-
  11272. SecretServer configures this store to sync secrets using SecretServer provider
  11273. https://docs.delinea.com/online-help/secret-server/start.htm
  11274. properties:
  11275. password:
  11276. description: Password is the secret server account password.
  11277. properties:
  11278. secretRef:
  11279. description: SecretRef references a key in a secret that will be used as value.
  11280. properties:
  11281. key:
  11282. description: |-
  11283. A key in the referenced Secret.
  11284. Some instances of this field may be defaulted, in others it may be required.
  11285. maxLength: 253
  11286. minLength: 1
  11287. pattern: ^[-._a-zA-Z0-9]+$
  11288. type: string
  11289. name:
  11290. description: The name of the Secret resource being referred to.
  11291. maxLength: 253
  11292. minLength: 1
  11293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11294. type: string
  11295. namespace:
  11296. description: |-
  11297. The namespace of the Secret resource being referred to.
  11298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11299. maxLength: 63
  11300. minLength: 1
  11301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11302. type: string
  11303. type: object
  11304. value:
  11305. description: Value can be specified directly to set a value without using a secret.
  11306. type: string
  11307. type: object
  11308. serverURL:
  11309. description: |-
  11310. ServerURL
  11311. URL to your secret server installation
  11312. type: string
  11313. username:
  11314. description: Username is the secret server account username.
  11315. properties:
  11316. secretRef:
  11317. description: SecretRef references a key in a secret that will be used as value.
  11318. properties:
  11319. key:
  11320. description: |-
  11321. A key in the referenced Secret.
  11322. Some instances of this field may be defaulted, in others it may be required.
  11323. maxLength: 253
  11324. minLength: 1
  11325. pattern: ^[-._a-zA-Z0-9]+$
  11326. type: string
  11327. name:
  11328. description: The name of the Secret resource being referred to.
  11329. maxLength: 253
  11330. minLength: 1
  11331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11332. type: string
  11333. namespace:
  11334. description: |-
  11335. The namespace of the Secret resource being referred to.
  11336. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11337. maxLength: 63
  11338. minLength: 1
  11339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11340. type: string
  11341. type: object
  11342. value:
  11343. description: Value can be specified directly to set a value without using a secret.
  11344. type: string
  11345. type: object
  11346. required:
  11347. - password
  11348. - serverURL
  11349. - username
  11350. type: object
  11351. senhasegura:
  11352. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11353. properties:
  11354. auth:
  11355. description: Auth defines parameters to authenticate in senhasegura
  11356. properties:
  11357. clientId:
  11358. type: string
  11359. clientSecretSecretRef:
  11360. description: |-
  11361. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11362. In some instances, `key` is a required field.
  11363. properties:
  11364. key:
  11365. description: |-
  11366. A key in the referenced Secret.
  11367. Some instances of this field may be defaulted, in others it may be required.
  11368. maxLength: 253
  11369. minLength: 1
  11370. pattern: ^[-._a-zA-Z0-9]+$
  11371. type: string
  11372. name:
  11373. description: The name of the Secret resource being referred to.
  11374. maxLength: 253
  11375. minLength: 1
  11376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11377. type: string
  11378. namespace:
  11379. description: |-
  11380. The namespace of the Secret resource being referred to.
  11381. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11382. maxLength: 63
  11383. minLength: 1
  11384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11385. type: string
  11386. type: object
  11387. required:
  11388. - clientId
  11389. - clientSecretSecretRef
  11390. type: object
  11391. ignoreSslCertificate:
  11392. default: false
  11393. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11394. type: boolean
  11395. module:
  11396. description: Module defines which senhasegura module should be used to get secrets
  11397. type: string
  11398. url:
  11399. description: URL of senhasegura
  11400. type: string
  11401. required:
  11402. - auth
  11403. - module
  11404. - url
  11405. type: object
  11406. vault:
  11407. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11408. properties:
  11409. auth:
  11410. description: Auth configures how secret-manager authenticates with the Vault server.
  11411. properties:
  11412. appRole:
  11413. description: |-
  11414. AppRole authenticates with Vault using the App Role auth mechanism,
  11415. with the role and secret stored in a Kubernetes Secret resource.
  11416. properties:
  11417. path:
  11418. default: approle
  11419. description: |-
  11420. Path where the App Role authentication backend is mounted
  11421. in Vault, e.g: "approle"
  11422. type: string
  11423. roleId:
  11424. description: |-
  11425. RoleID configured in the App Role authentication backend when setting
  11426. up the authentication backend in Vault.
  11427. type: string
  11428. roleRef:
  11429. description: |-
  11430. Reference to a key in a Secret that contains the App Role ID used
  11431. to authenticate with Vault.
  11432. The `key` field must be specified and denotes which entry within the Secret
  11433. resource is used as the app role id.
  11434. properties:
  11435. key:
  11436. description: |-
  11437. A key in the referenced Secret.
  11438. Some instances of this field may be defaulted, in others it may be required.
  11439. maxLength: 253
  11440. minLength: 1
  11441. pattern: ^[-._a-zA-Z0-9]+$
  11442. type: string
  11443. name:
  11444. description: The name of the Secret resource being referred to.
  11445. maxLength: 253
  11446. minLength: 1
  11447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11448. type: string
  11449. namespace:
  11450. description: |-
  11451. The namespace of the Secret resource being referred to.
  11452. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11453. maxLength: 63
  11454. minLength: 1
  11455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11456. type: string
  11457. type: object
  11458. secretRef:
  11459. description: |-
  11460. Reference to a key in a Secret that contains the App Role secret used
  11461. to authenticate with Vault.
  11462. The `key` field must be specified and denotes which entry within the Secret
  11463. resource is used as the app role secret.
  11464. properties:
  11465. key:
  11466. description: |-
  11467. A key in the referenced Secret.
  11468. Some instances of this field may be defaulted, in others it may be required.
  11469. maxLength: 253
  11470. minLength: 1
  11471. pattern: ^[-._a-zA-Z0-9]+$
  11472. type: string
  11473. name:
  11474. description: The name of the Secret resource being referred to.
  11475. maxLength: 253
  11476. minLength: 1
  11477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11478. type: string
  11479. namespace:
  11480. description: |-
  11481. The namespace of the Secret resource being referred to.
  11482. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11483. maxLength: 63
  11484. minLength: 1
  11485. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11486. type: string
  11487. type: object
  11488. required:
  11489. - path
  11490. - secretRef
  11491. type: object
  11492. cert:
  11493. description: |-
  11494. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11495. Cert authentication method
  11496. properties:
  11497. clientCert:
  11498. description: |-
  11499. ClientCert is a certificate to authenticate using the Cert Vault
  11500. authentication method
  11501. properties:
  11502. key:
  11503. description: |-
  11504. A key in the referenced Secret.
  11505. Some instances of this field may be defaulted, in others it may be required.
  11506. maxLength: 253
  11507. minLength: 1
  11508. pattern: ^[-._a-zA-Z0-9]+$
  11509. type: string
  11510. name:
  11511. description: The name of the Secret resource being referred to.
  11512. maxLength: 253
  11513. minLength: 1
  11514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11515. type: string
  11516. namespace:
  11517. description: |-
  11518. The namespace of the Secret resource being referred to.
  11519. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11520. maxLength: 63
  11521. minLength: 1
  11522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11523. type: string
  11524. type: object
  11525. secretRef:
  11526. description: |-
  11527. SecretRef to a key in a Secret resource containing client private key to
  11528. authenticate with Vault using the Cert authentication method
  11529. properties:
  11530. key:
  11531. description: |-
  11532. A key in the referenced Secret.
  11533. Some instances of this field may be defaulted, in others it may be required.
  11534. maxLength: 253
  11535. minLength: 1
  11536. pattern: ^[-._a-zA-Z0-9]+$
  11537. type: string
  11538. name:
  11539. description: The name of the Secret resource being referred to.
  11540. maxLength: 253
  11541. minLength: 1
  11542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11543. type: string
  11544. namespace:
  11545. description: |-
  11546. The namespace of the Secret resource being referred to.
  11547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11548. maxLength: 63
  11549. minLength: 1
  11550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11551. type: string
  11552. type: object
  11553. type: object
  11554. iam:
  11555. description: |-
  11556. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11557. AWS IAM authentication method
  11558. properties:
  11559. externalID:
  11560. description: AWS External ID set on assumed IAM roles
  11561. type: string
  11562. jwt:
  11563. description: Specify a service account with IRSA enabled
  11564. properties:
  11565. serviceAccountRef:
  11566. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  11567. properties:
  11568. audiences:
  11569. description: |-
  11570. Audience specifies the `aud` claim for the service account token
  11571. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11572. then this audiences will be appended to the list
  11573. items:
  11574. type: string
  11575. type: array
  11576. name:
  11577. description: The name of the ServiceAccount resource being referred to.
  11578. maxLength: 253
  11579. minLength: 1
  11580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11581. type: string
  11582. namespace:
  11583. description: |-
  11584. Namespace of the resource being referred to.
  11585. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11586. maxLength: 63
  11587. minLength: 1
  11588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11589. type: string
  11590. required:
  11591. - name
  11592. type: object
  11593. type: object
  11594. path:
  11595. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11596. type: string
  11597. region:
  11598. description: AWS region
  11599. type: string
  11600. role:
  11601. description: This is the AWS role to be assumed before talking to vault
  11602. type: string
  11603. secretRef:
  11604. description: Specify credentials in a Secret object
  11605. properties:
  11606. accessKeyIDSecretRef:
  11607. description: The AccessKeyID is used for authentication
  11608. properties:
  11609. key:
  11610. description: |-
  11611. A key in the referenced Secret.
  11612. Some instances of this field may be defaulted, in others it may be required.
  11613. maxLength: 253
  11614. minLength: 1
  11615. pattern: ^[-._a-zA-Z0-9]+$
  11616. type: string
  11617. name:
  11618. description: The name of the Secret resource being referred to.
  11619. maxLength: 253
  11620. minLength: 1
  11621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11622. type: string
  11623. namespace:
  11624. description: |-
  11625. The namespace of the Secret resource being referred to.
  11626. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11627. maxLength: 63
  11628. minLength: 1
  11629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11630. type: string
  11631. type: object
  11632. secretAccessKeySecretRef:
  11633. description: The SecretAccessKey is used for authentication
  11634. properties:
  11635. key:
  11636. description: |-
  11637. A key in the referenced Secret.
  11638. Some instances of this field may be defaulted, in others it may be required.
  11639. maxLength: 253
  11640. minLength: 1
  11641. pattern: ^[-._a-zA-Z0-9]+$
  11642. type: string
  11643. name:
  11644. description: The name of the Secret resource being referred to.
  11645. maxLength: 253
  11646. minLength: 1
  11647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11648. type: string
  11649. namespace:
  11650. description: |-
  11651. The namespace of the Secret resource being referred to.
  11652. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11653. maxLength: 63
  11654. minLength: 1
  11655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11656. type: string
  11657. type: object
  11658. sessionTokenSecretRef:
  11659. description: |-
  11660. The SessionToken used for authentication
  11661. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11662. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11663. properties:
  11664. key:
  11665. description: |-
  11666. A key in the referenced Secret.
  11667. Some instances of this field may be defaulted, in others it may be required.
  11668. maxLength: 253
  11669. minLength: 1
  11670. pattern: ^[-._a-zA-Z0-9]+$
  11671. type: string
  11672. name:
  11673. description: The name of the Secret resource being referred to.
  11674. maxLength: 253
  11675. minLength: 1
  11676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11677. type: string
  11678. namespace:
  11679. description: |-
  11680. The namespace of the Secret resource being referred to.
  11681. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11682. maxLength: 63
  11683. minLength: 1
  11684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11685. type: string
  11686. type: object
  11687. type: object
  11688. vaultAwsIamServerID:
  11689. 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'
  11690. type: string
  11691. vaultRole:
  11692. 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
  11693. type: string
  11694. required:
  11695. - vaultRole
  11696. type: object
  11697. jwt:
  11698. description: |-
  11699. Jwt authenticates with Vault by passing role and JWT token using the
  11700. JWT/OIDC authentication method
  11701. properties:
  11702. kubernetesServiceAccountToken:
  11703. description: |-
  11704. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  11705. a token for with the `TokenRequest` API.
  11706. properties:
  11707. audiences:
  11708. description: |-
  11709. Optional audiences field that will be used to request a temporary Kubernetes service
  11710. account token for the service account referenced by `serviceAccountRef`.
  11711. Defaults to a single audience `vault` it not specified.
  11712. Deprecated: use serviceAccountRef.Audiences instead
  11713. items:
  11714. type: string
  11715. type: array
  11716. expirationSeconds:
  11717. description: |-
  11718. Optional expiration time in seconds that will be used to request a temporary
  11719. Kubernetes service account token for the service account referenced by
  11720. `serviceAccountRef`.
  11721. Deprecated: this will be removed in the future.
  11722. Defaults to 10 minutes.
  11723. format: int64
  11724. type: integer
  11725. serviceAccountRef:
  11726. description: Service account field containing the name of a kubernetes ServiceAccount.
  11727. properties:
  11728. audiences:
  11729. description: |-
  11730. Audience specifies the `aud` claim for the service account token
  11731. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11732. then this audiences will be appended to the list
  11733. items:
  11734. type: string
  11735. type: array
  11736. name:
  11737. description: The name of the ServiceAccount resource being referred to.
  11738. maxLength: 253
  11739. minLength: 1
  11740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11741. type: string
  11742. namespace:
  11743. description: |-
  11744. Namespace of the resource being referred to.
  11745. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11746. maxLength: 63
  11747. minLength: 1
  11748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11749. type: string
  11750. required:
  11751. - name
  11752. type: object
  11753. required:
  11754. - serviceAccountRef
  11755. type: object
  11756. path:
  11757. default: jwt
  11758. description: |-
  11759. Path where the JWT authentication backend is mounted
  11760. in Vault, e.g: "jwt"
  11761. type: string
  11762. role:
  11763. description: |-
  11764. Role is a JWT role to authenticate using the JWT/OIDC Vault
  11765. authentication method
  11766. type: string
  11767. secretRef:
  11768. description: |-
  11769. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  11770. authenticate with Vault using the JWT/OIDC authentication method.
  11771. properties:
  11772. key:
  11773. description: |-
  11774. A key in the referenced Secret.
  11775. Some instances of this field may be defaulted, in others it may be required.
  11776. maxLength: 253
  11777. minLength: 1
  11778. pattern: ^[-._a-zA-Z0-9]+$
  11779. type: string
  11780. name:
  11781. description: The name of the Secret resource being referred to.
  11782. maxLength: 253
  11783. minLength: 1
  11784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11785. type: string
  11786. namespace:
  11787. description: |-
  11788. The namespace of the Secret resource being referred to.
  11789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11790. maxLength: 63
  11791. minLength: 1
  11792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11793. type: string
  11794. type: object
  11795. required:
  11796. - path
  11797. type: object
  11798. kubernetes:
  11799. description: |-
  11800. Kubernetes authenticates with Vault by passing the ServiceAccount
  11801. token stored in the named Secret resource to the Vault server.
  11802. properties:
  11803. mountPath:
  11804. default: kubernetes
  11805. description: |-
  11806. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  11807. "kubernetes"
  11808. type: string
  11809. role:
  11810. description: |-
  11811. A required field containing the Vault Role to assume. A Role binds a
  11812. Kubernetes ServiceAccount with a set of Vault policies.
  11813. type: string
  11814. secretRef:
  11815. description: |-
  11816. Optional secret field containing a Kubernetes ServiceAccount JWT used
  11817. for authenticating with Vault. If a name is specified without a key,
  11818. `token` is the default. If one is not specified, the one bound to
  11819. the controller will be used.
  11820. properties:
  11821. key:
  11822. description: |-
  11823. A key in the referenced Secret.
  11824. Some instances of this field may be defaulted, in others it may be required.
  11825. maxLength: 253
  11826. minLength: 1
  11827. pattern: ^[-._a-zA-Z0-9]+$
  11828. type: string
  11829. name:
  11830. description: The name of the Secret resource being referred to.
  11831. maxLength: 253
  11832. minLength: 1
  11833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11834. type: string
  11835. namespace:
  11836. description: |-
  11837. The namespace of the Secret resource being referred to.
  11838. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11839. maxLength: 63
  11840. minLength: 1
  11841. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11842. type: string
  11843. type: object
  11844. serviceAccountRef:
  11845. description: |-
  11846. Optional service account field containing the name of a kubernetes ServiceAccount.
  11847. If the service account is specified, the service account secret token JWT will be used
  11848. for authenticating with Vault. If the service account selector is not supplied,
  11849. the secretRef will be used instead.
  11850. properties:
  11851. audiences:
  11852. description: |-
  11853. Audience specifies the `aud` claim for the service account token
  11854. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11855. then this audiences will be appended to the list
  11856. items:
  11857. type: string
  11858. type: array
  11859. name:
  11860. description: The name of the ServiceAccount resource being referred to.
  11861. maxLength: 253
  11862. minLength: 1
  11863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11864. type: string
  11865. namespace:
  11866. description: |-
  11867. Namespace of the resource being referred to.
  11868. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11869. maxLength: 63
  11870. minLength: 1
  11871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11872. type: string
  11873. required:
  11874. - name
  11875. type: object
  11876. required:
  11877. - mountPath
  11878. - role
  11879. type: object
  11880. ldap:
  11881. description: |-
  11882. Ldap authenticates with Vault by passing username/password pair using
  11883. the LDAP authentication method
  11884. properties:
  11885. path:
  11886. default: ldap
  11887. description: |-
  11888. Path where the LDAP authentication backend is mounted
  11889. in Vault, e.g: "ldap"
  11890. type: string
  11891. secretRef:
  11892. description: |-
  11893. SecretRef to a key in a Secret resource containing password for the LDAP
  11894. user used to authenticate with Vault using the LDAP authentication
  11895. method
  11896. properties:
  11897. key:
  11898. description: |-
  11899. A key in the referenced Secret.
  11900. Some instances of this field may be defaulted, in others it may be required.
  11901. maxLength: 253
  11902. minLength: 1
  11903. pattern: ^[-._a-zA-Z0-9]+$
  11904. type: string
  11905. name:
  11906. description: The name of the Secret resource being referred to.
  11907. maxLength: 253
  11908. minLength: 1
  11909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11910. type: string
  11911. namespace:
  11912. description: |-
  11913. The namespace of the Secret resource being referred to.
  11914. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11915. maxLength: 63
  11916. minLength: 1
  11917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11918. type: string
  11919. type: object
  11920. username:
  11921. description: |-
  11922. Username is an LDAP username used to authenticate using the LDAP Vault
  11923. authentication method
  11924. type: string
  11925. required:
  11926. - path
  11927. - username
  11928. type: object
  11929. namespace:
  11930. description: |-
  11931. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  11932. Namespaces is a set of features within Vault Enterprise that allows
  11933. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11934. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11935. This will default to Vault.Namespace field if set, or empty otherwise
  11936. type: string
  11937. tokenSecretRef:
  11938. description: TokenSecretRef authenticates with Vault by presenting a token.
  11939. properties:
  11940. key:
  11941. description: |-
  11942. A key in the referenced Secret.
  11943. Some instances of this field may be defaulted, in others it may be required.
  11944. maxLength: 253
  11945. minLength: 1
  11946. pattern: ^[-._a-zA-Z0-9]+$
  11947. type: string
  11948. name:
  11949. description: The name of the Secret resource being referred to.
  11950. maxLength: 253
  11951. minLength: 1
  11952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11953. type: string
  11954. namespace:
  11955. description: |-
  11956. The namespace of the Secret resource being referred to.
  11957. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11958. maxLength: 63
  11959. minLength: 1
  11960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11961. type: string
  11962. type: object
  11963. userPass:
  11964. description: UserPass authenticates with Vault by passing username/password pair
  11965. properties:
  11966. path:
  11967. default: userpass
  11968. description: |-
  11969. Path where the UserPassword authentication backend is mounted
  11970. in Vault, e.g: "userpass"
  11971. type: string
  11972. secretRef:
  11973. description: |-
  11974. SecretRef to a key in a Secret resource containing password for the
  11975. user used to authenticate with Vault using the UserPass authentication
  11976. method
  11977. properties:
  11978. key:
  11979. description: |-
  11980. A key in the referenced Secret.
  11981. Some instances of this field may be defaulted, in others it may be required.
  11982. maxLength: 253
  11983. minLength: 1
  11984. pattern: ^[-._a-zA-Z0-9]+$
  11985. type: string
  11986. name:
  11987. description: The name of the Secret resource being referred to.
  11988. maxLength: 253
  11989. minLength: 1
  11990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11991. type: string
  11992. namespace:
  11993. description: |-
  11994. The namespace of the Secret resource being referred to.
  11995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11996. maxLength: 63
  11997. minLength: 1
  11998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11999. type: string
  12000. type: object
  12001. username:
  12002. description: |-
  12003. Username is a username used to authenticate using the UserPass Vault
  12004. authentication method
  12005. type: string
  12006. required:
  12007. - path
  12008. - username
  12009. type: object
  12010. type: object
  12011. caBundle:
  12012. description: |-
  12013. PEM encoded CA bundle used to validate Vault server certificate. Only used
  12014. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12015. plain HTTP protocol connection. If not set the system root certificates
  12016. are used to validate the TLS connection.
  12017. format: byte
  12018. type: string
  12019. caProvider:
  12020. description: The provider for the CA bundle to use to validate Vault server certificate.
  12021. properties:
  12022. key:
  12023. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12024. maxLength: 253
  12025. minLength: 1
  12026. pattern: ^[-._a-zA-Z0-9]+$
  12027. type: string
  12028. name:
  12029. description: The name of the object located at the provider type.
  12030. maxLength: 253
  12031. minLength: 1
  12032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12033. type: string
  12034. namespace:
  12035. description: |-
  12036. The namespace the Provider type is in.
  12037. Can only be defined when used in a ClusterSecretStore.
  12038. maxLength: 63
  12039. minLength: 1
  12040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12041. type: string
  12042. type:
  12043. description: The type of provider to use such as "Secret", or "ConfigMap".
  12044. enum:
  12045. - Secret
  12046. - ConfigMap
  12047. type: string
  12048. required:
  12049. - name
  12050. - type
  12051. type: object
  12052. forwardInconsistent:
  12053. description: |-
  12054. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12055. leader instead of simply retrying within a loop. This can increase performance if
  12056. the option is enabled serverside.
  12057. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12058. type: boolean
  12059. headers:
  12060. additionalProperties:
  12061. type: string
  12062. description: Headers to be added in Vault request
  12063. type: object
  12064. namespace:
  12065. description: |-
  12066. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12067. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12068. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12069. type: string
  12070. path:
  12071. description: |-
  12072. Path is the mount path of the Vault KV backend endpoint, e.g:
  12073. "secret". The v2 KV secret engine version specific "/data" path suffix
  12074. for fetching secrets from Vault is optional and will be appended
  12075. if not present in specified path.
  12076. type: string
  12077. readYourWrites:
  12078. description: |-
  12079. ReadYourWrites ensures isolated read-after-write semantics by
  12080. providing discovered cluster replication states in each request.
  12081. More information about eventual consistency in Vault can be found here
  12082. https://www.vaultproject.io/docs/enterprise/consistency
  12083. type: boolean
  12084. server:
  12085. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12086. type: string
  12087. tls:
  12088. description: |-
  12089. The configuration used for client side related TLS communication, when the Vault server
  12090. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12091. This parameter is ignored for plain HTTP protocol connection.
  12092. It's worth noting this configuration is different from the "TLS certificates auth method",
  12093. which is available under the `auth.cert` section.
  12094. properties:
  12095. certSecretRef:
  12096. description: |-
  12097. CertSecretRef is a certificate added to the transport layer
  12098. when communicating with the Vault server.
  12099. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12100. properties:
  12101. key:
  12102. description: |-
  12103. A key in the referenced Secret.
  12104. Some instances of this field may be defaulted, in others it may be required.
  12105. maxLength: 253
  12106. minLength: 1
  12107. pattern: ^[-._a-zA-Z0-9]+$
  12108. type: string
  12109. name:
  12110. description: The name of the Secret resource being referred to.
  12111. maxLength: 253
  12112. minLength: 1
  12113. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12114. type: string
  12115. namespace:
  12116. description: |-
  12117. The namespace of the Secret resource being referred to.
  12118. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12119. maxLength: 63
  12120. minLength: 1
  12121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12122. type: string
  12123. type: object
  12124. keySecretRef:
  12125. description: |-
  12126. KeySecretRef to a key in a Secret resource containing client private key
  12127. added to the transport layer when communicating with the Vault server.
  12128. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  12129. properties:
  12130. key:
  12131. description: |-
  12132. A key in the referenced Secret.
  12133. Some instances of this field may be defaulted, in others it may be required.
  12134. maxLength: 253
  12135. minLength: 1
  12136. pattern: ^[-._a-zA-Z0-9]+$
  12137. type: string
  12138. name:
  12139. description: The name of the Secret resource being referred to.
  12140. maxLength: 253
  12141. minLength: 1
  12142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12143. type: string
  12144. namespace:
  12145. description: |-
  12146. The namespace of the Secret resource being referred to.
  12147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12148. maxLength: 63
  12149. minLength: 1
  12150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12151. type: string
  12152. type: object
  12153. type: object
  12154. version:
  12155. default: v2
  12156. description: |-
  12157. Version is the Vault KV secret engine version. This can be either "v1" or
  12158. "v2". Version defaults to "v2".
  12159. enum:
  12160. - v1
  12161. - v2
  12162. type: string
  12163. required:
  12164. - server
  12165. type: object
  12166. webhook:
  12167. description: Webhook configures this store to sync secrets using a generic templated webhook
  12168. properties:
  12169. auth:
  12170. description: Auth specifies a authorization protocol. Only one protocol may be set.
  12171. maxProperties: 1
  12172. minProperties: 1
  12173. properties:
  12174. ntlm:
  12175. description: NTLMProtocol configures the store to use NTLM for auth
  12176. properties:
  12177. passwordSecret:
  12178. description: |-
  12179. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12180. In some instances, `key` is a required field.
  12181. properties:
  12182. key:
  12183. description: |-
  12184. A key in the referenced Secret.
  12185. Some instances of this field may be defaulted, in others it may be required.
  12186. maxLength: 253
  12187. minLength: 1
  12188. pattern: ^[-._a-zA-Z0-9]+$
  12189. type: string
  12190. name:
  12191. description: The name of the Secret resource being referred to.
  12192. maxLength: 253
  12193. minLength: 1
  12194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12195. type: string
  12196. namespace:
  12197. description: |-
  12198. The namespace of the Secret resource being referred to.
  12199. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12200. maxLength: 63
  12201. minLength: 1
  12202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12203. type: string
  12204. type: object
  12205. usernameSecret:
  12206. description: |-
  12207. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12208. In some instances, `key` is a required field.
  12209. properties:
  12210. key:
  12211. description: |-
  12212. A key in the referenced Secret.
  12213. Some instances of this field may be defaulted, in others it may be required.
  12214. maxLength: 253
  12215. minLength: 1
  12216. pattern: ^[-._a-zA-Z0-9]+$
  12217. type: string
  12218. name:
  12219. description: The name of the Secret resource being referred to.
  12220. maxLength: 253
  12221. minLength: 1
  12222. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12223. type: string
  12224. namespace:
  12225. description: |-
  12226. The namespace of the Secret resource being referred to.
  12227. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12228. maxLength: 63
  12229. minLength: 1
  12230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12231. type: string
  12232. type: object
  12233. required:
  12234. - passwordSecret
  12235. - usernameSecret
  12236. type: object
  12237. type: object
  12238. body:
  12239. description: Body
  12240. type: string
  12241. caBundle:
  12242. description: |-
  12243. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12244. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12245. plain HTTP protocol connection. If not set the system root certificates
  12246. are used to validate the TLS connection.
  12247. format: byte
  12248. type: string
  12249. caProvider:
  12250. description: The provider for the CA bundle to use to validate webhook server certificate.
  12251. properties:
  12252. key:
  12253. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12254. maxLength: 253
  12255. minLength: 1
  12256. pattern: ^[-._a-zA-Z0-9]+$
  12257. type: string
  12258. name:
  12259. description: The name of the object located at the provider type.
  12260. maxLength: 253
  12261. minLength: 1
  12262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12263. type: string
  12264. namespace:
  12265. description: The namespace the Provider type is in.
  12266. maxLength: 63
  12267. minLength: 1
  12268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12269. type: string
  12270. type:
  12271. description: The type of provider to use such as "Secret", or "ConfigMap".
  12272. enum:
  12273. - Secret
  12274. - ConfigMap
  12275. type: string
  12276. required:
  12277. - name
  12278. - type
  12279. type: object
  12280. headers:
  12281. additionalProperties:
  12282. type: string
  12283. description: Headers
  12284. type: object
  12285. method:
  12286. description: Webhook Method
  12287. type: string
  12288. result:
  12289. description: Result formatting
  12290. properties:
  12291. jsonPath:
  12292. description: Json path of return value
  12293. type: string
  12294. type: object
  12295. secrets:
  12296. description: |-
  12297. Secrets to fill in templates
  12298. These secrets will be passed to the templating function as key value pairs under the given name
  12299. items:
  12300. description: WebhookSecret defines a secret to be used in webhook templates.
  12301. properties:
  12302. name:
  12303. description: Name of this secret in templates
  12304. type: string
  12305. secretRef:
  12306. description: Secret ref to fill in credentials
  12307. properties:
  12308. key:
  12309. description: |-
  12310. A key in the referenced Secret.
  12311. Some instances of this field may be defaulted, in others it may be required.
  12312. maxLength: 253
  12313. minLength: 1
  12314. pattern: ^[-._a-zA-Z0-9]+$
  12315. type: string
  12316. name:
  12317. description: The name of the Secret resource being referred to.
  12318. maxLength: 253
  12319. minLength: 1
  12320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12321. type: string
  12322. namespace:
  12323. description: |-
  12324. The namespace of the Secret resource being referred to.
  12325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12326. maxLength: 63
  12327. minLength: 1
  12328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12329. type: string
  12330. type: object
  12331. required:
  12332. - name
  12333. - secretRef
  12334. type: object
  12335. type: array
  12336. timeout:
  12337. description: Timeout
  12338. type: string
  12339. url:
  12340. description: Webhook url to call
  12341. type: string
  12342. required:
  12343. - result
  12344. - url
  12345. type: object
  12346. yandexcertificatemanager:
  12347. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12348. properties:
  12349. apiEndpoint:
  12350. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12351. type: string
  12352. auth:
  12353. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12354. properties:
  12355. authorizedKeySecretRef:
  12356. description: The authorized key used for authentication
  12357. properties:
  12358. key:
  12359. description: |-
  12360. A key in the referenced Secret.
  12361. Some instances of this field may be defaulted, in others it may be required.
  12362. maxLength: 253
  12363. minLength: 1
  12364. pattern: ^[-._a-zA-Z0-9]+$
  12365. type: string
  12366. name:
  12367. description: The name of the Secret resource being referred to.
  12368. maxLength: 253
  12369. minLength: 1
  12370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12371. type: string
  12372. namespace:
  12373. description: |-
  12374. The namespace of the Secret resource being referred to.
  12375. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12376. maxLength: 63
  12377. minLength: 1
  12378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12379. type: string
  12380. type: object
  12381. type: object
  12382. caProvider:
  12383. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12384. properties:
  12385. certSecretRef:
  12386. description: |-
  12387. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12388. In some instances, `key` is a required field.
  12389. properties:
  12390. key:
  12391. description: |-
  12392. A key in the referenced Secret.
  12393. Some instances of this field may be defaulted, in others it may be required.
  12394. maxLength: 253
  12395. minLength: 1
  12396. pattern: ^[-._a-zA-Z0-9]+$
  12397. type: string
  12398. name:
  12399. description: The name of the Secret resource being referred to.
  12400. maxLength: 253
  12401. minLength: 1
  12402. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12403. type: string
  12404. namespace:
  12405. description: |-
  12406. The namespace of the Secret resource being referred to.
  12407. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12408. maxLength: 63
  12409. minLength: 1
  12410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12411. type: string
  12412. type: object
  12413. type: object
  12414. required:
  12415. - auth
  12416. type: object
  12417. yandexlockbox:
  12418. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12419. properties:
  12420. apiEndpoint:
  12421. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12422. type: string
  12423. auth:
  12424. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12425. properties:
  12426. authorizedKeySecretRef:
  12427. description: The authorized key used for authentication
  12428. properties:
  12429. key:
  12430. description: |-
  12431. A key in the referenced Secret.
  12432. Some instances of this field may be defaulted, in others it may be required.
  12433. maxLength: 253
  12434. minLength: 1
  12435. pattern: ^[-._a-zA-Z0-9]+$
  12436. type: string
  12437. name:
  12438. description: The name of the Secret resource being referred to.
  12439. maxLength: 253
  12440. minLength: 1
  12441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12442. type: string
  12443. namespace:
  12444. description: |-
  12445. The namespace of the Secret resource being referred to.
  12446. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12447. maxLength: 63
  12448. minLength: 1
  12449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12450. type: string
  12451. type: object
  12452. type: object
  12453. caProvider:
  12454. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12455. properties:
  12456. certSecretRef:
  12457. description: |-
  12458. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12459. In some instances, `key` is a required field.
  12460. properties:
  12461. key:
  12462. description: |-
  12463. A key in the referenced Secret.
  12464. Some instances of this field may be defaulted, in others it may be required.
  12465. maxLength: 253
  12466. minLength: 1
  12467. pattern: ^[-._a-zA-Z0-9]+$
  12468. type: string
  12469. name:
  12470. description: The name of the Secret resource being referred to.
  12471. maxLength: 253
  12472. minLength: 1
  12473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12474. type: string
  12475. namespace:
  12476. description: |-
  12477. The namespace of the Secret resource being referred to.
  12478. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12479. maxLength: 63
  12480. minLength: 1
  12481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12482. type: string
  12483. type: object
  12484. type: object
  12485. required:
  12486. - auth
  12487. type: object
  12488. type: object
  12489. refreshInterval:
  12490. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12491. type: integer
  12492. retrySettings:
  12493. description: Used to configure HTTP retries on failures.
  12494. properties:
  12495. maxRetries:
  12496. description: MaxRetries is the maximum number of retry attempts.
  12497. format: int32
  12498. type: integer
  12499. retryInterval:
  12500. description: RetryInterval is the interval between retry attempts.
  12501. type: string
  12502. type: object
  12503. required:
  12504. - provider
  12505. type: object
  12506. status:
  12507. description: SecretStoreStatus defines the observed state of the SecretStore.
  12508. properties:
  12509. capabilities:
  12510. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12511. type: string
  12512. conditions:
  12513. items:
  12514. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12515. properties:
  12516. lastTransitionTime:
  12517. format: date-time
  12518. type: string
  12519. message:
  12520. type: string
  12521. reason:
  12522. type: string
  12523. status:
  12524. type: string
  12525. type:
  12526. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12527. type: string
  12528. required:
  12529. - status
  12530. - type
  12531. type: object
  12532. type: array
  12533. type: object
  12534. type: object
  12535. served: false
  12536. storage: false
  12537. subresources:
  12538. status: {}
  12539. ---
  12540. apiVersion: apiextensions.k8s.io/v1
  12541. kind: CustomResourceDefinition
  12542. metadata:
  12543. annotations:
  12544. controller-gen.kubebuilder.io/version: v0.19.0
  12545. labels:
  12546. external-secrets.io/component: controller
  12547. name: externalsecrets.external-secrets.io
  12548. spec:
  12549. group: external-secrets.io
  12550. names:
  12551. categories:
  12552. - external-secrets
  12553. kind: ExternalSecret
  12554. listKind: ExternalSecretList
  12555. plural: externalsecrets
  12556. shortNames:
  12557. - es
  12558. singular: externalsecret
  12559. scope: Namespaced
  12560. versions:
  12561. - additionalPrinterColumns:
  12562. - jsonPath: .spec.secretStoreRef.kind
  12563. name: StoreType
  12564. type: string
  12565. - jsonPath: .spec.secretStoreRef.name
  12566. name: Store
  12567. type: string
  12568. - jsonPath: .spec.refreshInterval
  12569. name: Refresh Interval
  12570. type: string
  12571. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  12572. name: Status
  12573. type: string
  12574. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12575. name: Ready
  12576. type: string
  12577. - jsonPath: .status.refreshTime
  12578. name: Last Sync
  12579. type: date
  12580. name: v1
  12581. schema:
  12582. openAPIV3Schema:
  12583. description: |-
  12584. ExternalSecret is the Schema for the external-secrets API.
  12585. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  12586. properties:
  12587. apiVersion:
  12588. description: |-
  12589. APIVersion defines the versioned schema of this representation of an object.
  12590. Servers should convert recognized schemas to the latest internal value, and
  12591. may reject unrecognized values.
  12592. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12593. type: string
  12594. kind:
  12595. description: |-
  12596. Kind is a string value representing the REST resource this object represents.
  12597. Servers may infer this from the endpoint the client submits requests to.
  12598. Cannot be updated.
  12599. In CamelCase.
  12600. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12601. type: string
  12602. metadata:
  12603. type: object
  12604. spec:
  12605. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  12606. properties:
  12607. data:
  12608. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  12609. items:
  12610. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  12611. properties:
  12612. remoteRef:
  12613. description: |-
  12614. RemoteRef points to the remote secret and defines
  12615. which secret (version/property/..) to fetch.
  12616. properties:
  12617. conversionStrategy:
  12618. default: Default
  12619. description: Used to define a conversion Strategy
  12620. enum:
  12621. - Default
  12622. - Unicode
  12623. type: string
  12624. decodingStrategy:
  12625. default: None
  12626. description: Used to define a decoding Strategy
  12627. enum:
  12628. - Auto
  12629. - Base64
  12630. - Base64URL
  12631. - None
  12632. type: string
  12633. key:
  12634. description: Key is the key used in the Provider, mandatory
  12635. type: string
  12636. metadataPolicy:
  12637. default: None
  12638. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12639. enum:
  12640. - None
  12641. - Fetch
  12642. type: string
  12643. nullBytePolicy:
  12644. default: Ignore
  12645. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12646. enum:
  12647. - Ignore
  12648. - Fail
  12649. type: string
  12650. property:
  12651. description: Used to select a specific property of the Provider value (if a map), if supported
  12652. type: string
  12653. version:
  12654. description: Used to select a specific version of the Provider value, if supported
  12655. type: string
  12656. required:
  12657. - key
  12658. type: object
  12659. secretKey:
  12660. description: The key in the Kubernetes Secret to store the value.
  12661. maxLength: 253
  12662. minLength: 1
  12663. pattern: ^[-._a-zA-Z0-9]+$
  12664. type: string
  12665. sourceRef:
  12666. description: |-
  12667. SourceRef allows you to override the source
  12668. from which the value will be pulled.
  12669. maxProperties: 1
  12670. minProperties: 1
  12671. properties:
  12672. generatorRef:
  12673. description: |-
  12674. GeneratorRef points to a generator custom resource.
  12675. Deprecated: The generatorRef is not implemented in .data[].
  12676. this will be removed with v1.
  12677. properties:
  12678. apiVersion:
  12679. default: generators.external-secrets.io/v1alpha1
  12680. description: Specify the apiVersion of the generator resource
  12681. type: string
  12682. kind:
  12683. description: Specify the Kind of the generator resource
  12684. enum:
  12685. - ACRAccessToken
  12686. - ClusterGenerator
  12687. - CloudsmithAccessToken
  12688. - ECRAuthorizationToken
  12689. - Fake
  12690. - GCRAccessToken
  12691. - GithubAccessToken
  12692. - QuayAccessToken
  12693. - Password
  12694. - SSHKey
  12695. - STSAssumeRoleToken
  12696. - STSSessionToken
  12697. - UUID
  12698. - VaultDynamicSecret
  12699. - Webhook
  12700. - Grafana
  12701. - MFA
  12702. type: string
  12703. name:
  12704. description: Specify the name of the generator resource
  12705. maxLength: 253
  12706. minLength: 1
  12707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12708. type: string
  12709. required:
  12710. - kind
  12711. - name
  12712. type: object
  12713. storeRef:
  12714. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12715. properties:
  12716. kind:
  12717. description: |-
  12718. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12719. Defaults to `SecretStore`
  12720. enum:
  12721. - SecretStore
  12722. - ClusterSecretStore
  12723. type: string
  12724. name:
  12725. description: Name of the SecretStore resource
  12726. maxLength: 253
  12727. minLength: 1
  12728. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12729. type: string
  12730. type: object
  12731. type: object
  12732. required:
  12733. - remoteRef
  12734. - secretKey
  12735. type: object
  12736. type: array
  12737. dataFrom:
  12738. description: |-
  12739. DataFrom is used to fetch all properties from a specific Provider data
  12740. If multiple entries are specified, the Secret keys are merged in the specified order
  12741. items:
  12742. description: |-
  12743. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  12744. when using DataFrom to fetch multiple values from a Provider.
  12745. properties:
  12746. extract:
  12747. description: |-
  12748. Used to extract multiple key/value pairs from one secret
  12749. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12750. properties:
  12751. conversionStrategy:
  12752. default: Default
  12753. description: Used to define a conversion Strategy
  12754. enum:
  12755. - Default
  12756. - Unicode
  12757. type: string
  12758. decodingStrategy:
  12759. default: None
  12760. description: Used to define a decoding Strategy
  12761. enum:
  12762. - Auto
  12763. - Base64
  12764. - Base64URL
  12765. - None
  12766. type: string
  12767. key:
  12768. description: Key is the key used in the Provider, mandatory
  12769. type: string
  12770. metadataPolicy:
  12771. default: None
  12772. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12773. enum:
  12774. - None
  12775. - Fetch
  12776. type: string
  12777. nullBytePolicy:
  12778. default: Ignore
  12779. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12780. enum:
  12781. - Ignore
  12782. - Fail
  12783. type: string
  12784. property:
  12785. description: Used to select a specific property of the Provider value (if a map), if supported
  12786. type: string
  12787. version:
  12788. description: Used to select a specific version of the Provider value, if supported
  12789. type: string
  12790. required:
  12791. - key
  12792. type: object
  12793. find:
  12794. description: |-
  12795. Used to find secrets based on tags or regular expressions
  12796. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12797. properties:
  12798. conversionStrategy:
  12799. default: Default
  12800. description: Used to define a conversion Strategy
  12801. enum:
  12802. - Default
  12803. - Unicode
  12804. type: string
  12805. decodingStrategy:
  12806. default: None
  12807. description: Used to define a decoding Strategy
  12808. enum:
  12809. - Auto
  12810. - Base64
  12811. - Base64URL
  12812. - None
  12813. type: string
  12814. name:
  12815. description: Finds secrets based on the name.
  12816. properties:
  12817. regexp:
  12818. description: Finds secrets base
  12819. type: string
  12820. type: object
  12821. nullBytePolicy:
  12822. default: Ignore
  12823. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  12824. enum:
  12825. - Ignore
  12826. - Fail
  12827. type: string
  12828. path:
  12829. description: A root path to start the find operations.
  12830. type: string
  12831. tags:
  12832. additionalProperties:
  12833. type: string
  12834. description: Find secrets based on tags.
  12835. type: object
  12836. type: object
  12837. rewrite:
  12838. description: |-
  12839. Used to rewrite secret Keys after getting them from the secret Provider
  12840. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  12841. items:
  12842. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  12843. maxProperties: 1
  12844. minProperties: 1
  12845. properties:
  12846. merge:
  12847. description: |-
  12848. Used to merge key/values in one single Secret
  12849. The resulting key will contain all values from the specified secrets
  12850. properties:
  12851. conflictPolicy:
  12852. default: Error
  12853. description: Used to define the policy to use in conflict resolution.
  12854. enum:
  12855. - Ignore
  12856. - Error
  12857. type: string
  12858. into:
  12859. default: ""
  12860. description: |-
  12861. Used to define the target key of the merge operation.
  12862. Required if strategy is JSON. Ignored otherwise.
  12863. type: string
  12864. priority:
  12865. description: Used to define key priority in conflict resolution.
  12866. items:
  12867. type: string
  12868. type: array
  12869. priorityPolicy:
  12870. default: Strict
  12871. description: Used to define the policy when a key in the priority list does not exist in the input.
  12872. enum:
  12873. - IgnoreNotFound
  12874. - Strict
  12875. type: string
  12876. strategy:
  12877. default: Extract
  12878. description: Used to define the strategy to use in the merge operation.
  12879. enum:
  12880. - Extract
  12881. - JSON
  12882. type: string
  12883. type: object
  12884. regexp:
  12885. description: |-
  12886. Used to rewrite with regular expressions.
  12887. The resulting key will be the output of a regexp.ReplaceAll operation.
  12888. properties:
  12889. source:
  12890. description: Used to define the regular expression of a re.Compiler.
  12891. type: string
  12892. target:
  12893. description: Used to define the target pattern of a ReplaceAll operation.
  12894. type: string
  12895. required:
  12896. - source
  12897. - target
  12898. type: object
  12899. transform:
  12900. description: |-
  12901. Used to apply string transformation on the secrets.
  12902. The resulting key will be the output of the template applied by the operation.
  12903. properties:
  12904. template:
  12905. description: |-
  12906. Used to define the template to apply on the secret name.
  12907. `.value ` will specify the secret name in the template.
  12908. type: string
  12909. required:
  12910. - template
  12911. type: object
  12912. type: object
  12913. type: array
  12914. sourceRef:
  12915. description: |-
  12916. SourceRef points to a store or generator
  12917. which contains secret values ready to use.
  12918. Use this in combination with Extract or Find pull values out of
  12919. a specific SecretStore.
  12920. When sourceRef points to a generator Extract or Find is not supported.
  12921. The generator returns a static map of values
  12922. maxProperties: 1
  12923. minProperties: 1
  12924. properties:
  12925. generatorRef:
  12926. description: GeneratorRef points to a generator custom resource.
  12927. properties:
  12928. apiVersion:
  12929. default: generators.external-secrets.io/v1alpha1
  12930. description: Specify the apiVersion of the generator resource
  12931. type: string
  12932. kind:
  12933. description: Specify the Kind of the generator resource
  12934. enum:
  12935. - ACRAccessToken
  12936. - ClusterGenerator
  12937. - CloudsmithAccessToken
  12938. - ECRAuthorizationToken
  12939. - Fake
  12940. - GCRAccessToken
  12941. - GithubAccessToken
  12942. - QuayAccessToken
  12943. - Password
  12944. - SSHKey
  12945. - STSAssumeRoleToken
  12946. - STSSessionToken
  12947. - UUID
  12948. - VaultDynamicSecret
  12949. - Webhook
  12950. - Grafana
  12951. - MFA
  12952. type: string
  12953. name:
  12954. description: Specify the name of the generator resource
  12955. maxLength: 253
  12956. minLength: 1
  12957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12958. type: string
  12959. required:
  12960. - kind
  12961. - name
  12962. type: object
  12963. storeRef:
  12964. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12965. properties:
  12966. kind:
  12967. description: |-
  12968. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12969. Defaults to `SecretStore`
  12970. enum:
  12971. - SecretStore
  12972. - ClusterSecretStore
  12973. type: string
  12974. name:
  12975. description: Name of the SecretStore resource
  12976. maxLength: 253
  12977. minLength: 1
  12978. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12979. type: string
  12980. type: object
  12981. type: object
  12982. type: object
  12983. type: array
  12984. refreshInterval:
  12985. default: 1h0m0s
  12986. description: |-
  12987. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  12988. specified as Golang Duration strings.
  12989. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  12990. Example values: "1h0m0s", "2h30m0s", "10m0s"
  12991. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  12992. type: string
  12993. refreshPolicy:
  12994. description: |-
  12995. RefreshPolicy determines how the ExternalSecret should be refreshed:
  12996. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  12997. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  12998. No periodic updates occur if refreshInterval is 0.
  12999. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13000. enum:
  13001. - CreatedOnce
  13002. - Periodic
  13003. - OnChange
  13004. type: string
  13005. secretStoreRef:
  13006. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13007. properties:
  13008. kind:
  13009. description: |-
  13010. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13011. Defaults to `SecretStore`
  13012. enum:
  13013. - SecretStore
  13014. - ClusterSecretStore
  13015. type: string
  13016. name:
  13017. description: Name of the SecretStore resource
  13018. maxLength: 253
  13019. minLength: 1
  13020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13021. type: string
  13022. type: object
  13023. target:
  13024. default:
  13025. creationPolicy: Owner
  13026. deletionPolicy: Retain
  13027. description: |-
  13028. ExternalSecretTarget defines the Kubernetes Secret to be created,
  13029. there can be only one target per ExternalSecret.
  13030. properties:
  13031. creationPolicy:
  13032. default: Owner
  13033. description: |-
  13034. CreationPolicy defines rules on how to create the resulting Secret.
  13035. Defaults to "Owner"
  13036. enum:
  13037. - Owner
  13038. - Orphan
  13039. - Merge
  13040. - None
  13041. type: string
  13042. deletionPolicy:
  13043. default: Retain
  13044. description: |-
  13045. DeletionPolicy defines rules on how to delete the resulting Secret.
  13046. Defaults to "Retain"
  13047. enum:
  13048. - Delete
  13049. - Merge
  13050. - Retain
  13051. type: string
  13052. immutable:
  13053. description: Immutable defines if the final secret will be immutable
  13054. type: boolean
  13055. manifest:
  13056. description: |-
  13057. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  13058. When specified, ExternalSecret will create the resource type defined here
  13059. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  13060. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  13061. properties:
  13062. apiVersion:
  13063. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  13064. minLength: 1
  13065. type: string
  13066. kind:
  13067. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  13068. minLength: 1
  13069. type: string
  13070. required:
  13071. - apiVersion
  13072. - kind
  13073. type: object
  13074. name:
  13075. description: |-
  13076. The name of the Secret resource to be managed.
  13077. Defaults to the .metadata.name of the ExternalSecret resource
  13078. maxLength: 253
  13079. minLength: 1
  13080. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13081. type: string
  13082. template:
  13083. description: Template defines a blueprint for the created Secret resource.
  13084. properties:
  13085. data:
  13086. additionalProperties:
  13087. type: string
  13088. type: object
  13089. engineVersion:
  13090. default: v2
  13091. description: |-
  13092. EngineVersion specifies the template engine version
  13093. that should be used to compile/execute the
  13094. template specified in .data and .templateFrom[].
  13095. enum:
  13096. - v2
  13097. type: string
  13098. mergePolicy:
  13099. default: Replace
  13100. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  13101. enum:
  13102. - Replace
  13103. - Merge
  13104. type: string
  13105. metadata:
  13106. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13107. properties:
  13108. annotations:
  13109. additionalProperties:
  13110. type: string
  13111. type: object
  13112. finalizers:
  13113. items:
  13114. type: string
  13115. type: array
  13116. labels:
  13117. additionalProperties:
  13118. type: string
  13119. type: object
  13120. type: object
  13121. templateFrom:
  13122. items:
  13123. description: |-
  13124. TemplateFrom specifies a source for templates.
  13125. Each item in the list can either reference a ConfigMap or a Secret resource.
  13126. properties:
  13127. configMap:
  13128. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13129. properties:
  13130. items:
  13131. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13132. items:
  13133. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13134. properties:
  13135. key:
  13136. description: A key in the ConfigMap/Secret
  13137. maxLength: 253
  13138. minLength: 1
  13139. pattern: ^[-._a-zA-Z0-9]+$
  13140. type: string
  13141. templateAs:
  13142. default: Values
  13143. description: TemplateScope specifies how the template keys should be interpreted.
  13144. enum:
  13145. - Values
  13146. - KeysAndValues
  13147. type: string
  13148. required:
  13149. - key
  13150. type: object
  13151. type: array
  13152. name:
  13153. description: The name of the ConfigMap/Secret resource
  13154. maxLength: 253
  13155. minLength: 1
  13156. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13157. type: string
  13158. required:
  13159. - items
  13160. - name
  13161. type: object
  13162. literal:
  13163. type: string
  13164. secret:
  13165. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13166. properties:
  13167. items:
  13168. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13169. items:
  13170. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13171. properties:
  13172. key:
  13173. description: A key in the ConfigMap/Secret
  13174. maxLength: 253
  13175. minLength: 1
  13176. pattern: ^[-._a-zA-Z0-9]+$
  13177. type: string
  13178. templateAs:
  13179. default: Values
  13180. description: TemplateScope specifies how the template keys should be interpreted.
  13181. enum:
  13182. - Values
  13183. - KeysAndValues
  13184. type: string
  13185. required:
  13186. - key
  13187. type: object
  13188. type: array
  13189. name:
  13190. description: The name of the ConfigMap/Secret resource
  13191. maxLength: 253
  13192. minLength: 1
  13193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13194. type: string
  13195. required:
  13196. - items
  13197. - name
  13198. type: object
  13199. target:
  13200. default: Data
  13201. description: |-
  13202. Target specifies where to place the template result.
  13203. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13204. For custom resources (when spec.target.manifest is set), this supports
  13205. nested paths like "spec.database.config" or "data".
  13206. type: string
  13207. type: object
  13208. type: array
  13209. type:
  13210. type: string
  13211. type: object
  13212. type: object
  13213. type: object
  13214. status:
  13215. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13216. properties:
  13217. binding:
  13218. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13219. properties:
  13220. name:
  13221. default: ""
  13222. description: |-
  13223. Name of the referent.
  13224. This field is effectively required, but due to backwards compatibility is
  13225. allowed to be empty. Instances of this type with an empty value here are
  13226. almost certainly wrong.
  13227. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13228. type: string
  13229. type: object
  13230. x-kubernetes-map-type: atomic
  13231. conditions:
  13232. items:
  13233. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13234. properties:
  13235. lastTransitionTime:
  13236. format: date-time
  13237. type: string
  13238. message:
  13239. type: string
  13240. reason:
  13241. type: string
  13242. status:
  13243. type: string
  13244. type:
  13245. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13246. enum:
  13247. - Ready
  13248. - Deleted
  13249. type: string
  13250. required:
  13251. - status
  13252. - type
  13253. type: object
  13254. type: array
  13255. refreshTime:
  13256. description: |-
  13257. refreshTime is the time and date the external secret was fetched and
  13258. the target secret updated
  13259. format: date-time
  13260. nullable: true
  13261. type: string
  13262. syncedResourceVersion:
  13263. description: SyncedResourceVersion keeps track of the last synced version
  13264. type: string
  13265. type: object
  13266. type: object
  13267. selectableFields:
  13268. - jsonPath: .spec.secretStoreRef.name
  13269. - jsonPath: .spec.secretStoreRef.kind
  13270. - jsonPath: .spec.target.name
  13271. - jsonPath: .spec.refreshInterval
  13272. served: true
  13273. storage: true
  13274. subresources:
  13275. status: {}
  13276. - additionalPrinterColumns:
  13277. - jsonPath: .spec.secretStoreRef.kind
  13278. name: StoreType
  13279. type: string
  13280. - jsonPath: .spec.secretStoreRef.name
  13281. name: Store
  13282. type: string
  13283. - jsonPath: .spec.refreshInterval
  13284. name: Refresh Interval
  13285. type: string
  13286. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13287. name: Status
  13288. type: string
  13289. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13290. name: Ready
  13291. type: string
  13292. - jsonPath: .status.refreshTime
  13293. name: Last Sync
  13294. type: date
  13295. deprecated: true
  13296. name: v1beta1
  13297. schema:
  13298. openAPIV3Schema:
  13299. description: ExternalSecret is the schema for the external-secrets API.
  13300. properties:
  13301. apiVersion:
  13302. description: |-
  13303. APIVersion defines the versioned schema of this representation of an object.
  13304. Servers should convert recognized schemas to the latest internal value, and
  13305. may reject unrecognized values.
  13306. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13307. type: string
  13308. kind:
  13309. description: |-
  13310. Kind is a string value representing the REST resource this object represents.
  13311. Servers may infer this from the endpoint the client submits requests to.
  13312. Cannot be updated.
  13313. In CamelCase.
  13314. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13315. type: string
  13316. metadata:
  13317. type: object
  13318. spec:
  13319. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13320. properties:
  13321. data:
  13322. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13323. items:
  13324. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13325. properties:
  13326. remoteRef:
  13327. description: |-
  13328. RemoteRef points to the remote secret and defines
  13329. which secret (version/property/..) to fetch.
  13330. properties:
  13331. conversionStrategy:
  13332. default: Default
  13333. description: Used to define a conversion Strategy
  13334. enum:
  13335. - Default
  13336. - Unicode
  13337. type: string
  13338. decodingStrategy:
  13339. default: None
  13340. description: Used to define a decoding Strategy
  13341. enum:
  13342. - Auto
  13343. - Base64
  13344. - Base64URL
  13345. - None
  13346. type: string
  13347. key:
  13348. description: Key is the key used in the Provider, mandatory
  13349. type: string
  13350. metadataPolicy:
  13351. default: None
  13352. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13353. enum:
  13354. - None
  13355. - Fetch
  13356. type: string
  13357. property:
  13358. description: Used to select a specific property of the Provider value (if a map), if supported
  13359. type: string
  13360. version:
  13361. description: Used to select a specific version of the Provider value, if supported
  13362. type: string
  13363. required:
  13364. - key
  13365. type: object
  13366. secretKey:
  13367. description: The key in the Kubernetes Secret to store the value.
  13368. maxLength: 253
  13369. minLength: 1
  13370. pattern: ^[-._a-zA-Z0-9]+$
  13371. type: string
  13372. sourceRef:
  13373. description: |-
  13374. SourceRef allows you to override the source
  13375. from which the value will be pulled.
  13376. maxProperties: 1
  13377. minProperties: 1
  13378. properties:
  13379. generatorRef:
  13380. description: |-
  13381. GeneratorRef points to a generator custom resource.
  13382. Deprecated: The generatorRef is not implemented in .data[].
  13383. this will be removed with v1.
  13384. properties:
  13385. apiVersion:
  13386. default: generators.external-secrets.io/v1alpha1
  13387. description: Specify the apiVersion of the generator resource
  13388. type: string
  13389. kind:
  13390. description: Specify the Kind of the generator resource
  13391. enum:
  13392. - ACRAccessToken
  13393. - ClusterGenerator
  13394. - ECRAuthorizationToken
  13395. - Fake
  13396. - GCRAccessToken
  13397. - GithubAccessToken
  13398. - QuayAccessToken
  13399. - Password
  13400. - SSHKey
  13401. - STSSessionToken
  13402. - UUID
  13403. - VaultDynamicSecret
  13404. - Webhook
  13405. - Grafana
  13406. type: string
  13407. name:
  13408. description: Specify the name of the generator resource
  13409. maxLength: 253
  13410. minLength: 1
  13411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13412. type: string
  13413. required:
  13414. - kind
  13415. - name
  13416. type: object
  13417. storeRef:
  13418. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13419. properties:
  13420. kind:
  13421. description: |-
  13422. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13423. Defaults to `SecretStore`
  13424. enum:
  13425. - SecretStore
  13426. - ClusterSecretStore
  13427. type: string
  13428. name:
  13429. description: Name of the SecretStore resource
  13430. maxLength: 253
  13431. minLength: 1
  13432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13433. type: string
  13434. type: object
  13435. type: object
  13436. required:
  13437. - remoteRef
  13438. - secretKey
  13439. type: object
  13440. type: array
  13441. dataFrom:
  13442. description: |-
  13443. DataFrom is used to fetch all properties from a specific Provider data
  13444. If multiple entries are specified, the Secret keys are merged in the specified order
  13445. items:
  13446. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13447. properties:
  13448. extract:
  13449. description: |-
  13450. Used to extract multiple key/value pairs from one secret
  13451. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13452. properties:
  13453. conversionStrategy:
  13454. default: Default
  13455. description: Used to define a conversion Strategy
  13456. enum:
  13457. - Default
  13458. - Unicode
  13459. type: string
  13460. decodingStrategy:
  13461. default: None
  13462. description: Used to define a decoding Strategy
  13463. enum:
  13464. - Auto
  13465. - Base64
  13466. - Base64URL
  13467. - None
  13468. type: string
  13469. key:
  13470. description: Key is the key used in the Provider, mandatory
  13471. type: string
  13472. metadataPolicy:
  13473. default: None
  13474. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13475. enum:
  13476. - None
  13477. - Fetch
  13478. type: string
  13479. property:
  13480. description: Used to select a specific property of the Provider value (if a map), if supported
  13481. type: string
  13482. version:
  13483. description: Used to select a specific version of the Provider value, if supported
  13484. type: string
  13485. required:
  13486. - key
  13487. type: object
  13488. find:
  13489. description: |-
  13490. Used to find secrets based on tags or regular expressions
  13491. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13492. properties:
  13493. conversionStrategy:
  13494. default: Default
  13495. description: Used to define a conversion Strategy
  13496. enum:
  13497. - Default
  13498. - Unicode
  13499. type: string
  13500. decodingStrategy:
  13501. default: None
  13502. description: Used to define a decoding Strategy
  13503. enum:
  13504. - Auto
  13505. - Base64
  13506. - Base64URL
  13507. - None
  13508. type: string
  13509. name:
  13510. description: Finds secrets based on the name.
  13511. properties:
  13512. regexp:
  13513. description: Finds secrets base
  13514. type: string
  13515. type: object
  13516. path:
  13517. description: A root path to start the find operations.
  13518. type: string
  13519. tags:
  13520. additionalProperties:
  13521. type: string
  13522. description: Find secrets based on tags.
  13523. type: object
  13524. type: object
  13525. rewrite:
  13526. description: |-
  13527. Used to rewrite secret Keys after getting them from the secret Provider
  13528. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13529. items:
  13530. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  13531. maxProperties: 1
  13532. minProperties: 1
  13533. properties:
  13534. regexp:
  13535. description: |-
  13536. Used to rewrite with regular expressions.
  13537. The resulting key will be the output of a regexp.ReplaceAll operation.
  13538. properties:
  13539. source:
  13540. description: Used to define the regular expression of a re.Compiler.
  13541. type: string
  13542. target:
  13543. description: Used to define the target pattern of a ReplaceAll operation.
  13544. type: string
  13545. required:
  13546. - source
  13547. - target
  13548. type: object
  13549. transform:
  13550. description: |-
  13551. Used to apply string transformation on the secrets.
  13552. The resulting key will be the output of the template applied by the operation.
  13553. properties:
  13554. template:
  13555. description: |-
  13556. Used to define the template to apply on the secret name.
  13557. `.value ` will specify the secret name in the template.
  13558. type: string
  13559. required:
  13560. - template
  13561. type: object
  13562. type: object
  13563. type: array
  13564. sourceRef:
  13565. description: |-
  13566. SourceRef points to a store or generator
  13567. which contains secret values ready to use.
  13568. Use this in combination with Extract or Find pull values out of
  13569. a specific SecretStore.
  13570. When sourceRef points to a generator Extract or Find is not supported.
  13571. The generator returns a static map of values
  13572. maxProperties: 1
  13573. minProperties: 1
  13574. properties:
  13575. generatorRef:
  13576. description: GeneratorRef points to a generator custom resource.
  13577. properties:
  13578. apiVersion:
  13579. default: generators.external-secrets.io/v1alpha1
  13580. description: Specify the apiVersion of the generator resource
  13581. type: string
  13582. kind:
  13583. description: Specify the Kind of the generator resource
  13584. enum:
  13585. - ACRAccessToken
  13586. - ClusterGenerator
  13587. - ECRAuthorizationToken
  13588. - Fake
  13589. - GCRAccessToken
  13590. - GithubAccessToken
  13591. - QuayAccessToken
  13592. - Password
  13593. - SSHKey
  13594. - STSSessionToken
  13595. - UUID
  13596. - VaultDynamicSecret
  13597. - Webhook
  13598. - Grafana
  13599. type: string
  13600. name:
  13601. description: Specify the name of the generator resource
  13602. maxLength: 253
  13603. minLength: 1
  13604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13605. type: string
  13606. required:
  13607. - kind
  13608. - name
  13609. type: object
  13610. storeRef:
  13611. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13612. properties:
  13613. kind:
  13614. description: |-
  13615. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13616. Defaults to `SecretStore`
  13617. enum:
  13618. - SecretStore
  13619. - ClusterSecretStore
  13620. type: string
  13621. name:
  13622. description: Name of the SecretStore resource
  13623. maxLength: 253
  13624. minLength: 1
  13625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13626. type: string
  13627. type: object
  13628. type: object
  13629. type: object
  13630. type: array
  13631. refreshInterval:
  13632. default: 1h0m0s
  13633. description: |-
  13634. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13635. specified as Golang Duration strings.
  13636. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13637. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13638. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13639. type: string
  13640. refreshPolicy:
  13641. description: |-
  13642. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13643. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13644. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13645. No periodic updates occur if refreshInterval is 0.
  13646. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13647. enum:
  13648. - CreatedOnce
  13649. - Periodic
  13650. - OnChange
  13651. type: string
  13652. secretStoreRef:
  13653. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13654. properties:
  13655. kind:
  13656. description: |-
  13657. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13658. Defaults to `SecretStore`
  13659. enum:
  13660. - SecretStore
  13661. - ClusterSecretStore
  13662. type: string
  13663. name:
  13664. description: Name of the SecretStore resource
  13665. maxLength: 253
  13666. minLength: 1
  13667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13668. type: string
  13669. type: object
  13670. target:
  13671. default:
  13672. creationPolicy: Owner
  13673. deletionPolicy: Retain
  13674. description: |-
  13675. ExternalSecretTarget defines the Kubernetes Secret to be created
  13676. There can be only one target per ExternalSecret.
  13677. properties:
  13678. creationPolicy:
  13679. default: Owner
  13680. description: |-
  13681. CreationPolicy defines rules on how to create the resulting Secret.
  13682. Defaults to "Owner"
  13683. enum:
  13684. - Owner
  13685. - Orphan
  13686. - Merge
  13687. - None
  13688. type: string
  13689. deletionPolicy:
  13690. default: Retain
  13691. description: |-
  13692. DeletionPolicy defines rules on how to delete the resulting Secret.
  13693. Defaults to "Retain"
  13694. enum:
  13695. - Delete
  13696. - Merge
  13697. - Retain
  13698. type: string
  13699. immutable:
  13700. description: Immutable defines if the final secret will be immutable
  13701. type: boolean
  13702. name:
  13703. description: |-
  13704. The name of the Secret resource to be managed.
  13705. Defaults to the .metadata.name of the ExternalSecret resource
  13706. maxLength: 253
  13707. minLength: 1
  13708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13709. type: string
  13710. template:
  13711. description: Template defines a blueprint for the created Secret resource.
  13712. properties:
  13713. data:
  13714. additionalProperties:
  13715. type: string
  13716. type: object
  13717. engineVersion:
  13718. default: v2
  13719. description: |-
  13720. EngineVersion specifies the template engine version
  13721. that should be used to compile/execute the
  13722. template specified in .data and .templateFrom[].
  13723. enum:
  13724. - v2
  13725. type: string
  13726. mergePolicy:
  13727. default: Replace
  13728. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  13729. enum:
  13730. - Replace
  13731. - Merge
  13732. type: string
  13733. metadata:
  13734. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13735. properties:
  13736. annotations:
  13737. additionalProperties:
  13738. type: string
  13739. type: object
  13740. labels:
  13741. additionalProperties:
  13742. type: string
  13743. type: object
  13744. type: object
  13745. templateFrom:
  13746. items:
  13747. description: TemplateFrom defines a source for template data.
  13748. properties:
  13749. configMap:
  13750. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13751. properties:
  13752. items:
  13753. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13754. items:
  13755. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13756. properties:
  13757. key:
  13758. description: A key in the ConfigMap/Secret
  13759. maxLength: 253
  13760. minLength: 1
  13761. pattern: ^[-._a-zA-Z0-9]+$
  13762. type: string
  13763. templateAs:
  13764. default: Values
  13765. description: TemplateScope defines the scope of the template when processing template data.
  13766. enum:
  13767. - Values
  13768. - KeysAndValues
  13769. type: string
  13770. required:
  13771. - key
  13772. type: object
  13773. type: array
  13774. name:
  13775. description: The name of the ConfigMap/Secret resource
  13776. maxLength: 253
  13777. minLength: 1
  13778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13779. type: string
  13780. required:
  13781. - items
  13782. - name
  13783. type: object
  13784. literal:
  13785. type: string
  13786. secret:
  13787. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13788. properties:
  13789. items:
  13790. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13791. items:
  13792. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13793. properties:
  13794. key:
  13795. description: A key in the ConfigMap/Secret
  13796. maxLength: 253
  13797. minLength: 1
  13798. pattern: ^[-._a-zA-Z0-9]+$
  13799. type: string
  13800. templateAs:
  13801. default: Values
  13802. description: TemplateScope defines the scope of the template when processing template data.
  13803. enum:
  13804. - Values
  13805. - KeysAndValues
  13806. type: string
  13807. required:
  13808. - key
  13809. type: object
  13810. type: array
  13811. name:
  13812. description: The name of the ConfigMap/Secret resource
  13813. maxLength: 253
  13814. minLength: 1
  13815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13816. type: string
  13817. required:
  13818. - items
  13819. - name
  13820. type: object
  13821. target:
  13822. default: Data
  13823. description: TemplateTarget defines the target field where the template result will be stored.
  13824. enum:
  13825. - Data
  13826. - Annotations
  13827. - Labels
  13828. type: string
  13829. type: object
  13830. type: array
  13831. type:
  13832. type: string
  13833. type: object
  13834. type: object
  13835. type: object
  13836. status:
  13837. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13838. properties:
  13839. binding:
  13840. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13841. properties:
  13842. name:
  13843. default: ""
  13844. description: |-
  13845. Name of the referent.
  13846. This field is effectively required, but due to backwards compatibility is
  13847. allowed to be empty. Instances of this type with an empty value here are
  13848. almost certainly wrong.
  13849. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13850. type: string
  13851. type: object
  13852. x-kubernetes-map-type: atomic
  13853. conditions:
  13854. items:
  13855. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  13856. properties:
  13857. lastTransitionTime:
  13858. format: date-time
  13859. type: string
  13860. message:
  13861. type: string
  13862. reason:
  13863. type: string
  13864. status:
  13865. type: string
  13866. type:
  13867. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  13868. type: string
  13869. required:
  13870. - status
  13871. - type
  13872. type: object
  13873. type: array
  13874. refreshTime:
  13875. description: |-
  13876. refreshTime is the time and date the external secret was fetched and
  13877. the target secret updated
  13878. format: date-time
  13879. nullable: true
  13880. type: string
  13881. syncedResourceVersion:
  13882. description: SyncedResourceVersion keeps track of the last synced version
  13883. type: string
  13884. type: object
  13885. type: object
  13886. served: false
  13887. storage: false
  13888. subresources:
  13889. status: {}
  13890. ---
  13891. apiVersion: apiextensions.k8s.io/v1
  13892. kind: CustomResourceDefinition
  13893. metadata:
  13894. annotations:
  13895. controller-gen.kubebuilder.io/version: v0.19.0
  13896. labels:
  13897. external-secrets.io/component: controller
  13898. name: pushsecrets.external-secrets.io
  13899. spec:
  13900. group: external-secrets.io
  13901. names:
  13902. categories:
  13903. - external-secrets
  13904. kind: PushSecret
  13905. listKind: PushSecretList
  13906. plural: pushsecrets
  13907. shortNames:
  13908. - ps
  13909. singular: pushsecret
  13910. scope: Namespaced
  13911. versions:
  13912. - additionalPrinterColumns:
  13913. - jsonPath: .metadata.creationTimestamp
  13914. name: AGE
  13915. type: date
  13916. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13917. name: Status
  13918. type: string
  13919. - jsonPath: .status.refreshTime
  13920. name: Last Sync
  13921. type: date
  13922. name: v1alpha1
  13923. schema:
  13924. openAPIV3Schema:
  13925. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  13926. properties:
  13927. apiVersion:
  13928. description: |-
  13929. APIVersion defines the versioned schema of this representation of an object.
  13930. Servers should convert recognized schemas to the latest internal value, and
  13931. may reject unrecognized values.
  13932. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13933. type: string
  13934. kind:
  13935. description: |-
  13936. Kind is a string value representing the REST resource this object represents.
  13937. Servers may infer this from the endpoint the client submits requests to.
  13938. Cannot be updated.
  13939. In CamelCase.
  13940. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13941. type: string
  13942. metadata:
  13943. type: object
  13944. spec:
  13945. description: PushSecretSpec configures the behavior of the PushSecret.
  13946. properties:
  13947. data:
  13948. description: Secret Data that should be pushed to providers
  13949. items:
  13950. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  13951. properties:
  13952. conversionStrategy:
  13953. default: None
  13954. description: Used to define a conversion Strategy for the secret keys
  13955. enum:
  13956. - None
  13957. - ReverseUnicode
  13958. type: string
  13959. match:
  13960. description: Match a given Secret Key to be pushed to the provider.
  13961. properties:
  13962. remoteRef:
  13963. description: Remote Refs to push to providers.
  13964. properties:
  13965. property:
  13966. description: Name of the property in the resulting secret
  13967. type: string
  13968. remoteKey:
  13969. description: Name of the resulting provider secret.
  13970. type: string
  13971. required:
  13972. - remoteKey
  13973. type: object
  13974. secretKey:
  13975. description: Secret Key to be pushed
  13976. type: string
  13977. required:
  13978. - remoteRef
  13979. type: object
  13980. metadata:
  13981. description: |-
  13982. Metadata is metadata attached to the secret.
  13983. The structure of metadata is provider specific, please look it up in the provider documentation.
  13984. x-kubernetes-preserve-unknown-fields: true
  13985. required:
  13986. - match
  13987. type: object
  13988. type: array
  13989. dataTo:
  13990. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  13991. items:
  13992. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  13993. properties:
  13994. conversionStrategy:
  13995. default: None
  13996. description: Used to define a conversion Strategy for the secret keys
  13997. enum:
  13998. - None
  13999. - ReverseUnicode
  14000. type: string
  14001. match:
  14002. description: |-
  14003. Match pattern for selecting keys from the source Secret.
  14004. If not specified, all keys are selected.
  14005. properties:
  14006. regexp:
  14007. description: |-
  14008. Regexp matches keys by regular expression.
  14009. If not specified, all keys are matched.
  14010. type: string
  14011. type: object
  14012. metadata:
  14013. description: |-
  14014. Metadata is metadata attached to the secret.
  14015. The structure of metadata is provider specific, please look it up in the provider documentation.
  14016. x-kubernetes-preserve-unknown-fields: true
  14017. remoteKey:
  14018. description: |-
  14019. RemoteKey is the name of the single provider secret that will receive ALL
  14020. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  14021. When set, per-key expansion is skipped and a single push is performed.
  14022. The provider's store prefix (if any) is still prepended to this value.
  14023. When not set, each matched key is pushed as its own individual provider secret.
  14024. type: string
  14025. rewrite:
  14026. description: |-
  14027. Rewrite operations to transform keys before pushing to the provider.
  14028. Operations are applied sequentially.
  14029. items:
  14030. description: PushSecretRewrite defines how to transform secret keys before pushing.
  14031. properties:
  14032. regexp:
  14033. description: Used to rewrite with regular expressions.
  14034. properties:
  14035. source:
  14036. description: Used to define the regular expression of a re.Compiler.
  14037. type: string
  14038. target:
  14039. description: Used to define the target pattern of a ReplaceAll operation.
  14040. type: string
  14041. required:
  14042. - source
  14043. - target
  14044. type: object
  14045. transform:
  14046. description: Used to apply string transformation on the secrets.
  14047. properties:
  14048. template:
  14049. description: |-
  14050. Used to define the template to apply on the secret name.
  14051. `.value ` will specify the secret name in the template.
  14052. type: string
  14053. required:
  14054. - template
  14055. type: object
  14056. type: object
  14057. x-kubernetes-validations:
  14058. - message: exactly one of regexp or transform must be set
  14059. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  14060. type: array
  14061. storeRef:
  14062. description: StoreRef specifies which SecretStore to push to. Required.
  14063. properties:
  14064. kind:
  14065. default: SecretStore
  14066. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14067. enum:
  14068. - SecretStore
  14069. - ClusterSecretStore
  14070. type: string
  14071. labelSelector:
  14072. description: Optionally, sync to secret stores with label selector
  14073. properties:
  14074. matchExpressions:
  14075. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14076. items:
  14077. description: |-
  14078. A label selector requirement is a selector that contains values, a key, and an operator that
  14079. relates the key and values.
  14080. properties:
  14081. key:
  14082. description: key is the label key that the selector applies to.
  14083. type: string
  14084. operator:
  14085. description: |-
  14086. operator represents a key's relationship to a set of values.
  14087. Valid operators are In, NotIn, Exists and DoesNotExist.
  14088. type: string
  14089. values:
  14090. description: |-
  14091. values is an array of string values. If the operator is In or NotIn,
  14092. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14093. the values array must be empty. This array is replaced during a strategic
  14094. merge patch.
  14095. items:
  14096. type: string
  14097. type: array
  14098. x-kubernetes-list-type: atomic
  14099. required:
  14100. - key
  14101. - operator
  14102. type: object
  14103. type: array
  14104. x-kubernetes-list-type: atomic
  14105. matchLabels:
  14106. additionalProperties:
  14107. type: string
  14108. description: |-
  14109. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14110. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14111. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14112. type: object
  14113. type: object
  14114. x-kubernetes-map-type: atomic
  14115. name:
  14116. description: Optionally, sync to the SecretStore of the given name
  14117. maxLength: 253
  14118. minLength: 1
  14119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14120. type: string
  14121. type: object
  14122. type: object
  14123. x-kubernetes-validations:
  14124. - message: storeRef must specify either name or labelSelector
  14125. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  14126. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  14127. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  14128. type: array
  14129. deletionPolicy:
  14130. default: None
  14131. description: Deletion Policy to handle Secrets in the provider.
  14132. enum:
  14133. - Delete
  14134. - None
  14135. type: string
  14136. refreshInterval:
  14137. default: 1h0m0s
  14138. description: The Interval to which External Secrets will try to push a secret definition
  14139. type: string
  14140. secretStoreRefs:
  14141. items:
  14142. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  14143. properties:
  14144. kind:
  14145. default: SecretStore
  14146. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14147. enum:
  14148. - SecretStore
  14149. - ClusterSecretStore
  14150. type: string
  14151. labelSelector:
  14152. description: Optionally, sync to secret stores with label selector
  14153. properties:
  14154. matchExpressions:
  14155. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14156. items:
  14157. description: |-
  14158. A label selector requirement is a selector that contains values, a key, and an operator that
  14159. relates the key and values.
  14160. properties:
  14161. key:
  14162. description: key is the label key that the selector applies to.
  14163. type: string
  14164. operator:
  14165. description: |-
  14166. operator represents a key's relationship to a set of values.
  14167. Valid operators are In, NotIn, Exists and DoesNotExist.
  14168. type: string
  14169. values:
  14170. description: |-
  14171. values is an array of string values. If the operator is In or NotIn,
  14172. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14173. the values array must be empty. This array is replaced during a strategic
  14174. merge patch.
  14175. items:
  14176. type: string
  14177. type: array
  14178. x-kubernetes-list-type: atomic
  14179. required:
  14180. - key
  14181. - operator
  14182. type: object
  14183. type: array
  14184. x-kubernetes-list-type: atomic
  14185. matchLabels:
  14186. additionalProperties:
  14187. type: string
  14188. description: |-
  14189. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14190. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14191. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14192. type: object
  14193. type: object
  14194. x-kubernetes-map-type: atomic
  14195. name:
  14196. description: Optionally, sync to the SecretStore of the given name
  14197. maxLength: 253
  14198. minLength: 1
  14199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14200. type: string
  14201. type: object
  14202. type: array
  14203. selector:
  14204. description: The Secret Selector (k8s source) for the Push Secret
  14205. maxProperties: 1
  14206. minProperties: 1
  14207. properties:
  14208. generatorRef:
  14209. description: Point to a generator to create a Secret.
  14210. properties:
  14211. apiVersion:
  14212. default: generators.external-secrets.io/v1alpha1
  14213. description: Specify the apiVersion of the generator resource
  14214. type: string
  14215. kind:
  14216. description: Specify the Kind of the generator resource
  14217. enum:
  14218. - ACRAccessToken
  14219. - ClusterGenerator
  14220. - CloudsmithAccessToken
  14221. - ECRAuthorizationToken
  14222. - Fake
  14223. - GCRAccessToken
  14224. - GithubAccessToken
  14225. - QuayAccessToken
  14226. - Password
  14227. - SSHKey
  14228. - STSAssumeRoleToken
  14229. - STSSessionToken
  14230. - UUID
  14231. - VaultDynamicSecret
  14232. - Webhook
  14233. - Grafana
  14234. - MFA
  14235. type: string
  14236. name:
  14237. description: Specify the name of the generator resource
  14238. maxLength: 253
  14239. minLength: 1
  14240. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14241. type: string
  14242. required:
  14243. - kind
  14244. - name
  14245. type: object
  14246. secret:
  14247. description: Select a Secret to Push.
  14248. properties:
  14249. name:
  14250. description: |-
  14251. Name of the Secret.
  14252. The Secret must exist in the same namespace as the PushSecret manifest.
  14253. maxLength: 253
  14254. minLength: 1
  14255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14256. type: string
  14257. selector:
  14258. description: Selector chooses secrets using a labelSelector.
  14259. properties:
  14260. matchExpressions:
  14261. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14262. items:
  14263. description: |-
  14264. A label selector requirement is a selector that contains values, a key, and an operator that
  14265. relates the key and values.
  14266. properties:
  14267. key:
  14268. description: key is the label key that the selector applies to.
  14269. type: string
  14270. operator:
  14271. description: |-
  14272. operator represents a key's relationship to a set of values.
  14273. Valid operators are In, NotIn, Exists and DoesNotExist.
  14274. type: string
  14275. values:
  14276. description: |-
  14277. values is an array of string values. If the operator is In or NotIn,
  14278. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14279. the values array must be empty. This array is replaced during a strategic
  14280. merge patch.
  14281. items:
  14282. type: string
  14283. type: array
  14284. x-kubernetes-list-type: atomic
  14285. required:
  14286. - key
  14287. - operator
  14288. type: object
  14289. type: array
  14290. x-kubernetes-list-type: atomic
  14291. matchLabels:
  14292. additionalProperties:
  14293. type: string
  14294. description: |-
  14295. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14296. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14297. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14298. type: object
  14299. type: object
  14300. x-kubernetes-map-type: atomic
  14301. type: object
  14302. type: object
  14303. template:
  14304. description: Template defines a blueprint for the created Secret resource.
  14305. properties:
  14306. data:
  14307. additionalProperties:
  14308. type: string
  14309. type: object
  14310. engineVersion:
  14311. default: v2
  14312. description: |-
  14313. EngineVersion specifies the template engine version
  14314. that should be used to compile/execute the
  14315. template specified in .data and .templateFrom[].
  14316. enum:
  14317. - v2
  14318. type: string
  14319. mergePolicy:
  14320. default: Replace
  14321. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14322. enum:
  14323. - Replace
  14324. - Merge
  14325. type: string
  14326. metadata:
  14327. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14328. properties:
  14329. annotations:
  14330. additionalProperties:
  14331. type: string
  14332. type: object
  14333. finalizers:
  14334. items:
  14335. type: string
  14336. type: array
  14337. labels:
  14338. additionalProperties:
  14339. type: string
  14340. type: object
  14341. type: object
  14342. templateFrom:
  14343. items:
  14344. description: |-
  14345. TemplateFrom specifies a source for templates.
  14346. Each item in the list can either reference a ConfigMap or a Secret resource.
  14347. properties:
  14348. configMap:
  14349. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14350. properties:
  14351. items:
  14352. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14353. items:
  14354. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14355. properties:
  14356. key:
  14357. description: A key in the ConfigMap/Secret
  14358. maxLength: 253
  14359. minLength: 1
  14360. pattern: ^[-._a-zA-Z0-9]+$
  14361. type: string
  14362. templateAs:
  14363. default: Values
  14364. description: TemplateScope specifies how the template keys should be interpreted.
  14365. enum:
  14366. - Values
  14367. - KeysAndValues
  14368. type: string
  14369. required:
  14370. - key
  14371. type: object
  14372. type: array
  14373. name:
  14374. description: The name of the ConfigMap/Secret resource
  14375. maxLength: 253
  14376. minLength: 1
  14377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14378. type: string
  14379. required:
  14380. - items
  14381. - name
  14382. type: object
  14383. literal:
  14384. type: string
  14385. secret:
  14386. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14387. properties:
  14388. items:
  14389. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14390. items:
  14391. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14392. properties:
  14393. key:
  14394. description: A key in the ConfigMap/Secret
  14395. maxLength: 253
  14396. minLength: 1
  14397. pattern: ^[-._a-zA-Z0-9]+$
  14398. type: string
  14399. templateAs:
  14400. default: Values
  14401. description: TemplateScope specifies how the template keys should be interpreted.
  14402. enum:
  14403. - Values
  14404. - KeysAndValues
  14405. type: string
  14406. required:
  14407. - key
  14408. type: object
  14409. type: array
  14410. name:
  14411. description: The name of the ConfigMap/Secret resource
  14412. maxLength: 253
  14413. minLength: 1
  14414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14415. type: string
  14416. required:
  14417. - items
  14418. - name
  14419. type: object
  14420. target:
  14421. default: Data
  14422. description: |-
  14423. Target specifies where to place the template result.
  14424. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14425. For custom resources (when spec.target.manifest is set), this supports
  14426. nested paths like "spec.database.config" or "data".
  14427. type: string
  14428. type: object
  14429. type: array
  14430. type:
  14431. type: string
  14432. type: object
  14433. updatePolicy:
  14434. default: Replace
  14435. description: UpdatePolicy to handle Secrets in the provider.
  14436. enum:
  14437. - Replace
  14438. - IfNotExists
  14439. type: string
  14440. required:
  14441. - secretStoreRefs
  14442. - selector
  14443. type: object
  14444. status:
  14445. description: PushSecretStatus indicates the history of the status of PushSecret.
  14446. properties:
  14447. conditions:
  14448. items:
  14449. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14450. properties:
  14451. lastTransitionTime:
  14452. format: date-time
  14453. type: string
  14454. message:
  14455. type: string
  14456. reason:
  14457. type: string
  14458. status:
  14459. type: string
  14460. type:
  14461. description: PushSecretConditionType indicates the condition of the PushSecret.
  14462. type: string
  14463. required:
  14464. - status
  14465. - type
  14466. type: object
  14467. type: array
  14468. refreshTime:
  14469. description: |-
  14470. refreshTime is the time and date the external secret was fetched and
  14471. the target secret updated
  14472. format: date-time
  14473. nullable: true
  14474. type: string
  14475. syncedPushSecrets:
  14476. additionalProperties:
  14477. additionalProperties:
  14478. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  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: Match a given Secret Key to be pushed to the provider.
  14489. properties:
  14490. remoteRef:
  14491. description: Remote Refs to push to providers.
  14492. properties:
  14493. property:
  14494. description: Name of the property in the resulting secret
  14495. type: string
  14496. remoteKey:
  14497. description: Name of the resulting provider secret.
  14498. type: string
  14499. required:
  14500. - remoteKey
  14501. type: object
  14502. secretKey:
  14503. description: Secret Key to be pushed
  14504. type: string
  14505. required:
  14506. - remoteRef
  14507. type: object
  14508. metadata:
  14509. description: |-
  14510. Metadata is metadata attached to the secret.
  14511. The structure of metadata is provider specific, please look it up in the provider documentation.
  14512. x-kubernetes-preserve-unknown-fields: true
  14513. required:
  14514. - match
  14515. type: object
  14516. type: object
  14517. description: |-
  14518. Synced PushSecrets, including secrets that already exist in provider.
  14519. Matches secret stores to PushSecretData that was stored to that secret store.
  14520. type: object
  14521. syncedResourceVersion:
  14522. description: SyncedResourceVersion keeps track of the last synced version.
  14523. type: string
  14524. type: object
  14525. type: object
  14526. served: true
  14527. storage: true
  14528. subresources:
  14529. status: {}
  14530. ---
  14531. apiVersion: apiextensions.k8s.io/v1
  14532. kind: CustomResourceDefinition
  14533. metadata:
  14534. annotations:
  14535. controller-gen.kubebuilder.io/version: v0.19.0
  14536. labels:
  14537. external-secrets.io/component: controller
  14538. name: secretstores.external-secrets.io
  14539. spec:
  14540. group: external-secrets.io
  14541. names:
  14542. categories:
  14543. - external-secrets
  14544. kind: SecretStore
  14545. listKind: SecretStoreList
  14546. plural: secretstores
  14547. shortNames:
  14548. - ss
  14549. singular: secretstore
  14550. scope: Namespaced
  14551. versions:
  14552. - additionalPrinterColumns:
  14553. - jsonPath: .metadata.creationTimestamp
  14554. name: AGE
  14555. type: date
  14556. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14557. name: Status
  14558. type: string
  14559. - jsonPath: .status.capabilities
  14560. name: Capabilities
  14561. type: string
  14562. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14563. name: Ready
  14564. type: string
  14565. name: v1
  14566. schema:
  14567. openAPIV3Schema:
  14568. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  14569. properties:
  14570. apiVersion:
  14571. description: |-
  14572. APIVersion defines the versioned schema of this representation of an object.
  14573. Servers should convert recognized schemas to the latest internal value, and
  14574. may reject unrecognized values.
  14575. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14576. type: string
  14577. kind:
  14578. description: |-
  14579. Kind is a string value representing the REST resource this object represents.
  14580. Servers may infer this from the endpoint the client submits requests to.
  14581. Cannot be updated.
  14582. In CamelCase.
  14583. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14584. type: string
  14585. metadata:
  14586. type: object
  14587. spec:
  14588. description: SecretStoreSpec defines the desired state of SecretStore.
  14589. properties:
  14590. conditions:
  14591. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  14592. items:
  14593. description: |-
  14594. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  14595. for a ClusterSecretStore instance.
  14596. properties:
  14597. namespaceRegexes:
  14598. description: Choose namespaces by using regex matching
  14599. items:
  14600. type: string
  14601. type: array
  14602. namespaceSelector:
  14603. description: Choose namespace using a labelSelector
  14604. properties:
  14605. matchExpressions:
  14606. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14607. items:
  14608. description: |-
  14609. A label selector requirement is a selector that contains values, a key, and an operator that
  14610. relates the key and values.
  14611. properties:
  14612. key:
  14613. description: key is the label key that the selector applies to.
  14614. type: string
  14615. operator:
  14616. description: |-
  14617. operator represents a key's relationship to a set of values.
  14618. Valid operators are In, NotIn, Exists and DoesNotExist.
  14619. type: string
  14620. values:
  14621. description: |-
  14622. values is an array of string values. If the operator is In or NotIn,
  14623. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14624. the values array must be empty. This array is replaced during a strategic
  14625. merge patch.
  14626. items:
  14627. type: string
  14628. type: array
  14629. x-kubernetes-list-type: atomic
  14630. required:
  14631. - key
  14632. - operator
  14633. type: object
  14634. type: array
  14635. x-kubernetes-list-type: atomic
  14636. matchLabels:
  14637. additionalProperties:
  14638. type: string
  14639. description: |-
  14640. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14641. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14642. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14643. type: object
  14644. type: object
  14645. x-kubernetes-map-type: atomic
  14646. namespaces:
  14647. description: Choose namespaces by name
  14648. items:
  14649. maxLength: 63
  14650. minLength: 1
  14651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14652. type: string
  14653. type: array
  14654. type: object
  14655. type: array
  14656. controller:
  14657. description: |-
  14658. Used to select the correct ESO controller (think: ingress.ingressClassName)
  14659. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  14660. type: string
  14661. provider:
  14662. description: Used to configure the provider. Only one provider may be set
  14663. maxProperties: 1
  14664. minProperties: 1
  14665. properties:
  14666. akeyless:
  14667. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  14668. properties:
  14669. akeylessGWApiURL:
  14670. description: Akeyless GW API Url from which the secrets to be fetched from.
  14671. type: string
  14672. authSecretRef:
  14673. description: Auth configures how the operator authenticates with Akeyless.
  14674. properties:
  14675. kubernetesAuth:
  14676. description: |-
  14677. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  14678. token stored in the named Secret resource.
  14679. properties:
  14680. accessID:
  14681. description: the Akeyless Kubernetes auth-method access-id
  14682. type: string
  14683. k8sConfName:
  14684. description: Kubernetes-auth configuration name in Akeyless-Gateway
  14685. type: string
  14686. secretRef:
  14687. description: |-
  14688. Optional secret field containing a Kubernetes ServiceAccount JWT used
  14689. for authenticating with Akeyless. If a name is specified without a key,
  14690. `token` is the default. If one is not specified, the one bound to
  14691. the controller will be used.
  14692. properties:
  14693. key:
  14694. description: |-
  14695. A key in the referenced Secret.
  14696. Some instances of this field may be defaulted, in others it may be required.
  14697. maxLength: 253
  14698. minLength: 1
  14699. pattern: ^[-._a-zA-Z0-9]+$
  14700. type: string
  14701. name:
  14702. description: The name of the Secret resource being referred to.
  14703. maxLength: 253
  14704. minLength: 1
  14705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14706. type: string
  14707. namespace:
  14708. description: |-
  14709. The namespace of the Secret resource being referred to.
  14710. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14711. maxLength: 63
  14712. minLength: 1
  14713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14714. type: string
  14715. type: object
  14716. serviceAccountRef:
  14717. description: |-
  14718. Optional service account field containing the name of a kubernetes ServiceAccount.
  14719. If the service account is specified, the service account secret token JWT will be used
  14720. for authenticating with Akeyless. If the service account selector is not supplied,
  14721. the secretRef will be used instead.
  14722. properties:
  14723. audiences:
  14724. description: |-
  14725. Audience specifies the `aud` claim for the service account token
  14726. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14727. then this audiences will be appended to the list
  14728. items:
  14729. type: string
  14730. type: array
  14731. name:
  14732. description: The name of the ServiceAccount resource being referred to.
  14733. maxLength: 253
  14734. minLength: 1
  14735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14736. type: string
  14737. namespace:
  14738. description: |-
  14739. Namespace of the resource being referred to.
  14740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14741. maxLength: 63
  14742. minLength: 1
  14743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14744. type: string
  14745. required:
  14746. - name
  14747. type: object
  14748. required:
  14749. - accessID
  14750. - k8sConfName
  14751. type: object
  14752. secretRef:
  14753. description: |-
  14754. Reference to a Secret that contains the details
  14755. to authenticate with Akeyless.
  14756. properties:
  14757. accessID:
  14758. description: The SecretAccessID is used for authentication
  14759. properties:
  14760. key:
  14761. description: |-
  14762. A key in the referenced Secret.
  14763. Some instances of this field may be defaulted, in others it may be required.
  14764. maxLength: 253
  14765. minLength: 1
  14766. pattern: ^[-._a-zA-Z0-9]+$
  14767. type: string
  14768. name:
  14769. description: The name of the Secret resource being referred to.
  14770. maxLength: 253
  14771. minLength: 1
  14772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14773. type: string
  14774. namespace:
  14775. description: |-
  14776. The namespace of the Secret resource being referred to.
  14777. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14778. maxLength: 63
  14779. minLength: 1
  14780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14781. type: string
  14782. type: object
  14783. accessType:
  14784. description: |-
  14785. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14786. In some instances, `key` is a required field.
  14787. properties:
  14788. key:
  14789. description: |-
  14790. A key in the referenced Secret.
  14791. Some instances of this field may be defaulted, in others it may be required.
  14792. maxLength: 253
  14793. minLength: 1
  14794. pattern: ^[-._a-zA-Z0-9]+$
  14795. type: string
  14796. name:
  14797. description: The name of the Secret resource being referred to.
  14798. maxLength: 253
  14799. minLength: 1
  14800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14801. type: string
  14802. namespace:
  14803. description: |-
  14804. The namespace of the Secret resource being referred to.
  14805. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14806. maxLength: 63
  14807. minLength: 1
  14808. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14809. type: string
  14810. type: object
  14811. accessTypeParam:
  14812. description: |-
  14813. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14814. In some instances, `key` is a required field.
  14815. properties:
  14816. key:
  14817. description: |-
  14818. A key in the referenced Secret.
  14819. Some instances of this field may be defaulted, in others it may be required.
  14820. maxLength: 253
  14821. minLength: 1
  14822. pattern: ^[-._a-zA-Z0-9]+$
  14823. type: string
  14824. name:
  14825. description: The name of the Secret resource being referred to.
  14826. maxLength: 253
  14827. minLength: 1
  14828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14829. type: string
  14830. namespace:
  14831. description: |-
  14832. The namespace of the Secret resource being referred to.
  14833. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14834. maxLength: 63
  14835. minLength: 1
  14836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14837. type: string
  14838. type: object
  14839. type: object
  14840. type: object
  14841. caBundle:
  14842. description: |-
  14843. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  14844. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  14845. are used to validate the TLS connection.
  14846. format: byte
  14847. type: string
  14848. caProvider:
  14849. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  14850. properties:
  14851. key:
  14852. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  14853. maxLength: 253
  14854. minLength: 1
  14855. pattern: ^[-._a-zA-Z0-9]+$
  14856. type: string
  14857. name:
  14858. description: The name of the object located at the provider type.
  14859. maxLength: 253
  14860. minLength: 1
  14861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14862. type: string
  14863. namespace:
  14864. description: |-
  14865. The namespace the Provider type is in.
  14866. Can only be defined when used in a ClusterSecretStore.
  14867. maxLength: 63
  14868. minLength: 1
  14869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14870. type: string
  14871. type:
  14872. description: The type of provider to use such as "Secret", or "ConfigMap".
  14873. enum:
  14874. - Secret
  14875. - ConfigMap
  14876. type: string
  14877. required:
  14878. - name
  14879. - type
  14880. type: object
  14881. required:
  14882. - akeylessGWApiURL
  14883. - authSecretRef
  14884. type: object
  14885. aws:
  14886. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  14887. properties:
  14888. additionalRoles:
  14889. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  14890. items:
  14891. type: string
  14892. type: array
  14893. auth:
  14894. description: |-
  14895. Auth defines the information necessary to authenticate against AWS
  14896. if not set aws sdk will infer credentials from your environment
  14897. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  14898. properties:
  14899. jwt:
  14900. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  14901. properties:
  14902. serviceAccountRef:
  14903. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  14904. properties:
  14905. audiences:
  14906. description: |-
  14907. Audience specifies the `aud` claim for the service account token
  14908. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14909. then this audiences will be appended to the list
  14910. items:
  14911. type: string
  14912. type: array
  14913. name:
  14914. description: The name of the ServiceAccount resource being referred to.
  14915. maxLength: 253
  14916. minLength: 1
  14917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14918. type: string
  14919. namespace:
  14920. description: |-
  14921. Namespace of the resource being referred to.
  14922. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14923. maxLength: 63
  14924. minLength: 1
  14925. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14926. type: string
  14927. required:
  14928. - name
  14929. type: object
  14930. type: object
  14931. secretRef:
  14932. description: |-
  14933. AWSAuthSecretRef holds secret references for AWS credentials
  14934. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  14935. properties:
  14936. accessKeyIDSecretRef:
  14937. description: The AccessKeyID is used for authentication
  14938. properties:
  14939. key:
  14940. description: |-
  14941. A key in the referenced Secret.
  14942. Some instances of this field may be defaulted, in others it may be required.
  14943. maxLength: 253
  14944. minLength: 1
  14945. pattern: ^[-._a-zA-Z0-9]+$
  14946. type: string
  14947. name:
  14948. description: The name of the Secret resource being referred to.
  14949. maxLength: 253
  14950. minLength: 1
  14951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14952. type: string
  14953. namespace:
  14954. description: |-
  14955. The namespace of the Secret resource being referred to.
  14956. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14957. maxLength: 63
  14958. minLength: 1
  14959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14960. type: string
  14961. type: object
  14962. secretAccessKeySecretRef:
  14963. description: The SecretAccessKey is used for authentication
  14964. properties:
  14965. key:
  14966. description: |-
  14967. A key in the referenced Secret.
  14968. Some instances of this field may be defaulted, in others it may be required.
  14969. maxLength: 253
  14970. minLength: 1
  14971. pattern: ^[-._a-zA-Z0-9]+$
  14972. type: string
  14973. name:
  14974. description: The name of the Secret resource being referred to.
  14975. maxLength: 253
  14976. minLength: 1
  14977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14978. type: string
  14979. namespace:
  14980. description: |-
  14981. The namespace of the Secret resource being referred to.
  14982. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14983. maxLength: 63
  14984. minLength: 1
  14985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14986. type: string
  14987. type: object
  14988. sessionTokenSecretRef:
  14989. description: |-
  14990. The SessionToken used for authentication
  14991. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  14992. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  14993. properties:
  14994. key:
  14995. description: |-
  14996. A key in the referenced Secret.
  14997. Some instances of this field may be defaulted, in others it may be required.
  14998. maxLength: 253
  14999. minLength: 1
  15000. pattern: ^[-._a-zA-Z0-9]+$
  15001. type: string
  15002. name:
  15003. description: The name of the Secret resource being referred to.
  15004. maxLength: 253
  15005. minLength: 1
  15006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15007. type: string
  15008. namespace:
  15009. description: |-
  15010. The namespace of the Secret resource being referred to.
  15011. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15012. maxLength: 63
  15013. minLength: 1
  15014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15015. type: string
  15016. type: object
  15017. type: object
  15018. type: object
  15019. customSessionTags:
  15020. additionalProperties:
  15021. type: string
  15022. description: |-
  15023. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  15024. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  15025. type: object
  15026. x-kubernetes-validations:
  15027. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  15028. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  15029. externalID:
  15030. description: AWS External ID set on assumed IAM roles
  15031. type: string
  15032. prefix:
  15033. description: Prefix adds a prefix to all retrieved values.
  15034. type: string
  15035. region:
  15036. description: AWS Region to be used for the provider
  15037. type: string
  15038. role:
  15039. description: Role is a Role ARN which the provider will assume
  15040. type: string
  15041. secretsManager:
  15042. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  15043. properties:
  15044. forceDeleteWithoutRecovery:
  15045. description: |-
  15046. Specifies whether to delete the secret without any recovery window. You
  15047. can't use both this parameter and RecoveryWindowInDays in the same call.
  15048. If you don't use either, then by default Secrets Manager uses a 30 day
  15049. recovery window.
  15050. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  15051. type: boolean
  15052. recoveryWindowInDays:
  15053. description: |-
  15054. The number of days from 7 to 30 that Secrets Manager waits before
  15055. permanently deleting the secret. You can't use both this parameter and
  15056. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  15057. then by default Secrets Manager uses a 30-day recovery window.
  15058. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  15059. format: int64
  15060. type: integer
  15061. type: object
  15062. service:
  15063. description: Service defines which service should be used to fetch the secrets
  15064. enum:
  15065. - SecretsManager
  15066. - ParameterStore
  15067. type: string
  15068. sessionTags:
  15069. description: AWS STS assume role session tags
  15070. items:
  15071. description: |-
  15072. Tag is a key-value pair that can be attached to an AWS resource.
  15073. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  15074. properties:
  15075. key:
  15076. type: string
  15077. value:
  15078. type: string
  15079. required:
  15080. - key
  15081. - value
  15082. type: object
  15083. type: array
  15084. sessionTagsPolicy:
  15085. default: None
  15086. description: |-
  15087. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  15088. None (default): no tags are added.
  15089. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  15090. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  15091. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  15092. enum:
  15093. - None
  15094. - Simple
  15095. - Custom
  15096. type: string
  15097. transitiveTagKeys:
  15098. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  15099. items:
  15100. type: string
  15101. type: array
  15102. required:
  15103. - region
  15104. - service
  15105. type: object
  15106. azurekv:
  15107. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  15108. properties:
  15109. authSecretRef:
  15110. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15111. properties:
  15112. clientCertificate:
  15113. description: The Azure ClientCertificate of the service principle used for authentication.
  15114. properties:
  15115. key:
  15116. description: |-
  15117. A key in the referenced Secret.
  15118. Some instances of this field may be defaulted, in others it may be required.
  15119. maxLength: 253
  15120. minLength: 1
  15121. pattern: ^[-._a-zA-Z0-9]+$
  15122. type: string
  15123. name:
  15124. description: The name of the Secret resource being referred to.
  15125. maxLength: 253
  15126. minLength: 1
  15127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15128. type: string
  15129. namespace:
  15130. description: |-
  15131. The namespace of the Secret resource being referred to.
  15132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15133. maxLength: 63
  15134. minLength: 1
  15135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15136. type: string
  15137. type: object
  15138. clientId:
  15139. description: The Azure clientId of the service principle or managed identity used for authentication.
  15140. properties:
  15141. key:
  15142. description: |-
  15143. A key in the referenced Secret.
  15144. Some instances of this field may be defaulted, in others it may be required.
  15145. maxLength: 253
  15146. minLength: 1
  15147. pattern: ^[-._a-zA-Z0-9]+$
  15148. type: string
  15149. name:
  15150. description: The name of the Secret resource being referred to.
  15151. maxLength: 253
  15152. minLength: 1
  15153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15154. type: string
  15155. namespace:
  15156. description: |-
  15157. The namespace of the Secret resource being referred to.
  15158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15159. maxLength: 63
  15160. minLength: 1
  15161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15162. type: string
  15163. type: object
  15164. clientSecret:
  15165. description: The Azure ClientSecret of the service principle used for authentication.
  15166. properties:
  15167. key:
  15168. description: |-
  15169. A key in the referenced Secret.
  15170. Some instances of this field may be defaulted, in others it may be required.
  15171. maxLength: 253
  15172. minLength: 1
  15173. pattern: ^[-._a-zA-Z0-9]+$
  15174. type: string
  15175. name:
  15176. description: The name of the Secret resource being referred to.
  15177. maxLength: 253
  15178. minLength: 1
  15179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15180. type: string
  15181. namespace:
  15182. description: |-
  15183. The namespace of the Secret resource being referred to.
  15184. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15185. maxLength: 63
  15186. minLength: 1
  15187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15188. type: string
  15189. type: object
  15190. tenantId:
  15191. description: The Azure tenantId of the managed identity used for authentication.
  15192. properties:
  15193. key:
  15194. description: |-
  15195. A key in the referenced Secret.
  15196. Some instances of this field may be defaulted, in others it may be required.
  15197. maxLength: 253
  15198. minLength: 1
  15199. pattern: ^[-._a-zA-Z0-9]+$
  15200. type: string
  15201. name:
  15202. description: The name of the Secret resource being referred to.
  15203. maxLength: 253
  15204. minLength: 1
  15205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15206. type: string
  15207. namespace:
  15208. description: |-
  15209. The namespace of the Secret resource being referred to.
  15210. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15211. maxLength: 63
  15212. minLength: 1
  15213. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15214. type: string
  15215. type: object
  15216. type: object
  15217. authType:
  15218. default: ServicePrincipal
  15219. description: |-
  15220. Auth type defines how to authenticate to the keyvault service.
  15221. Valid values are:
  15222. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15223. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15224. enum:
  15225. - ServicePrincipal
  15226. - ManagedIdentity
  15227. - WorkloadIdentity
  15228. type: string
  15229. customCloudConfig:
  15230. description: |-
  15231. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15232. Required when EnvironmentType is AzureStackCloud.
  15233. Optional for other environment types - useful for Azure China when using Workload Identity
  15234. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15235. standard China Cloud endpoint (login.chinacloudapi.cn).
  15236. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15237. configuration is not supported with the legacy go-autorest SDK.
  15238. properties:
  15239. activeDirectoryEndpoint:
  15240. description: |-
  15241. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15242. Required when using custom cloud configuration
  15243. type: string
  15244. keyVaultDNSSuffix:
  15245. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15246. type: string
  15247. keyVaultEndpoint:
  15248. description: KeyVaultEndpoint is the Key Vault service endpoint
  15249. type: string
  15250. resourceManagerEndpoint:
  15251. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15252. type: string
  15253. required:
  15254. - activeDirectoryEndpoint
  15255. type: object
  15256. environmentType:
  15257. default: PublicCloud
  15258. description: |-
  15259. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15260. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15261. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15262. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15263. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15264. enum:
  15265. - PublicCloud
  15266. - USGovernmentCloud
  15267. - ChinaCloud
  15268. - GermanCloud
  15269. - AzureStackCloud
  15270. type: string
  15271. identityId:
  15272. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15273. type: string
  15274. serviceAccountRef:
  15275. description: |-
  15276. ServiceAccountRef specified the service account
  15277. that should be used when authenticating with WorkloadIdentity.
  15278. properties:
  15279. audiences:
  15280. description: |-
  15281. Audience specifies the `aud` claim for the service account token
  15282. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15283. then this audiences will be appended to the list
  15284. items:
  15285. type: string
  15286. type: array
  15287. name:
  15288. description: The name of the ServiceAccount resource being referred to.
  15289. maxLength: 253
  15290. minLength: 1
  15291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15292. type: string
  15293. namespace:
  15294. description: |-
  15295. Namespace of the resource being referred to.
  15296. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15297. maxLength: 63
  15298. minLength: 1
  15299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15300. type: string
  15301. required:
  15302. - name
  15303. type: object
  15304. tenantId:
  15305. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15306. type: string
  15307. useAzureSDK:
  15308. default: false
  15309. description: |-
  15310. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15311. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15312. type: boolean
  15313. vaultUrl:
  15314. description: Vault Url from which the secrets to be fetched from.
  15315. type: string
  15316. required:
  15317. - vaultUrl
  15318. type: object
  15319. barbican:
  15320. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15321. properties:
  15322. auth:
  15323. description: BarbicanAuth contains the authentication information for Barbican.
  15324. properties:
  15325. password:
  15326. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15327. properties:
  15328. secretRef:
  15329. description: |-
  15330. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15331. In some instances, `key` is a required field.
  15332. properties:
  15333. key:
  15334. description: |-
  15335. A key in the referenced Secret.
  15336. Some instances of this field may be defaulted, in others it may be required.
  15337. maxLength: 253
  15338. minLength: 1
  15339. pattern: ^[-._a-zA-Z0-9]+$
  15340. type: string
  15341. name:
  15342. description: The name of the Secret resource being referred to.
  15343. maxLength: 253
  15344. minLength: 1
  15345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15346. type: string
  15347. namespace:
  15348. description: |-
  15349. The namespace of the Secret resource being referred to.
  15350. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15351. maxLength: 63
  15352. minLength: 1
  15353. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15354. type: string
  15355. type: object
  15356. required:
  15357. - secretRef
  15358. type: object
  15359. username:
  15360. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15361. maxProperties: 1
  15362. minProperties: 1
  15363. properties:
  15364. secretRef:
  15365. description: |-
  15366. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15367. In some instances, `key` is a required field.
  15368. properties:
  15369. key:
  15370. description: |-
  15371. A key in the referenced Secret.
  15372. Some instances of this field may be defaulted, in others it may be required.
  15373. maxLength: 253
  15374. minLength: 1
  15375. pattern: ^[-._a-zA-Z0-9]+$
  15376. type: string
  15377. name:
  15378. description: The name of the Secret resource being referred to.
  15379. maxLength: 253
  15380. minLength: 1
  15381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15382. type: string
  15383. namespace:
  15384. description: |-
  15385. The namespace of the Secret resource being referred to.
  15386. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15387. maxLength: 63
  15388. minLength: 1
  15389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15390. type: string
  15391. type: object
  15392. value:
  15393. type: string
  15394. type: object
  15395. required:
  15396. - password
  15397. - username
  15398. type: object
  15399. authURL:
  15400. type: string
  15401. domainName:
  15402. type: string
  15403. region:
  15404. type: string
  15405. tenantName:
  15406. type: string
  15407. required:
  15408. - auth
  15409. type: object
  15410. beyondtrust:
  15411. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15412. properties:
  15413. auth:
  15414. description: Auth configures how the operator authenticates with Beyondtrust.
  15415. properties:
  15416. apiKey:
  15417. description: APIKey If not provided then ClientID/ClientSecret become required.
  15418. properties:
  15419. secretRef:
  15420. description: SecretRef references a key in a secret that will be used as value.
  15421. properties:
  15422. key:
  15423. description: |-
  15424. A key in the referenced Secret.
  15425. Some instances of this field may be defaulted, in others it may be required.
  15426. maxLength: 253
  15427. minLength: 1
  15428. pattern: ^[-._a-zA-Z0-9]+$
  15429. type: string
  15430. name:
  15431. description: The name of the Secret resource being referred to.
  15432. maxLength: 253
  15433. minLength: 1
  15434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15435. type: string
  15436. namespace:
  15437. description: |-
  15438. The namespace of the Secret resource being referred to.
  15439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15440. maxLength: 63
  15441. minLength: 1
  15442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15443. type: string
  15444. type: object
  15445. value:
  15446. description: Value can be specified directly to set a value without using a secret.
  15447. type: string
  15448. type: object
  15449. certificate:
  15450. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15451. properties:
  15452. secretRef:
  15453. description: SecretRef references a key in a secret that will be used as value.
  15454. properties:
  15455. key:
  15456. description: |-
  15457. A key in the referenced Secret.
  15458. Some instances of this field may be defaulted, in others it may be required.
  15459. maxLength: 253
  15460. minLength: 1
  15461. pattern: ^[-._a-zA-Z0-9]+$
  15462. type: string
  15463. name:
  15464. description: The name of the Secret resource being referred to.
  15465. maxLength: 253
  15466. minLength: 1
  15467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15468. type: string
  15469. namespace:
  15470. description: |-
  15471. The namespace of the Secret resource being referred to.
  15472. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15473. maxLength: 63
  15474. minLength: 1
  15475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15476. type: string
  15477. type: object
  15478. value:
  15479. description: Value can be specified directly to set a value without using a secret.
  15480. type: string
  15481. type: object
  15482. certificateKey:
  15483. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15484. properties:
  15485. secretRef:
  15486. description: SecretRef references a key in a secret that will be used as value.
  15487. properties:
  15488. key:
  15489. description: |-
  15490. A key in the referenced Secret.
  15491. Some instances of this field may be defaulted, in others it may be required.
  15492. maxLength: 253
  15493. minLength: 1
  15494. pattern: ^[-._a-zA-Z0-9]+$
  15495. type: string
  15496. name:
  15497. description: The name of the Secret resource being referred to.
  15498. maxLength: 253
  15499. minLength: 1
  15500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15501. type: string
  15502. namespace:
  15503. description: |-
  15504. The namespace of the Secret resource being referred to.
  15505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15506. maxLength: 63
  15507. minLength: 1
  15508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15509. type: string
  15510. type: object
  15511. value:
  15512. description: Value can be specified directly to set a value without using a secret.
  15513. type: string
  15514. type: object
  15515. clientId:
  15516. description: ClientID is the API OAuth Client ID.
  15517. properties:
  15518. secretRef:
  15519. description: SecretRef references a key in a secret that will be used as value.
  15520. properties:
  15521. key:
  15522. description: |-
  15523. A key in the referenced Secret.
  15524. Some instances of this field may be defaulted, in others it may be required.
  15525. maxLength: 253
  15526. minLength: 1
  15527. pattern: ^[-._a-zA-Z0-9]+$
  15528. type: string
  15529. name:
  15530. description: The name of the Secret resource being referred to.
  15531. maxLength: 253
  15532. minLength: 1
  15533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15534. type: string
  15535. namespace:
  15536. description: |-
  15537. The namespace of the Secret resource being referred to.
  15538. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15539. maxLength: 63
  15540. minLength: 1
  15541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15542. type: string
  15543. type: object
  15544. value:
  15545. description: Value can be specified directly to set a value without using a secret.
  15546. type: string
  15547. type: object
  15548. clientSecret:
  15549. description: ClientSecret is the API OAuth Client Secret.
  15550. properties:
  15551. secretRef:
  15552. description: SecretRef references a key in a secret that will be used as value.
  15553. properties:
  15554. key:
  15555. description: |-
  15556. A key in the referenced Secret.
  15557. Some instances of this field may be defaulted, in others it may be required.
  15558. maxLength: 253
  15559. minLength: 1
  15560. pattern: ^[-._a-zA-Z0-9]+$
  15561. type: string
  15562. name:
  15563. description: The name of the Secret resource being referred to.
  15564. maxLength: 253
  15565. minLength: 1
  15566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15567. type: string
  15568. namespace:
  15569. description: |-
  15570. The namespace of the Secret resource being referred to.
  15571. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15572. maxLength: 63
  15573. minLength: 1
  15574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15575. type: string
  15576. type: object
  15577. value:
  15578. description: Value can be specified directly to set a value without using a secret.
  15579. type: string
  15580. type: object
  15581. type: object
  15582. server:
  15583. description: Auth configures how API server works.
  15584. properties:
  15585. apiUrl:
  15586. type: string
  15587. apiVersion:
  15588. type: string
  15589. clientTimeOutSeconds:
  15590. 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.
  15591. type: integer
  15592. decrypt:
  15593. default: true
  15594. 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.'
  15595. type: boolean
  15596. retrievalType:
  15597. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  15598. type: string
  15599. separator:
  15600. description: A character that separates the folder names.
  15601. type: string
  15602. verifyCA:
  15603. type: boolean
  15604. required:
  15605. - apiUrl
  15606. - verifyCA
  15607. type: object
  15608. required:
  15609. - auth
  15610. - server
  15611. type: object
  15612. bitwardensecretsmanager:
  15613. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  15614. properties:
  15615. apiURL:
  15616. type: string
  15617. auth:
  15618. description: |-
  15619. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  15620. Make sure that the token being used has permissions on the given secret.
  15621. properties:
  15622. secretRef:
  15623. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  15624. properties:
  15625. credentials:
  15626. description: AccessToken used for the bitwarden instance.
  15627. properties:
  15628. key:
  15629. description: |-
  15630. A key in the referenced Secret.
  15631. Some instances of this field may be defaulted, in others it may be required.
  15632. maxLength: 253
  15633. minLength: 1
  15634. pattern: ^[-._a-zA-Z0-9]+$
  15635. type: string
  15636. name:
  15637. description: The name of the Secret resource being referred to.
  15638. maxLength: 253
  15639. minLength: 1
  15640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15641. type: string
  15642. namespace:
  15643. description: |-
  15644. The namespace of the Secret resource being referred to.
  15645. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15646. maxLength: 63
  15647. minLength: 1
  15648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15649. type: string
  15650. type: object
  15651. required:
  15652. - credentials
  15653. type: object
  15654. required:
  15655. - secretRef
  15656. type: object
  15657. bitwardenServerSDKURL:
  15658. type: string
  15659. caBundle:
  15660. description: |-
  15661. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  15662. can be performed.
  15663. type: string
  15664. caProvider:
  15665. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  15666. properties:
  15667. key:
  15668. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15669. maxLength: 253
  15670. minLength: 1
  15671. pattern: ^[-._a-zA-Z0-9]+$
  15672. type: string
  15673. name:
  15674. description: The name of the object located at the provider type.
  15675. maxLength: 253
  15676. minLength: 1
  15677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15678. type: string
  15679. namespace:
  15680. description: |-
  15681. The namespace the Provider type is in.
  15682. Can only be defined when used in a ClusterSecretStore.
  15683. maxLength: 63
  15684. minLength: 1
  15685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15686. type: string
  15687. type:
  15688. description: The type of provider to use such as "Secret", or "ConfigMap".
  15689. enum:
  15690. - Secret
  15691. - ConfigMap
  15692. type: string
  15693. required:
  15694. - name
  15695. - type
  15696. type: object
  15697. identityURL:
  15698. type: string
  15699. organizationID:
  15700. description: OrganizationID determines which organization this secret store manages.
  15701. type: string
  15702. projectID:
  15703. description: ProjectID determines which project this secret store manages.
  15704. type: string
  15705. required:
  15706. - auth
  15707. - organizationID
  15708. - projectID
  15709. type: object
  15710. chef:
  15711. description: Chef configures this store to sync secrets with chef server
  15712. properties:
  15713. auth:
  15714. description: Auth defines the information necessary to authenticate against chef Server
  15715. properties:
  15716. secretRef:
  15717. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  15718. properties:
  15719. privateKeySecretRef:
  15720. description: SecretKey is the Signing Key in PEM format, used for authentication.
  15721. properties:
  15722. key:
  15723. description: |-
  15724. A key in the referenced Secret.
  15725. Some instances of this field may be defaulted, in others it may be required.
  15726. maxLength: 253
  15727. minLength: 1
  15728. pattern: ^[-._a-zA-Z0-9]+$
  15729. type: string
  15730. name:
  15731. description: The name of the Secret resource being referred to.
  15732. maxLength: 253
  15733. minLength: 1
  15734. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15735. type: string
  15736. namespace:
  15737. description: |-
  15738. The namespace of the Secret resource being referred to.
  15739. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15740. maxLength: 63
  15741. minLength: 1
  15742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15743. type: string
  15744. type: object
  15745. required:
  15746. - privateKeySecretRef
  15747. type: object
  15748. required:
  15749. - secretRef
  15750. type: object
  15751. serverUrl:
  15752. 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 "/"
  15753. type: string
  15754. username:
  15755. description: UserName should be the user ID on the chef server
  15756. type: string
  15757. required:
  15758. - auth
  15759. - serverUrl
  15760. - username
  15761. type: object
  15762. cloudrusm:
  15763. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  15764. properties:
  15765. auth:
  15766. description: CSMAuth contains a secretRef for credentials.
  15767. properties:
  15768. secretRef:
  15769. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  15770. properties:
  15771. accessKeyIDSecretRef:
  15772. description: The AccessKeyID is used for authentication
  15773. properties:
  15774. key:
  15775. description: |-
  15776. A key in the referenced Secret.
  15777. Some instances of this field may be defaulted, in others it may be required.
  15778. maxLength: 253
  15779. minLength: 1
  15780. pattern: ^[-._a-zA-Z0-9]+$
  15781. type: string
  15782. name:
  15783. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  15797. accessKeySecretSecretRef:
  15798. description: The AccessKeySecret is used for authentication
  15799. properties:
  15800. key:
  15801. description: |-
  15802. A key in the referenced Secret.
  15803. Some instances of this field may be defaulted, in others it may be required.
  15804. maxLength: 253
  15805. minLength: 1
  15806. pattern: ^[-._a-zA-Z0-9]+$
  15807. type: string
  15808. name:
  15809. description: The name of the Secret resource being referred to.
  15810. maxLength: 253
  15811. minLength: 1
  15812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15813. type: string
  15814. namespace:
  15815. description: |-
  15816. The namespace of the Secret resource being referred to.
  15817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15818. maxLength: 63
  15819. minLength: 1
  15820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15821. type: string
  15822. type: object
  15823. required:
  15824. - accessKeyIDSecretRef
  15825. - accessKeySecretSecretRef
  15826. type: object
  15827. type: object
  15828. projectID:
  15829. description: ProjectID is the project, which the secrets are stored in.
  15830. type: string
  15831. required:
  15832. - auth
  15833. type: object
  15834. conjur:
  15835. description: Conjur configures this store to sync secrets using conjur provider
  15836. properties:
  15837. auth:
  15838. description: Defines authentication settings for connecting to Conjur.
  15839. properties:
  15840. apikey:
  15841. description: Authenticates with Conjur using an API key.
  15842. properties:
  15843. account:
  15844. description: Account is the Conjur organization account name.
  15845. type: string
  15846. apiKeyRef:
  15847. description: |-
  15848. A reference to a specific 'key' containing the Conjur API key
  15849. within a Secret resource. In some instances, `key` is a required field.
  15850. properties:
  15851. key:
  15852. description: |-
  15853. A key in the referenced Secret.
  15854. Some instances of this field may be defaulted, in others it may be required.
  15855. maxLength: 253
  15856. minLength: 1
  15857. pattern: ^[-._a-zA-Z0-9]+$
  15858. type: string
  15859. name:
  15860. description: The name of the Secret resource being referred to.
  15861. maxLength: 253
  15862. minLength: 1
  15863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15864. type: string
  15865. namespace:
  15866. description: |-
  15867. The namespace of the Secret resource being referred to.
  15868. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15869. maxLength: 63
  15870. minLength: 1
  15871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15872. type: string
  15873. type: object
  15874. userRef:
  15875. description: |-
  15876. A reference to a specific 'key' containing the Conjur username
  15877. within a Secret resource. In some instances, `key` is a required field.
  15878. properties:
  15879. key:
  15880. description: |-
  15881. A key in the referenced Secret.
  15882. Some instances of this field may be defaulted, in others it may be required.
  15883. maxLength: 253
  15884. minLength: 1
  15885. pattern: ^[-._a-zA-Z0-9]+$
  15886. type: string
  15887. name:
  15888. description: The name of the Secret resource being referred to.
  15889. maxLength: 253
  15890. minLength: 1
  15891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15892. type: string
  15893. namespace:
  15894. description: |-
  15895. The namespace of the Secret resource being referred to.
  15896. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15897. maxLength: 63
  15898. minLength: 1
  15899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15900. type: string
  15901. type: object
  15902. required:
  15903. - account
  15904. - apiKeyRef
  15905. - userRef
  15906. type: object
  15907. jwt:
  15908. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  15909. properties:
  15910. account:
  15911. description: Account is the Conjur organization account name.
  15912. type: string
  15913. hostId:
  15914. description: |-
  15915. Optional HostID for JWT authentication. This may be used depending
  15916. on how the Conjur JWT authenticator policy is configured.
  15917. type: string
  15918. secretRef:
  15919. description: |-
  15920. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  15921. authenticate with Conjur using the JWT authentication method.
  15922. properties:
  15923. key:
  15924. description: |-
  15925. A key in the referenced Secret.
  15926. Some instances of this field may be defaulted, in others it may be required.
  15927. maxLength: 253
  15928. minLength: 1
  15929. pattern: ^[-._a-zA-Z0-9]+$
  15930. type: string
  15931. name:
  15932. description: The name of the Secret resource being referred to.
  15933. maxLength: 253
  15934. minLength: 1
  15935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15936. type: string
  15937. namespace:
  15938. description: |-
  15939. The namespace of the Secret resource being referred to.
  15940. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15941. maxLength: 63
  15942. minLength: 1
  15943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15944. type: string
  15945. type: object
  15946. serviceAccountRef:
  15947. description: |-
  15948. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  15949. a token for with the `TokenRequest` API.
  15950. properties:
  15951. audiences:
  15952. description: |-
  15953. Audience specifies the `aud` claim for the service account token
  15954. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15955. then this audiences will be appended to the list
  15956. items:
  15957. type: string
  15958. type: array
  15959. name:
  15960. description: The name of the ServiceAccount resource being referred to.
  15961. maxLength: 253
  15962. minLength: 1
  15963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15964. type: string
  15965. namespace:
  15966. description: |-
  15967. Namespace of the resource being referred to.
  15968. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15969. maxLength: 63
  15970. minLength: 1
  15971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15972. type: string
  15973. required:
  15974. - name
  15975. type: object
  15976. serviceID:
  15977. description: The conjur authn jwt webservice id
  15978. type: string
  15979. required:
  15980. - account
  15981. - serviceID
  15982. type: object
  15983. type: object
  15984. caBundle:
  15985. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  15986. type: string
  15987. caProvider:
  15988. description: |-
  15989. Used to provide custom certificate authority (CA) certificates
  15990. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  15991. that contains a PEM-encoded certificate.
  15992. properties:
  15993. key:
  15994. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15995. maxLength: 253
  15996. minLength: 1
  15997. pattern: ^[-._a-zA-Z0-9]+$
  15998. type: string
  15999. name:
  16000. description: The name of the object located at the provider type.
  16001. maxLength: 253
  16002. minLength: 1
  16003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16004. type: string
  16005. namespace:
  16006. description: |-
  16007. The namespace the Provider type is in.
  16008. Can only be defined when used in a ClusterSecretStore.
  16009. maxLength: 63
  16010. minLength: 1
  16011. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16012. type: string
  16013. type:
  16014. description: The type of provider to use such as "Secret", or "ConfigMap".
  16015. enum:
  16016. - Secret
  16017. - ConfigMap
  16018. type: string
  16019. required:
  16020. - name
  16021. - type
  16022. type: object
  16023. url:
  16024. description: URL is the endpoint of the Conjur instance.
  16025. type: string
  16026. required:
  16027. - auth
  16028. - url
  16029. type: object
  16030. delinea:
  16031. description: |-
  16032. Delinea DevOps Secrets Vault
  16033. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  16034. properties:
  16035. clientId:
  16036. description: ClientID is the non-secret part of the credential.
  16037. properties:
  16038. secretRef:
  16039. description: SecretRef references a key in a secret that will be used as value.
  16040. properties:
  16041. key:
  16042. description: |-
  16043. A key in the referenced Secret.
  16044. Some instances of this field may be defaulted, in others it may be required.
  16045. maxLength: 253
  16046. minLength: 1
  16047. pattern: ^[-._a-zA-Z0-9]+$
  16048. type: string
  16049. name:
  16050. description: The name of the Secret resource being referred to.
  16051. maxLength: 253
  16052. minLength: 1
  16053. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16054. type: string
  16055. namespace:
  16056. description: |-
  16057. The namespace of the Secret resource being referred to.
  16058. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16059. maxLength: 63
  16060. minLength: 1
  16061. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16062. type: string
  16063. type: object
  16064. value:
  16065. description: Value can be specified directly to set a value without using a secret.
  16066. type: string
  16067. type: object
  16068. clientSecret:
  16069. description: ClientSecret is the secret part of the credential.
  16070. properties:
  16071. secretRef:
  16072. description: SecretRef references a key in a secret that will be used as value.
  16073. properties:
  16074. key:
  16075. description: |-
  16076. A key in the referenced Secret.
  16077. Some instances of this field may be defaulted, in others it may be required.
  16078. maxLength: 253
  16079. minLength: 1
  16080. pattern: ^[-._a-zA-Z0-9]+$
  16081. type: string
  16082. name:
  16083. description: The name of the Secret resource being referred to.
  16084. maxLength: 253
  16085. minLength: 1
  16086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16087. type: string
  16088. namespace:
  16089. description: |-
  16090. The namespace of the Secret resource being referred to.
  16091. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16092. maxLength: 63
  16093. minLength: 1
  16094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16095. type: string
  16096. type: object
  16097. value:
  16098. description: Value can be specified directly to set a value without using a secret.
  16099. type: string
  16100. type: object
  16101. tenant:
  16102. description: Tenant is the chosen hostname / site name.
  16103. type: string
  16104. tld:
  16105. description: |-
  16106. TLD is based on the server location that was chosen during provisioning.
  16107. If unset, defaults to "com".
  16108. type: string
  16109. urlTemplate:
  16110. description: |-
  16111. URLTemplate
  16112. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  16113. type: string
  16114. required:
  16115. - clientId
  16116. - clientSecret
  16117. - tenant
  16118. type: object
  16119. doppler:
  16120. description: Doppler configures this store to sync secrets using the Doppler provider
  16121. properties:
  16122. auth:
  16123. description: Auth configures how the Operator authenticates with the Doppler API
  16124. properties:
  16125. oidcConfig:
  16126. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  16127. properties:
  16128. expirationSeconds:
  16129. default: 600
  16130. description: |-
  16131. ExpirationSeconds sets the ServiceAccount token validity duration.
  16132. Defaults to 10 minutes.
  16133. format: int64
  16134. type: integer
  16135. identity:
  16136. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  16137. type: string
  16138. serviceAccountRef:
  16139. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  16140. properties:
  16141. audiences:
  16142. description: |-
  16143. Audience specifies the `aud` claim for the service account token
  16144. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16145. then this audiences will be appended to the list
  16146. items:
  16147. type: string
  16148. type: array
  16149. name:
  16150. description: The name of the ServiceAccount resource being referred to.
  16151. maxLength: 253
  16152. minLength: 1
  16153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16154. type: string
  16155. namespace:
  16156. description: |-
  16157. Namespace of the resource being referred to.
  16158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16159. maxLength: 63
  16160. minLength: 1
  16161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16162. type: string
  16163. required:
  16164. - name
  16165. type: object
  16166. required:
  16167. - identity
  16168. - serviceAccountRef
  16169. type: object
  16170. secretRef:
  16171. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  16172. properties:
  16173. dopplerToken:
  16174. description: |-
  16175. The DopplerToken is used for authentication.
  16176. See https://docs.doppler.com/reference/api#authentication for auth token types.
  16177. The Key attribute defaults to dopplerToken if not specified.
  16178. properties:
  16179. key:
  16180. description: |-
  16181. A key in the referenced Secret.
  16182. Some instances of this field may be defaulted, in others it may be required.
  16183. maxLength: 253
  16184. minLength: 1
  16185. pattern: ^[-._a-zA-Z0-9]+$
  16186. type: string
  16187. name:
  16188. description: The name of the Secret resource being referred to.
  16189. maxLength: 253
  16190. minLength: 1
  16191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16192. type: string
  16193. namespace:
  16194. description: |-
  16195. The namespace of the Secret resource being referred to.
  16196. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16197. maxLength: 63
  16198. minLength: 1
  16199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16200. type: string
  16201. type: object
  16202. required:
  16203. - dopplerToken
  16204. type: object
  16205. type: object
  16206. x-kubernetes-validations:
  16207. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  16208. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  16209. config:
  16210. description: Doppler config (required if not using a Service Token)
  16211. type: string
  16212. format:
  16213. description: Format enables the downloading of secrets as a file (string)
  16214. enum:
  16215. - json
  16216. - dotnet-json
  16217. - env
  16218. - yaml
  16219. - docker
  16220. type: string
  16221. nameTransformer:
  16222. description: Environment variable compatible name transforms that change secret names to a different format
  16223. enum:
  16224. - upper-camel
  16225. - camel
  16226. - lower-snake
  16227. - tf-var
  16228. - dotnet-env
  16229. - lower-kebab
  16230. type: string
  16231. project:
  16232. description: Doppler project (required if not using a Service Token)
  16233. type: string
  16234. required:
  16235. - auth
  16236. type: object
  16237. dvls:
  16238. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16239. properties:
  16240. auth:
  16241. description: Auth defines the authentication method to use.
  16242. properties:
  16243. secretRef:
  16244. description: SecretRef contains the Application ID and Application Secret for authentication.
  16245. properties:
  16246. appId:
  16247. description: AppID is the reference to the secret containing the Application ID.
  16248. properties:
  16249. key:
  16250. description: |-
  16251. A key in the referenced Secret.
  16252. Some instances of this field may be defaulted, in others it may be required.
  16253. maxLength: 253
  16254. minLength: 1
  16255. pattern: ^[-._a-zA-Z0-9]+$
  16256. type: string
  16257. name:
  16258. description: The name of the Secret resource being referred to.
  16259. maxLength: 253
  16260. minLength: 1
  16261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16262. type: string
  16263. namespace:
  16264. description: |-
  16265. The namespace of the Secret resource being referred to.
  16266. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16267. maxLength: 63
  16268. minLength: 1
  16269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16270. type: string
  16271. type: object
  16272. appSecret:
  16273. description: AppSecret is the reference to the secret containing the Application Secret.
  16274. properties:
  16275. key:
  16276. description: |-
  16277. A key in the referenced Secret.
  16278. Some instances of this field may be defaulted, in others it may be required.
  16279. maxLength: 253
  16280. minLength: 1
  16281. pattern: ^[-._a-zA-Z0-9]+$
  16282. type: string
  16283. name:
  16284. description: The name of the Secret resource being referred to.
  16285. maxLength: 253
  16286. minLength: 1
  16287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16288. type: string
  16289. namespace:
  16290. description: |-
  16291. The namespace of the Secret resource being referred to.
  16292. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16293. maxLength: 63
  16294. minLength: 1
  16295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16296. type: string
  16297. type: object
  16298. required:
  16299. - appId
  16300. - appSecret
  16301. type: object
  16302. required:
  16303. - secretRef
  16304. type: object
  16305. insecure:
  16306. description: |-
  16307. Insecure allows connecting to DVLS over plain HTTP.
  16308. This is NOT RECOMMENDED for production use.
  16309. Set to true only if you understand the security implications.
  16310. type: boolean
  16311. serverUrl:
  16312. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16313. type: string
  16314. vault:
  16315. description: |-
  16316. Vault is the name or UUID of the vault to fetch secrets from.
  16317. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  16318. type: string
  16319. required:
  16320. - auth
  16321. - serverUrl
  16322. type: object
  16323. fake:
  16324. description: Fake configures a store with static key/value pairs
  16325. properties:
  16326. data:
  16327. items:
  16328. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16329. properties:
  16330. key:
  16331. type: string
  16332. value:
  16333. type: string
  16334. version:
  16335. type: string
  16336. required:
  16337. - key
  16338. - value
  16339. type: object
  16340. type: array
  16341. validationResult:
  16342. description: ValidationResult is defined type for the number of validation results.
  16343. type: integer
  16344. required:
  16345. - data
  16346. type: object
  16347. fortanix:
  16348. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16349. properties:
  16350. apiKey:
  16351. description: APIKey is the API token to access SDKMS Applications.
  16352. properties:
  16353. secretRef:
  16354. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16355. properties:
  16356. key:
  16357. description: |-
  16358. A key in the referenced Secret.
  16359. Some instances of this field may be defaulted, in others it may be required.
  16360. maxLength: 253
  16361. minLength: 1
  16362. pattern: ^[-._a-zA-Z0-9]+$
  16363. type: string
  16364. name:
  16365. description: The name of the Secret resource being referred to.
  16366. maxLength: 253
  16367. minLength: 1
  16368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16369. type: string
  16370. namespace:
  16371. description: |-
  16372. The namespace of the Secret resource being referred to.
  16373. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16374. maxLength: 63
  16375. minLength: 1
  16376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16377. type: string
  16378. type: object
  16379. type: object
  16380. apiUrl:
  16381. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  16382. type: string
  16383. type: object
  16384. gcpsm:
  16385. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  16386. properties:
  16387. auth:
  16388. description: Auth defines the information necessary to authenticate against GCP
  16389. properties:
  16390. secretRef:
  16391. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  16392. properties:
  16393. secretAccessKeySecretRef:
  16394. description: The SecretAccessKey is used for authentication
  16395. properties:
  16396. key:
  16397. description: |-
  16398. A key in the referenced Secret.
  16399. Some instances of this field may be defaulted, in others it may be required.
  16400. maxLength: 253
  16401. minLength: 1
  16402. pattern: ^[-._a-zA-Z0-9]+$
  16403. type: string
  16404. name:
  16405. description: The name of the Secret resource being referred to.
  16406. maxLength: 253
  16407. minLength: 1
  16408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16409. type: string
  16410. namespace:
  16411. description: |-
  16412. The namespace of the Secret resource being referred to.
  16413. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16414. maxLength: 63
  16415. minLength: 1
  16416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16417. type: string
  16418. type: object
  16419. type: object
  16420. workloadIdentity:
  16421. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  16422. properties:
  16423. clusterLocation:
  16424. description: |-
  16425. ClusterLocation is the location of the cluster
  16426. If not specified, it fetches information from the metadata server
  16427. type: string
  16428. clusterName:
  16429. description: |-
  16430. ClusterName is the name of the cluster
  16431. If not specified, it fetches information from the metadata server
  16432. type: string
  16433. clusterProjectID:
  16434. description: |-
  16435. ClusterProjectID is the project ID of the cluster
  16436. If not specified, it fetches information from the metadata server
  16437. type: string
  16438. serviceAccountRef:
  16439. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  16440. properties:
  16441. audiences:
  16442. description: |-
  16443. Audience specifies the `aud` claim for the service account token
  16444. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16445. then this audiences will be appended to the list
  16446. items:
  16447. type: string
  16448. type: array
  16449. name:
  16450. description: The name of the ServiceAccount resource being referred to.
  16451. maxLength: 253
  16452. minLength: 1
  16453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16454. type: string
  16455. namespace:
  16456. description: |-
  16457. Namespace of the resource being referred to.
  16458. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16459. maxLength: 63
  16460. minLength: 1
  16461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16462. type: string
  16463. required:
  16464. - name
  16465. type: object
  16466. required:
  16467. - serviceAccountRef
  16468. type: object
  16469. workloadIdentityFederation:
  16470. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  16471. properties:
  16472. audience:
  16473. description: |-
  16474. 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.
  16475. If specified, Audience found in the external account credential config will be overridden with the configured value.
  16476. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  16477. type: string
  16478. awsSecurityCredentials:
  16479. description: |-
  16480. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  16481. when using the AWS metadata server is not an option.
  16482. properties:
  16483. awsCredentialsSecretRef:
  16484. description: |-
  16485. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  16486. Secret should be created with below names for keys
  16487. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  16488. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  16489. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  16490. properties:
  16491. name:
  16492. description: name of the secret.
  16493. maxLength: 253
  16494. minLength: 1
  16495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16496. type: string
  16497. namespace:
  16498. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  16499. maxLength: 63
  16500. minLength: 1
  16501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16502. type: string
  16503. required:
  16504. - name
  16505. type: object
  16506. region:
  16507. description: region is for configuring the AWS region to be used.
  16508. example: ap-south-1
  16509. maxLength: 50
  16510. minLength: 1
  16511. pattern: ^[a-z0-9-]+$
  16512. type: string
  16513. required:
  16514. - awsCredentialsSecretRef
  16515. - region
  16516. type: object
  16517. credConfig:
  16518. description: |-
  16519. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  16520. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  16521. serviceAccountRef must be used by providing operators service account details.
  16522. properties:
  16523. key:
  16524. description: key name holding the external account credential config.
  16525. maxLength: 253
  16526. minLength: 1
  16527. pattern: ^[-._a-zA-Z0-9]+$
  16528. type: string
  16529. name:
  16530. description: name of the configmap.
  16531. maxLength: 253
  16532. minLength: 1
  16533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16534. type: string
  16535. namespace:
  16536. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  16537. maxLength: 63
  16538. minLength: 1
  16539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16540. type: string
  16541. required:
  16542. - key
  16543. - name
  16544. type: object
  16545. externalTokenEndpoint:
  16546. description: |-
  16547. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  16548. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  16549. URL is having the expected value.
  16550. type: string
  16551. gcpServiceAccountEmail:
  16552. description: |-
  16553. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  16554. after Workload Identity Federation. Use this to grant access through the service account's
  16555. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  16556. service_account_impersonation_url in the external account JSON from credConfig;
  16557. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  16558. on that ServiceAccount.
  16559. example: my-gsa@my-project.iam.gserviceaccount.com
  16560. minLength: 1
  16561. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  16562. type: string
  16563. serviceAccountRef:
  16564. description: |-
  16565. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  16566. when Kubernetes is configured as provider in workload identity pool.
  16567. properties:
  16568. audiences:
  16569. description: |-
  16570. Audience specifies the `aud` claim for the service account token
  16571. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16572. then this audiences will be appended to the list
  16573. items:
  16574. type: string
  16575. type: array
  16576. name:
  16577. description: The name of the ServiceAccount resource being referred to.
  16578. maxLength: 253
  16579. minLength: 1
  16580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16581. type: string
  16582. namespace:
  16583. description: |-
  16584. Namespace of the resource being referred to.
  16585. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16586. maxLength: 63
  16587. minLength: 1
  16588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16589. type: string
  16590. required:
  16591. - name
  16592. type: object
  16593. type: object
  16594. type: object
  16595. location:
  16596. description: Location optionally defines a location for a secret
  16597. type: string
  16598. projectID:
  16599. description: ProjectID project where secret is located
  16600. type: string
  16601. secretVersionSelectionPolicy:
  16602. default: LatestOrFail
  16603. description: |-
  16604. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  16605. when "latest" is disabled or destroyed.
  16606. Possible values are:
  16607. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  16608. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  16609. type: string
  16610. type: object
  16611. github:
  16612. description: |-
  16613. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  16614. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  16615. properties:
  16616. appID:
  16617. description: appID specifies the Github APP that will be used to authenticate the client
  16618. format: int64
  16619. type: integer
  16620. auth:
  16621. description: auth configures how secret-manager authenticates with a Github instance.
  16622. properties:
  16623. privateKey:
  16624. description: |-
  16625. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16626. In some instances, `key` is a required field.
  16627. properties:
  16628. key:
  16629. description: |-
  16630. A key in the referenced Secret.
  16631. Some instances of this field may be defaulted, in others it may be required.
  16632. maxLength: 253
  16633. minLength: 1
  16634. pattern: ^[-._a-zA-Z0-9]+$
  16635. type: string
  16636. name:
  16637. description: The name of the Secret resource being referred to.
  16638. maxLength: 253
  16639. minLength: 1
  16640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16641. type: string
  16642. namespace:
  16643. description: |-
  16644. The namespace of the Secret resource being referred to.
  16645. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16646. maxLength: 63
  16647. minLength: 1
  16648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16649. type: string
  16650. type: object
  16651. required:
  16652. - privateKey
  16653. type: object
  16654. environment:
  16655. description: environment will be used to fetch secrets from a particular environment within a github repository
  16656. type: string
  16657. installationID:
  16658. description: installationID specifies the Github APP installation that will be used to authenticate the client
  16659. format: int64
  16660. type: integer
  16661. orgSecretVisibility:
  16662. description: |-
  16663. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  16664. Valid values are "all" or "private".
  16665. When unset, new secrets are created with visibility "all" and existing secrets preserve
  16666. whatever visibility they already have in GitHub.
  16667. enum:
  16668. - all
  16669. - private
  16670. type: string
  16671. organization:
  16672. description: organization will be used to fetch secrets from the Github organization
  16673. type: string
  16674. repository:
  16675. description: repository will be used to fetch secrets from the Github repository within an organization
  16676. type: string
  16677. uploadURL:
  16678. description: Upload URL for enterprise instances. Default to URL.
  16679. type: string
  16680. url:
  16681. default: https://github.com/
  16682. description: URL configures the Github instance URL. Defaults to https://github.com/.
  16683. type: string
  16684. required:
  16685. - appID
  16686. - auth
  16687. - installationID
  16688. - organization
  16689. type: object
  16690. gitlab:
  16691. description: GitLab configures this store to sync secrets using GitLab Variables provider
  16692. properties:
  16693. auth:
  16694. description: Auth configures how secret-manager authenticates with a GitLab instance.
  16695. properties:
  16696. SecretRef:
  16697. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  16698. properties:
  16699. accessToken:
  16700. description: AccessToken is used for authentication.
  16701. properties:
  16702. key:
  16703. description: |-
  16704. A key in the referenced Secret.
  16705. Some instances of this field may be defaulted, in others it may be required.
  16706. maxLength: 253
  16707. minLength: 1
  16708. pattern: ^[-._a-zA-Z0-9]+$
  16709. type: string
  16710. name:
  16711. description: The name of the Secret resource being referred to.
  16712. maxLength: 253
  16713. minLength: 1
  16714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16715. type: string
  16716. namespace:
  16717. description: |-
  16718. The namespace of the Secret resource being referred to.
  16719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16720. maxLength: 63
  16721. minLength: 1
  16722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16723. type: string
  16724. type: object
  16725. type: object
  16726. required:
  16727. - SecretRef
  16728. type: object
  16729. caBundle:
  16730. description: |-
  16731. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16732. can be performed.
  16733. format: byte
  16734. type: string
  16735. caProvider:
  16736. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16737. properties:
  16738. key:
  16739. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16740. maxLength: 253
  16741. minLength: 1
  16742. pattern: ^[-._a-zA-Z0-9]+$
  16743. type: string
  16744. name:
  16745. description: The name of the object located at the provider type.
  16746. maxLength: 253
  16747. minLength: 1
  16748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16749. type: string
  16750. namespace:
  16751. description: |-
  16752. The namespace the Provider type is in.
  16753. Can only be defined when used in a ClusterSecretStore.
  16754. maxLength: 63
  16755. minLength: 1
  16756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16757. type: string
  16758. type:
  16759. description: The type of provider to use such as "Secret", or "ConfigMap".
  16760. enum:
  16761. - Secret
  16762. - ConfigMap
  16763. type: string
  16764. required:
  16765. - name
  16766. - type
  16767. type: object
  16768. environment:
  16769. 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)
  16770. type: string
  16771. groupIDs:
  16772. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  16773. items:
  16774. type: string
  16775. type: array
  16776. inheritFromGroups:
  16777. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  16778. type: boolean
  16779. projectID:
  16780. description: ProjectID specifies a project where secrets are located.
  16781. type: string
  16782. url:
  16783. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  16784. type: string
  16785. required:
  16786. - auth
  16787. type: object
  16788. ibm:
  16789. description: IBM configures this store to sync secrets using IBM Cloud provider
  16790. properties:
  16791. auth:
  16792. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  16793. maxProperties: 1
  16794. minProperties: 1
  16795. properties:
  16796. containerAuth:
  16797. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  16798. properties:
  16799. iamEndpoint:
  16800. type: string
  16801. profile:
  16802. description: the IBM Trusted Profile
  16803. type: string
  16804. tokenLocation:
  16805. description: Location the token is mounted on the pod
  16806. type: string
  16807. required:
  16808. - profile
  16809. type: object
  16810. secretRef:
  16811. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  16812. properties:
  16813. iamEndpoint:
  16814. description: The IAM endpoint used to obain a token
  16815. type: string
  16816. secretApiKeySecretRef:
  16817. description: The SecretAccessKey is used for authentication
  16818. properties:
  16819. key:
  16820. description: |-
  16821. A key in the referenced Secret.
  16822. Some instances of this field may be defaulted, in others it may be required.
  16823. maxLength: 253
  16824. minLength: 1
  16825. pattern: ^[-._a-zA-Z0-9]+$
  16826. type: string
  16827. name:
  16828. description: The name of the Secret resource being referred to.
  16829. maxLength: 253
  16830. minLength: 1
  16831. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16832. type: string
  16833. namespace:
  16834. description: |-
  16835. The namespace of the Secret resource being referred to.
  16836. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16837. maxLength: 63
  16838. minLength: 1
  16839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16840. type: string
  16841. type: object
  16842. type: object
  16843. type: object
  16844. serviceUrl:
  16845. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  16846. type: string
  16847. required:
  16848. - auth
  16849. type: object
  16850. infisical:
  16851. description: Infisical configures this store to sync secrets using the Infisical provider
  16852. properties:
  16853. auth:
  16854. description: Auth configures how the Operator authenticates with the Infisical API
  16855. properties:
  16856. awsAuthCredentials:
  16857. description: AwsAuthCredentials represents the credentials for AWS authentication.
  16858. properties:
  16859. identityId:
  16860. description: |-
  16861. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16862. In some instances, `key` is a required field.
  16863. properties:
  16864. key:
  16865. description: |-
  16866. A key in the referenced Secret.
  16867. Some instances of this field may be defaulted, in others it may be required.
  16868. maxLength: 253
  16869. minLength: 1
  16870. pattern: ^[-._a-zA-Z0-9]+$
  16871. type: string
  16872. name:
  16873. description: The name of the Secret resource being referred to.
  16874. maxLength: 253
  16875. minLength: 1
  16876. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16877. type: string
  16878. namespace:
  16879. description: |-
  16880. The namespace of the Secret resource being referred to.
  16881. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16882. maxLength: 63
  16883. minLength: 1
  16884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16885. type: string
  16886. type: object
  16887. required:
  16888. - identityId
  16889. type: object
  16890. azureAuthCredentials:
  16891. description: AzureAuthCredentials represents the credentials for Azure authentication.
  16892. properties:
  16893. identityId:
  16894. description: |-
  16895. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16896. In some instances, `key` is a required field.
  16897. properties:
  16898. key:
  16899. description: |-
  16900. A key in the referenced Secret.
  16901. Some instances of this field may be defaulted, in others it may be required.
  16902. maxLength: 253
  16903. minLength: 1
  16904. pattern: ^[-._a-zA-Z0-9]+$
  16905. type: string
  16906. name:
  16907. description: The name of the Secret resource being referred to.
  16908. maxLength: 253
  16909. minLength: 1
  16910. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16911. type: string
  16912. namespace:
  16913. description: |-
  16914. The namespace of the Secret resource being referred to.
  16915. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16916. maxLength: 63
  16917. minLength: 1
  16918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16919. type: string
  16920. type: object
  16921. resource:
  16922. description: |-
  16923. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16924. In some instances, `key` is a required field.
  16925. properties:
  16926. key:
  16927. description: |-
  16928. A key in the referenced Secret.
  16929. Some instances of this field may be defaulted, in others it may be required.
  16930. maxLength: 253
  16931. minLength: 1
  16932. pattern: ^[-._a-zA-Z0-9]+$
  16933. type: string
  16934. name:
  16935. description: The name of the Secret resource being referred to.
  16936. maxLength: 253
  16937. minLength: 1
  16938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16939. type: string
  16940. namespace:
  16941. description: |-
  16942. The namespace of the Secret resource being referred to.
  16943. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16944. maxLength: 63
  16945. minLength: 1
  16946. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16947. type: string
  16948. type: object
  16949. required:
  16950. - identityId
  16951. type: object
  16952. gcpIamAuthCredentials:
  16953. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  16954. properties:
  16955. identityId:
  16956. description: |-
  16957. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16958. In some instances, `key` is a required field.
  16959. properties:
  16960. key:
  16961. description: |-
  16962. A key in the referenced Secret.
  16963. Some instances of this field may be defaulted, in others it may be required.
  16964. maxLength: 253
  16965. minLength: 1
  16966. pattern: ^[-._a-zA-Z0-9]+$
  16967. type: string
  16968. name:
  16969. description: The name of the Secret resource being referred to.
  16970. maxLength: 253
  16971. minLength: 1
  16972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16973. type: string
  16974. namespace:
  16975. description: |-
  16976. The namespace of the Secret resource being referred to.
  16977. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16978. maxLength: 63
  16979. minLength: 1
  16980. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16981. type: string
  16982. type: object
  16983. serviceAccountKeyFilePath:
  16984. description: |-
  16985. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16986. In some instances, `key` is a required field.
  16987. properties:
  16988. key:
  16989. description: |-
  16990. A key in the referenced Secret.
  16991. Some instances of this field may be defaulted, in others it may be required.
  16992. maxLength: 253
  16993. minLength: 1
  16994. pattern: ^[-._a-zA-Z0-9]+$
  16995. type: string
  16996. name:
  16997. description: The name of the Secret resource being referred to.
  16998. maxLength: 253
  16999. minLength: 1
  17000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17001. type: string
  17002. namespace:
  17003. description: |-
  17004. The namespace of the Secret resource being referred to.
  17005. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17006. maxLength: 63
  17007. minLength: 1
  17008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17009. type: string
  17010. type: object
  17011. required:
  17012. - identityId
  17013. - serviceAccountKeyFilePath
  17014. type: object
  17015. gcpIdTokenAuthCredentials:
  17016. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  17017. properties:
  17018. identityId:
  17019. description: |-
  17020. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17021. In some instances, `key` is a required field.
  17022. properties:
  17023. key:
  17024. description: |-
  17025. A key in the referenced Secret.
  17026. Some instances of this field may be defaulted, in others it may be required.
  17027. maxLength: 253
  17028. minLength: 1
  17029. pattern: ^[-._a-zA-Z0-9]+$
  17030. type: string
  17031. name:
  17032. description: The name of the Secret resource being referred to.
  17033. maxLength: 253
  17034. minLength: 1
  17035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17036. type: string
  17037. namespace:
  17038. description: |-
  17039. The namespace of the Secret resource being referred to.
  17040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17041. maxLength: 63
  17042. minLength: 1
  17043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17044. type: string
  17045. type: object
  17046. required:
  17047. - identityId
  17048. type: object
  17049. jwtAuthCredentials:
  17050. description: JwtAuthCredentials represents the credentials for JWT authentication.
  17051. properties:
  17052. identityId:
  17053. description: |-
  17054. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17055. In some instances, `key` is a required field.
  17056. properties:
  17057. key:
  17058. description: |-
  17059. A key in the referenced Secret.
  17060. Some instances of this field may be defaulted, in others it may be required.
  17061. maxLength: 253
  17062. minLength: 1
  17063. pattern: ^[-._a-zA-Z0-9]+$
  17064. type: string
  17065. name:
  17066. description: The name of the Secret resource being referred to.
  17067. maxLength: 253
  17068. minLength: 1
  17069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17070. type: string
  17071. namespace:
  17072. description: |-
  17073. The namespace of the Secret resource being referred to.
  17074. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17075. maxLength: 63
  17076. minLength: 1
  17077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17078. type: string
  17079. type: object
  17080. jwt:
  17081. description: |-
  17082. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17083. In some instances, `key` is a required field.
  17084. properties:
  17085. key:
  17086. description: |-
  17087. A key in the referenced Secret.
  17088. Some instances of this field may be defaulted, in others it may be required.
  17089. maxLength: 253
  17090. minLength: 1
  17091. pattern: ^[-._a-zA-Z0-9]+$
  17092. type: string
  17093. name:
  17094. description: The name of the Secret resource being referred to.
  17095. maxLength: 253
  17096. minLength: 1
  17097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17098. type: string
  17099. namespace:
  17100. description: |-
  17101. The namespace of the Secret resource being referred to.
  17102. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17103. maxLength: 63
  17104. minLength: 1
  17105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17106. type: string
  17107. type: object
  17108. required:
  17109. - identityId
  17110. - jwt
  17111. type: object
  17112. kubernetesAuthCredentials:
  17113. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  17114. properties:
  17115. identityId:
  17116. description: |-
  17117. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17118. In some instances, `key` is a required field.
  17119. properties:
  17120. key:
  17121. description: |-
  17122. A key in the referenced Secret.
  17123. Some instances of this field may be defaulted, in others it may be required.
  17124. maxLength: 253
  17125. minLength: 1
  17126. pattern: ^[-._a-zA-Z0-9]+$
  17127. type: string
  17128. name:
  17129. description: The name of the Secret resource being referred to.
  17130. maxLength: 253
  17131. minLength: 1
  17132. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17133. type: string
  17134. namespace:
  17135. description: |-
  17136. The namespace of the Secret resource being referred to.
  17137. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17138. maxLength: 63
  17139. minLength: 1
  17140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17141. type: string
  17142. type: object
  17143. serviceAccountTokenPath:
  17144. description: |-
  17145. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17146. In some instances, `key` is a required field.
  17147. properties:
  17148. key:
  17149. description: |-
  17150. A key in the referenced Secret.
  17151. Some instances of this field may be defaulted, in others it may be required.
  17152. maxLength: 253
  17153. minLength: 1
  17154. pattern: ^[-._a-zA-Z0-9]+$
  17155. type: string
  17156. name:
  17157. description: The name of the Secret resource being referred to.
  17158. maxLength: 253
  17159. minLength: 1
  17160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17161. type: string
  17162. namespace:
  17163. description: |-
  17164. The namespace of the Secret resource being referred to.
  17165. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17166. maxLength: 63
  17167. minLength: 1
  17168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17169. type: string
  17170. type: object
  17171. required:
  17172. - identityId
  17173. type: object
  17174. ldapAuthCredentials:
  17175. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  17176. properties:
  17177. identityId:
  17178. description: |-
  17179. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17180. In some instances, `key` is a required field.
  17181. properties:
  17182. key:
  17183. description: |-
  17184. A key in the referenced Secret.
  17185. Some instances of this field may be defaulted, in others it may be required.
  17186. maxLength: 253
  17187. minLength: 1
  17188. pattern: ^[-._a-zA-Z0-9]+$
  17189. type: string
  17190. name:
  17191. description: The name of the Secret resource being referred to.
  17192. maxLength: 253
  17193. minLength: 1
  17194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17195. type: string
  17196. namespace:
  17197. description: |-
  17198. The namespace of the Secret resource being referred to.
  17199. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17200. maxLength: 63
  17201. minLength: 1
  17202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17203. type: string
  17204. type: object
  17205. ldapPassword:
  17206. description: |-
  17207. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17208. In some instances, `key` is a required field.
  17209. properties:
  17210. key:
  17211. description: |-
  17212. A key in the referenced Secret.
  17213. Some instances of this field may be defaulted, in others it may be required.
  17214. maxLength: 253
  17215. minLength: 1
  17216. pattern: ^[-._a-zA-Z0-9]+$
  17217. type: string
  17218. name:
  17219. description: The name of the Secret resource being referred to.
  17220. maxLength: 253
  17221. minLength: 1
  17222. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17223. type: string
  17224. namespace:
  17225. description: |-
  17226. The namespace of the Secret resource being referred to.
  17227. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17228. maxLength: 63
  17229. minLength: 1
  17230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17231. type: string
  17232. type: object
  17233. ldapUsername:
  17234. description: |-
  17235. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17236. In some instances, `key` is a required field.
  17237. properties:
  17238. key:
  17239. description: |-
  17240. A key in the referenced Secret.
  17241. Some instances of this field may be defaulted, in others it may be required.
  17242. maxLength: 253
  17243. minLength: 1
  17244. pattern: ^[-._a-zA-Z0-9]+$
  17245. type: string
  17246. name:
  17247. description: The name of the Secret resource being referred to.
  17248. maxLength: 253
  17249. minLength: 1
  17250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17251. type: string
  17252. namespace:
  17253. description: |-
  17254. The namespace of the Secret resource being referred to.
  17255. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17256. maxLength: 63
  17257. minLength: 1
  17258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17259. type: string
  17260. type: object
  17261. required:
  17262. - identityId
  17263. - ldapPassword
  17264. - ldapUsername
  17265. type: object
  17266. ociAuthCredentials:
  17267. description: OciAuthCredentials represents the credentials for OCI authentication.
  17268. properties:
  17269. fingerprint:
  17270. description: |-
  17271. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17272. In some instances, `key` is a required field.
  17273. properties:
  17274. key:
  17275. description: |-
  17276. A key in the referenced Secret.
  17277. Some instances of this field may be defaulted, in others it may be required.
  17278. maxLength: 253
  17279. minLength: 1
  17280. pattern: ^[-._a-zA-Z0-9]+$
  17281. type: string
  17282. name:
  17283. description: The name of the Secret resource being referred to.
  17284. maxLength: 253
  17285. minLength: 1
  17286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17287. type: string
  17288. namespace:
  17289. description: |-
  17290. The namespace of the Secret resource being referred to.
  17291. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17292. maxLength: 63
  17293. minLength: 1
  17294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17295. type: string
  17296. type: object
  17297. identityId:
  17298. description: |-
  17299. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17300. In some instances, `key` is a required field.
  17301. properties:
  17302. key:
  17303. description: |-
  17304. A key in the referenced Secret.
  17305. Some instances of this field may be defaulted, in others it may be required.
  17306. maxLength: 253
  17307. minLength: 1
  17308. pattern: ^[-._a-zA-Z0-9]+$
  17309. type: string
  17310. name:
  17311. description: The name of the Secret resource being referred to.
  17312. maxLength: 253
  17313. minLength: 1
  17314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17315. type: string
  17316. namespace:
  17317. description: |-
  17318. The namespace of the Secret resource being referred to.
  17319. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17320. maxLength: 63
  17321. minLength: 1
  17322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17323. type: string
  17324. type: object
  17325. privateKey:
  17326. description: |-
  17327. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17328. In some instances, `key` is a required field.
  17329. properties:
  17330. key:
  17331. description: |-
  17332. A key in the referenced Secret.
  17333. Some instances of this field may be defaulted, in others it may be required.
  17334. maxLength: 253
  17335. minLength: 1
  17336. pattern: ^[-._a-zA-Z0-9]+$
  17337. type: string
  17338. name:
  17339. description: The name of the Secret resource being referred to.
  17340. maxLength: 253
  17341. minLength: 1
  17342. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17343. type: string
  17344. namespace:
  17345. description: |-
  17346. The namespace of the Secret resource being referred to.
  17347. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17348. maxLength: 63
  17349. minLength: 1
  17350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17351. type: string
  17352. type: object
  17353. privateKeyPassphrase:
  17354. description: |-
  17355. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17356. In some instances, `key` is a required field.
  17357. properties:
  17358. key:
  17359. description: |-
  17360. A key in the referenced Secret.
  17361. Some instances of this field may be defaulted, in others it may be required.
  17362. maxLength: 253
  17363. minLength: 1
  17364. pattern: ^[-._a-zA-Z0-9]+$
  17365. type: string
  17366. name:
  17367. description: The name of the Secret resource being referred to.
  17368. maxLength: 253
  17369. minLength: 1
  17370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17371. type: string
  17372. namespace:
  17373. description: |-
  17374. The namespace of the Secret resource being referred to.
  17375. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17376. maxLength: 63
  17377. minLength: 1
  17378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17379. type: string
  17380. type: object
  17381. region:
  17382. description: |-
  17383. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17384. In some instances, `key` is a required field.
  17385. properties:
  17386. key:
  17387. description: |-
  17388. A key in the referenced Secret.
  17389. Some instances of this field may be defaulted, in others it may be required.
  17390. maxLength: 253
  17391. minLength: 1
  17392. pattern: ^[-._a-zA-Z0-9]+$
  17393. type: string
  17394. name:
  17395. description: The name of the Secret resource being referred to.
  17396. maxLength: 253
  17397. minLength: 1
  17398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17399. type: string
  17400. namespace:
  17401. description: |-
  17402. The namespace of the Secret resource being referred to.
  17403. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17404. maxLength: 63
  17405. minLength: 1
  17406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17407. type: string
  17408. type: object
  17409. tenancyId:
  17410. description: |-
  17411. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17412. In some instances, `key` is a required field.
  17413. properties:
  17414. key:
  17415. description: |-
  17416. A key in the referenced Secret.
  17417. Some instances of this field may be defaulted, in others it may be required.
  17418. maxLength: 253
  17419. minLength: 1
  17420. pattern: ^[-._a-zA-Z0-9]+$
  17421. type: string
  17422. name:
  17423. description: The name of the Secret resource being referred to.
  17424. maxLength: 253
  17425. minLength: 1
  17426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17427. type: string
  17428. namespace:
  17429. description: |-
  17430. The namespace of the Secret resource being referred to.
  17431. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17432. maxLength: 63
  17433. minLength: 1
  17434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17435. type: string
  17436. type: object
  17437. userId:
  17438. description: |-
  17439. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17440. In some instances, `key` is a required field.
  17441. properties:
  17442. key:
  17443. description: |-
  17444. A key in the referenced Secret.
  17445. Some instances of this field may be defaulted, in others it may be required.
  17446. maxLength: 253
  17447. minLength: 1
  17448. pattern: ^[-._a-zA-Z0-9]+$
  17449. type: string
  17450. name:
  17451. description: The name of the Secret resource being referred to.
  17452. maxLength: 253
  17453. minLength: 1
  17454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17455. type: string
  17456. namespace:
  17457. description: |-
  17458. The namespace of the Secret resource being referred to.
  17459. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17460. maxLength: 63
  17461. minLength: 1
  17462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17463. type: string
  17464. type: object
  17465. required:
  17466. - fingerprint
  17467. - identityId
  17468. - privateKey
  17469. - region
  17470. - tenancyId
  17471. - userId
  17472. type: object
  17473. tokenAuthCredentials:
  17474. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  17475. properties:
  17476. accessToken:
  17477. description: |-
  17478. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17479. In some instances, `key` is a required field.
  17480. properties:
  17481. key:
  17482. description: |-
  17483. A key in the referenced Secret.
  17484. Some instances of this field may be defaulted, in others it may be required.
  17485. maxLength: 253
  17486. minLength: 1
  17487. pattern: ^[-._a-zA-Z0-9]+$
  17488. type: string
  17489. name:
  17490. description: The name of the Secret resource being referred to.
  17491. maxLength: 253
  17492. minLength: 1
  17493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17494. type: string
  17495. namespace:
  17496. description: |-
  17497. The namespace of the Secret resource being referred to.
  17498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17499. maxLength: 63
  17500. minLength: 1
  17501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17502. type: string
  17503. type: object
  17504. required:
  17505. - accessToken
  17506. type: object
  17507. universalAuthCredentials:
  17508. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  17509. properties:
  17510. clientId:
  17511. description: |-
  17512. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17513. In some instances, `key` is a required field.
  17514. properties:
  17515. key:
  17516. description: |-
  17517. A key in the referenced Secret.
  17518. Some instances of this field may be defaulted, in others it may be required.
  17519. maxLength: 253
  17520. minLength: 1
  17521. pattern: ^[-._a-zA-Z0-9]+$
  17522. type: string
  17523. name:
  17524. description: The name of the Secret resource being referred to.
  17525. maxLength: 253
  17526. minLength: 1
  17527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17528. type: string
  17529. namespace:
  17530. description: |-
  17531. The namespace of the Secret resource being referred to.
  17532. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17533. maxLength: 63
  17534. minLength: 1
  17535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17536. type: string
  17537. type: object
  17538. clientSecret:
  17539. description: |-
  17540. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17541. In some instances, `key` is a required field.
  17542. properties:
  17543. key:
  17544. description: |-
  17545. A key in the referenced Secret.
  17546. Some instances of this field may be defaulted, in others it may be required.
  17547. maxLength: 253
  17548. minLength: 1
  17549. pattern: ^[-._a-zA-Z0-9]+$
  17550. type: string
  17551. name:
  17552. description: The name of the Secret resource being referred to.
  17553. maxLength: 253
  17554. minLength: 1
  17555. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17556. type: string
  17557. namespace:
  17558. description: |-
  17559. The namespace of the Secret resource being referred to.
  17560. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17561. maxLength: 63
  17562. minLength: 1
  17563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17564. type: string
  17565. type: object
  17566. required:
  17567. - clientId
  17568. - clientSecret
  17569. type: object
  17570. type: object
  17571. caBundle:
  17572. description: |-
  17573. CABundle is a PEM-encoded CA certificate bundle used to validate
  17574. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  17575. format: byte
  17576. type: string
  17577. caProvider:
  17578. description: |-
  17579. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  17580. The certificate is used to validate the Infisical server's TLS certificate.
  17581. Mutually exclusive with CABundle.
  17582. properties:
  17583. key:
  17584. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17585. maxLength: 253
  17586. minLength: 1
  17587. pattern: ^[-._a-zA-Z0-9]+$
  17588. type: string
  17589. name:
  17590. description: The name of the object located at the provider type.
  17591. maxLength: 253
  17592. minLength: 1
  17593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17594. type: string
  17595. namespace:
  17596. description: |-
  17597. The namespace the Provider type is in.
  17598. Can only be defined when used in a ClusterSecretStore.
  17599. maxLength: 63
  17600. minLength: 1
  17601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17602. type: string
  17603. type:
  17604. description: The type of provider to use such as "Secret", or "ConfigMap".
  17605. enum:
  17606. - Secret
  17607. - ConfigMap
  17608. type: string
  17609. required:
  17610. - name
  17611. - type
  17612. type: object
  17613. hostAPI:
  17614. default: https://app.infisical.com/api
  17615. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  17616. type: string
  17617. secretsScope:
  17618. description: SecretsScope defines the scope of the secrets within the workspace
  17619. properties:
  17620. environmentSlug:
  17621. description: EnvironmentSlug is the required slug identifier for the environment.
  17622. type: string
  17623. expandSecretReferences:
  17624. default: true
  17625. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  17626. type: boolean
  17627. projectSlug:
  17628. description: ProjectSlug is the required slug identifier for the project.
  17629. type: string
  17630. recursive:
  17631. default: false
  17632. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  17633. type: boolean
  17634. secretsPath:
  17635. default: /
  17636. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  17637. type: string
  17638. required:
  17639. - environmentSlug
  17640. - projectSlug
  17641. type: object
  17642. required:
  17643. - auth
  17644. - secretsScope
  17645. type: object
  17646. keepersecurity:
  17647. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  17648. properties:
  17649. authRef:
  17650. description: |-
  17651. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17652. In some instances, `key` is a required field.
  17653. properties:
  17654. key:
  17655. description: |-
  17656. A key in the referenced Secret.
  17657. Some instances of this field may be defaulted, in others it may be required.
  17658. maxLength: 253
  17659. minLength: 1
  17660. pattern: ^[-._a-zA-Z0-9]+$
  17661. type: string
  17662. name:
  17663. description: The name of the Secret resource being referred to.
  17664. maxLength: 253
  17665. minLength: 1
  17666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17667. type: string
  17668. namespace:
  17669. description: |-
  17670. The namespace of the Secret resource being referred to.
  17671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17672. maxLength: 63
  17673. minLength: 1
  17674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17675. type: string
  17676. type: object
  17677. folderID:
  17678. type: string
  17679. getByTitleFallback:
  17680. type: boolean
  17681. required:
  17682. - authRef
  17683. - folderID
  17684. type: object
  17685. kubernetes:
  17686. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  17687. properties:
  17688. auth:
  17689. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  17690. maxProperties: 1
  17691. minProperties: 1
  17692. properties:
  17693. cert:
  17694. description: has both clientCert and clientKey as secretKeySelector
  17695. properties:
  17696. clientCert:
  17697. description: |-
  17698. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17699. In some instances, `key` is a required field.
  17700. properties:
  17701. key:
  17702. description: |-
  17703. A key in the referenced Secret.
  17704. Some instances of this field may be defaulted, in others it may be required.
  17705. maxLength: 253
  17706. minLength: 1
  17707. pattern: ^[-._a-zA-Z0-9]+$
  17708. type: string
  17709. name:
  17710. description: The name of the Secret resource being referred to.
  17711. maxLength: 253
  17712. minLength: 1
  17713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17714. type: string
  17715. namespace:
  17716. description: |-
  17717. The namespace of the Secret resource being referred to.
  17718. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17719. maxLength: 63
  17720. minLength: 1
  17721. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17722. type: string
  17723. type: object
  17724. clientKey:
  17725. description: |-
  17726. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17727. In some instances, `key` is a required field.
  17728. properties:
  17729. key:
  17730. description: |-
  17731. A key in the referenced Secret.
  17732. Some instances of this field may be defaulted, in others it may be required.
  17733. maxLength: 253
  17734. minLength: 1
  17735. pattern: ^[-._a-zA-Z0-9]+$
  17736. type: string
  17737. name:
  17738. description: The name of the Secret resource being referred to.
  17739. maxLength: 253
  17740. minLength: 1
  17741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17742. type: string
  17743. namespace:
  17744. description: |-
  17745. The namespace of the Secret resource being referred to.
  17746. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17747. maxLength: 63
  17748. minLength: 1
  17749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17750. type: string
  17751. type: object
  17752. type: object
  17753. serviceAccount:
  17754. description: points to a service account that should be used for authentication
  17755. properties:
  17756. audiences:
  17757. description: |-
  17758. Audience specifies the `aud` claim for the service account token
  17759. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17760. then this audiences will be appended to the list
  17761. items:
  17762. type: string
  17763. type: array
  17764. name:
  17765. description: The name of the ServiceAccount resource being referred to.
  17766. maxLength: 253
  17767. minLength: 1
  17768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17769. type: string
  17770. namespace:
  17771. description: |-
  17772. Namespace of the resource being referred to.
  17773. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17774. maxLength: 63
  17775. minLength: 1
  17776. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17777. type: string
  17778. required:
  17779. - name
  17780. type: object
  17781. token:
  17782. description: use static token to authenticate with
  17783. properties:
  17784. bearerToken:
  17785. description: |-
  17786. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17787. In some instances, `key` is a required field.
  17788. properties:
  17789. key:
  17790. description: |-
  17791. A key in the referenced Secret.
  17792. Some instances of this field may be defaulted, in others it may be required.
  17793. maxLength: 253
  17794. minLength: 1
  17795. pattern: ^[-._a-zA-Z0-9]+$
  17796. type: string
  17797. name:
  17798. description: The name of the Secret resource being referred to.
  17799. maxLength: 253
  17800. minLength: 1
  17801. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17802. type: string
  17803. namespace:
  17804. description: |-
  17805. The namespace of the Secret resource being referred to.
  17806. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17807. maxLength: 63
  17808. minLength: 1
  17809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17810. type: string
  17811. type: object
  17812. type: object
  17813. type: object
  17814. authRef:
  17815. description: A reference to a secret that contains the auth information.
  17816. properties:
  17817. key:
  17818. description: |-
  17819. A key in the referenced Secret.
  17820. Some instances of this field may be defaulted, in others it may be required.
  17821. maxLength: 253
  17822. minLength: 1
  17823. pattern: ^[-._a-zA-Z0-9]+$
  17824. type: string
  17825. name:
  17826. description: The name of the Secret resource being referred to.
  17827. maxLength: 253
  17828. minLength: 1
  17829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17830. type: string
  17831. namespace:
  17832. description: |-
  17833. The namespace of the Secret resource being referred to.
  17834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17835. maxLength: 63
  17836. minLength: 1
  17837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17838. type: string
  17839. type: object
  17840. remoteNamespace:
  17841. default: default
  17842. description: Remote namespace to fetch the secrets from
  17843. maxLength: 63
  17844. minLength: 1
  17845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17846. type: string
  17847. server:
  17848. description: configures the Kubernetes server Address.
  17849. properties:
  17850. caBundle:
  17851. description: CABundle is a base64-encoded CA certificate
  17852. format: byte
  17853. type: string
  17854. caProvider:
  17855. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  17856. properties:
  17857. key:
  17858. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17859. maxLength: 253
  17860. minLength: 1
  17861. pattern: ^[-._a-zA-Z0-9]+$
  17862. type: string
  17863. name:
  17864. description: The name of the object located at the provider type.
  17865. maxLength: 253
  17866. minLength: 1
  17867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17868. type: string
  17869. namespace:
  17870. description: |-
  17871. The namespace the Provider type is in.
  17872. Can only be defined when used in a ClusterSecretStore.
  17873. maxLength: 63
  17874. minLength: 1
  17875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17876. type: string
  17877. type:
  17878. description: The type of provider to use such as "Secret", or "ConfigMap".
  17879. enum:
  17880. - Secret
  17881. - ConfigMap
  17882. type: string
  17883. required:
  17884. - name
  17885. - type
  17886. type: object
  17887. url:
  17888. default: kubernetes.default
  17889. description: configures the Kubernetes server Address.
  17890. type: string
  17891. type: object
  17892. type: object
  17893. nebiusmysterybox:
  17894. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  17895. properties:
  17896. apiDomain:
  17897. description: NebiusMysterybox API endpoint
  17898. type: string
  17899. auth:
  17900. description: Auth defines parameters to authenticate in MysteryBox
  17901. properties:
  17902. serviceAccountCredsSecretRef:
  17903. description: |-
  17904. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  17905. document with service account credentials used to get an IAM token.
  17906. Expected JSON structure:
  17907. {
  17908. "subject-credentials": {
  17909. "alg": "RS256",
  17910. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  17911. "kid": "<public-key-id>",
  17912. "iss": "<issuer-service-account-id>",
  17913. "sub": "<subject-service-account-id>"
  17914. }
  17915. }
  17916. properties:
  17917. key:
  17918. description: |-
  17919. A key in the referenced Secret.
  17920. Some instances of this field may be defaulted, in others it may be required.
  17921. maxLength: 253
  17922. minLength: 1
  17923. pattern: ^[-._a-zA-Z0-9]+$
  17924. type: string
  17925. name:
  17926. description: The name of the Secret resource being referred to.
  17927. maxLength: 253
  17928. minLength: 1
  17929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17930. type: string
  17931. namespace:
  17932. description: |-
  17933. The namespace of the Secret resource being referred to.
  17934. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17935. maxLength: 63
  17936. minLength: 1
  17937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17938. type: string
  17939. type: object
  17940. tokenSecretRef:
  17941. description: Token authenticates with Nebius Mysterybox by presenting a token.
  17942. properties:
  17943. key:
  17944. description: |-
  17945. A key in the referenced Secret.
  17946. Some instances of this field may be defaulted, in others it may be required.
  17947. maxLength: 253
  17948. minLength: 1
  17949. pattern: ^[-._a-zA-Z0-9]+$
  17950. type: string
  17951. name:
  17952. description: The name of the Secret resource being referred to.
  17953. maxLength: 253
  17954. minLength: 1
  17955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17956. type: string
  17957. namespace:
  17958. description: |-
  17959. The namespace of the Secret resource being referred to.
  17960. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17961. maxLength: 63
  17962. minLength: 1
  17963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17964. type: string
  17965. type: object
  17966. type: object
  17967. x-kubernetes-validations:
  17968. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  17969. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  17970. caProvider:
  17971. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  17972. properties:
  17973. certSecretRef:
  17974. description: |-
  17975. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17976. In some instances, `key` is a required field.
  17977. properties:
  17978. key:
  17979. description: |-
  17980. A key in the referenced Secret.
  17981. Some instances of this field may be defaulted, in others it may be required.
  17982. maxLength: 253
  17983. minLength: 1
  17984. pattern: ^[-._a-zA-Z0-9]+$
  17985. type: string
  17986. name:
  17987. description: The name of the Secret resource being referred to.
  17988. maxLength: 253
  17989. minLength: 1
  17990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17991. type: string
  17992. namespace:
  17993. description: |-
  17994. The namespace of the Secret resource being referred to.
  17995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17996. maxLength: 63
  17997. minLength: 1
  17998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17999. type: string
  18000. type: object
  18001. type: object
  18002. required:
  18003. - apiDomain
  18004. - auth
  18005. type: object
  18006. ngrok:
  18007. description: Ngrok configures this store to sync secrets using the ngrok provider.
  18008. properties:
  18009. apiUrl:
  18010. default: https://api.ngrok.com
  18011. description: APIURL is the URL of the ngrok API.
  18012. type: string
  18013. auth:
  18014. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  18015. maxProperties: 1
  18016. minProperties: 1
  18017. properties:
  18018. apiKey:
  18019. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  18020. properties:
  18021. secretRef:
  18022. description: SecretRef is a reference to a secret containing the ngrok API key.
  18023. properties:
  18024. key:
  18025. description: |-
  18026. A key in the referenced Secret.
  18027. Some instances of this field may be defaulted, in others it may be required.
  18028. maxLength: 253
  18029. minLength: 1
  18030. pattern: ^[-._a-zA-Z0-9]+$
  18031. type: string
  18032. name:
  18033. description: The name of the Secret resource being referred to.
  18034. maxLength: 253
  18035. minLength: 1
  18036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18037. type: string
  18038. namespace:
  18039. description: |-
  18040. The namespace of the Secret resource being referred to.
  18041. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18042. maxLength: 63
  18043. minLength: 1
  18044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18045. type: string
  18046. type: object
  18047. type: object
  18048. type: object
  18049. vault:
  18050. description: Vault configures the ngrok vault to sync secrets with.
  18051. properties:
  18052. name:
  18053. description: Name is the name of the ngrok vault to sync secrets with.
  18054. type: string
  18055. required:
  18056. - name
  18057. type: object
  18058. required:
  18059. - auth
  18060. - vault
  18061. type: object
  18062. onboardbase:
  18063. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  18064. properties:
  18065. apiHost:
  18066. default: https://public.onboardbase.com/api/v1/
  18067. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  18068. type: string
  18069. auth:
  18070. description: Auth configures how the Operator authenticates with the Onboardbase API
  18071. properties:
  18072. apiKeyRef:
  18073. description: |-
  18074. OnboardbaseAPIKey is the APIKey generated by an admin account.
  18075. It is used to recognize and authorize access to a project and environment within onboardbase
  18076. properties:
  18077. key:
  18078. description: |-
  18079. A key in the referenced Secret.
  18080. Some instances of this field may be defaulted, in others it may be required.
  18081. maxLength: 253
  18082. minLength: 1
  18083. pattern: ^[-._a-zA-Z0-9]+$
  18084. type: string
  18085. name:
  18086. description: The name of the Secret resource being referred to.
  18087. maxLength: 253
  18088. minLength: 1
  18089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18090. type: string
  18091. namespace:
  18092. description: |-
  18093. The namespace of the Secret resource being referred to.
  18094. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18095. maxLength: 63
  18096. minLength: 1
  18097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18098. type: string
  18099. type: object
  18100. passcodeRef:
  18101. description: OnboardbasePasscode is the passcode attached to the API Key
  18102. properties:
  18103. key:
  18104. description: |-
  18105. A key in the referenced Secret.
  18106. Some instances of this field may be defaulted, in others it may be required.
  18107. maxLength: 253
  18108. minLength: 1
  18109. pattern: ^[-._a-zA-Z0-9]+$
  18110. type: string
  18111. name:
  18112. description: The name of the Secret resource being referred to.
  18113. maxLength: 253
  18114. minLength: 1
  18115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18116. type: string
  18117. namespace:
  18118. description: |-
  18119. The namespace of the Secret resource being referred to.
  18120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18121. maxLength: 63
  18122. minLength: 1
  18123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18124. type: string
  18125. type: object
  18126. required:
  18127. - apiKeyRef
  18128. - passcodeRef
  18129. type: object
  18130. environment:
  18131. default: development
  18132. description: Environment is the name of an environmnent within a project to pull the secrets from
  18133. type: string
  18134. project:
  18135. default: development
  18136. description: Project is an onboardbase project that the secrets should be pulled from
  18137. type: string
  18138. required:
  18139. - apiHost
  18140. - auth
  18141. - environment
  18142. - project
  18143. type: object
  18144. onepassword:
  18145. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  18146. properties:
  18147. auth:
  18148. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  18149. properties:
  18150. secretRef:
  18151. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  18152. properties:
  18153. connectTokenSecretRef:
  18154. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  18155. properties:
  18156. key:
  18157. description: |-
  18158. A key in the referenced Secret.
  18159. Some instances of this field may be defaulted, in others it may be required.
  18160. maxLength: 253
  18161. minLength: 1
  18162. pattern: ^[-._a-zA-Z0-9]+$
  18163. type: string
  18164. name:
  18165. description: The name of the Secret resource being referred to.
  18166. maxLength: 253
  18167. minLength: 1
  18168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18169. type: string
  18170. namespace:
  18171. description: |-
  18172. The namespace of the Secret resource being referred to.
  18173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18174. maxLength: 63
  18175. minLength: 1
  18176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18177. type: string
  18178. type: object
  18179. required:
  18180. - connectTokenSecretRef
  18181. type: object
  18182. required:
  18183. - secretRef
  18184. type: object
  18185. connectHost:
  18186. description: ConnectHost defines the OnePassword Connect Server to connect to
  18187. type: string
  18188. vaults:
  18189. additionalProperties:
  18190. type: integer
  18191. description: Vaults defines which OnePassword vaults to search in which order
  18192. type: object
  18193. required:
  18194. - auth
  18195. - connectHost
  18196. - vaults
  18197. type: object
  18198. onepasswordSDK:
  18199. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  18200. properties:
  18201. auth:
  18202. description: Auth defines the information necessary to authenticate against OnePassword API.
  18203. properties:
  18204. serviceAccountSecretRef:
  18205. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  18206. properties:
  18207. key:
  18208. description: |-
  18209. A key in the referenced Secret.
  18210. Some instances of this field may be defaulted, in others it may be required.
  18211. maxLength: 253
  18212. minLength: 1
  18213. pattern: ^[-._a-zA-Z0-9]+$
  18214. type: string
  18215. name:
  18216. description: The name of the Secret resource being referred to.
  18217. maxLength: 253
  18218. minLength: 1
  18219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18220. type: string
  18221. namespace:
  18222. description: |-
  18223. The namespace of the Secret resource being referred to.
  18224. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18225. maxLength: 63
  18226. minLength: 1
  18227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18228. type: string
  18229. type: object
  18230. required:
  18231. - serviceAccountSecretRef
  18232. type: object
  18233. cache:
  18234. description: |-
  18235. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  18236. When enabled, secrets are cached with the specified TTL.
  18237. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  18238. If omitted, caching is disabled (default).
  18239. cache: {} is a valid option to set.
  18240. properties:
  18241. maxSize:
  18242. default: 100
  18243. description: |-
  18244. MaxSize is the maximum number of secrets to cache.
  18245. When the cache is full, least-recently-used entries are evicted.
  18246. minimum: 1
  18247. type: integer
  18248. ttl:
  18249. default: 5m
  18250. description: |-
  18251. TTL is the time-to-live for cached secrets.
  18252. Format: duration string (e.g., "5m", "1h", "30s")
  18253. type: string
  18254. type: object
  18255. integrationInfo:
  18256. description: |-
  18257. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18258. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18259. properties:
  18260. name:
  18261. default: 1Password SDK
  18262. description: Name defaults to "1Password SDK".
  18263. type: string
  18264. version:
  18265. default: v1.0.0
  18266. description: Version defaults to "v1.0.0".
  18267. type: string
  18268. type: object
  18269. vault:
  18270. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18271. type: string
  18272. required:
  18273. - auth
  18274. - vault
  18275. type: object
  18276. oracle:
  18277. description: Oracle configures this store to sync secrets using Oracle Vault provider
  18278. properties:
  18279. auth:
  18280. description: |-
  18281. Auth configures how secret-manager authenticates with the Oracle Vault.
  18282. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  18283. properties:
  18284. secretRef:
  18285. description: SecretRef to pass through sensitive information.
  18286. properties:
  18287. fingerprint:
  18288. description: Fingerprint is the fingerprint of the API private key.
  18289. properties:
  18290. key:
  18291. description: |-
  18292. A key in the referenced Secret.
  18293. Some instances of this field may be defaulted, in others it may be required.
  18294. maxLength: 253
  18295. minLength: 1
  18296. pattern: ^[-._a-zA-Z0-9]+$
  18297. type: string
  18298. name:
  18299. description: The name of the Secret resource being referred to.
  18300. maxLength: 253
  18301. minLength: 1
  18302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18303. type: string
  18304. namespace:
  18305. description: |-
  18306. The namespace of the Secret resource being referred to.
  18307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18308. maxLength: 63
  18309. minLength: 1
  18310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18311. type: string
  18312. type: object
  18313. privatekey:
  18314. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  18315. properties:
  18316. key:
  18317. description: |-
  18318. A key in the referenced Secret.
  18319. Some instances of this field may be defaulted, in others it may be required.
  18320. maxLength: 253
  18321. minLength: 1
  18322. pattern: ^[-._a-zA-Z0-9]+$
  18323. type: string
  18324. name:
  18325. description: The name of the Secret resource being referred to.
  18326. maxLength: 253
  18327. minLength: 1
  18328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18329. type: string
  18330. namespace:
  18331. description: |-
  18332. The namespace of the Secret resource being referred to.
  18333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18334. maxLength: 63
  18335. minLength: 1
  18336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18337. type: string
  18338. type: object
  18339. required:
  18340. - fingerprint
  18341. - privatekey
  18342. type: object
  18343. tenancy:
  18344. description: Tenancy is the tenancy OCID where user is located.
  18345. type: string
  18346. user:
  18347. description: User is an access OCID specific to the account.
  18348. type: string
  18349. required:
  18350. - secretRef
  18351. - tenancy
  18352. - user
  18353. type: object
  18354. compartment:
  18355. description: |-
  18356. Compartment is the vault compartment OCID.
  18357. Required for PushSecret
  18358. type: string
  18359. encryptionKey:
  18360. description: |-
  18361. EncryptionKey is the OCID of the encryption key within the vault.
  18362. Required for PushSecret
  18363. type: string
  18364. principalType:
  18365. description: |-
  18366. The type of principal to use for authentication. If left blank, the Auth struct will
  18367. determine the principal type. This optional field must be specified if using
  18368. workload identity.
  18369. enum:
  18370. - ""
  18371. - UserPrincipal
  18372. - InstancePrincipal
  18373. - Workload
  18374. type: string
  18375. region:
  18376. description: Region is the region where vault is located.
  18377. type: string
  18378. serviceAccountRef:
  18379. description: |-
  18380. ServiceAccountRef specified the service account
  18381. that should be used when authenticating with WorkloadIdentity.
  18382. properties:
  18383. audiences:
  18384. description: |-
  18385. Audience specifies the `aud` claim for the service account token
  18386. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18387. then this audiences will be appended to the list
  18388. items:
  18389. type: string
  18390. type: array
  18391. name:
  18392. description: The name of the ServiceAccount resource being referred to.
  18393. maxLength: 253
  18394. minLength: 1
  18395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18396. type: string
  18397. namespace:
  18398. description: |-
  18399. Namespace of the resource being referred to.
  18400. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18401. maxLength: 63
  18402. minLength: 1
  18403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18404. type: string
  18405. required:
  18406. - name
  18407. type: object
  18408. vault:
  18409. description: Vault is the vault's OCID of the specific vault where secret is located.
  18410. type: string
  18411. required:
  18412. - region
  18413. - vault
  18414. type: object
  18415. ovh:
  18416. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  18417. properties:
  18418. auth:
  18419. description: Authentication method (mtls or token).
  18420. properties:
  18421. mtls:
  18422. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  18423. properties:
  18424. caBundle:
  18425. format: byte
  18426. type: string
  18427. caProvider:
  18428. description: |-
  18429. CAProvider provides a custom certificate authority for accessing the provider's store.
  18430. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  18431. properties:
  18432. key:
  18433. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18434. maxLength: 253
  18435. minLength: 1
  18436. pattern: ^[-._a-zA-Z0-9]+$
  18437. type: string
  18438. name:
  18439. description: The name of the object located at the provider type.
  18440. maxLength: 253
  18441. minLength: 1
  18442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18443. type: string
  18444. namespace:
  18445. description: |-
  18446. The namespace the Provider type is in.
  18447. Can only be defined when used in a ClusterSecretStore.
  18448. maxLength: 63
  18449. minLength: 1
  18450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18451. type: string
  18452. type:
  18453. description: The type of provider to use such as "Secret", or "ConfigMap".
  18454. enum:
  18455. - Secret
  18456. - ConfigMap
  18457. type: string
  18458. required:
  18459. - name
  18460. - type
  18461. type: object
  18462. certSecretRef:
  18463. description: |-
  18464. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18465. In some instances, `key` is a required field.
  18466. properties:
  18467. key:
  18468. description: |-
  18469. A key in the referenced Secret.
  18470. Some instances of this field may be defaulted, in others it may be required.
  18471. maxLength: 253
  18472. minLength: 1
  18473. pattern: ^[-._a-zA-Z0-9]+$
  18474. type: string
  18475. name:
  18476. description: The name of the Secret resource being referred to.
  18477. maxLength: 253
  18478. minLength: 1
  18479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18480. type: string
  18481. namespace:
  18482. description: |-
  18483. The namespace of the Secret resource being referred to.
  18484. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18485. maxLength: 63
  18486. minLength: 1
  18487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18488. type: string
  18489. type: object
  18490. keySecretRef:
  18491. description: |-
  18492. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18493. In some instances, `key` is a required field.
  18494. properties:
  18495. key:
  18496. description: |-
  18497. A key in the referenced Secret.
  18498. Some instances of this field may be defaulted, in others it may be required.
  18499. maxLength: 253
  18500. minLength: 1
  18501. pattern: ^[-._a-zA-Z0-9]+$
  18502. type: string
  18503. name:
  18504. description: The name of the Secret resource being referred to.
  18505. maxLength: 253
  18506. minLength: 1
  18507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18508. type: string
  18509. namespace:
  18510. description: |-
  18511. The namespace of the Secret resource being referred to.
  18512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18513. maxLength: 63
  18514. minLength: 1
  18515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18516. type: string
  18517. type: object
  18518. required:
  18519. - certSecretRef
  18520. - keySecretRef
  18521. type: object
  18522. token:
  18523. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  18524. properties:
  18525. tokenSecretRef:
  18526. description: |-
  18527. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18528. In some instances, `key` is a required field.
  18529. properties:
  18530. key:
  18531. description: |-
  18532. A key in the referenced Secret.
  18533. Some instances of this field may be defaulted, in others it may be required.
  18534. maxLength: 253
  18535. minLength: 1
  18536. pattern: ^[-._a-zA-Z0-9]+$
  18537. type: string
  18538. name:
  18539. description: The name of the Secret resource being referred to.
  18540. maxLength: 253
  18541. minLength: 1
  18542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18543. type: string
  18544. namespace:
  18545. description: |-
  18546. The namespace of the Secret resource being referred to.
  18547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18548. maxLength: 63
  18549. minLength: 1
  18550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18551. type: string
  18552. type: object
  18553. required:
  18554. - tokenSecretRef
  18555. type: object
  18556. type: object
  18557. casRequired:
  18558. description: 'Enables or disables check-and-set (CAS) (default: false).'
  18559. type: boolean
  18560. okmsTimeout:
  18561. default: 30
  18562. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  18563. format: int32
  18564. minimum: 1
  18565. type: integer
  18566. okmsid:
  18567. description: specifies the OKMS ID.
  18568. type: string
  18569. server:
  18570. description: specifies the OKMS server endpoint.
  18571. type: string
  18572. required:
  18573. - auth
  18574. - okmsid
  18575. - server
  18576. type: object
  18577. passbolt:
  18578. description: |-
  18579. PassboltProvider provides access to Passbolt secrets manager.
  18580. See: https://www.passbolt.com.
  18581. properties:
  18582. auth:
  18583. description: Auth defines the information necessary to authenticate against Passbolt Server
  18584. properties:
  18585. passwordSecretRef:
  18586. description: |-
  18587. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18588. In some instances, `key` is a required field.
  18589. properties:
  18590. key:
  18591. description: |-
  18592. A key in the referenced Secret.
  18593. Some instances of this field may be defaulted, in others it may be required.
  18594. maxLength: 253
  18595. minLength: 1
  18596. pattern: ^[-._a-zA-Z0-9]+$
  18597. type: string
  18598. name:
  18599. description: The name of the Secret resource being referred to.
  18600. maxLength: 253
  18601. minLength: 1
  18602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18603. type: string
  18604. namespace:
  18605. description: |-
  18606. The namespace of the Secret resource being referred to.
  18607. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18608. maxLength: 63
  18609. minLength: 1
  18610. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18611. type: string
  18612. type: object
  18613. privateKeySecretRef:
  18614. description: |-
  18615. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18616. In some instances, `key` is a required field.
  18617. properties:
  18618. key:
  18619. description: |-
  18620. A key in the referenced Secret.
  18621. Some instances of this field may be defaulted, in others it may be required.
  18622. maxLength: 253
  18623. minLength: 1
  18624. pattern: ^[-._a-zA-Z0-9]+$
  18625. type: string
  18626. name:
  18627. description: The name of the Secret resource being referred to.
  18628. maxLength: 253
  18629. minLength: 1
  18630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18631. type: string
  18632. namespace:
  18633. description: |-
  18634. The namespace of the Secret resource being referred to.
  18635. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18636. maxLength: 63
  18637. minLength: 1
  18638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18639. type: string
  18640. type: object
  18641. required:
  18642. - passwordSecretRef
  18643. - privateKeySecretRef
  18644. type: object
  18645. caBundle:
  18646. description: |-
  18647. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  18648. if the Host URL is using HTTPS protocol. If not set the system root certificates
  18649. are used to validate the TLS connection.
  18650. format: byte
  18651. type: string
  18652. caProvider:
  18653. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  18654. properties:
  18655. key:
  18656. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18657. maxLength: 253
  18658. minLength: 1
  18659. pattern: ^[-._a-zA-Z0-9]+$
  18660. type: string
  18661. name:
  18662. description: The name of the object located at the provider type.
  18663. maxLength: 253
  18664. minLength: 1
  18665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18666. type: string
  18667. namespace:
  18668. description: |-
  18669. The namespace the Provider type is in.
  18670. Can only be defined when used in a ClusterSecretStore.
  18671. maxLength: 63
  18672. minLength: 1
  18673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18674. type: string
  18675. type:
  18676. description: The type of provider to use such as "Secret", or "ConfigMap".
  18677. enum:
  18678. - Secret
  18679. - ConfigMap
  18680. type: string
  18681. required:
  18682. - name
  18683. - type
  18684. type: object
  18685. host:
  18686. description: Host defines the Passbolt Server to connect to
  18687. type: string
  18688. required:
  18689. - auth
  18690. - host
  18691. type: object
  18692. passworddepot:
  18693. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  18694. properties:
  18695. auth:
  18696. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  18697. properties:
  18698. secretRef:
  18699. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  18700. properties:
  18701. credentials:
  18702. description: Username / Password is used for authentication.
  18703. properties:
  18704. key:
  18705. description: |-
  18706. A key in the referenced Secret.
  18707. Some instances of this field may be defaulted, in others it may be required.
  18708. maxLength: 253
  18709. minLength: 1
  18710. pattern: ^[-._a-zA-Z0-9]+$
  18711. type: string
  18712. name:
  18713. description: The name of the Secret resource being referred to.
  18714. maxLength: 253
  18715. minLength: 1
  18716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18717. type: string
  18718. namespace:
  18719. description: |-
  18720. The namespace of the Secret resource being referred to.
  18721. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18722. maxLength: 63
  18723. minLength: 1
  18724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18725. type: string
  18726. type: object
  18727. type: object
  18728. required:
  18729. - secretRef
  18730. type: object
  18731. database:
  18732. description: Database to use as source
  18733. type: string
  18734. host:
  18735. description: URL configures the Password Depot instance URL.
  18736. type: string
  18737. required:
  18738. - auth
  18739. - database
  18740. - host
  18741. type: object
  18742. previder:
  18743. description: Previder configures this store to sync secrets using the Previder provider
  18744. properties:
  18745. auth:
  18746. description: PreviderAuth contains a secretRef for credentials.
  18747. properties:
  18748. secretRef:
  18749. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  18750. properties:
  18751. accessToken:
  18752. description: The AccessToken is used for authentication
  18753. properties:
  18754. key:
  18755. description: |-
  18756. A key in the referenced Secret.
  18757. Some instances of this field may be defaulted, in others it may be required.
  18758. maxLength: 253
  18759. minLength: 1
  18760. pattern: ^[-._a-zA-Z0-9]+$
  18761. type: string
  18762. name:
  18763. description: The name of the Secret resource being referred to.
  18764. maxLength: 253
  18765. minLength: 1
  18766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18767. type: string
  18768. namespace:
  18769. description: |-
  18770. The namespace of the Secret resource being referred to.
  18771. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18772. maxLength: 63
  18773. minLength: 1
  18774. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18775. type: string
  18776. type: object
  18777. required:
  18778. - accessToken
  18779. type: object
  18780. type: object
  18781. baseUri:
  18782. type: string
  18783. required:
  18784. - auth
  18785. type: object
  18786. pulumi:
  18787. description: Pulumi configures this store to sync secrets using the Pulumi provider
  18788. properties:
  18789. accessToken:
  18790. description: |-
  18791. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  18792. Deprecated: Use auth.accessToken instead.
  18793. properties:
  18794. secretRef:
  18795. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18796. properties:
  18797. key:
  18798. description: |-
  18799. A key in the referenced Secret.
  18800. Some instances of this field may be defaulted, in others it may be required.
  18801. maxLength: 253
  18802. minLength: 1
  18803. pattern: ^[-._a-zA-Z0-9]+$
  18804. type: string
  18805. name:
  18806. description: The name of the Secret resource being referred to.
  18807. maxLength: 253
  18808. minLength: 1
  18809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18810. type: string
  18811. namespace:
  18812. description: |-
  18813. The namespace of the Secret resource being referred to.
  18814. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18815. maxLength: 63
  18816. minLength: 1
  18817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18818. type: string
  18819. type: object
  18820. type: object
  18821. apiUrl:
  18822. default: https://api.pulumi.com/api/esc
  18823. description: APIURL is the URL of the Pulumi API.
  18824. type: string
  18825. auth:
  18826. description: |-
  18827. Auth configures how the Operator authenticates with the Pulumi API.
  18828. Either auth or the deprecated accessToken field must be specified.
  18829. properties:
  18830. accessToken:
  18831. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  18832. properties:
  18833. secretRef:
  18834. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18835. properties:
  18836. key:
  18837. description: |-
  18838. A key in the referenced Secret.
  18839. Some instances of this field may be defaulted, in others it may be required.
  18840. maxLength: 253
  18841. minLength: 1
  18842. pattern: ^[-._a-zA-Z0-9]+$
  18843. type: string
  18844. name:
  18845. description: The name of the Secret resource being referred to.
  18846. maxLength: 253
  18847. minLength: 1
  18848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18849. type: string
  18850. namespace:
  18851. description: |-
  18852. The namespace of the Secret resource being referred to.
  18853. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18854. maxLength: 63
  18855. minLength: 1
  18856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18857. type: string
  18858. type: object
  18859. type: object
  18860. oidcConfig:
  18861. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  18862. properties:
  18863. expirationSeconds:
  18864. default: 600
  18865. description: |-
  18866. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  18867. Defaults to 10 minutes.
  18868. format: int64
  18869. minimum: 600
  18870. type: integer
  18871. organization:
  18872. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  18873. type: string
  18874. serviceAccountRef:
  18875. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  18876. properties:
  18877. audiences:
  18878. description: |-
  18879. Audience specifies the `aud` claim for the service account token
  18880. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18881. then this audiences will be appended to the list
  18882. items:
  18883. type: string
  18884. type: array
  18885. name:
  18886. description: The name of the ServiceAccount resource being referred to.
  18887. maxLength: 253
  18888. minLength: 1
  18889. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18890. type: string
  18891. namespace:
  18892. description: |-
  18893. Namespace of the resource being referred to.
  18894. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18895. maxLength: 63
  18896. minLength: 1
  18897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18898. type: string
  18899. required:
  18900. - name
  18901. type: object
  18902. required:
  18903. - organization
  18904. - serviceAccountRef
  18905. type: object
  18906. type: object
  18907. x-kubernetes-validations:
  18908. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  18909. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  18910. environment:
  18911. description: |-
  18912. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  18913. dynamically retrieved values from supported providers including all major clouds,
  18914. and other Pulumi ESC environments.
  18915. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  18916. type: string
  18917. organization:
  18918. description: |-
  18919. Organization are a space to collaborate on shared projects and stacks.
  18920. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  18921. type: string
  18922. project:
  18923. description: Project is the name of the Pulumi ESC project the environment belongs to.
  18924. type: string
  18925. required:
  18926. - environment
  18927. - organization
  18928. - project
  18929. type: object
  18930. x-kubernetes-validations:
  18931. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  18932. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  18933. scaleway:
  18934. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  18935. properties:
  18936. accessKey:
  18937. description: AccessKey is the non-secret part of the api key.
  18938. properties:
  18939. secretRef:
  18940. description: SecretRef references a key in a secret that will be used as value.
  18941. properties:
  18942. key:
  18943. description: |-
  18944. A key in the referenced Secret.
  18945. Some instances of this field may be defaulted, in others it may be required.
  18946. maxLength: 253
  18947. minLength: 1
  18948. pattern: ^[-._a-zA-Z0-9]+$
  18949. type: string
  18950. name:
  18951. description: The name of the Secret resource being referred to.
  18952. maxLength: 253
  18953. minLength: 1
  18954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18955. type: string
  18956. namespace:
  18957. description: |-
  18958. The namespace of the Secret resource being referred to.
  18959. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18960. maxLength: 63
  18961. minLength: 1
  18962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18963. type: string
  18964. type: object
  18965. value:
  18966. description: Value can be specified directly to set a value without using a secret.
  18967. type: string
  18968. type: object
  18969. apiUrl:
  18970. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  18971. type: string
  18972. projectId:
  18973. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  18974. type: string
  18975. region:
  18976. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  18977. type: string
  18978. secretKey:
  18979. description: SecretKey is the non-secret part of the api key.
  18980. properties:
  18981. secretRef:
  18982. description: SecretRef references a key in a secret that will be used as value.
  18983. properties:
  18984. key:
  18985. description: |-
  18986. A key in the referenced Secret.
  18987. Some instances of this field may be defaulted, in others it may be required.
  18988. maxLength: 253
  18989. minLength: 1
  18990. pattern: ^[-._a-zA-Z0-9]+$
  18991. type: string
  18992. name:
  18993. description: The name of the Secret resource being referred to.
  18994. maxLength: 253
  18995. minLength: 1
  18996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18997. type: string
  18998. namespace:
  18999. description: |-
  19000. The namespace of the Secret resource being referred to.
  19001. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19002. maxLength: 63
  19003. minLength: 1
  19004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19005. type: string
  19006. type: object
  19007. value:
  19008. description: Value can be specified directly to set a value without using a secret.
  19009. type: string
  19010. type: object
  19011. required:
  19012. - accessKey
  19013. - projectId
  19014. - region
  19015. - secretKey
  19016. type: object
  19017. secretserver:
  19018. description: |-
  19019. SecretServer configures this store to sync secrets using SecretServer provider
  19020. https://docs.delinea.com/online-help/secret-server/start.htm
  19021. properties:
  19022. caBundle:
  19023. description: |-
  19024. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  19025. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  19026. are used to validate the TLS connection.
  19027. format: byte
  19028. type: string
  19029. caProvider:
  19030. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  19031. properties:
  19032. key:
  19033. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19034. maxLength: 253
  19035. minLength: 1
  19036. pattern: ^[-._a-zA-Z0-9]+$
  19037. type: string
  19038. name:
  19039. description: The name of the object located at the provider type.
  19040. maxLength: 253
  19041. minLength: 1
  19042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19043. type: string
  19044. namespace:
  19045. description: |-
  19046. The namespace the Provider type is in.
  19047. Can only be defined when used in a ClusterSecretStore.
  19048. maxLength: 63
  19049. minLength: 1
  19050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19051. type: string
  19052. type:
  19053. description: The type of provider to use such as "Secret", or "ConfigMap".
  19054. enum:
  19055. - Secret
  19056. - ConfigMap
  19057. type: string
  19058. required:
  19059. - name
  19060. - type
  19061. type: object
  19062. domain:
  19063. description: Domain is the secret server domain.
  19064. type: string
  19065. password:
  19066. description: Password is the secret server account password.
  19067. properties:
  19068. secretRef:
  19069. description: SecretRef references a key in a secret that will be used as value.
  19070. properties:
  19071. key:
  19072. description: |-
  19073. A key in the referenced Secret.
  19074. Some instances of this field may be defaulted, in others it may be required.
  19075. maxLength: 253
  19076. minLength: 1
  19077. pattern: ^[-._a-zA-Z0-9]+$
  19078. type: string
  19079. name:
  19080. description: The name of the Secret resource being referred to.
  19081. maxLength: 253
  19082. minLength: 1
  19083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19084. type: string
  19085. namespace:
  19086. description: |-
  19087. The namespace of the Secret resource being referred to.
  19088. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19089. maxLength: 63
  19090. minLength: 1
  19091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19092. type: string
  19093. type: object
  19094. value:
  19095. description: Value can be specified directly to set a value without using a secret.
  19096. type: string
  19097. type: object
  19098. serverURL:
  19099. description: |-
  19100. ServerURL
  19101. URL to your secret server installation
  19102. type: string
  19103. username:
  19104. description: Username is the secret server account username.
  19105. properties:
  19106. secretRef:
  19107. description: SecretRef references a key in a secret that will be used as value.
  19108. properties:
  19109. key:
  19110. description: |-
  19111. A key in the referenced Secret.
  19112. Some instances of this field may be defaulted, in others it may be required.
  19113. maxLength: 253
  19114. minLength: 1
  19115. pattern: ^[-._a-zA-Z0-9]+$
  19116. type: string
  19117. name:
  19118. description: The name of the Secret resource being referred to.
  19119. maxLength: 253
  19120. minLength: 1
  19121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19122. type: string
  19123. namespace:
  19124. description: |-
  19125. The namespace of the Secret resource being referred to.
  19126. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19127. maxLength: 63
  19128. minLength: 1
  19129. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19130. type: string
  19131. type: object
  19132. value:
  19133. description: Value can be specified directly to set a value without using a secret.
  19134. type: string
  19135. type: object
  19136. required:
  19137. - password
  19138. - serverURL
  19139. - username
  19140. type: object
  19141. senhasegura:
  19142. description: Senhasegura configures this store to sync secrets using senhasegura provider
  19143. properties:
  19144. auth:
  19145. description: Auth defines parameters to authenticate in senhasegura
  19146. properties:
  19147. clientId:
  19148. type: string
  19149. clientSecretSecretRef:
  19150. description: |-
  19151. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19152. In some instances, `key` is a required field.
  19153. properties:
  19154. key:
  19155. description: |-
  19156. A key in the referenced Secret.
  19157. Some instances of this field may be defaulted, in others it may be required.
  19158. maxLength: 253
  19159. minLength: 1
  19160. pattern: ^[-._a-zA-Z0-9]+$
  19161. type: string
  19162. name:
  19163. description: The name of the Secret resource being referred to.
  19164. maxLength: 253
  19165. minLength: 1
  19166. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19167. type: string
  19168. namespace:
  19169. description: |-
  19170. The namespace of the Secret resource being referred to.
  19171. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19172. maxLength: 63
  19173. minLength: 1
  19174. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19175. type: string
  19176. type: object
  19177. required:
  19178. - clientId
  19179. - clientSecretSecretRef
  19180. type: object
  19181. ignoreSslCertificate:
  19182. default: false
  19183. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  19184. type: boolean
  19185. module:
  19186. description: Module defines which senhasegura module should be used to get secrets
  19187. type: string
  19188. url:
  19189. description: URL of senhasegura
  19190. type: string
  19191. required:
  19192. - auth
  19193. - module
  19194. - url
  19195. type: object
  19196. vault:
  19197. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  19198. properties:
  19199. auth:
  19200. description: Auth configures how secret-manager authenticates with the Vault server.
  19201. properties:
  19202. appRole:
  19203. description: |-
  19204. AppRole authenticates with Vault using the App Role auth mechanism,
  19205. with the role and secret stored in a Kubernetes Secret resource.
  19206. properties:
  19207. path:
  19208. default: approle
  19209. description: |-
  19210. Path where the App Role authentication backend is mounted
  19211. in Vault, e.g: "approle"
  19212. type: string
  19213. roleId:
  19214. description: |-
  19215. RoleID configured in the App Role authentication backend when setting
  19216. up the authentication backend in Vault.
  19217. type: string
  19218. roleRef:
  19219. description: |-
  19220. Reference to a key in a Secret that contains the App Role ID used
  19221. to authenticate with Vault.
  19222. The `key` field must be specified and denotes which entry within the Secret
  19223. resource is used as the app role id.
  19224. properties:
  19225. key:
  19226. description: |-
  19227. A key in the referenced Secret.
  19228. Some instances of this field may be defaulted, in others it may be required.
  19229. maxLength: 253
  19230. minLength: 1
  19231. pattern: ^[-._a-zA-Z0-9]+$
  19232. type: string
  19233. name:
  19234. description: The name of the Secret resource being referred to.
  19235. maxLength: 253
  19236. minLength: 1
  19237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19238. type: string
  19239. namespace:
  19240. description: |-
  19241. The namespace of the Secret resource being referred to.
  19242. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19243. maxLength: 63
  19244. minLength: 1
  19245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19246. type: string
  19247. type: object
  19248. secretRef:
  19249. description: |-
  19250. Reference to a key in a Secret that contains the App Role secret used
  19251. to authenticate with Vault.
  19252. The `key` field must be specified and denotes which entry within the Secret
  19253. resource is used as the app role secret.
  19254. properties:
  19255. key:
  19256. description: |-
  19257. A key in the referenced Secret.
  19258. Some instances of this field may be defaulted, in others it may be required.
  19259. maxLength: 253
  19260. minLength: 1
  19261. pattern: ^[-._a-zA-Z0-9]+$
  19262. type: string
  19263. name:
  19264. description: The name of the Secret resource being referred to.
  19265. maxLength: 253
  19266. minLength: 1
  19267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19268. type: string
  19269. namespace:
  19270. description: |-
  19271. The namespace of the Secret resource being referred to.
  19272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19273. maxLength: 63
  19274. minLength: 1
  19275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19276. type: string
  19277. type: object
  19278. required:
  19279. - path
  19280. - secretRef
  19281. type: object
  19282. cert:
  19283. description: |-
  19284. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  19285. Cert authentication method
  19286. properties:
  19287. clientCert:
  19288. description: |-
  19289. ClientCert is a certificate to authenticate using the Cert Vault
  19290. authentication method
  19291. properties:
  19292. key:
  19293. description: |-
  19294. A key in the referenced Secret.
  19295. Some instances of this field may be defaulted, in others it may be required.
  19296. maxLength: 253
  19297. minLength: 1
  19298. pattern: ^[-._a-zA-Z0-9]+$
  19299. type: string
  19300. name:
  19301. description: The name of the Secret resource being referred to.
  19302. maxLength: 253
  19303. minLength: 1
  19304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19305. type: string
  19306. namespace:
  19307. description: |-
  19308. The namespace of the Secret resource being referred to.
  19309. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19310. maxLength: 63
  19311. minLength: 1
  19312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19313. type: string
  19314. type: object
  19315. path:
  19316. default: cert
  19317. description: |-
  19318. Path where the Certificate authentication backend is mounted
  19319. in Vault, e.g: "cert"
  19320. type: string
  19321. secretRef:
  19322. description: |-
  19323. SecretRef to a key in a Secret resource containing client private key to
  19324. authenticate with Vault using the Cert authentication method
  19325. properties:
  19326. key:
  19327. description: |-
  19328. A key in the referenced Secret.
  19329. Some instances of this field may be defaulted, in others it may be required.
  19330. maxLength: 253
  19331. minLength: 1
  19332. pattern: ^[-._a-zA-Z0-9]+$
  19333. type: string
  19334. name:
  19335. description: The name of the Secret resource being referred to.
  19336. maxLength: 253
  19337. minLength: 1
  19338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19339. type: string
  19340. namespace:
  19341. description: |-
  19342. The namespace of the Secret resource being referred to.
  19343. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19344. maxLength: 63
  19345. minLength: 1
  19346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19347. type: string
  19348. type: object
  19349. vaultRole:
  19350. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  19351. type: string
  19352. type: object
  19353. gcp:
  19354. description: |-
  19355. Gcp authenticates with Vault using Google Cloud Platform authentication method
  19356. GCP authentication method
  19357. properties:
  19358. location:
  19359. description: Location optionally defines a location/region for the secret
  19360. type: string
  19361. path:
  19362. default: gcp
  19363. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  19364. type: string
  19365. projectID:
  19366. description: Project ID of the Google Cloud Platform project
  19367. type: string
  19368. role:
  19369. 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.
  19370. type: string
  19371. secretRef:
  19372. description: Specify credentials in a Secret object
  19373. properties:
  19374. secretAccessKeySecretRef:
  19375. description: The SecretAccessKey is used for authentication
  19376. properties:
  19377. key:
  19378. description: |-
  19379. A key in the referenced Secret.
  19380. Some instances of this field may be defaulted, in others it may be required.
  19381. maxLength: 253
  19382. minLength: 1
  19383. pattern: ^[-._a-zA-Z0-9]+$
  19384. type: string
  19385. name:
  19386. description: The name of the Secret resource being referred to.
  19387. maxLength: 253
  19388. minLength: 1
  19389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19390. type: string
  19391. namespace:
  19392. description: |-
  19393. The namespace of the Secret resource being referred to.
  19394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19395. maxLength: 63
  19396. minLength: 1
  19397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19398. type: string
  19399. type: object
  19400. type: object
  19401. serviceAccountRef:
  19402. description: ServiceAccountRef to a service account for impersonation
  19403. properties:
  19404. audiences:
  19405. description: |-
  19406. Audience specifies the `aud` claim for the service account token
  19407. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19408. then this audiences will be appended to the list
  19409. items:
  19410. type: string
  19411. type: array
  19412. name:
  19413. description: The name of the ServiceAccount resource being referred to.
  19414. maxLength: 253
  19415. minLength: 1
  19416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19417. type: string
  19418. namespace:
  19419. description: |-
  19420. Namespace of the resource being referred to.
  19421. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19422. maxLength: 63
  19423. minLength: 1
  19424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19425. type: string
  19426. required:
  19427. - name
  19428. type: object
  19429. workloadIdentity:
  19430. description: Specify a service account with Workload Identity
  19431. properties:
  19432. clusterLocation:
  19433. description: |-
  19434. ClusterLocation is the location of the cluster
  19435. If not specified, it fetches information from the metadata server
  19436. type: string
  19437. clusterName:
  19438. description: |-
  19439. ClusterName is the name of the cluster
  19440. If not specified, it fetches information from the metadata server
  19441. type: string
  19442. clusterProjectID:
  19443. description: |-
  19444. ClusterProjectID is the project ID of the cluster
  19445. If not specified, it fetches information from the metadata server
  19446. type: string
  19447. serviceAccountRef:
  19448. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19449. properties:
  19450. audiences:
  19451. description: |-
  19452. Audience specifies the `aud` claim for the service account token
  19453. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19454. then this audiences will be appended to the list
  19455. items:
  19456. type: string
  19457. type: array
  19458. name:
  19459. description: The name of the ServiceAccount resource being referred to.
  19460. maxLength: 253
  19461. minLength: 1
  19462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19463. type: string
  19464. namespace:
  19465. description: |-
  19466. Namespace of the resource being referred to.
  19467. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19468. maxLength: 63
  19469. minLength: 1
  19470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19471. type: string
  19472. required:
  19473. - name
  19474. type: object
  19475. required:
  19476. - serviceAccountRef
  19477. type: object
  19478. required:
  19479. - role
  19480. type: object
  19481. iam:
  19482. description: |-
  19483. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  19484. AWS IAM authentication method
  19485. properties:
  19486. externalID:
  19487. description: AWS External ID set on assumed IAM roles
  19488. type: string
  19489. jwt:
  19490. description: Specify a service account with IRSA enabled
  19491. properties:
  19492. serviceAccountRef:
  19493. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19494. properties:
  19495. audiences:
  19496. description: |-
  19497. Audience specifies the `aud` claim for the service account token
  19498. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19499. then this audiences will be appended to the list
  19500. items:
  19501. type: string
  19502. type: array
  19503. name:
  19504. description: The name of the ServiceAccount resource being referred to.
  19505. maxLength: 253
  19506. minLength: 1
  19507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19508. type: string
  19509. namespace:
  19510. description: |-
  19511. Namespace of the resource being referred to.
  19512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19513. maxLength: 63
  19514. minLength: 1
  19515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19516. type: string
  19517. required:
  19518. - name
  19519. type: object
  19520. type: object
  19521. path:
  19522. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  19523. type: string
  19524. region:
  19525. description: AWS region
  19526. type: string
  19527. role:
  19528. description: This is the AWS role to be assumed before talking to vault
  19529. type: string
  19530. secretRef:
  19531. description: Specify credentials in a Secret object
  19532. properties:
  19533. accessKeyIDSecretRef:
  19534. description: The AccessKeyID is used for authentication
  19535. properties:
  19536. key:
  19537. description: |-
  19538. A key in the referenced Secret.
  19539. Some instances of this field may be defaulted, in others it may be required.
  19540. maxLength: 253
  19541. minLength: 1
  19542. pattern: ^[-._a-zA-Z0-9]+$
  19543. type: string
  19544. name:
  19545. description: The name of the Secret resource being referred to.
  19546. maxLength: 253
  19547. minLength: 1
  19548. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19549. type: string
  19550. namespace:
  19551. description: |-
  19552. The namespace of the Secret resource being referred to.
  19553. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19554. maxLength: 63
  19555. minLength: 1
  19556. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19557. type: string
  19558. type: object
  19559. secretAccessKeySecretRef:
  19560. description: The SecretAccessKey is used for authentication
  19561. properties:
  19562. key:
  19563. description: |-
  19564. A key in the referenced Secret.
  19565. Some instances of this field may be defaulted, in others it may be required.
  19566. maxLength: 253
  19567. minLength: 1
  19568. pattern: ^[-._a-zA-Z0-9]+$
  19569. type: string
  19570. name:
  19571. description: The name of the Secret resource being referred to.
  19572. maxLength: 253
  19573. minLength: 1
  19574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19575. type: string
  19576. namespace:
  19577. description: |-
  19578. The namespace of the Secret resource being referred to.
  19579. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19580. maxLength: 63
  19581. minLength: 1
  19582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19583. type: string
  19584. type: object
  19585. sessionTokenSecretRef:
  19586. description: |-
  19587. The SessionToken used for authentication
  19588. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  19589. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  19590. properties:
  19591. key:
  19592. description: |-
  19593. A key in the referenced Secret.
  19594. Some instances of this field may be defaulted, in others it may be required.
  19595. maxLength: 253
  19596. minLength: 1
  19597. pattern: ^[-._a-zA-Z0-9]+$
  19598. type: string
  19599. name:
  19600. description: The name of the Secret resource being referred to.
  19601. maxLength: 253
  19602. minLength: 1
  19603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19604. type: string
  19605. namespace:
  19606. description: |-
  19607. The namespace of the Secret resource being referred to.
  19608. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19609. maxLength: 63
  19610. minLength: 1
  19611. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19612. type: string
  19613. type: object
  19614. type: object
  19615. vaultAwsIamServerID:
  19616. 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'
  19617. type: string
  19618. vaultRole:
  19619. 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
  19620. type: string
  19621. required:
  19622. - vaultRole
  19623. type: object
  19624. jwt:
  19625. description: |-
  19626. Jwt authenticates with Vault by passing role and JWT token using the
  19627. JWT/OIDC authentication method
  19628. properties:
  19629. kubernetesServiceAccountToken:
  19630. description: |-
  19631. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  19632. a token for with the `TokenRequest` API.
  19633. properties:
  19634. audiences:
  19635. description: |-
  19636. Optional audiences field that will be used to request a temporary Kubernetes service
  19637. account token for the service account referenced by `serviceAccountRef`.
  19638. Defaults to a single audience `vault` it not specified.
  19639. Deprecated: use serviceAccountRef.Audiences instead
  19640. items:
  19641. type: string
  19642. type: array
  19643. expirationSeconds:
  19644. description: |-
  19645. Optional expiration time in seconds that will be used to request a temporary
  19646. Kubernetes service account token for the service account referenced by
  19647. `serviceAccountRef`.
  19648. Deprecated: this will be removed in the future.
  19649. Defaults to 10 minutes.
  19650. format: int64
  19651. type: integer
  19652. serviceAccountRef:
  19653. description: Service account field containing the name of a kubernetes ServiceAccount.
  19654. properties:
  19655. audiences:
  19656. description: |-
  19657. Audience specifies the `aud` claim for the service account token
  19658. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19659. then this audiences will be appended to the list
  19660. items:
  19661. type: string
  19662. type: array
  19663. name:
  19664. description: The name of the ServiceAccount resource being referred to.
  19665. maxLength: 253
  19666. minLength: 1
  19667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19668. type: string
  19669. namespace:
  19670. description: |-
  19671. Namespace of the resource being referred to.
  19672. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19673. maxLength: 63
  19674. minLength: 1
  19675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19676. type: string
  19677. required:
  19678. - name
  19679. type: object
  19680. required:
  19681. - serviceAccountRef
  19682. type: object
  19683. path:
  19684. default: jwt
  19685. description: |-
  19686. Path where the JWT authentication backend is mounted
  19687. in Vault, e.g: "jwt"
  19688. type: string
  19689. role:
  19690. description: |-
  19691. Role is a JWT role to authenticate using the JWT/OIDC Vault
  19692. authentication method
  19693. type: string
  19694. secretRef:
  19695. description: |-
  19696. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  19697. authenticate with Vault using the JWT/OIDC authentication method.
  19698. properties:
  19699. key:
  19700. description: |-
  19701. A key in the referenced Secret.
  19702. Some instances of this field may be defaulted, in others it may be required.
  19703. maxLength: 253
  19704. minLength: 1
  19705. pattern: ^[-._a-zA-Z0-9]+$
  19706. type: string
  19707. name:
  19708. description: The name of the Secret resource being referred to.
  19709. maxLength: 253
  19710. minLength: 1
  19711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19712. type: string
  19713. namespace:
  19714. description: |-
  19715. The namespace of the Secret resource being referred to.
  19716. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19717. maxLength: 63
  19718. minLength: 1
  19719. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19720. type: string
  19721. type: object
  19722. required:
  19723. - path
  19724. type: object
  19725. kubernetes:
  19726. description: |-
  19727. Kubernetes authenticates with Vault by passing the ServiceAccount
  19728. token stored in the named Secret resource to the Vault server.
  19729. properties:
  19730. mountPath:
  19731. default: kubernetes
  19732. description: |-
  19733. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  19734. "kubernetes"
  19735. type: string
  19736. role:
  19737. description: |-
  19738. A required field containing the Vault Role to assume. A Role binds a
  19739. Kubernetes ServiceAccount with a set of Vault policies.
  19740. type: string
  19741. secretRef:
  19742. description: |-
  19743. Optional secret field containing a Kubernetes ServiceAccount JWT used
  19744. for authenticating with Vault. If a name is specified without a key,
  19745. `token` is the default. If one is not specified, the one bound to
  19746. the controller will be used.
  19747. properties:
  19748. key:
  19749. description: |-
  19750. A key in the referenced Secret.
  19751. Some instances of this field may be defaulted, in others it may be required.
  19752. maxLength: 253
  19753. minLength: 1
  19754. pattern: ^[-._a-zA-Z0-9]+$
  19755. type: string
  19756. name:
  19757. description: The name of the Secret resource being referred to.
  19758. maxLength: 253
  19759. minLength: 1
  19760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19761. type: string
  19762. namespace:
  19763. description: |-
  19764. The namespace of the Secret resource being referred to.
  19765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19766. maxLength: 63
  19767. minLength: 1
  19768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19769. type: string
  19770. type: object
  19771. serviceAccountRef:
  19772. description: |-
  19773. Optional service account field containing the name of a kubernetes ServiceAccount.
  19774. If the service account is specified, the service account secret token JWT will be used
  19775. for authenticating with Vault. If the service account selector is not supplied,
  19776. the secretRef will be used instead.
  19777. properties:
  19778. audiences:
  19779. description: |-
  19780. Audience specifies the `aud` claim for the service account token
  19781. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19782. then this audiences will be appended to the list
  19783. items:
  19784. type: string
  19785. type: array
  19786. name:
  19787. description: The name of the ServiceAccount resource being referred to.
  19788. maxLength: 253
  19789. minLength: 1
  19790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19791. type: string
  19792. namespace:
  19793. description: |-
  19794. Namespace of the resource being referred to.
  19795. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19796. maxLength: 63
  19797. minLength: 1
  19798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19799. type: string
  19800. required:
  19801. - name
  19802. type: object
  19803. required:
  19804. - mountPath
  19805. - role
  19806. type: object
  19807. ldap:
  19808. description: |-
  19809. Ldap authenticates with Vault by passing username/password pair using
  19810. the LDAP authentication method
  19811. properties:
  19812. path:
  19813. default: ldap
  19814. description: |-
  19815. Path where the LDAP authentication backend is mounted
  19816. in Vault, e.g: "ldap"
  19817. type: string
  19818. secretRef:
  19819. description: |-
  19820. SecretRef to a key in a Secret resource containing password for the LDAP
  19821. user used to authenticate with Vault using the LDAP authentication
  19822. method
  19823. properties:
  19824. key:
  19825. description: |-
  19826. A key in the referenced Secret.
  19827. Some instances of this field may be defaulted, in others it may be required.
  19828. maxLength: 253
  19829. minLength: 1
  19830. pattern: ^[-._a-zA-Z0-9]+$
  19831. type: string
  19832. name:
  19833. description: The name of the Secret resource being referred to.
  19834. maxLength: 253
  19835. minLength: 1
  19836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19837. type: string
  19838. namespace:
  19839. description: |-
  19840. The namespace of the Secret resource being referred to.
  19841. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19842. maxLength: 63
  19843. minLength: 1
  19844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19845. type: string
  19846. type: object
  19847. username:
  19848. description: |-
  19849. Username is an LDAP username used to authenticate using the LDAP Vault
  19850. authentication method
  19851. type: string
  19852. required:
  19853. - path
  19854. - username
  19855. type: object
  19856. namespace:
  19857. description: |-
  19858. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  19859. Namespaces is a set of features within Vault Enterprise that allows
  19860. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19861. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19862. This will default to Vault.Namespace field if set, or empty otherwise
  19863. type: string
  19864. tokenSecretRef:
  19865. description: TokenSecretRef authenticates with Vault by presenting a token.
  19866. properties:
  19867. key:
  19868. description: |-
  19869. A key in the referenced Secret.
  19870. Some instances of this field may be defaulted, in others it may be required.
  19871. maxLength: 253
  19872. minLength: 1
  19873. pattern: ^[-._a-zA-Z0-9]+$
  19874. type: string
  19875. name:
  19876. description: The name of the Secret resource being referred to.
  19877. maxLength: 253
  19878. minLength: 1
  19879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19880. type: string
  19881. namespace:
  19882. description: |-
  19883. The namespace of the Secret resource being referred to.
  19884. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19885. maxLength: 63
  19886. minLength: 1
  19887. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19888. type: string
  19889. type: object
  19890. userPass:
  19891. description: UserPass authenticates with Vault by passing username/password pair
  19892. properties:
  19893. path:
  19894. default: userpass
  19895. description: |-
  19896. Path where the UserPassword authentication backend is mounted
  19897. in Vault, e.g: "userpass"
  19898. type: string
  19899. secretRef:
  19900. description: |-
  19901. SecretRef to a key in a Secret resource containing password for the
  19902. user used to authenticate with Vault using the UserPass authentication
  19903. method
  19904. properties:
  19905. key:
  19906. description: |-
  19907. A key in the referenced Secret.
  19908. Some instances of this field may be defaulted, in others it may be required.
  19909. maxLength: 253
  19910. minLength: 1
  19911. pattern: ^[-._a-zA-Z0-9]+$
  19912. type: string
  19913. name:
  19914. description: The name of the Secret resource being referred to.
  19915. maxLength: 253
  19916. minLength: 1
  19917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19918. type: string
  19919. namespace:
  19920. description: |-
  19921. The namespace of the Secret resource being referred to.
  19922. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19923. maxLength: 63
  19924. minLength: 1
  19925. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19926. type: string
  19927. type: object
  19928. username:
  19929. description: |-
  19930. Username is a username used to authenticate using the UserPass Vault
  19931. authentication method
  19932. type: string
  19933. required:
  19934. - path
  19935. - username
  19936. type: object
  19937. type: object
  19938. caBundle:
  19939. description: |-
  19940. PEM encoded CA bundle used to validate Vault server certificate. Only used
  19941. if the Server URL is using HTTPS protocol. This parameter is ignored for
  19942. plain HTTP protocol connection. If not set the system root certificates
  19943. are used to validate the TLS connection.
  19944. format: byte
  19945. type: string
  19946. caProvider:
  19947. description: The provider for the CA bundle to use to validate Vault server certificate.
  19948. properties:
  19949. key:
  19950. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19951. maxLength: 253
  19952. minLength: 1
  19953. pattern: ^[-._a-zA-Z0-9]+$
  19954. type: string
  19955. name:
  19956. description: The name of the object located at the provider type.
  19957. maxLength: 253
  19958. minLength: 1
  19959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19960. type: string
  19961. namespace:
  19962. description: |-
  19963. The namespace the Provider type is in.
  19964. Can only be defined when used in a ClusterSecretStore.
  19965. maxLength: 63
  19966. minLength: 1
  19967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19968. type: string
  19969. type:
  19970. description: The type of provider to use such as "Secret", or "ConfigMap".
  19971. enum:
  19972. - Secret
  19973. - ConfigMap
  19974. type: string
  19975. required:
  19976. - name
  19977. - type
  19978. type: object
  19979. checkAndSet:
  19980. description: |-
  19981. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  19982. Only applies to Vault KV v2 stores. When enabled, write operations must include
  19983. the current version of the secret to prevent unintentional overwrites.
  19984. properties:
  19985. required:
  19986. description: |-
  19987. Required when true, all write operations must include a check-and-set parameter.
  19988. This helps prevent unintentional overwrites of secrets.
  19989. type: boolean
  19990. type: object
  19991. forwardInconsistent:
  19992. description: |-
  19993. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  19994. leader instead of simply retrying within a loop. This can increase performance if
  19995. the option is enabled serverside.
  19996. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  19997. type: boolean
  19998. headers:
  19999. additionalProperties:
  20000. type: string
  20001. description: Headers to be added in Vault request
  20002. type: object
  20003. namespace:
  20004. description: |-
  20005. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  20006. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20007. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20008. type: string
  20009. path:
  20010. description: |-
  20011. Path is the mount path of the Vault KV backend endpoint, e.g:
  20012. "secret". The v2 KV secret engine version specific "/data" path suffix
  20013. for fetching secrets from Vault is optional and will be appended
  20014. if not present in specified path.
  20015. type: string
  20016. readYourWrites:
  20017. description: |-
  20018. ReadYourWrites ensures isolated read-after-write semantics by
  20019. providing discovered cluster replication states in each request.
  20020. More information about eventual consistency in Vault can be found here
  20021. https://www.vaultproject.io/docs/enterprise/consistency
  20022. type: boolean
  20023. server:
  20024. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  20025. type: string
  20026. tls:
  20027. description: |-
  20028. The configuration used for client side related TLS communication, when the Vault server
  20029. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  20030. This parameter is ignored for plain HTTP protocol connection.
  20031. It's worth noting this configuration is different from the "TLS certificates auth method",
  20032. which is available under the `auth.cert` section.
  20033. properties:
  20034. certSecretRef:
  20035. description: |-
  20036. CertSecretRef is a certificate added to the transport layer
  20037. when communicating with the Vault server.
  20038. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  20039. properties:
  20040. key:
  20041. description: |-
  20042. A key in the referenced Secret.
  20043. Some instances of this field may be defaulted, in others it may be required.
  20044. maxLength: 253
  20045. minLength: 1
  20046. pattern: ^[-._a-zA-Z0-9]+$
  20047. type: string
  20048. name:
  20049. description: The name of the Secret resource being referred to.
  20050. maxLength: 253
  20051. minLength: 1
  20052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20053. type: string
  20054. namespace:
  20055. description: |-
  20056. The namespace of the Secret resource being referred to.
  20057. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20058. maxLength: 63
  20059. minLength: 1
  20060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20061. type: string
  20062. type: object
  20063. keySecretRef:
  20064. description: |-
  20065. KeySecretRef to a key in a Secret resource containing client private key
  20066. added to the transport layer when communicating with the Vault server.
  20067. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  20068. properties:
  20069. key:
  20070. description: |-
  20071. A key in the referenced Secret.
  20072. Some instances of this field may be defaulted, in others it may be required.
  20073. maxLength: 253
  20074. minLength: 1
  20075. pattern: ^[-._a-zA-Z0-9]+$
  20076. type: string
  20077. name:
  20078. description: The name of the Secret resource being referred to.
  20079. maxLength: 253
  20080. minLength: 1
  20081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20082. type: string
  20083. namespace:
  20084. description: |-
  20085. The namespace of the Secret resource being referred to.
  20086. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20087. maxLength: 63
  20088. minLength: 1
  20089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20090. type: string
  20091. type: object
  20092. type: object
  20093. version:
  20094. default: v2
  20095. description: |-
  20096. Version is the Vault KV secret engine version. This can be either "v1" or
  20097. "v2". Version defaults to "v2".
  20098. enum:
  20099. - v1
  20100. - v2
  20101. type: string
  20102. required:
  20103. - server
  20104. type: object
  20105. volcengine:
  20106. description: Volcengine configures this store to sync secrets using the Volcengine provider
  20107. properties:
  20108. auth:
  20109. description: |-
  20110. Auth defines the authentication method to use.
  20111. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  20112. properties:
  20113. secretRef:
  20114. description: |-
  20115. SecretRef defines the static credentials to use for authentication.
  20116. If not set, IRSA is used.
  20117. properties:
  20118. accessKeyID:
  20119. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  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. secretAccessKey:
  20145. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  20146. properties:
  20147. key:
  20148. description: |-
  20149. A key in the referenced Secret.
  20150. Some instances of this field may be defaulted, in others it may be required.
  20151. maxLength: 253
  20152. minLength: 1
  20153. pattern: ^[-._a-zA-Z0-9]+$
  20154. type: string
  20155. name:
  20156. description: The name of the Secret resource being referred to.
  20157. maxLength: 253
  20158. minLength: 1
  20159. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20160. type: string
  20161. namespace:
  20162. description: |-
  20163. The namespace of the Secret resource being referred to.
  20164. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20165. maxLength: 63
  20166. minLength: 1
  20167. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20168. type: string
  20169. type: object
  20170. token:
  20171. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  20172. properties:
  20173. key:
  20174. description: |-
  20175. A key in the referenced Secret.
  20176. Some instances of this field may be defaulted, in others it may be required.
  20177. maxLength: 253
  20178. minLength: 1
  20179. pattern: ^[-._a-zA-Z0-9]+$
  20180. type: string
  20181. name:
  20182. description: The name of the Secret resource being referred to.
  20183. maxLength: 253
  20184. minLength: 1
  20185. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20186. type: string
  20187. namespace:
  20188. description: |-
  20189. The namespace of the Secret resource being referred to.
  20190. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20191. maxLength: 63
  20192. minLength: 1
  20193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20194. type: string
  20195. type: object
  20196. required:
  20197. - accessKeyID
  20198. - secretAccessKey
  20199. type: object
  20200. type: object
  20201. region:
  20202. description: Region specifies the Volcengine region to connect to.
  20203. type: string
  20204. required:
  20205. - region
  20206. type: object
  20207. webhook:
  20208. description: Webhook configures this store to sync secrets using a generic templated webhook
  20209. properties:
  20210. auth:
  20211. description: Auth specifies a authorization protocol. Only one protocol may be set.
  20212. maxProperties: 1
  20213. minProperties: 1
  20214. properties:
  20215. ntlm:
  20216. description: NTLMProtocol configures the store to use NTLM for auth
  20217. properties:
  20218. passwordSecret:
  20219. description: |-
  20220. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20221. In some instances, `key` is a required field.
  20222. properties:
  20223. key:
  20224. description: |-
  20225. A key in the referenced Secret.
  20226. Some instances of this field may be defaulted, in others it may be required.
  20227. maxLength: 253
  20228. minLength: 1
  20229. pattern: ^[-._a-zA-Z0-9]+$
  20230. type: string
  20231. name:
  20232. description: The name of the Secret resource being referred to.
  20233. maxLength: 253
  20234. minLength: 1
  20235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20236. type: string
  20237. namespace:
  20238. description: |-
  20239. The namespace of the Secret resource being referred to.
  20240. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20241. maxLength: 63
  20242. minLength: 1
  20243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20244. type: string
  20245. type: object
  20246. usernameSecret:
  20247. description: |-
  20248. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20249. In some instances, `key` is a required field.
  20250. properties:
  20251. key:
  20252. description: |-
  20253. A key in the referenced Secret.
  20254. Some instances of this field may be defaulted, in others it may be required.
  20255. maxLength: 253
  20256. minLength: 1
  20257. pattern: ^[-._a-zA-Z0-9]+$
  20258. type: string
  20259. name:
  20260. description: The name of the Secret resource being referred to.
  20261. maxLength: 253
  20262. minLength: 1
  20263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20264. type: string
  20265. namespace:
  20266. description: |-
  20267. The namespace of the Secret resource being referred to.
  20268. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20269. maxLength: 63
  20270. minLength: 1
  20271. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20272. type: string
  20273. type: object
  20274. required:
  20275. - passwordSecret
  20276. - usernameSecret
  20277. type: object
  20278. type: object
  20279. body:
  20280. description: Body
  20281. type: string
  20282. caBundle:
  20283. description: |-
  20284. PEM encoded CA bundle used to validate webhook server certificate. Only used
  20285. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20286. plain HTTP protocol connection. If not set the system root certificates
  20287. are used to validate the TLS connection.
  20288. format: byte
  20289. type: string
  20290. caProvider:
  20291. description: The provider for the CA bundle to use to validate webhook server certificate.
  20292. properties:
  20293. key:
  20294. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20295. maxLength: 253
  20296. minLength: 1
  20297. pattern: ^[-._a-zA-Z0-9]+$
  20298. type: string
  20299. name:
  20300. description: The name of the object located at the provider type.
  20301. maxLength: 253
  20302. minLength: 1
  20303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20304. type: string
  20305. namespace:
  20306. description: The namespace the Provider type is in.
  20307. maxLength: 63
  20308. minLength: 1
  20309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20310. type: string
  20311. type:
  20312. description: The type of provider to use such as "Secret", or "ConfigMap".
  20313. enum:
  20314. - Secret
  20315. - ConfigMap
  20316. type: string
  20317. required:
  20318. - name
  20319. - type
  20320. type: object
  20321. headers:
  20322. additionalProperties:
  20323. type: string
  20324. description: Headers
  20325. type: object
  20326. method:
  20327. description: Webhook Method
  20328. type: string
  20329. result:
  20330. description: Result formatting
  20331. properties:
  20332. jsonPath:
  20333. description: Json path of return value
  20334. type: string
  20335. type: object
  20336. secrets:
  20337. description: |-
  20338. Secrets to fill in templates
  20339. These secrets will be passed to the templating function as key value pairs under the given name
  20340. items:
  20341. description: WebhookSecret defines a secret that will be passed to the webhook request.
  20342. properties:
  20343. name:
  20344. description: Name of this secret in templates
  20345. type: string
  20346. secretRef:
  20347. description: Secret ref to fill in credentials
  20348. properties:
  20349. key:
  20350. description: |-
  20351. A key in the referenced Secret.
  20352. Some instances of this field may be defaulted, in others it may be required.
  20353. maxLength: 253
  20354. minLength: 1
  20355. pattern: ^[-._a-zA-Z0-9]+$
  20356. type: string
  20357. name:
  20358. description: The name of the Secret resource being referred to.
  20359. maxLength: 253
  20360. minLength: 1
  20361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20362. type: string
  20363. namespace:
  20364. description: |-
  20365. The namespace of the Secret resource being referred to.
  20366. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20367. maxLength: 63
  20368. minLength: 1
  20369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20370. type: string
  20371. type: object
  20372. required:
  20373. - name
  20374. - secretRef
  20375. type: object
  20376. type: array
  20377. timeout:
  20378. description: Timeout
  20379. type: string
  20380. url:
  20381. description: Webhook url to call
  20382. type: string
  20383. required:
  20384. - url
  20385. type: object
  20386. yandexcertificatemanager:
  20387. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  20388. properties:
  20389. apiEndpoint:
  20390. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20391. type: string
  20392. auth:
  20393. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20394. properties:
  20395. authorizedKeySecretRef:
  20396. description: The authorized key used for authentication
  20397. properties:
  20398. key:
  20399. description: |-
  20400. A key in the referenced Secret.
  20401. Some instances of this field may be defaulted, in others it may be required.
  20402. maxLength: 253
  20403. minLength: 1
  20404. pattern: ^[-._a-zA-Z0-9]+$
  20405. type: string
  20406. name:
  20407. description: The name of the Secret resource being referred to.
  20408. maxLength: 253
  20409. minLength: 1
  20410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20411. type: string
  20412. namespace:
  20413. description: |-
  20414. The namespace of the Secret resource being referred to.
  20415. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20416. maxLength: 63
  20417. minLength: 1
  20418. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20419. type: string
  20420. type: object
  20421. type: object
  20422. caProvider:
  20423. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20424. properties:
  20425. certSecretRef:
  20426. description: |-
  20427. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20428. In some instances, `key` is a required field.
  20429. properties:
  20430. key:
  20431. description: |-
  20432. A key in the referenced Secret.
  20433. Some instances of this field may be defaulted, in others it may be required.
  20434. maxLength: 253
  20435. minLength: 1
  20436. pattern: ^[-._a-zA-Z0-9]+$
  20437. type: string
  20438. name:
  20439. description: The name of the Secret resource being referred to.
  20440. maxLength: 253
  20441. minLength: 1
  20442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20443. type: string
  20444. namespace:
  20445. description: |-
  20446. The namespace of the Secret resource being referred to.
  20447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20448. maxLength: 63
  20449. minLength: 1
  20450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20451. type: string
  20452. type: object
  20453. type: object
  20454. fetching:
  20455. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  20456. maxProperties: 1
  20457. minProperties: 1
  20458. properties:
  20459. byID:
  20460. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20461. type: object
  20462. byName:
  20463. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20464. properties:
  20465. folderID:
  20466. description: The folder to fetch secrets from
  20467. type: string
  20468. required:
  20469. - folderID
  20470. type: object
  20471. type: object
  20472. required:
  20473. - auth
  20474. type: object
  20475. yandexlockbox:
  20476. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  20477. properties:
  20478. apiEndpoint:
  20479. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20480. type: string
  20481. auth:
  20482. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20483. properties:
  20484. authorizedKeySecretRef:
  20485. description: The authorized key used for authentication
  20486. properties:
  20487. key:
  20488. description: |-
  20489. A key in the referenced Secret.
  20490. Some instances of this field may be defaulted, in others it may be required.
  20491. maxLength: 253
  20492. minLength: 1
  20493. pattern: ^[-._a-zA-Z0-9]+$
  20494. type: string
  20495. name:
  20496. description: The name of the Secret resource being referred to.
  20497. maxLength: 253
  20498. minLength: 1
  20499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20500. type: string
  20501. namespace:
  20502. description: |-
  20503. The namespace of the Secret resource being referred to.
  20504. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20505. maxLength: 63
  20506. minLength: 1
  20507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20508. type: string
  20509. type: object
  20510. type: object
  20511. caProvider:
  20512. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20513. properties:
  20514. certSecretRef:
  20515. description: |-
  20516. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20517. In some instances, `key` is a required field.
  20518. properties:
  20519. key:
  20520. description: |-
  20521. A key in the referenced Secret.
  20522. Some instances of this field may be defaulted, in others it may be required.
  20523. maxLength: 253
  20524. minLength: 1
  20525. pattern: ^[-._a-zA-Z0-9]+$
  20526. type: string
  20527. name:
  20528. description: The name of the Secret resource being referred to.
  20529. maxLength: 253
  20530. minLength: 1
  20531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20532. type: string
  20533. namespace:
  20534. description: |-
  20535. The namespace of the Secret resource being referred to.
  20536. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20537. maxLength: 63
  20538. minLength: 1
  20539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20540. type: string
  20541. type: object
  20542. type: object
  20543. fetching:
  20544. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  20545. maxProperties: 1
  20546. minProperties: 1
  20547. properties:
  20548. byID:
  20549. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20550. type: object
  20551. byName:
  20552. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20553. properties:
  20554. folderID:
  20555. description: The folder to fetch secrets from
  20556. type: string
  20557. required:
  20558. - folderID
  20559. type: object
  20560. type: object
  20561. required:
  20562. - auth
  20563. type: object
  20564. type: object
  20565. refreshInterval:
  20566. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  20567. type: integer
  20568. retrySettings:
  20569. description: Used to configure HTTP retries on failures.
  20570. properties:
  20571. maxRetries:
  20572. format: int32
  20573. type: integer
  20574. retryInterval:
  20575. type: string
  20576. type: object
  20577. required:
  20578. - provider
  20579. type: object
  20580. status:
  20581. description: SecretStoreStatus defines the observed state of the SecretStore.
  20582. properties:
  20583. capabilities:
  20584. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  20585. type: string
  20586. conditions:
  20587. items:
  20588. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  20589. properties:
  20590. lastTransitionTime:
  20591. format: date-time
  20592. type: string
  20593. message:
  20594. type: string
  20595. reason:
  20596. type: string
  20597. status:
  20598. type: string
  20599. type:
  20600. description: SecretStoreConditionType represents the condition of the SecretStore.
  20601. type: string
  20602. required:
  20603. - status
  20604. - type
  20605. type: object
  20606. type: array
  20607. type: object
  20608. type: object
  20609. served: true
  20610. storage: true
  20611. subresources:
  20612. status: {}
  20613. - additionalPrinterColumns:
  20614. - jsonPath: .metadata.creationTimestamp
  20615. name: AGE
  20616. type: date
  20617. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  20618. name: Status
  20619. type: string
  20620. - jsonPath: .status.capabilities
  20621. name: Capabilities
  20622. type: string
  20623. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20624. name: Ready
  20625. type: string
  20626. deprecated: true
  20627. name: v1beta1
  20628. schema:
  20629. openAPIV3Schema:
  20630. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  20631. properties:
  20632. apiVersion:
  20633. description: |-
  20634. APIVersion defines the versioned schema of this representation of an object.
  20635. Servers should convert recognized schemas to the latest internal value, and
  20636. may reject unrecognized values.
  20637. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  20638. type: string
  20639. kind:
  20640. description: |-
  20641. Kind is a string value representing the REST resource this object represents.
  20642. Servers may infer this from the endpoint the client submits requests to.
  20643. Cannot be updated.
  20644. In CamelCase.
  20645. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  20646. type: string
  20647. metadata:
  20648. type: object
  20649. spec:
  20650. description: SecretStoreSpec defines the desired state of SecretStore.
  20651. properties:
  20652. conditions:
  20653. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  20654. items:
  20655. description: |-
  20656. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  20657. for a ClusterSecretStore instance.
  20658. properties:
  20659. namespaceRegexes:
  20660. description: Choose namespaces by using regex matching
  20661. items:
  20662. type: string
  20663. type: array
  20664. namespaceSelector:
  20665. description: Choose namespace using a labelSelector
  20666. properties:
  20667. matchExpressions:
  20668. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  20669. items:
  20670. description: |-
  20671. A label selector requirement is a selector that contains values, a key, and an operator that
  20672. relates the key and values.
  20673. properties:
  20674. key:
  20675. description: key is the label key that the selector applies to.
  20676. type: string
  20677. operator:
  20678. description: |-
  20679. operator represents a key's relationship to a set of values.
  20680. Valid operators are In, NotIn, Exists and DoesNotExist.
  20681. type: string
  20682. values:
  20683. description: |-
  20684. values is an array of string values. If the operator is In or NotIn,
  20685. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  20686. the values array must be empty. This array is replaced during a strategic
  20687. merge patch.
  20688. items:
  20689. type: string
  20690. type: array
  20691. x-kubernetes-list-type: atomic
  20692. required:
  20693. - key
  20694. - operator
  20695. type: object
  20696. type: array
  20697. x-kubernetes-list-type: atomic
  20698. matchLabels:
  20699. additionalProperties:
  20700. type: string
  20701. description: |-
  20702. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  20703. map is equivalent to an element of matchExpressions, whose key field is "key", the
  20704. operator is "In", and the values array contains only "value". The requirements are ANDed.
  20705. type: object
  20706. type: object
  20707. x-kubernetes-map-type: atomic
  20708. namespaces:
  20709. description: Choose namespaces by name
  20710. items:
  20711. maxLength: 63
  20712. minLength: 1
  20713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20714. type: string
  20715. type: array
  20716. type: object
  20717. type: array
  20718. controller:
  20719. description: |-
  20720. Used to select the correct ESO controller (think: ingress.ingressClassName)
  20721. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  20722. type: string
  20723. provider:
  20724. description: Used to configure the provider. Only one provider may be set
  20725. maxProperties: 1
  20726. minProperties: 1
  20727. properties:
  20728. akeyless:
  20729. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  20730. properties:
  20731. akeylessGWApiURL:
  20732. description: Akeyless GW API Url from which the secrets to be fetched from.
  20733. type: string
  20734. authSecretRef:
  20735. description: Auth configures how the operator authenticates with Akeyless.
  20736. properties:
  20737. kubernetesAuth:
  20738. description: |-
  20739. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  20740. token stored in the named Secret resource.
  20741. properties:
  20742. accessID:
  20743. description: the Akeyless Kubernetes auth-method access-id
  20744. type: string
  20745. k8sConfName:
  20746. description: Kubernetes-auth configuration name in Akeyless-Gateway
  20747. type: string
  20748. secretRef:
  20749. description: |-
  20750. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20751. for authenticating with Akeyless. If a name is specified without a key,
  20752. `token` is the default. If one is not specified, the one bound to
  20753. the controller will be used.
  20754. properties:
  20755. key:
  20756. description: |-
  20757. A key in the referenced Secret.
  20758. Some instances of this field may be defaulted, in others it may be required.
  20759. maxLength: 253
  20760. minLength: 1
  20761. pattern: ^[-._a-zA-Z0-9]+$
  20762. type: string
  20763. name:
  20764. description: The name of the Secret resource being referred to.
  20765. maxLength: 253
  20766. minLength: 1
  20767. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20768. type: string
  20769. namespace:
  20770. description: |-
  20771. The namespace of the Secret resource being referred to.
  20772. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20773. maxLength: 63
  20774. minLength: 1
  20775. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20776. type: string
  20777. type: object
  20778. serviceAccountRef:
  20779. description: |-
  20780. Optional service account field containing the name of a kubernetes ServiceAccount.
  20781. If the service account is specified, the service account secret token JWT will be used
  20782. for authenticating with Akeyless. If the service account selector is not supplied,
  20783. the secretRef will be used instead.
  20784. properties:
  20785. audiences:
  20786. description: |-
  20787. Audience specifies the `aud` claim for the service account token
  20788. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20789. then this audiences will be appended to the list
  20790. items:
  20791. type: string
  20792. type: array
  20793. name:
  20794. description: The name of the ServiceAccount resource being referred to.
  20795. maxLength: 253
  20796. minLength: 1
  20797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20798. type: string
  20799. namespace:
  20800. description: |-
  20801. Namespace of the resource being referred to.
  20802. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20803. maxLength: 63
  20804. minLength: 1
  20805. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20806. type: string
  20807. required:
  20808. - name
  20809. type: object
  20810. required:
  20811. - accessID
  20812. - k8sConfName
  20813. type: object
  20814. secretRef:
  20815. description: |-
  20816. Reference to a Secret that contains the details
  20817. to authenticate with Akeyless.
  20818. properties:
  20819. accessID:
  20820. description: The SecretAccessID is used for authentication
  20821. properties:
  20822. key:
  20823. description: |-
  20824. A key in the referenced Secret.
  20825. Some instances of this field may be defaulted, in others it may be required.
  20826. maxLength: 253
  20827. minLength: 1
  20828. pattern: ^[-._a-zA-Z0-9]+$
  20829. type: string
  20830. name:
  20831. description: The name of the Secret resource being referred to.
  20832. maxLength: 253
  20833. minLength: 1
  20834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20835. type: string
  20836. namespace:
  20837. description: |-
  20838. The namespace of the Secret resource being referred to.
  20839. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20840. maxLength: 63
  20841. minLength: 1
  20842. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20843. type: string
  20844. type: object
  20845. accessType:
  20846. description: |-
  20847. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20848. In some instances, `key` is a required field.
  20849. properties:
  20850. key:
  20851. description: |-
  20852. A key in the referenced Secret.
  20853. Some instances of this field may be defaulted, in others it may be required.
  20854. maxLength: 253
  20855. minLength: 1
  20856. pattern: ^[-._a-zA-Z0-9]+$
  20857. type: string
  20858. name:
  20859. description: The name of the Secret resource being referred to.
  20860. maxLength: 253
  20861. minLength: 1
  20862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20863. type: string
  20864. namespace:
  20865. description: |-
  20866. The namespace of the Secret resource being referred to.
  20867. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20868. maxLength: 63
  20869. minLength: 1
  20870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20871. type: string
  20872. type: object
  20873. accessTypeParam:
  20874. description: |-
  20875. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20876. In some instances, `key` is a required field.
  20877. properties:
  20878. key:
  20879. description: |-
  20880. A key in the referenced Secret.
  20881. Some instances of this field may be defaulted, in others it may be required.
  20882. maxLength: 253
  20883. minLength: 1
  20884. pattern: ^[-._a-zA-Z0-9]+$
  20885. type: string
  20886. name:
  20887. description: The name of the Secret resource being referred to.
  20888. maxLength: 253
  20889. minLength: 1
  20890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20891. type: string
  20892. namespace:
  20893. description: |-
  20894. The namespace of the Secret resource being referred to.
  20895. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20896. maxLength: 63
  20897. minLength: 1
  20898. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20899. type: string
  20900. type: object
  20901. type: object
  20902. type: object
  20903. caBundle:
  20904. description: |-
  20905. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  20906. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  20907. are used to validate the TLS connection.
  20908. format: byte
  20909. type: string
  20910. caProvider:
  20911. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  20912. properties:
  20913. key:
  20914. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20915. maxLength: 253
  20916. minLength: 1
  20917. pattern: ^[-._a-zA-Z0-9]+$
  20918. type: string
  20919. name:
  20920. description: The name of the object located at the provider type.
  20921. maxLength: 253
  20922. minLength: 1
  20923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20924. type: string
  20925. namespace:
  20926. description: |-
  20927. The namespace the Provider type is in.
  20928. Can only be defined when used in a ClusterSecretStore.
  20929. maxLength: 63
  20930. minLength: 1
  20931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20932. type: string
  20933. type:
  20934. description: The type of provider to use such as "Secret", or "ConfigMap".
  20935. enum:
  20936. - Secret
  20937. - ConfigMap
  20938. type: string
  20939. required:
  20940. - name
  20941. - type
  20942. type: object
  20943. required:
  20944. - akeylessGWApiURL
  20945. - authSecretRef
  20946. type: object
  20947. alibaba:
  20948. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  20949. properties:
  20950. auth:
  20951. description: AlibabaAuth contains a secretRef for credentials.
  20952. properties:
  20953. rrsa:
  20954. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  20955. properties:
  20956. oidcProviderArn:
  20957. type: string
  20958. oidcTokenFilePath:
  20959. type: string
  20960. roleArn:
  20961. type: string
  20962. sessionName:
  20963. type: string
  20964. required:
  20965. - oidcProviderArn
  20966. - oidcTokenFilePath
  20967. - roleArn
  20968. - sessionName
  20969. type: object
  20970. secretRef:
  20971. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  20972. properties:
  20973. accessKeyIDSecretRef:
  20974. description: The AccessKeyID is used for authentication
  20975. properties:
  20976. key:
  20977. description: |-
  20978. A key in the referenced Secret.
  20979. Some instances of this field may be defaulted, in others it may be required.
  20980. maxLength: 253
  20981. minLength: 1
  20982. pattern: ^[-._a-zA-Z0-9]+$
  20983. type: string
  20984. name:
  20985. description: The name of the Secret resource being referred to.
  20986. maxLength: 253
  20987. minLength: 1
  20988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20989. type: string
  20990. namespace:
  20991. description: |-
  20992. The namespace of the Secret resource being referred to.
  20993. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20994. maxLength: 63
  20995. minLength: 1
  20996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20997. type: string
  20998. type: object
  20999. accessKeySecretSecretRef:
  21000. description: The AccessKeySecret is used for authentication
  21001. properties:
  21002. key:
  21003. description: |-
  21004. A key in the referenced Secret.
  21005. Some instances of this field may be defaulted, in others it may be required.
  21006. maxLength: 253
  21007. minLength: 1
  21008. pattern: ^[-._a-zA-Z0-9]+$
  21009. type: string
  21010. name:
  21011. description: The name of the Secret resource being referred to.
  21012. maxLength: 253
  21013. minLength: 1
  21014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21015. type: string
  21016. namespace:
  21017. description: |-
  21018. The namespace of the Secret resource being referred to.
  21019. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21020. maxLength: 63
  21021. minLength: 1
  21022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21023. type: string
  21024. type: object
  21025. required:
  21026. - accessKeyIDSecretRef
  21027. - accessKeySecretSecretRef
  21028. type: object
  21029. type: object
  21030. regionID:
  21031. description: Alibaba Region to be used for the provider
  21032. type: string
  21033. required:
  21034. - auth
  21035. - regionID
  21036. type: object
  21037. aws:
  21038. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  21039. properties:
  21040. additionalRoles:
  21041. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  21042. items:
  21043. type: string
  21044. type: array
  21045. auth:
  21046. description: |-
  21047. Auth defines the information necessary to authenticate against AWS
  21048. if not set aws sdk will infer credentials from your environment
  21049. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  21050. properties:
  21051. jwt:
  21052. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  21053. properties:
  21054. serviceAccountRef:
  21055. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21056. properties:
  21057. audiences:
  21058. description: |-
  21059. Audience specifies the `aud` claim for the service account token
  21060. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21061. then this audiences will be appended to the list
  21062. items:
  21063. type: string
  21064. type: array
  21065. name:
  21066. description: The name of the ServiceAccount resource being referred to.
  21067. maxLength: 253
  21068. minLength: 1
  21069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21070. type: string
  21071. namespace:
  21072. description: |-
  21073. Namespace of the resource being referred to.
  21074. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21075. maxLength: 63
  21076. minLength: 1
  21077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21078. type: string
  21079. required:
  21080. - name
  21081. type: object
  21082. type: object
  21083. secretRef:
  21084. description: |-
  21085. AWSAuthSecretRef holds secret references for AWS credentials
  21086. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  21087. properties:
  21088. accessKeyIDSecretRef:
  21089. description: The AccessKeyID is used for authentication
  21090. properties:
  21091. key:
  21092. description: |-
  21093. A key in the referenced Secret.
  21094. Some instances of this field may be defaulted, in others it may be required.
  21095. maxLength: 253
  21096. minLength: 1
  21097. pattern: ^[-._a-zA-Z0-9]+$
  21098. type: string
  21099. name:
  21100. description: The name of the Secret resource being referred to.
  21101. maxLength: 253
  21102. minLength: 1
  21103. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21104. type: string
  21105. namespace:
  21106. description: |-
  21107. The namespace of the Secret resource being referred to.
  21108. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21109. maxLength: 63
  21110. minLength: 1
  21111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21112. type: string
  21113. type: object
  21114. secretAccessKeySecretRef:
  21115. description: The SecretAccessKey is used for authentication
  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. sessionTokenSecretRef:
  21141. description: |-
  21142. The SessionToken used for authentication
  21143. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  21144. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  21145. properties:
  21146. key:
  21147. description: |-
  21148. A key in the referenced Secret.
  21149. Some instances of this field may be defaulted, in others it may be required.
  21150. maxLength: 253
  21151. minLength: 1
  21152. pattern: ^[-._a-zA-Z0-9]+$
  21153. type: string
  21154. name:
  21155. description: The name of the Secret resource being referred to.
  21156. maxLength: 253
  21157. minLength: 1
  21158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21159. type: string
  21160. namespace:
  21161. description: |-
  21162. The namespace of the Secret resource being referred to.
  21163. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21164. maxLength: 63
  21165. minLength: 1
  21166. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21167. type: string
  21168. type: object
  21169. type: object
  21170. type: object
  21171. externalID:
  21172. description: AWS External ID set on assumed IAM roles
  21173. type: string
  21174. prefix:
  21175. description: Prefix adds a prefix to all retrieved values.
  21176. type: string
  21177. region:
  21178. description: AWS Region to be used for the provider
  21179. type: string
  21180. role:
  21181. description: Role is a Role ARN which the provider will assume
  21182. type: string
  21183. secretsManager:
  21184. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  21185. properties:
  21186. forceDeleteWithoutRecovery:
  21187. description: |-
  21188. Specifies whether to delete the secret without any recovery window. You
  21189. can't use both this parameter and RecoveryWindowInDays in the same call.
  21190. If you don't use either, then by default Secrets Manager uses a 30 day
  21191. recovery window.
  21192. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  21193. type: boolean
  21194. recoveryWindowInDays:
  21195. description: |-
  21196. The number of days from 7 to 30 that Secrets Manager waits before
  21197. permanently deleting the secret. You can't use both this parameter and
  21198. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  21199. then by default Secrets Manager uses a 30 day recovery window.
  21200. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  21201. format: int64
  21202. type: integer
  21203. type: object
  21204. service:
  21205. description: Service defines which service should be used to fetch the secrets
  21206. enum:
  21207. - SecretsManager
  21208. - ParameterStore
  21209. type: string
  21210. sessionTags:
  21211. description: AWS STS assume role session tags
  21212. items:
  21213. description: Tag defines a tag key and value for AWS resources.
  21214. properties:
  21215. key:
  21216. type: string
  21217. value:
  21218. type: string
  21219. required:
  21220. - key
  21221. - value
  21222. type: object
  21223. type: array
  21224. transitiveTagKeys:
  21225. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  21226. items:
  21227. type: string
  21228. type: array
  21229. required:
  21230. - region
  21231. - service
  21232. type: object
  21233. azurekv:
  21234. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  21235. properties:
  21236. authSecretRef:
  21237. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21238. properties:
  21239. clientCertificate:
  21240. description: The Azure ClientCertificate of the service principle used for authentication.
  21241. properties:
  21242. key:
  21243. description: |-
  21244. A key in the referenced Secret.
  21245. Some instances of this field may be defaulted, in others it may be required.
  21246. maxLength: 253
  21247. minLength: 1
  21248. pattern: ^[-._a-zA-Z0-9]+$
  21249. type: string
  21250. name:
  21251. description: The name of the Secret resource being referred to.
  21252. maxLength: 253
  21253. minLength: 1
  21254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21255. type: string
  21256. namespace:
  21257. description: |-
  21258. The namespace of the Secret resource being referred to.
  21259. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21260. maxLength: 63
  21261. minLength: 1
  21262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21263. type: string
  21264. type: object
  21265. clientId:
  21266. description: The Azure clientId of the service principle or managed identity used for authentication.
  21267. properties:
  21268. key:
  21269. description: |-
  21270. A key in the referenced Secret.
  21271. Some instances of this field may be defaulted, in others it may be required.
  21272. maxLength: 253
  21273. minLength: 1
  21274. pattern: ^[-._a-zA-Z0-9]+$
  21275. type: string
  21276. name:
  21277. description: The name of the Secret resource being referred to.
  21278. maxLength: 253
  21279. minLength: 1
  21280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21281. type: string
  21282. namespace:
  21283. description: |-
  21284. The namespace of the Secret resource being referred to.
  21285. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21286. maxLength: 63
  21287. minLength: 1
  21288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21289. type: string
  21290. type: object
  21291. clientSecret:
  21292. description: The Azure ClientSecret of the service principle used for authentication.
  21293. properties:
  21294. key:
  21295. description: |-
  21296. A key in the referenced Secret.
  21297. Some instances of this field may be defaulted, in others it may be required.
  21298. maxLength: 253
  21299. minLength: 1
  21300. pattern: ^[-._a-zA-Z0-9]+$
  21301. type: string
  21302. name:
  21303. description: The name of the Secret resource being referred to.
  21304. maxLength: 253
  21305. minLength: 1
  21306. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21307. type: string
  21308. namespace:
  21309. description: |-
  21310. The namespace of the Secret resource being referred to.
  21311. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21312. maxLength: 63
  21313. minLength: 1
  21314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21315. type: string
  21316. type: object
  21317. tenantId:
  21318. description: The Azure tenantId of the managed identity used for authentication.
  21319. properties:
  21320. key:
  21321. description: |-
  21322. A key in the referenced Secret.
  21323. Some instances of this field may be defaulted, in others it may be required.
  21324. maxLength: 253
  21325. minLength: 1
  21326. pattern: ^[-._a-zA-Z0-9]+$
  21327. type: string
  21328. name:
  21329. description: The name of the Secret resource being referred to.
  21330. maxLength: 253
  21331. minLength: 1
  21332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21333. type: string
  21334. namespace:
  21335. description: |-
  21336. The namespace of the Secret resource being referred to.
  21337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21338. maxLength: 63
  21339. minLength: 1
  21340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21341. type: string
  21342. type: object
  21343. type: object
  21344. authType:
  21345. default: ServicePrincipal
  21346. description: |-
  21347. Auth type defines how to authenticate to the keyvault service.
  21348. Valid values are:
  21349. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  21350. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  21351. enum:
  21352. - ServicePrincipal
  21353. - ManagedIdentity
  21354. - WorkloadIdentity
  21355. type: string
  21356. environmentType:
  21357. default: PublicCloud
  21358. description: |-
  21359. EnvironmentType specifies the Azure cloud environment endpoints to use for
  21360. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  21361. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  21362. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  21363. enum:
  21364. - PublicCloud
  21365. - USGovernmentCloud
  21366. - ChinaCloud
  21367. - GermanCloud
  21368. type: string
  21369. identityId:
  21370. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  21371. type: string
  21372. serviceAccountRef:
  21373. description: |-
  21374. ServiceAccountRef specified the service account
  21375. that should be used when authenticating with WorkloadIdentity.
  21376. properties:
  21377. audiences:
  21378. description: |-
  21379. Audience specifies the `aud` claim for the service account token
  21380. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21381. then this audiences will be appended to the list
  21382. items:
  21383. type: string
  21384. type: array
  21385. name:
  21386. description: The name of the ServiceAccount resource being referred to.
  21387. maxLength: 253
  21388. minLength: 1
  21389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21390. type: string
  21391. namespace:
  21392. description: |-
  21393. Namespace of the resource being referred to.
  21394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21395. maxLength: 63
  21396. minLength: 1
  21397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21398. type: string
  21399. required:
  21400. - name
  21401. type: object
  21402. tenantId:
  21403. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21404. type: string
  21405. vaultUrl:
  21406. description: Vault Url from which the secrets to be fetched from.
  21407. type: string
  21408. required:
  21409. - vaultUrl
  21410. type: object
  21411. beyondtrust:
  21412. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  21413. properties:
  21414. auth:
  21415. description: Auth configures how the operator authenticates with Beyondtrust.
  21416. properties:
  21417. apiKey:
  21418. description: APIKey If not provided then ClientID/ClientSecret become required.
  21419. properties:
  21420. secretRef:
  21421. description: SecretRef references a key in a secret that will be used as value.
  21422. properties:
  21423. key:
  21424. description: |-
  21425. A key in the referenced Secret.
  21426. Some instances of this field may be defaulted, in others it may be required.
  21427. maxLength: 253
  21428. minLength: 1
  21429. pattern: ^[-._a-zA-Z0-9]+$
  21430. type: string
  21431. name:
  21432. description: The name of the Secret resource being referred to.
  21433. maxLength: 253
  21434. minLength: 1
  21435. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21436. type: string
  21437. namespace:
  21438. description: |-
  21439. The namespace of the Secret resource being referred to.
  21440. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21441. maxLength: 63
  21442. minLength: 1
  21443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21444. type: string
  21445. type: object
  21446. value:
  21447. description: Value can be specified directly to set a value without using a secret.
  21448. type: string
  21449. type: object
  21450. certificate:
  21451. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  21452. properties:
  21453. secretRef:
  21454. description: SecretRef references a key in a secret that will be used as value.
  21455. properties:
  21456. key:
  21457. description: |-
  21458. A key in the referenced Secret.
  21459. Some instances of this field may be defaulted, in others it may be required.
  21460. maxLength: 253
  21461. minLength: 1
  21462. pattern: ^[-._a-zA-Z0-9]+$
  21463. type: string
  21464. name:
  21465. description: The name of the Secret resource being referred to.
  21466. maxLength: 253
  21467. minLength: 1
  21468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21469. type: string
  21470. namespace:
  21471. description: |-
  21472. The namespace of the Secret resource being referred to.
  21473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21474. maxLength: 63
  21475. minLength: 1
  21476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21477. type: string
  21478. type: object
  21479. value:
  21480. description: Value can be specified directly to set a value without using a secret.
  21481. type: string
  21482. type: object
  21483. certificateKey:
  21484. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  21485. properties:
  21486. secretRef:
  21487. description: SecretRef references a key in a secret that will be used as value.
  21488. properties:
  21489. key:
  21490. description: |-
  21491. A key in the referenced Secret.
  21492. Some instances of this field may be defaulted, in others it may be required.
  21493. maxLength: 253
  21494. minLength: 1
  21495. pattern: ^[-._a-zA-Z0-9]+$
  21496. type: string
  21497. name:
  21498. description: The name of the Secret resource being referred to.
  21499. maxLength: 253
  21500. minLength: 1
  21501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21502. type: string
  21503. namespace:
  21504. description: |-
  21505. The namespace of the Secret resource being referred to.
  21506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21507. maxLength: 63
  21508. minLength: 1
  21509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21510. type: string
  21511. type: object
  21512. value:
  21513. description: Value can be specified directly to set a value without using a secret.
  21514. type: string
  21515. type: object
  21516. clientId:
  21517. description: ClientID is the API OAuth Client ID.
  21518. properties:
  21519. secretRef:
  21520. description: SecretRef references a key in a secret that will be used as value.
  21521. properties:
  21522. key:
  21523. description: |-
  21524. A key in the referenced Secret.
  21525. Some instances of this field may be defaulted, in others it may be required.
  21526. maxLength: 253
  21527. minLength: 1
  21528. pattern: ^[-._a-zA-Z0-9]+$
  21529. type: string
  21530. name:
  21531. description: The name of the Secret resource being referred to.
  21532. maxLength: 253
  21533. minLength: 1
  21534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21535. type: string
  21536. namespace:
  21537. description: |-
  21538. The namespace of the Secret resource being referred to.
  21539. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21540. maxLength: 63
  21541. minLength: 1
  21542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21543. type: string
  21544. type: object
  21545. value:
  21546. description: Value can be specified directly to set a value without using a secret.
  21547. type: string
  21548. type: object
  21549. clientSecret:
  21550. description: ClientSecret is the API OAuth Client Secret.
  21551. properties:
  21552. secretRef:
  21553. description: SecretRef references a key in a secret that will be used as value.
  21554. properties:
  21555. key:
  21556. description: |-
  21557. A key in the referenced Secret.
  21558. Some instances of this field may be defaulted, in others it may be required.
  21559. maxLength: 253
  21560. minLength: 1
  21561. pattern: ^[-._a-zA-Z0-9]+$
  21562. type: string
  21563. name:
  21564. description: The name of the Secret resource being referred to.
  21565. maxLength: 253
  21566. minLength: 1
  21567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21568. type: string
  21569. namespace:
  21570. description: |-
  21571. The namespace of the Secret resource being referred to.
  21572. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21573. maxLength: 63
  21574. minLength: 1
  21575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21576. type: string
  21577. type: object
  21578. value:
  21579. description: Value can be specified directly to set a value without using a secret.
  21580. type: string
  21581. type: object
  21582. type: object
  21583. server:
  21584. description: Auth configures how API server works.
  21585. properties:
  21586. apiUrl:
  21587. type: string
  21588. apiVersion:
  21589. type: string
  21590. clientTimeOutSeconds:
  21591. 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.
  21592. type: integer
  21593. decrypt:
  21594. default: true
  21595. 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.'
  21596. type: boolean
  21597. retrievalType:
  21598. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  21599. type: string
  21600. separator:
  21601. description: A character that separates the folder names.
  21602. type: string
  21603. verifyCA:
  21604. type: boolean
  21605. required:
  21606. - apiUrl
  21607. - verifyCA
  21608. type: object
  21609. required:
  21610. - auth
  21611. - server
  21612. type: object
  21613. bitwardensecretsmanager:
  21614. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  21615. properties:
  21616. apiURL:
  21617. type: string
  21618. auth:
  21619. description: |-
  21620. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  21621. Make sure that the token being used has permissions on the given secret.
  21622. properties:
  21623. secretRef:
  21624. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  21625. properties:
  21626. credentials:
  21627. description: AccessToken used for the bitwarden instance.
  21628. properties:
  21629. key:
  21630. description: |-
  21631. A key in the referenced Secret.
  21632. Some instances of this field may be defaulted, in others it may be required.
  21633. maxLength: 253
  21634. minLength: 1
  21635. pattern: ^[-._a-zA-Z0-9]+$
  21636. type: string
  21637. name:
  21638. description: The name of the Secret resource being referred to.
  21639. maxLength: 253
  21640. minLength: 1
  21641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21642. type: string
  21643. namespace:
  21644. description: |-
  21645. The namespace of the Secret resource being referred to.
  21646. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21647. maxLength: 63
  21648. minLength: 1
  21649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21650. type: string
  21651. type: object
  21652. required:
  21653. - credentials
  21654. type: object
  21655. required:
  21656. - secretRef
  21657. type: object
  21658. bitwardenServerSDKURL:
  21659. type: string
  21660. caBundle:
  21661. description: |-
  21662. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  21663. can be performed.
  21664. type: string
  21665. caProvider:
  21666. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  21667. properties:
  21668. key:
  21669. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21670. maxLength: 253
  21671. minLength: 1
  21672. pattern: ^[-._a-zA-Z0-9]+$
  21673. type: string
  21674. name:
  21675. description: The name of the object located at the provider type.
  21676. maxLength: 253
  21677. minLength: 1
  21678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21679. type: string
  21680. namespace:
  21681. description: |-
  21682. The namespace the Provider type is in.
  21683. Can only be defined when used in a ClusterSecretStore.
  21684. maxLength: 63
  21685. minLength: 1
  21686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21687. type: string
  21688. type:
  21689. description: The type of provider to use such as "Secret", or "ConfigMap".
  21690. enum:
  21691. - Secret
  21692. - ConfigMap
  21693. type: string
  21694. required:
  21695. - name
  21696. - type
  21697. type: object
  21698. identityURL:
  21699. type: string
  21700. organizationID:
  21701. description: OrganizationID determines which organization this secret store manages.
  21702. type: string
  21703. projectID:
  21704. description: ProjectID determines which project this secret store manages.
  21705. type: string
  21706. required:
  21707. - auth
  21708. - organizationID
  21709. - projectID
  21710. type: object
  21711. chef:
  21712. description: Chef configures this store to sync secrets with chef server
  21713. properties:
  21714. auth:
  21715. description: Auth defines the information necessary to authenticate against chef Server
  21716. properties:
  21717. secretRef:
  21718. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  21719. properties:
  21720. privateKeySecretRef:
  21721. description: SecretKey is the Signing Key in PEM format, used for authentication.
  21722. properties:
  21723. key:
  21724. description: |-
  21725. A key in the referenced Secret.
  21726. Some instances of this field may be defaulted, in others it may be required.
  21727. maxLength: 253
  21728. minLength: 1
  21729. pattern: ^[-._a-zA-Z0-9]+$
  21730. type: string
  21731. name:
  21732. description: The name of the Secret resource being referred to.
  21733. maxLength: 253
  21734. minLength: 1
  21735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21736. type: string
  21737. namespace:
  21738. description: |-
  21739. The namespace of the Secret resource being referred to.
  21740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21741. maxLength: 63
  21742. minLength: 1
  21743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21744. type: string
  21745. type: object
  21746. required:
  21747. - privateKeySecretRef
  21748. type: object
  21749. required:
  21750. - secretRef
  21751. type: object
  21752. serverUrl:
  21753. 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 "/"
  21754. type: string
  21755. username:
  21756. description: UserName should be the user ID on the chef server
  21757. type: string
  21758. required:
  21759. - auth
  21760. - serverUrl
  21761. - username
  21762. type: object
  21763. cloudrusm:
  21764. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  21765. properties:
  21766. auth:
  21767. description: CSMAuth contains a secretRef for credentials.
  21768. properties:
  21769. secretRef:
  21770. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  21771. properties:
  21772. accessKeyIDSecretRef:
  21773. description: The AccessKeyID is used for authentication
  21774. properties:
  21775. key:
  21776. description: |-
  21777. A key in the referenced Secret.
  21778. Some instances of this field may be defaulted, in others it may be required.
  21779. maxLength: 253
  21780. minLength: 1
  21781. pattern: ^[-._a-zA-Z0-9]+$
  21782. type: string
  21783. name:
  21784. description: The name of the Secret resource being referred to.
  21785. maxLength: 253
  21786. minLength: 1
  21787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21788. type: string
  21789. namespace:
  21790. description: |-
  21791. The namespace of the Secret resource being referred to.
  21792. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21793. maxLength: 63
  21794. minLength: 1
  21795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21796. type: string
  21797. type: object
  21798. accessKeySecretSecretRef:
  21799. description: The AccessKeySecret is used for authentication
  21800. properties:
  21801. key:
  21802. description: |-
  21803. A key in the referenced Secret.
  21804. Some instances of this field may be defaulted, in others it may be required.
  21805. maxLength: 253
  21806. minLength: 1
  21807. pattern: ^[-._a-zA-Z0-9]+$
  21808. type: string
  21809. name:
  21810. description: The name of the Secret resource being referred to.
  21811. maxLength: 253
  21812. minLength: 1
  21813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21814. type: string
  21815. namespace:
  21816. description: |-
  21817. The namespace of the Secret resource being referred to.
  21818. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21819. maxLength: 63
  21820. minLength: 1
  21821. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21822. type: string
  21823. type: object
  21824. required:
  21825. - accessKeyIDSecretRef
  21826. - accessKeySecretSecretRef
  21827. type: object
  21828. type: object
  21829. projectID:
  21830. description: ProjectID is the project, which the secrets are stored in.
  21831. type: string
  21832. required:
  21833. - auth
  21834. type: object
  21835. conjur:
  21836. description: Conjur configures this store to sync secrets using conjur provider
  21837. properties:
  21838. auth:
  21839. description: Defines authentication settings for connecting to Conjur.
  21840. properties:
  21841. apikey:
  21842. description: Authenticates with Conjur using an API key.
  21843. properties:
  21844. account:
  21845. description: Account is the Conjur organization account name.
  21846. type: string
  21847. apiKeyRef:
  21848. description: |-
  21849. A reference to a specific 'key' containing the Conjur API key
  21850. within a Secret resource. In some instances, `key` is a required field.
  21851. properties:
  21852. key:
  21853. description: |-
  21854. A key in the referenced Secret.
  21855. Some instances of this field may be defaulted, in others it may be required.
  21856. maxLength: 253
  21857. minLength: 1
  21858. pattern: ^[-._a-zA-Z0-9]+$
  21859. type: string
  21860. name:
  21861. description: The name of the Secret resource being referred to.
  21862. maxLength: 253
  21863. minLength: 1
  21864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21865. type: string
  21866. namespace:
  21867. description: |-
  21868. The namespace of the Secret resource being referred to.
  21869. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21870. maxLength: 63
  21871. minLength: 1
  21872. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21873. type: string
  21874. type: object
  21875. userRef:
  21876. description: |-
  21877. A reference to a specific 'key' containing the Conjur username
  21878. within a Secret resource. In some instances, `key` is a required field.
  21879. properties:
  21880. key:
  21881. description: |-
  21882. A key in the referenced Secret.
  21883. Some instances of this field may be defaulted, in others it may be required.
  21884. maxLength: 253
  21885. minLength: 1
  21886. pattern: ^[-._a-zA-Z0-9]+$
  21887. type: string
  21888. name:
  21889. description: The name of the Secret resource being referred to.
  21890. maxLength: 253
  21891. minLength: 1
  21892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21893. type: string
  21894. namespace:
  21895. description: |-
  21896. The namespace of the Secret resource being referred to.
  21897. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21898. maxLength: 63
  21899. minLength: 1
  21900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21901. type: string
  21902. type: object
  21903. required:
  21904. - account
  21905. - apiKeyRef
  21906. - userRef
  21907. type: object
  21908. jwt:
  21909. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  21910. properties:
  21911. account:
  21912. description: Account is the Conjur organization account name.
  21913. type: string
  21914. hostId:
  21915. description: |-
  21916. Optional HostID for JWT authentication. This may be used depending
  21917. on how the Conjur JWT authenticator policy is configured.
  21918. type: string
  21919. secretRef:
  21920. description: |-
  21921. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  21922. authenticate with Conjur using the JWT authentication method.
  21923. properties:
  21924. key:
  21925. description: |-
  21926. A key in the referenced Secret.
  21927. Some instances of this field may be defaulted, in others it may be required.
  21928. maxLength: 253
  21929. minLength: 1
  21930. pattern: ^[-._a-zA-Z0-9]+$
  21931. type: string
  21932. name:
  21933. description: The name of the Secret resource being referred to.
  21934. maxLength: 253
  21935. minLength: 1
  21936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21937. type: string
  21938. namespace:
  21939. description: |-
  21940. The namespace of the Secret resource being referred to.
  21941. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21942. maxLength: 63
  21943. minLength: 1
  21944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21945. type: string
  21946. type: object
  21947. serviceAccountRef:
  21948. description: |-
  21949. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  21950. a token for with the `TokenRequest` API.
  21951. properties:
  21952. audiences:
  21953. description: |-
  21954. Audience specifies the `aud` claim for the service account token
  21955. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21956. then this audiences will be appended to the list
  21957. items:
  21958. type: string
  21959. type: array
  21960. name:
  21961. description: The name of the ServiceAccount resource being referred to.
  21962. maxLength: 253
  21963. minLength: 1
  21964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21965. type: string
  21966. namespace:
  21967. description: |-
  21968. Namespace of the resource being referred to.
  21969. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21970. maxLength: 63
  21971. minLength: 1
  21972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21973. type: string
  21974. required:
  21975. - name
  21976. type: object
  21977. serviceID:
  21978. description: The conjur authn jwt webservice id
  21979. type: string
  21980. required:
  21981. - account
  21982. - serviceID
  21983. type: object
  21984. type: object
  21985. caBundle:
  21986. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  21987. type: string
  21988. caProvider:
  21989. description: |-
  21990. Used to provide custom certificate authority (CA) certificates
  21991. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  21992. that contains a PEM-encoded certificate.
  21993. properties:
  21994. key:
  21995. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21996. maxLength: 253
  21997. minLength: 1
  21998. pattern: ^[-._a-zA-Z0-9]+$
  21999. type: string
  22000. name:
  22001. description: The name of the object located at the provider type.
  22002. maxLength: 253
  22003. minLength: 1
  22004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22005. type: string
  22006. namespace:
  22007. description: |-
  22008. The namespace the Provider type is in.
  22009. Can only be defined when used in a ClusterSecretStore.
  22010. maxLength: 63
  22011. minLength: 1
  22012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22013. type: string
  22014. type:
  22015. description: The type of provider to use such as "Secret", or "ConfigMap".
  22016. enum:
  22017. - Secret
  22018. - ConfigMap
  22019. type: string
  22020. required:
  22021. - name
  22022. - type
  22023. type: object
  22024. url:
  22025. description: URL is the endpoint of the Conjur instance.
  22026. type: string
  22027. required:
  22028. - auth
  22029. - url
  22030. type: object
  22031. delinea:
  22032. description: |-
  22033. Delinea DevOps Secrets Vault
  22034. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  22035. properties:
  22036. clientId:
  22037. description: ClientID is the non-secret part of the credential.
  22038. properties:
  22039. secretRef:
  22040. description: SecretRef references a key in a secret that will be used as value.
  22041. properties:
  22042. key:
  22043. description: |-
  22044. A key in the referenced Secret.
  22045. Some instances of this field may be defaulted, in others it may be required.
  22046. maxLength: 253
  22047. minLength: 1
  22048. pattern: ^[-._a-zA-Z0-9]+$
  22049. type: string
  22050. name:
  22051. description: The name of the Secret resource being referred to.
  22052. maxLength: 253
  22053. minLength: 1
  22054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22055. type: string
  22056. namespace:
  22057. description: |-
  22058. The namespace of the Secret resource being referred to.
  22059. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22060. maxLength: 63
  22061. minLength: 1
  22062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22063. type: string
  22064. type: object
  22065. value:
  22066. description: Value can be specified directly to set a value without using a secret.
  22067. type: string
  22068. type: object
  22069. clientSecret:
  22070. description: ClientSecret is the secret part of the credential.
  22071. properties:
  22072. secretRef:
  22073. description: SecretRef references a key in a secret that will be used as value.
  22074. properties:
  22075. key:
  22076. description: |-
  22077. A key in the referenced Secret.
  22078. Some instances of this field may be defaulted, in others it may be required.
  22079. maxLength: 253
  22080. minLength: 1
  22081. pattern: ^[-._a-zA-Z0-9]+$
  22082. type: string
  22083. name:
  22084. description: The name of the Secret resource being referred to.
  22085. maxLength: 253
  22086. minLength: 1
  22087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22088. type: string
  22089. namespace:
  22090. description: |-
  22091. The namespace of the Secret resource being referred to.
  22092. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22093. maxLength: 63
  22094. minLength: 1
  22095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22096. type: string
  22097. type: object
  22098. value:
  22099. description: Value can be specified directly to set a value without using a secret.
  22100. type: string
  22101. type: object
  22102. tenant:
  22103. description: Tenant is the chosen hostname / site name.
  22104. type: string
  22105. tld:
  22106. description: |-
  22107. TLD is based on the server location that was chosen during provisioning.
  22108. If unset, defaults to "com".
  22109. type: string
  22110. urlTemplate:
  22111. description: |-
  22112. URLTemplate
  22113. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  22114. type: string
  22115. required:
  22116. - clientId
  22117. - clientSecret
  22118. - tenant
  22119. type: object
  22120. device42:
  22121. description: Device42 configures this store to sync secrets using the Device42 provider
  22122. properties:
  22123. auth:
  22124. description: Auth configures how secret-manager authenticates with a Device42 instance.
  22125. properties:
  22126. secretRef:
  22127. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  22128. properties:
  22129. credentials:
  22130. description: Username / Password is used for authentication.
  22131. properties:
  22132. key:
  22133. description: |-
  22134. A key in the referenced Secret.
  22135. Some instances of this field may be defaulted, in others it may be required.
  22136. maxLength: 253
  22137. minLength: 1
  22138. pattern: ^[-._a-zA-Z0-9]+$
  22139. type: string
  22140. name:
  22141. description: The name of the Secret resource being referred to.
  22142. maxLength: 253
  22143. minLength: 1
  22144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22145. type: string
  22146. namespace:
  22147. description: |-
  22148. The namespace of the Secret resource being referred to.
  22149. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22150. maxLength: 63
  22151. minLength: 1
  22152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22153. type: string
  22154. type: object
  22155. type: object
  22156. required:
  22157. - secretRef
  22158. type: object
  22159. host:
  22160. description: URL configures the Device42 instance URL.
  22161. type: string
  22162. required:
  22163. - auth
  22164. - host
  22165. type: object
  22166. doppler:
  22167. description: Doppler configures this store to sync secrets using the Doppler provider
  22168. properties:
  22169. auth:
  22170. description: Auth configures how the Operator authenticates with the Doppler API
  22171. properties:
  22172. secretRef:
  22173. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  22174. properties:
  22175. dopplerToken:
  22176. description: |-
  22177. The DopplerToken is used for authentication.
  22178. See https://docs.doppler.com/reference/api#authentication for auth token types.
  22179. The Key attribute defaults to dopplerToken if not specified.
  22180. properties:
  22181. key:
  22182. description: |-
  22183. A key in the referenced Secret.
  22184. Some instances of this field may be defaulted, in others it may be required.
  22185. maxLength: 253
  22186. minLength: 1
  22187. pattern: ^[-._a-zA-Z0-9]+$
  22188. type: string
  22189. name:
  22190. description: The name of the Secret resource being referred to.
  22191. maxLength: 253
  22192. minLength: 1
  22193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22194. type: string
  22195. namespace:
  22196. description: |-
  22197. The namespace of the Secret resource being referred to.
  22198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22199. maxLength: 63
  22200. minLength: 1
  22201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22202. type: string
  22203. type: object
  22204. required:
  22205. - dopplerToken
  22206. type: object
  22207. required:
  22208. - secretRef
  22209. type: object
  22210. config:
  22211. description: Doppler config (required if not using a Service Token)
  22212. type: string
  22213. format:
  22214. description: Format enables the downloading of secrets as a file (string)
  22215. enum:
  22216. - json
  22217. - dotnet-json
  22218. - env
  22219. - yaml
  22220. - docker
  22221. type: string
  22222. nameTransformer:
  22223. description: Environment variable compatible name transforms that change secret names to a different format
  22224. enum:
  22225. - upper-camel
  22226. - camel
  22227. - lower-snake
  22228. - tf-var
  22229. - dotnet-env
  22230. - lower-kebab
  22231. type: string
  22232. project:
  22233. description: Doppler project (required if not using a Service Token)
  22234. type: string
  22235. required:
  22236. - auth
  22237. type: object
  22238. fake:
  22239. description: Fake configures a store with static key/value pairs
  22240. properties:
  22241. data:
  22242. items:
  22243. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  22244. properties:
  22245. key:
  22246. type: string
  22247. value:
  22248. type: string
  22249. version:
  22250. type: string
  22251. required:
  22252. - key
  22253. - value
  22254. type: object
  22255. type: array
  22256. required:
  22257. - data
  22258. type: object
  22259. fortanix:
  22260. description: Fortanix configures this store to sync secrets using the Fortanix provider
  22261. properties:
  22262. apiKey:
  22263. description: APIKey is the API token to access SDKMS Applications.
  22264. properties:
  22265. secretRef:
  22266. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  22267. properties:
  22268. key:
  22269. description: |-
  22270. A key in the referenced Secret.
  22271. Some instances of this field may be defaulted, in others it may be required.
  22272. maxLength: 253
  22273. minLength: 1
  22274. pattern: ^[-._a-zA-Z0-9]+$
  22275. type: string
  22276. name:
  22277. description: The name of the Secret resource being referred to.
  22278. maxLength: 253
  22279. minLength: 1
  22280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22281. type: string
  22282. namespace:
  22283. description: |-
  22284. The namespace of the Secret resource being referred to.
  22285. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22286. maxLength: 63
  22287. minLength: 1
  22288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22289. type: string
  22290. type: object
  22291. type: object
  22292. apiUrl:
  22293. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  22294. type: string
  22295. type: object
  22296. gcpsm:
  22297. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  22298. properties:
  22299. auth:
  22300. description: Auth defines the information necessary to authenticate against GCP
  22301. properties:
  22302. secretRef:
  22303. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  22304. properties:
  22305. secretAccessKeySecretRef:
  22306. description: The SecretAccessKey is used for authentication
  22307. properties:
  22308. key:
  22309. description: |-
  22310. A key in the referenced Secret.
  22311. Some instances of this field may be defaulted, in others it may be required.
  22312. maxLength: 253
  22313. minLength: 1
  22314. pattern: ^[-._a-zA-Z0-9]+$
  22315. type: string
  22316. name:
  22317. description: The name of the Secret resource being referred to.
  22318. maxLength: 253
  22319. minLength: 1
  22320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22321. type: string
  22322. namespace:
  22323. description: |-
  22324. The namespace of the Secret resource being referred to.
  22325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22326. maxLength: 63
  22327. minLength: 1
  22328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22329. type: string
  22330. type: object
  22331. type: object
  22332. workloadIdentity:
  22333. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  22334. properties:
  22335. clusterLocation:
  22336. description: |-
  22337. ClusterLocation is the location of the cluster
  22338. If not specified, it fetches information from the metadata server
  22339. type: string
  22340. clusterName:
  22341. description: |-
  22342. ClusterName is the name of the cluster
  22343. If not specified, it fetches information from the metadata server
  22344. type: string
  22345. clusterProjectID:
  22346. description: |-
  22347. ClusterProjectID is the project ID of the cluster
  22348. If not specified, it fetches information from the metadata server
  22349. type: string
  22350. serviceAccountRef:
  22351. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  22352. properties:
  22353. audiences:
  22354. description: |-
  22355. Audience specifies the `aud` claim for the service account token
  22356. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22357. then this audiences will be appended to the list
  22358. items:
  22359. type: string
  22360. type: array
  22361. name:
  22362. description: The name of the ServiceAccount resource being referred to.
  22363. maxLength: 253
  22364. minLength: 1
  22365. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22366. type: string
  22367. namespace:
  22368. description: |-
  22369. Namespace of the resource being referred to.
  22370. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22371. maxLength: 63
  22372. minLength: 1
  22373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22374. type: string
  22375. required:
  22376. - name
  22377. type: object
  22378. required:
  22379. - serviceAccountRef
  22380. type: object
  22381. type: object
  22382. location:
  22383. description: Location optionally defines a location for a secret
  22384. type: string
  22385. projectID:
  22386. description: ProjectID project where secret is located
  22387. type: string
  22388. type: object
  22389. github:
  22390. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  22391. properties:
  22392. appID:
  22393. description: appID specifies the Github APP that will be used to authenticate the client
  22394. format: int64
  22395. type: integer
  22396. auth:
  22397. description: auth configures how secret-manager authenticates with a Github instance.
  22398. properties:
  22399. privateKey:
  22400. description: |-
  22401. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22402. In some instances, `key` is a required field.
  22403. properties:
  22404. key:
  22405. description: |-
  22406. A key in the referenced Secret.
  22407. Some instances of this field may be defaulted, in others it may be required.
  22408. maxLength: 253
  22409. minLength: 1
  22410. pattern: ^[-._a-zA-Z0-9]+$
  22411. type: string
  22412. name:
  22413. description: The name of the Secret resource being referred to.
  22414. maxLength: 253
  22415. minLength: 1
  22416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22417. type: string
  22418. namespace:
  22419. description: |-
  22420. The namespace of the Secret resource being referred to.
  22421. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22422. maxLength: 63
  22423. minLength: 1
  22424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22425. type: string
  22426. type: object
  22427. required:
  22428. - privateKey
  22429. type: object
  22430. environment:
  22431. description: environment will be used to fetch secrets from a particular environment within a github repository
  22432. type: string
  22433. installationID:
  22434. description: installationID specifies the Github APP installation that will be used to authenticate the client
  22435. format: int64
  22436. type: integer
  22437. organization:
  22438. description: organization will be used to fetch secrets from the Github organization
  22439. type: string
  22440. repository:
  22441. description: repository will be used to fetch secrets from the Github repository within an organization
  22442. type: string
  22443. uploadURL:
  22444. description: Upload URL for enterprise instances. Default to URL.
  22445. type: string
  22446. url:
  22447. default: https://github.com/
  22448. description: URL configures the Github instance URL. Defaults to https://github.com/.
  22449. type: string
  22450. required:
  22451. - appID
  22452. - auth
  22453. - installationID
  22454. - organization
  22455. type: object
  22456. gitlab:
  22457. description: GitLab configures this store to sync secrets using GitLab Variables provider
  22458. properties:
  22459. auth:
  22460. description: Auth configures how secret-manager authenticates with a GitLab instance.
  22461. properties:
  22462. SecretRef:
  22463. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  22464. properties:
  22465. accessToken:
  22466. description: AccessToken is used for authentication.
  22467. properties:
  22468. key:
  22469. description: |-
  22470. A key in the referenced Secret.
  22471. Some instances of this field may be defaulted, in others it may be required.
  22472. maxLength: 253
  22473. minLength: 1
  22474. pattern: ^[-._a-zA-Z0-9]+$
  22475. type: string
  22476. name:
  22477. description: The name of the Secret resource being referred to.
  22478. maxLength: 253
  22479. minLength: 1
  22480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22481. type: string
  22482. namespace:
  22483. description: |-
  22484. The namespace of the Secret resource being referred to.
  22485. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22486. maxLength: 63
  22487. minLength: 1
  22488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22489. type: string
  22490. type: object
  22491. type: object
  22492. required:
  22493. - SecretRef
  22494. type: object
  22495. caBundle:
  22496. description: |-
  22497. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22498. can be performed.
  22499. format: byte
  22500. type: string
  22501. caProvider:
  22502. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22503. properties:
  22504. key:
  22505. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22506. maxLength: 253
  22507. minLength: 1
  22508. pattern: ^[-._a-zA-Z0-9]+$
  22509. type: string
  22510. name:
  22511. description: The name of the object located at the provider type.
  22512. maxLength: 253
  22513. minLength: 1
  22514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22515. type: string
  22516. namespace:
  22517. description: |-
  22518. The namespace the Provider type is in.
  22519. Can only be defined when used in a ClusterSecretStore.
  22520. maxLength: 63
  22521. minLength: 1
  22522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22523. type: string
  22524. type:
  22525. description: The type of provider to use such as "Secret", or "ConfigMap".
  22526. enum:
  22527. - Secret
  22528. - ConfigMap
  22529. type: string
  22530. required:
  22531. - name
  22532. - type
  22533. type: object
  22534. environment:
  22535. 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)
  22536. type: string
  22537. groupIDs:
  22538. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  22539. items:
  22540. type: string
  22541. type: array
  22542. inheritFromGroups:
  22543. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  22544. type: boolean
  22545. projectID:
  22546. description: ProjectID specifies a project where secrets are located.
  22547. type: string
  22548. url:
  22549. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  22550. type: string
  22551. required:
  22552. - auth
  22553. type: object
  22554. ibm:
  22555. description: IBM configures this store to sync secrets using IBM Cloud provider
  22556. properties:
  22557. auth:
  22558. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  22559. maxProperties: 1
  22560. minProperties: 1
  22561. properties:
  22562. containerAuth:
  22563. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  22564. properties:
  22565. iamEndpoint:
  22566. type: string
  22567. profile:
  22568. description: the IBM Trusted Profile
  22569. type: string
  22570. tokenLocation:
  22571. description: Location the token is mounted on the pod
  22572. type: string
  22573. required:
  22574. - profile
  22575. type: object
  22576. secretRef:
  22577. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  22578. properties:
  22579. secretApiKeySecretRef:
  22580. description: The SecretAccessKey is used for authentication
  22581. properties:
  22582. key:
  22583. description: |-
  22584. A key in the referenced Secret.
  22585. Some instances of this field may be defaulted, in others it may be required.
  22586. maxLength: 253
  22587. minLength: 1
  22588. pattern: ^[-._a-zA-Z0-9]+$
  22589. type: string
  22590. name:
  22591. description: The name of the Secret resource being referred to.
  22592. maxLength: 253
  22593. minLength: 1
  22594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22595. type: string
  22596. namespace:
  22597. description: |-
  22598. The namespace of the Secret resource being referred to.
  22599. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22600. maxLength: 63
  22601. minLength: 1
  22602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22603. type: string
  22604. type: object
  22605. type: object
  22606. type: object
  22607. serviceUrl:
  22608. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  22609. type: string
  22610. required:
  22611. - auth
  22612. type: object
  22613. infisical:
  22614. description: Infisical configures this store to sync secrets using the Infisical provider
  22615. properties:
  22616. auth:
  22617. description: Auth configures how the Operator authenticates with the Infisical API
  22618. properties:
  22619. universalAuthCredentials:
  22620. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  22621. properties:
  22622. clientId:
  22623. description: |-
  22624. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22625. In some instances, `key` is a required field.
  22626. properties:
  22627. key:
  22628. description: |-
  22629. A key in the referenced Secret.
  22630. Some instances of this field may be defaulted, in others it may be required.
  22631. maxLength: 253
  22632. minLength: 1
  22633. pattern: ^[-._a-zA-Z0-9]+$
  22634. type: string
  22635. name:
  22636. description: The name of the Secret resource being referred to.
  22637. maxLength: 253
  22638. minLength: 1
  22639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22640. type: string
  22641. namespace:
  22642. description: |-
  22643. The namespace of the Secret resource being referred to.
  22644. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22645. maxLength: 63
  22646. minLength: 1
  22647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22648. type: string
  22649. type: object
  22650. clientSecret:
  22651. description: |-
  22652. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22653. In some instances, `key` is a required field.
  22654. properties:
  22655. key:
  22656. description: |-
  22657. A key in the referenced Secret.
  22658. Some instances of this field may be defaulted, in others it may be required.
  22659. maxLength: 253
  22660. minLength: 1
  22661. pattern: ^[-._a-zA-Z0-9]+$
  22662. type: string
  22663. name:
  22664. description: The name of the Secret resource being referred to.
  22665. maxLength: 253
  22666. minLength: 1
  22667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22668. type: string
  22669. namespace:
  22670. description: |-
  22671. The namespace of the Secret resource being referred to.
  22672. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22673. maxLength: 63
  22674. minLength: 1
  22675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22676. type: string
  22677. type: object
  22678. required:
  22679. - clientId
  22680. - clientSecret
  22681. type: object
  22682. type: object
  22683. hostAPI:
  22684. default: https://app.infisical.com/api
  22685. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  22686. type: string
  22687. secretsScope:
  22688. description: SecretsScope defines the scope of the secrets within the workspace
  22689. properties:
  22690. environmentSlug:
  22691. description: EnvironmentSlug is the required slug identifier for the environment.
  22692. type: string
  22693. expandSecretReferences:
  22694. default: true
  22695. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  22696. type: boolean
  22697. projectSlug:
  22698. description: ProjectSlug is the required slug identifier for the project.
  22699. type: string
  22700. recursive:
  22701. default: false
  22702. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  22703. type: boolean
  22704. secretsPath:
  22705. default: /
  22706. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  22707. type: string
  22708. required:
  22709. - environmentSlug
  22710. - projectSlug
  22711. type: object
  22712. required:
  22713. - auth
  22714. - secretsScope
  22715. type: object
  22716. keepersecurity:
  22717. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  22718. properties:
  22719. authRef:
  22720. description: |-
  22721. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22722. In some instances, `key` is a required field.
  22723. properties:
  22724. key:
  22725. description: |-
  22726. A key in the referenced Secret.
  22727. Some instances of this field may be defaulted, in others it may be required.
  22728. maxLength: 253
  22729. minLength: 1
  22730. pattern: ^[-._a-zA-Z0-9]+$
  22731. type: string
  22732. name:
  22733. description: The name of the Secret resource being referred to.
  22734. maxLength: 253
  22735. minLength: 1
  22736. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22737. type: string
  22738. namespace:
  22739. description: |-
  22740. The namespace of the Secret resource being referred to.
  22741. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22742. maxLength: 63
  22743. minLength: 1
  22744. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22745. type: string
  22746. type: object
  22747. folderID:
  22748. type: string
  22749. required:
  22750. - authRef
  22751. - folderID
  22752. type: object
  22753. kubernetes:
  22754. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  22755. properties:
  22756. auth:
  22757. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  22758. maxProperties: 1
  22759. minProperties: 1
  22760. properties:
  22761. cert:
  22762. description: has both clientCert and clientKey as secretKeySelector
  22763. properties:
  22764. clientCert:
  22765. description: |-
  22766. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22767. In some instances, `key` is a required field.
  22768. properties:
  22769. key:
  22770. description: |-
  22771. A key in the referenced Secret.
  22772. Some instances of this field may be defaulted, in others it may be required.
  22773. maxLength: 253
  22774. minLength: 1
  22775. pattern: ^[-._a-zA-Z0-9]+$
  22776. type: string
  22777. name:
  22778. description: The name of the Secret resource being referred to.
  22779. maxLength: 253
  22780. minLength: 1
  22781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22782. type: string
  22783. namespace:
  22784. description: |-
  22785. The namespace of the Secret resource being referred to.
  22786. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22787. maxLength: 63
  22788. minLength: 1
  22789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22790. type: string
  22791. type: object
  22792. clientKey:
  22793. description: |-
  22794. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22795. In some instances, `key` is a required field.
  22796. properties:
  22797. key:
  22798. description: |-
  22799. A key in the referenced Secret.
  22800. Some instances of this field may be defaulted, in others it may be required.
  22801. maxLength: 253
  22802. minLength: 1
  22803. pattern: ^[-._a-zA-Z0-9]+$
  22804. type: string
  22805. name:
  22806. description: The name of the Secret resource being referred to.
  22807. maxLength: 253
  22808. minLength: 1
  22809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22810. type: string
  22811. namespace:
  22812. description: |-
  22813. The namespace of the Secret resource being referred to.
  22814. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22815. maxLength: 63
  22816. minLength: 1
  22817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22818. type: string
  22819. type: object
  22820. type: object
  22821. serviceAccount:
  22822. description: points to a service account that should be used for authentication
  22823. properties:
  22824. audiences:
  22825. description: |-
  22826. Audience specifies the `aud` claim for the service account token
  22827. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22828. then this audiences will be appended to the list
  22829. items:
  22830. type: string
  22831. type: array
  22832. name:
  22833. description: The name of the ServiceAccount resource being referred to.
  22834. maxLength: 253
  22835. minLength: 1
  22836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22837. type: string
  22838. namespace:
  22839. description: |-
  22840. Namespace of the resource being referred to.
  22841. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22842. maxLength: 63
  22843. minLength: 1
  22844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22845. type: string
  22846. required:
  22847. - name
  22848. type: object
  22849. token:
  22850. description: use static token to authenticate with
  22851. properties:
  22852. bearerToken:
  22853. description: |-
  22854. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22855. In some instances, `key` is a required field.
  22856. properties:
  22857. key:
  22858. description: |-
  22859. A key in the referenced Secret.
  22860. Some instances of this field may be defaulted, in others it may be required.
  22861. maxLength: 253
  22862. minLength: 1
  22863. pattern: ^[-._a-zA-Z0-9]+$
  22864. type: string
  22865. name:
  22866. description: The name of the Secret resource being referred to.
  22867. maxLength: 253
  22868. minLength: 1
  22869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22870. type: string
  22871. namespace:
  22872. description: |-
  22873. The namespace of the Secret resource being referred to.
  22874. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22875. maxLength: 63
  22876. minLength: 1
  22877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22878. type: string
  22879. type: object
  22880. type: object
  22881. type: object
  22882. authRef:
  22883. description: A reference to a secret that contains the auth information.
  22884. properties:
  22885. key:
  22886. description: |-
  22887. A key in the referenced Secret.
  22888. Some instances of this field may be defaulted, in others it may be required.
  22889. maxLength: 253
  22890. minLength: 1
  22891. pattern: ^[-._a-zA-Z0-9]+$
  22892. type: string
  22893. name:
  22894. description: The name of the Secret resource being referred to.
  22895. maxLength: 253
  22896. minLength: 1
  22897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22898. type: string
  22899. namespace:
  22900. description: |-
  22901. The namespace of the Secret resource being referred to.
  22902. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22903. maxLength: 63
  22904. minLength: 1
  22905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22906. type: string
  22907. type: object
  22908. remoteNamespace:
  22909. default: default
  22910. description: Remote namespace to fetch the secrets from
  22911. maxLength: 63
  22912. minLength: 1
  22913. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22914. type: string
  22915. server:
  22916. description: configures the Kubernetes server Address.
  22917. properties:
  22918. caBundle:
  22919. description: CABundle is a base64-encoded CA certificate
  22920. format: byte
  22921. type: string
  22922. caProvider:
  22923. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  22924. properties:
  22925. key:
  22926. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22927. maxLength: 253
  22928. minLength: 1
  22929. pattern: ^[-._a-zA-Z0-9]+$
  22930. type: string
  22931. name:
  22932. description: The name of the object located at the provider type.
  22933. maxLength: 253
  22934. minLength: 1
  22935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22936. type: string
  22937. namespace:
  22938. description: |-
  22939. The namespace the Provider type is in.
  22940. Can only be defined when used in a ClusterSecretStore.
  22941. maxLength: 63
  22942. minLength: 1
  22943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22944. type: string
  22945. type:
  22946. description: The type of provider to use such as "Secret", or "ConfigMap".
  22947. enum:
  22948. - Secret
  22949. - ConfigMap
  22950. type: string
  22951. required:
  22952. - name
  22953. - type
  22954. type: object
  22955. url:
  22956. default: kubernetes.default
  22957. description: configures the Kubernetes server Address.
  22958. type: string
  22959. type: object
  22960. type: object
  22961. onboardbase:
  22962. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  22963. properties:
  22964. apiHost:
  22965. default: https://public.onboardbase.com/api/v1/
  22966. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  22967. type: string
  22968. auth:
  22969. description: Auth configures how the Operator authenticates with the Onboardbase API
  22970. properties:
  22971. apiKeyRef:
  22972. description: |-
  22973. OnboardbaseAPIKey is the APIKey generated by an admin account.
  22974. It is used to recognize and authorize access to a project and environment within onboardbase
  22975. properties:
  22976. key:
  22977. description: |-
  22978. A key in the referenced Secret.
  22979. Some instances of this field may be defaulted, in others it may be required.
  22980. maxLength: 253
  22981. minLength: 1
  22982. pattern: ^[-._a-zA-Z0-9]+$
  22983. type: string
  22984. name:
  22985. description: The name of the Secret resource being referred to.
  22986. maxLength: 253
  22987. minLength: 1
  22988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22989. type: string
  22990. namespace:
  22991. description: |-
  22992. The namespace of the Secret resource being referred to.
  22993. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22994. maxLength: 63
  22995. minLength: 1
  22996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22997. type: string
  22998. type: object
  22999. passcodeRef:
  23000. description: OnboardbasePasscode is the passcode attached to the API Key
  23001. properties:
  23002. key:
  23003. description: |-
  23004. A key in the referenced Secret.
  23005. Some instances of this field may be defaulted, in others it may be required.
  23006. maxLength: 253
  23007. minLength: 1
  23008. pattern: ^[-._a-zA-Z0-9]+$
  23009. type: string
  23010. name:
  23011. description: The name of the Secret resource being referred to.
  23012. maxLength: 253
  23013. minLength: 1
  23014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23015. type: string
  23016. namespace:
  23017. description: |-
  23018. The namespace of the Secret resource being referred to.
  23019. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23020. maxLength: 63
  23021. minLength: 1
  23022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23023. type: string
  23024. type: object
  23025. required:
  23026. - apiKeyRef
  23027. - passcodeRef
  23028. type: object
  23029. environment:
  23030. default: development
  23031. description: Environment is the name of an environmnent within a project to pull the secrets from
  23032. type: string
  23033. project:
  23034. default: development
  23035. description: Project is an onboardbase project that the secrets should be pulled from
  23036. type: string
  23037. required:
  23038. - apiHost
  23039. - auth
  23040. - environment
  23041. - project
  23042. type: object
  23043. onepassword:
  23044. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  23045. properties:
  23046. auth:
  23047. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  23048. properties:
  23049. secretRef:
  23050. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  23051. properties:
  23052. connectTokenSecretRef:
  23053. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  23054. properties:
  23055. key:
  23056. description: |-
  23057. A key in the referenced Secret.
  23058. Some instances of this field may be defaulted, in others it may be required.
  23059. maxLength: 253
  23060. minLength: 1
  23061. pattern: ^[-._a-zA-Z0-9]+$
  23062. type: string
  23063. name:
  23064. description: The name of the Secret resource being referred to.
  23065. maxLength: 253
  23066. minLength: 1
  23067. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23068. type: string
  23069. namespace:
  23070. description: |-
  23071. The namespace of the Secret resource being referred to.
  23072. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23073. maxLength: 63
  23074. minLength: 1
  23075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23076. type: string
  23077. type: object
  23078. required:
  23079. - connectTokenSecretRef
  23080. type: object
  23081. required:
  23082. - secretRef
  23083. type: object
  23084. connectHost:
  23085. description: ConnectHost defines the OnePassword Connect Server to connect to
  23086. type: string
  23087. vaults:
  23088. additionalProperties:
  23089. type: integer
  23090. description: Vaults defines which OnePassword vaults to search in which order
  23091. type: object
  23092. required:
  23093. - auth
  23094. - connectHost
  23095. - vaults
  23096. type: object
  23097. oracle:
  23098. description: Oracle configures this store to sync secrets using Oracle Vault provider
  23099. properties:
  23100. auth:
  23101. description: |-
  23102. Auth configures how secret-manager authenticates with the Oracle Vault.
  23103. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  23104. properties:
  23105. secretRef:
  23106. description: SecretRef to pass through sensitive information.
  23107. properties:
  23108. fingerprint:
  23109. description: Fingerprint is the fingerprint of the API private key.
  23110. properties:
  23111. key:
  23112. description: |-
  23113. A key in the referenced Secret.
  23114. Some instances of this field may be defaulted, in others it may be required.
  23115. maxLength: 253
  23116. minLength: 1
  23117. pattern: ^[-._a-zA-Z0-9]+$
  23118. type: string
  23119. name:
  23120. description: The name of the Secret resource being referred to.
  23121. maxLength: 253
  23122. minLength: 1
  23123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23124. type: string
  23125. namespace:
  23126. description: |-
  23127. The namespace of the Secret resource being referred to.
  23128. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23129. maxLength: 63
  23130. minLength: 1
  23131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23132. type: string
  23133. type: object
  23134. privatekey:
  23135. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  23136. properties:
  23137. key:
  23138. description: |-
  23139. A key in the referenced Secret.
  23140. Some instances of this field may be defaulted, in others it may be required.
  23141. maxLength: 253
  23142. minLength: 1
  23143. pattern: ^[-._a-zA-Z0-9]+$
  23144. type: string
  23145. name:
  23146. description: The name of the Secret resource being referred to.
  23147. maxLength: 253
  23148. minLength: 1
  23149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23150. type: string
  23151. namespace:
  23152. description: |-
  23153. The namespace of the Secret resource being referred to.
  23154. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23155. maxLength: 63
  23156. minLength: 1
  23157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23158. type: string
  23159. type: object
  23160. required:
  23161. - fingerprint
  23162. - privatekey
  23163. type: object
  23164. tenancy:
  23165. description: Tenancy is the tenancy OCID where user is located.
  23166. type: string
  23167. user:
  23168. description: User is an access OCID specific to the account.
  23169. type: string
  23170. required:
  23171. - secretRef
  23172. - tenancy
  23173. - user
  23174. type: object
  23175. compartment:
  23176. description: |-
  23177. Compartment is the vault compartment OCID.
  23178. Required for PushSecret
  23179. type: string
  23180. encryptionKey:
  23181. description: |-
  23182. EncryptionKey is the OCID of the encryption key within the vault.
  23183. Required for PushSecret
  23184. type: string
  23185. principalType:
  23186. description: |-
  23187. The type of principal to use for authentication. If left blank, the Auth struct will
  23188. determine the principal type. This optional field must be specified if using
  23189. workload identity.
  23190. enum:
  23191. - ""
  23192. - UserPrincipal
  23193. - InstancePrincipal
  23194. - Workload
  23195. type: string
  23196. region:
  23197. description: Region is the region where vault is located.
  23198. type: string
  23199. serviceAccountRef:
  23200. description: |-
  23201. ServiceAccountRef specified the service account
  23202. that should be used when authenticating with WorkloadIdentity.
  23203. properties:
  23204. audiences:
  23205. description: |-
  23206. Audience specifies the `aud` claim for the service account token
  23207. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23208. then this audiences will be appended to the list
  23209. items:
  23210. type: string
  23211. type: array
  23212. name:
  23213. description: The name of the ServiceAccount resource being referred to.
  23214. maxLength: 253
  23215. minLength: 1
  23216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23217. type: string
  23218. namespace:
  23219. description: |-
  23220. Namespace of the resource being referred to.
  23221. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23222. maxLength: 63
  23223. minLength: 1
  23224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23225. type: string
  23226. required:
  23227. - name
  23228. type: object
  23229. vault:
  23230. description: Vault is the vault's OCID of the specific vault where secret is located.
  23231. type: string
  23232. required:
  23233. - region
  23234. - vault
  23235. type: object
  23236. passbolt:
  23237. description: PassboltProvider defines configuration for the Passbolt provider.
  23238. properties:
  23239. auth:
  23240. description: Auth defines the information necessary to authenticate against Passbolt Server
  23241. properties:
  23242. passwordSecretRef:
  23243. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  23244. properties:
  23245. key:
  23246. description: |-
  23247. A key in the referenced Secret.
  23248. Some instances of this field may be defaulted, in others it may be required.
  23249. maxLength: 253
  23250. minLength: 1
  23251. pattern: ^[-._a-zA-Z0-9]+$
  23252. type: string
  23253. name:
  23254. description: The name of the Secret resource being referred to.
  23255. maxLength: 253
  23256. minLength: 1
  23257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23258. type: string
  23259. namespace:
  23260. description: |-
  23261. The namespace of the Secret resource being referred to.
  23262. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23263. maxLength: 63
  23264. minLength: 1
  23265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23266. type: string
  23267. type: object
  23268. privateKeySecretRef:
  23269. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  23270. properties:
  23271. key:
  23272. description: |-
  23273. A key in the referenced Secret.
  23274. Some instances of this field may be defaulted, in others it may be required.
  23275. maxLength: 253
  23276. minLength: 1
  23277. pattern: ^[-._a-zA-Z0-9]+$
  23278. type: string
  23279. name:
  23280. description: The name of the Secret resource being referred to.
  23281. maxLength: 253
  23282. minLength: 1
  23283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23284. type: string
  23285. namespace:
  23286. description: |-
  23287. The namespace of the Secret resource being referred to.
  23288. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23289. maxLength: 63
  23290. minLength: 1
  23291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23292. type: string
  23293. type: object
  23294. required:
  23295. - passwordSecretRef
  23296. - privateKeySecretRef
  23297. type: object
  23298. host:
  23299. description: Host defines the Passbolt Server to connect to
  23300. type: string
  23301. required:
  23302. - auth
  23303. - host
  23304. type: object
  23305. passworddepot:
  23306. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  23307. properties:
  23308. auth:
  23309. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  23310. properties:
  23311. secretRef:
  23312. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  23313. properties:
  23314. credentials:
  23315. description: Username / Password is used for authentication.
  23316. properties:
  23317. key:
  23318. description: |-
  23319. A key in the referenced Secret.
  23320. Some instances of this field may be defaulted, in others it may be required.
  23321. maxLength: 253
  23322. minLength: 1
  23323. pattern: ^[-._a-zA-Z0-9]+$
  23324. type: string
  23325. name:
  23326. description: The name of the Secret resource being referred to.
  23327. maxLength: 253
  23328. minLength: 1
  23329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23330. type: string
  23331. namespace:
  23332. description: |-
  23333. The namespace of the Secret resource being referred to.
  23334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23335. maxLength: 63
  23336. minLength: 1
  23337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23338. type: string
  23339. type: object
  23340. type: object
  23341. required:
  23342. - secretRef
  23343. type: object
  23344. database:
  23345. description: Database to use as source
  23346. type: string
  23347. host:
  23348. description: URL configures the Password Depot instance URL.
  23349. type: string
  23350. required:
  23351. - auth
  23352. - database
  23353. - host
  23354. type: object
  23355. previder:
  23356. description: Previder configures this store to sync secrets using the Previder provider
  23357. properties:
  23358. auth:
  23359. description: PreviderAuth contains a secretRef for credentials.
  23360. properties:
  23361. secretRef:
  23362. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  23363. properties:
  23364. accessToken:
  23365. description: The AccessToken is used for authentication
  23366. properties:
  23367. key:
  23368. description: |-
  23369. A key in the referenced Secret.
  23370. Some instances of this field may be defaulted, in others it may be required.
  23371. maxLength: 253
  23372. minLength: 1
  23373. pattern: ^[-._a-zA-Z0-9]+$
  23374. type: string
  23375. name:
  23376. description: The name of the Secret resource being referred to.
  23377. maxLength: 253
  23378. minLength: 1
  23379. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23380. type: string
  23381. namespace:
  23382. description: |-
  23383. The namespace of the Secret resource being referred to.
  23384. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23385. maxLength: 63
  23386. minLength: 1
  23387. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23388. type: string
  23389. type: object
  23390. required:
  23391. - accessToken
  23392. type: object
  23393. type: object
  23394. baseUri:
  23395. type: string
  23396. required:
  23397. - auth
  23398. type: object
  23399. pulumi:
  23400. description: Pulumi configures this store to sync secrets using the Pulumi provider
  23401. properties:
  23402. accessToken:
  23403. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  23404. properties:
  23405. secretRef:
  23406. description: SecretRef is a reference to a secret containing the Pulumi API token.
  23407. properties:
  23408. key:
  23409. description: |-
  23410. A key in the referenced Secret.
  23411. Some instances of this field may be defaulted, in others it may be required.
  23412. maxLength: 253
  23413. minLength: 1
  23414. pattern: ^[-._a-zA-Z0-9]+$
  23415. type: string
  23416. name:
  23417. description: The name of the Secret resource being referred to.
  23418. maxLength: 253
  23419. minLength: 1
  23420. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23421. type: string
  23422. namespace:
  23423. description: |-
  23424. The namespace of the Secret resource being referred to.
  23425. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23426. maxLength: 63
  23427. minLength: 1
  23428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23429. type: string
  23430. type: object
  23431. type: object
  23432. apiUrl:
  23433. default: https://api.pulumi.com/api/esc
  23434. description: APIURL is the URL of the Pulumi API.
  23435. type: string
  23436. environment:
  23437. description: |-
  23438. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  23439. dynamically retrieved values from supported providers including all major clouds,
  23440. and other Pulumi ESC environments.
  23441. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  23442. type: string
  23443. organization:
  23444. description: |-
  23445. Organization are a space to collaborate on shared projects and stacks.
  23446. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  23447. type: string
  23448. project:
  23449. description: Project is the name of the Pulumi ESC project the environment belongs to.
  23450. type: string
  23451. required:
  23452. - accessToken
  23453. - environment
  23454. - organization
  23455. - project
  23456. type: object
  23457. scaleway:
  23458. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  23459. properties:
  23460. accessKey:
  23461. description: AccessKey is the non-secret part of the api key.
  23462. properties:
  23463. secretRef:
  23464. description: SecretRef references a key in a secret that will be used as value.
  23465. properties:
  23466. key:
  23467. description: |-
  23468. A key in the referenced Secret.
  23469. Some instances of this field may be defaulted, in others it may be required.
  23470. maxLength: 253
  23471. minLength: 1
  23472. pattern: ^[-._a-zA-Z0-9]+$
  23473. type: string
  23474. name:
  23475. description: The name of the Secret resource being referred to.
  23476. maxLength: 253
  23477. minLength: 1
  23478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23479. type: string
  23480. namespace:
  23481. description: |-
  23482. The namespace of the Secret resource being referred to.
  23483. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23484. maxLength: 63
  23485. minLength: 1
  23486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23487. type: string
  23488. type: object
  23489. value:
  23490. description: Value can be specified directly to set a value without using a secret.
  23491. type: string
  23492. type: object
  23493. apiUrl:
  23494. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  23495. type: string
  23496. projectId:
  23497. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  23498. type: string
  23499. region:
  23500. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  23501. type: string
  23502. secretKey:
  23503. description: SecretKey is the non-secret part of the api key.
  23504. properties:
  23505. secretRef:
  23506. description: SecretRef references a key in a secret that will be used as value.
  23507. properties:
  23508. key:
  23509. description: |-
  23510. A key in the referenced Secret.
  23511. Some instances of this field may be defaulted, in others it may be required.
  23512. maxLength: 253
  23513. minLength: 1
  23514. pattern: ^[-._a-zA-Z0-9]+$
  23515. type: string
  23516. name:
  23517. description: The name of the Secret resource being referred to.
  23518. maxLength: 253
  23519. minLength: 1
  23520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23521. type: string
  23522. namespace:
  23523. description: |-
  23524. The namespace of the Secret resource being referred to.
  23525. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23526. maxLength: 63
  23527. minLength: 1
  23528. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23529. type: string
  23530. type: object
  23531. value:
  23532. description: Value can be specified directly to set a value without using a secret.
  23533. type: string
  23534. type: object
  23535. required:
  23536. - accessKey
  23537. - projectId
  23538. - region
  23539. - secretKey
  23540. type: object
  23541. secretserver:
  23542. description: |-
  23543. SecretServer configures this store to sync secrets using SecretServer provider
  23544. https://docs.delinea.com/online-help/secret-server/start.htm
  23545. properties:
  23546. password:
  23547. description: Password is the secret server account password.
  23548. properties:
  23549. secretRef:
  23550. description: SecretRef references a key in a secret that will be used as value.
  23551. properties:
  23552. key:
  23553. description: |-
  23554. A key in the referenced Secret.
  23555. Some instances of this field may be defaulted, in others it may be required.
  23556. maxLength: 253
  23557. minLength: 1
  23558. pattern: ^[-._a-zA-Z0-9]+$
  23559. type: string
  23560. name:
  23561. description: The name of the Secret resource being referred to.
  23562. maxLength: 253
  23563. minLength: 1
  23564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23565. type: string
  23566. namespace:
  23567. description: |-
  23568. The namespace of the Secret resource being referred to.
  23569. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23570. maxLength: 63
  23571. minLength: 1
  23572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23573. type: string
  23574. type: object
  23575. value:
  23576. description: Value can be specified directly to set a value without using a secret.
  23577. type: string
  23578. type: object
  23579. serverURL:
  23580. description: |-
  23581. ServerURL
  23582. URL to your secret server installation
  23583. type: string
  23584. username:
  23585. description: Username is the secret server account username.
  23586. properties:
  23587. secretRef:
  23588. description: SecretRef references a key in a secret that will be used as value.
  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. value:
  23614. description: Value can be specified directly to set a value without using a secret.
  23615. type: string
  23616. type: object
  23617. required:
  23618. - password
  23619. - serverURL
  23620. - username
  23621. type: object
  23622. senhasegura:
  23623. description: Senhasegura configures this store to sync secrets using senhasegura provider
  23624. properties:
  23625. auth:
  23626. description: Auth defines parameters to authenticate in senhasegura
  23627. properties:
  23628. clientId:
  23629. type: string
  23630. clientSecretSecretRef:
  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. required:
  23659. - clientId
  23660. - clientSecretSecretRef
  23661. type: object
  23662. ignoreSslCertificate:
  23663. default: false
  23664. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  23665. type: boolean
  23666. module:
  23667. description: Module defines which senhasegura module should be used to get secrets
  23668. type: string
  23669. url:
  23670. description: URL of senhasegura
  23671. type: string
  23672. required:
  23673. - auth
  23674. - module
  23675. - url
  23676. type: object
  23677. vault:
  23678. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  23679. properties:
  23680. auth:
  23681. description: Auth configures how secret-manager authenticates with the Vault server.
  23682. properties:
  23683. appRole:
  23684. description: |-
  23685. AppRole authenticates with Vault using the App Role auth mechanism,
  23686. with the role and secret stored in a Kubernetes Secret resource.
  23687. properties:
  23688. path:
  23689. default: approle
  23690. description: |-
  23691. Path where the App Role authentication backend is mounted
  23692. in Vault, e.g: "approle"
  23693. type: string
  23694. roleId:
  23695. description: |-
  23696. RoleID configured in the App Role authentication backend when setting
  23697. up the authentication backend in Vault.
  23698. type: string
  23699. roleRef:
  23700. description: |-
  23701. Reference to a key in a Secret that contains the App Role ID used
  23702. to authenticate with Vault.
  23703. The `key` field must be specified and denotes which entry within the Secret
  23704. resource is used as the app role id.
  23705. properties:
  23706. key:
  23707. description: |-
  23708. A key in the referenced Secret.
  23709. Some instances of this field may be defaulted, in others it may be required.
  23710. maxLength: 253
  23711. minLength: 1
  23712. pattern: ^[-._a-zA-Z0-9]+$
  23713. type: string
  23714. name:
  23715. description: The name of the Secret resource being referred to.
  23716. maxLength: 253
  23717. minLength: 1
  23718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23719. type: string
  23720. namespace:
  23721. description: |-
  23722. The namespace of the Secret resource being referred to.
  23723. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23724. maxLength: 63
  23725. minLength: 1
  23726. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23727. type: string
  23728. type: object
  23729. secretRef:
  23730. description: |-
  23731. Reference to a key in a Secret that contains the App Role secret used
  23732. to authenticate with Vault.
  23733. The `key` field must be specified and denotes which entry within the Secret
  23734. resource is used as the app role secret.
  23735. properties:
  23736. key:
  23737. description: |-
  23738. A key in the referenced Secret.
  23739. Some instances of this field may be defaulted, in others it may be required.
  23740. maxLength: 253
  23741. minLength: 1
  23742. pattern: ^[-._a-zA-Z0-9]+$
  23743. type: string
  23744. name:
  23745. description: The name of the Secret resource being referred to.
  23746. maxLength: 253
  23747. minLength: 1
  23748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23749. type: string
  23750. namespace:
  23751. description: |-
  23752. The namespace of the Secret resource being referred to.
  23753. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23754. maxLength: 63
  23755. minLength: 1
  23756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23757. type: string
  23758. type: object
  23759. required:
  23760. - path
  23761. - secretRef
  23762. type: object
  23763. cert:
  23764. description: |-
  23765. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  23766. Cert authentication method
  23767. properties:
  23768. clientCert:
  23769. description: |-
  23770. ClientCert is a certificate to authenticate using the Cert Vault
  23771. authentication method
  23772. properties:
  23773. key:
  23774. description: |-
  23775. A key in the referenced Secret.
  23776. Some instances of this field may be defaulted, in others it may be required.
  23777. maxLength: 253
  23778. minLength: 1
  23779. pattern: ^[-._a-zA-Z0-9]+$
  23780. type: string
  23781. name:
  23782. description: The name of the Secret resource being referred to.
  23783. maxLength: 253
  23784. minLength: 1
  23785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23786. type: string
  23787. namespace:
  23788. description: |-
  23789. The namespace of the Secret resource being referred to.
  23790. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23791. maxLength: 63
  23792. minLength: 1
  23793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23794. type: string
  23795. type: object
  23796. secretRef:
  23797. description: |-
  23798. SecretRef to a key in a Secret resource containing client private key to
  23799. authenticate with Vault using the Cert authentication method
  23800. properties:
  23801. key:
  23802. description: |-
  23803. A key in the referenced Secret.
  23804. Some instances of this field may be defaulted, in others it may be required.
  23805. maxLength: 253
  23806. minLength: 1
  23807. pattern: ^[-._a-zA-Z0-9]+$
  23808. type: string
  23809. name:
  23810. description: The name of the Secret resource being referred to.
  23811. maxLength: 253
  23812. minLength: 1
  23813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23814. type: string
  23815. namespace:
  23816. description: |-
  23817. The namespace of the Secret resource being referred to.
  23818. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23819. maxLength: 63
  23820. minLength: 1
  23821. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23822. type: string
  23823. type: object
  23824. type: object
  23825. iam:
  23826. description: |-
  23827. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  23828. AWS IAM authentication method
  23829. properties:
  23830. externalID:
  23831. description: AWS External ID set on assumed IAM roles
  23832. type: string
  23833. jwt:
  23834. description: Specify a service account with IRSA enabled
  23835. properties:
  23836. serviceAccountRef:
  23837. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  23838. properties:
  23839. audiences:
  23840. description: |-
  23841. Audience specifies the `aud` claim for the service account token
  23842. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23843. then this audiences will be appended to the list
  23844. items:
  23845. type: string
  23846. type: array
  23847. name:
  23848. description: The name of the ServiceAccount resource being referred to.
  23849. maxLength: 253
  23850. minLength: 1
  23851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23852. type: string
  23853. namespace:
  23854. description: |-
  23855. Namespace of the resource being referred to.
  23856. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23857. maxLength: 63
  23858. minLength: 1
  23859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23860. type: string
  23861. required:
  23862. - name
  23863. type: object
  23864. type: object
  23865. path:
  23866. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  23867. type: string
  23868. region:
  23869. description: AWS region
  23870. type: string
  23871. role:
  23872. description: This is the AWS role to be assumed before talking to vault
  23873. type: string
  23874. secretRef:
  23875. description: Specify credentials in a Secret object
  23876. properties:
  23877. accessKeyIDSecretRef:
  23878. description: The AccessKeyID is used for authentication
  23879. properties:
  23880. key:
  23881. description: |-
  23882. A key in the referenced Secret.
  23883. Some instances of this field may be defaulted, in others it may be required.
  23884. maxLength: 253
  23885. minLength: 1
  23886. pattern: ^[-._a-zA-Z0-9]+$
  23887. type: string
  23888. name:
  23889. description: The name of the Secret resource being referred to.
  23890. maxLength: 253
  23891. minLength: 1
  23892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23893. type: string
  23894. namespace:
  23895. description: |-
  23896. The namespace of the Secret resource being referred to.
  23897. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23898. maxLength: 63
  23899. minLength: 1
  23900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23901. type: string
  23902. type: object
  23903. secretAccessKeySecretRef:
  23904. description: The SecretAccessKey is used for authentication
  23905. properties:
  23906. key:
  23907. description: |-
  23908. A key in the referenced Secret.
  23909. Some instances of this field may be defaulted, in others it may be required.
  23910. maxLength: 253
  23911. minLength: 1
  23912. pattern: ^[-._a-zA-Z0-9]+$
  23913. type: string
  23914. name:
  23915. description: The name of the Secret resource being referred to.
  23916. maxLength: 253
  23917. minLength: 1
  23918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23919. type: string
  23920. namespace:
  23921. description: |-
  23922. The namespace of the Secret resource being referred to.
  23923. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23924. maxLength: 63
  23925. minLength: 1
  23926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23927. type: string
  23928. type: object
  23929. sessionTokenSecretRef:
  23930. description: |-
  23931. The SessionToken used for authentication
  23932. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  23933. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  23934. properties:
  23935. key:
  23936. description: |-
  23937. A key in the referenced Secret.
  23938. Some instances of this field may be defaulted, in others it may be required.
  23939. maxLength: 253
  23940. minLength: 1
  23941. pattern: ^[-._a-zA-Z0-9]+$
  23942. type: string
  23943. name:
  23944. description: The name of the Secret resource being referred to.
  23945. maxLength: 253
  23946. minLength: 1
  23947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23948. type: string
  23949. namespace:
  23950. description: |-
  23951. The namespace of the Secret resource being referred to.
  23952. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23953. maxLength: 63
  23954. minLength: 1
  23955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23956. type: string
  23957. type: object
  23958. type: object
  23959. vaultAwsIamServerID:
  23960. 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'
  23961. type: string
  23962. vaultRole:
  23963. 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
  23964. type: string
  23965. required:
  23966. - vaultRole
  23967. type: object
  23968. jwt:
  23969. description: |-
  23970. Jwt authenticates with Vault by passing role and JWT token using the
  23971. JWT/OIDC authentication method
  23972. properties:
  23973. kubernetesServiceAccountToken:
  23974. description: |-
  23975. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  23976. a token for with the `TokenRequest` API.
  23977. properties:
  23978. audiences:
  23979. description: |-
  23980. Optional audiences field that will be used to request a temporary Kubernetes service
  23981. account token for the service account referenced by `serviceAccountRef`.
  23982. Defaults to a single audience `vault` it not specified.
  23983. Deprecated: use serviceAccountRef.Audiences instead
  23984. items:
  23985. type: string
  23986. type: array
  23987. expirationSeconds:
  23988. description: |-
  23989. Optional expiration time in seconds that will be used to request a temporary
  23990. Kubernetes service account token for the service account referenced by
  23991. `serviceAccountRef`.
  23992. Deprecated: this will be removed in the future.
  23993. Defaults to 10 minutes.
  23994. format: int64
  23995. type: integer
  23996. serviceAccountRef:
  23997. description: Service account field containing the name of a kubernetes ServiceAccount.
  23998. properties:
  23999. audiences:
  24000. description: |-
  24001. Audience specifies the `aud` claim for the service account token
  24002. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24003. then this audiences will be appended to the list
  24004. items:
  24005. type: string
  24006. type: array
  24007. name:
  24008. description: The name of the ServiceAccount resource being referred to.
  24009. maxLength: 253
  24010. minLength: 1
  24011. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24012. type: string
  24013. namespace:
  24014. description: |-
  24015. Namespace of the resource being referred to.
  24016. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24017. maxLength: 63
  24018. minLength: 1
  24019. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24020. type: string
  24021. required:
  24022. - name
  24023. type: object
  24024. required:
  24025. - serviceAccountRef
  24026. type: object
  24027. path:
  24028. default: jwt
  24029. description: |-
  24030. Path where the JWT authentication backend is mounted
  24031. in Vault, e.g: "jwt"
  24032. type: string
  24033. role:
  24034. description: |-
  24035. Role is a JWT role to authenticate using the JWT/OIDC Vault
  24036. authentication method
  24037. type: string
  24038. secretRef:
  24039. description: |-
  24040. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  24041. authenticate with Vault using the JWT/OIDC authentication method.
  24042. properties:
  24043. key:
  24044. description: |-
  24045. A key in the referenced Secret.
  24046. Some instances of this field may be defaulted, in others it may be required.
  24047. maxLength: 253
  24048. minLength: 1
  24049. pattern: ^[-._a-zA-Z0-9]+$
  24050. type: string
  24051. name:
  24052. description: The name of the Secret resource being referred to.
  24053. maxLength: 253
  24054. minLength: 1
  24055. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24056. type: string
  24057. namespace:
  24058. description: |-
  24059. The namespace of the Secret resource being referred to.
  24060. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24061. maxLength: 63
  24062. minLength: 1
  24063. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24064. type: string
  24065. type: object
  24066. required:
  24067. - path
  24068. type: object
  24069. kubernetes:
  24070. description: |-
  24071. Kubernetes authenticates with Vault by passing the ServiceAccount
  24072. token stored in the named Secret resource to the Vault server.
  24073. properties:
  24074. mountPath:
  24075. default: kubernetes
  24076. description: |-
  24077. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  24078. "kubernetes"
  24079. type: string
  24080. role:
  24081. description: |-
  24082. A required field containing the Vault Role to assume. A Role binds a
  24083. Kubernetes ServiceAccount with a set of Vault policies.
  24084. type: string
  24085. secretRef:
  24086. description: |-
  24087. Optional secret field containing a Kubernetes ServiceAccount JWT used
  24088. for authenticating with Vault. If a name is specified without a key,
  24089. `token` is the default. If one is not specified, the one bound to
  24090. the controller will be used.
  24091. properties:
  24092. key:
  24093. description: |-
  24094. A key in the referenced Secret.
  24095. Some instances of this field may be defaulted, in others it may be required.
  24096. maxLength: 253
  24097. minLength: 1
  24098. pattern: ^[-._a-zA-Z0-9]+$
  24099. type: string
  24100. name:
  24101. description: The name of the Secret resource being referred to.
  24102. maxLength: 253
  24103. minLength: 1
  24104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24105. type: string
  24106. namespace:
  24107. description: |-
  24108. The namespace of the Secret resource being referred to.
  24109. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24110. maxLength: 63
  24111. minLength: 1
  24112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24113. type: string
  24114. type: object
  24115. serviceAccountRef:
  24116. description: |-
  24117. Optional service account field containing the name of a kubernetes ServiceAccount.
  24118. If the service account is specified, the service account secret token JWT will be used
  24119. for authenticating with Vault. If the service account selector is not supplied,
  24120. the secretRef will be used instead.
  24121. properties:
  24122. audiences:
  24123. description: |-
  24124. Audience specifies the `aud` claim for the service account token
  24125. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24126. then this audiences will be appended to the list
  24127. items:
  24128. type: string
  24129. type: array
  24130. name:
  24131. description: The name of the ServiceAccount resource being referred to.
  24132. maxLength: 253
  24133. minLength: 1
  24134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24135. type: string
  24136. namespace:
  24137. description: |-
  24138. Namespace of the resource being referred to.
  24139. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24140. maxLength: 63
  24141. minLength: 1
  24142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24143. type: string
  24144. required:
  24145. - name
  24146. type: object
  24147. required:
  24148. - mountPath
  24149. - role
  24150. type: object
  24151. ldap:
  24152. description: |-
  24153. Ldap authenticates with Vault by passing username/password pair using
  24154. the LDAP authentication method
  24155. properties:
  24156. path:
  24157. default: ldap
  24158. description: |-
  24159. Path where the LDAP authentication backend is mounted
  24160. in Vault, e.g: "ldap"
  24161. type: string
  24162. secretRef:
  24163. description: |-
  24164. SecretRef to a key in a Secret resource containing password for the LDAP
  24165. user used to authenticate with Vault using the LDAP authentication
  24166. method
  24167. properties:
  24168. key:
  24169. description: |-
  24170. A key in the referenced Secret.
  24171. Some instances of this field may be defaulted, in others it may be required.
  24172. maxLength: 253
  24173. minLength: 1
  24174. pattern: ^[-._a-zA-Z0-9]+$
  24175. type: string
  24176. name:
  24177. description: The name of the Secret resource being referred to.
  24178. maxLength: 253
  24179. minLength: 1
  24180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24181. type: string
  24182. namespace:
  24183. description: |-
  24184. The namespace of the Secret resource being referred to.
  24185. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24186. maxLength: 63
  24187. minLength: 1
  24188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24189. type: string
  24190. type: object
  24191. username:
  24192. description: |-
  24193. Username is an LDAP username used to authenticate using the LDAP Vault
  24194. authentication method
  24195. type: string
  24196. required:
  24197. - path
  24198. - username
  24199. type: object
  24200. namespace:
  24201. description: |-
  24202. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  24203. Namespaces is a set of features within Vault Enterprise that allows
  24204. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24205. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24206. This will default to Vault.Namespace field if set, or empty otherwise
  24207. type: string
  24208. tokenSecretRef:
  24209. description: TokenSecretRef authenticates with Vault by presenting a token.
  24210. properties:
  24211. key:
  24212. description: |-
  24213. A key in the referenced Secret.
  24214. Some instances of this field may be defaulted, in others it may be required.
  24215. maxLength: 253
  24216. minLength: 1
  24217. pattern: ^[-._a-zA-Z0-9]+$
  24218. type: string
  24219. name:
  24220. description: The name of the Secret resource being referred to.
  24221. maxLength: 253
  24222. minLength: 1
  24223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24224. type: string
  24225. namespace:
  24226. description: |-
  24227. The namespace of the Secret resource being referred to.
  24228. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24229. maxLength: 63
  24230. minLength: 1
  24231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24232. type: string
  24233. type: object
  24234. userPass:
  24235. description: UserPass authenticates with Vault by passing username/password pair
  24236. properties:
  24237. path:
  24238. default: userpass
  24239. description: |-
  24240. Path where the UserPassword authentication backend is mounted
  24241. in Vault, e.g: "userpass"
  24242. type: string
  24243. secretRef:
  24244. description: |-
  24245. SecretRef to a key in a Secret resource containing password for the
  24246. user used to authenticate with Vault using the UserPass authentication
  24247. method
  24248. properties:
  24249. key:
  24250. description: |-
  24251. A key in the referenced Secret.
  24252. Some instances of this field may be defaulted, in others it may be required.
  24253. maxLength: 253
  24254. minLength: 1
  24255. pattern: ^[-._a-zA-Z0-9]+$
  24256. type: string
  24257. name:
  24258. description: The name of the Secret resource being referred to.
  24259. maxLength: 253
  24260. minLength: 1
  24261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24262. type: string
  24263. namespace:
  24264. description: |-
  24265. The namespace of the Secret resource being referred to.
  24266. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24267. maxLength: 63
  24268. minLength: 1
  24269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24270. type: string
  24271. type: object
  24272. username:
  24273. description: |-
  24274. Username is a username used to authenticate using the UserPass Vault
  24275. authentication method
  24276. type: string
  24277. required:
  24278. - path
  24279. - username
  24280. type: object
  24281. type: object
  24282. caBundle:
  24283. description: |-
  24284. PEM encoded CA bundle used to validate Vault server certificate. Only used
  24285. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24286. plain HTTP protocol connection. If not set the system root certificates
  24287. are used to validate the TLS connection.
  24288. format: byte
  24289. type: string
  24290. caProvider:
  24291. description: The provider for the CA bundle to use to validate Vault server certificate.
  24292. properties:
  24293. key:
  24294. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24295. maxLength: 253
  24296. minLength: 1
  24297. pattern: ^[-._a-zA-Z0-9]+$
  24298. type: string
  24299. name:
  24300. description: The name of the object located at the provider type.
  24301. maxLength: 253
  24302. minLength: 1
  24303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24304. type: string
  24305. namespace:
  24306. description: |-
  24307. The namespace the Provider type is in.
  24308. Can only be defined when used in a ClusterSecretStore.
  24309. maxLength: 63
  24310. minLength: 1
  24311. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24312. type: string
  24313. type:
  24314. description: The type of provider to use such as "Secret", or "ConfigMap".
  24315. enum:
  24316. - Secret
  24317. - ConfigMap
  24318. type: string
  24319. required:
  24320. - name
  24321. - type
  24322. type: object
  24323. forwardInconsistent:
  24324. description: |-
  24325. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  24326. leader instead of simply retrying within a loop. This can increase performance if
  24327. the option is enabled serverside.
  24328. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  24329. type: boolean
  24330. headers:
  24331. additionalProperties:
  24332. type: string
  24333. description: Headers to be added in Vault request
  24334. type: object
  24335. namespace:
  24336. description: |-
  24337. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  24338. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24339. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24340. type: string
  24341. path:
  24342. description: |-
  24343. Path is the mount path of the Vault KV backend endpoint, e.g:
  24344. "secret". The v2 KV secret engine version specific "/data" path suffix
  24345. for fetching secrets from Vault is optional and will be appended
  24346. if not present in specified path.
  24347. type: string
  24348. readYourWrites:
  24349. description: |-
  24350. ReadYourWrites ensures isolated read-after-write semantics by
  24351. providing discovered cluster replication states in each request.
  24352. More information about eventual consistency in Vault can be found here
  24353. https://www.vaultproject.io/docs/enterprise/consistency
  24354. type: boolean
  24355. server:
  24356. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  24357. type: string
  24358. tls:
  24359. description: |-
  24360. The configuration used for client side related TLS communication, when the Vault server
  24361. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  24362. This parameter is ignored for plain HTTP protocol connection.
  24363. It's worth noting this configuration is different from the "TLS certificates auth method",
  24364. which is available under the `auth.cert` section.
  24365. properties:
  24366. certSecretRef:
  24367. description: |-
  24368. CertSecretRef is a certificate added to the transport layer
  24369. when communicating with the Vault server.
  24370. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  24371. properties:
  24372. key:
  24373. description: |-
  24374. A key in the referenced Secret.
  24375. Some instances of this field may be defaulted, in others it may be required.
  24376. maxLength: 253
  24377. minLength: 1
  24378. pattern: ^[-._a-zA-Z0-9]+$
  24379. type: string
  24380. name:
  24381. description: The name of the Secret resource being referred to.
  24382. maxLength: 253
  24383. minLength: 1
  24384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24385. type: string
  24386. namespace:
  24387. description: |-
  24388. The namespace of the Secret resource being referred to.
  24389. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24390. maxLength: 63
  24391. minLength: 1
  24392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24393. type: string
  24394. type: object
  24395. keySecretRef:
  24396. description: |-
  24397. KeySecretRef to a key in a Secret resource containing client private key
  24398. added to the transport layer when communicating with the Vault server.
  24399. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  24400. properties:
  24401. key:
  24402. description: |-
  24403. A key in the referenced Secret.
  24404. Some instances of this field may be defaulted, in others it may be required.
  24405. maxLength: 253
  24406. minLength: 1
  24407. pattern: ^[-._a-zA-Z0-9]+$
  24408. type: string
  24409. name:
  24410. description: The name of the Secret resource being referred to.
  24411. maxLength: 253
  24412. minLength: 1
  24413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24414. type: string
  24415. namespace:
  24416. description: |-
  24417. The namespace of the Secret resource being referred to.
  24418. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24419. maxLength: 63
  24420. minLength: 1
  24421. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24422. type: string
  24423. type: object
  24424. type: object
  24425. version:
  24426. default: v2
  24427. description: |-
  24428. Version is the Vault KV secret engine version. This can be either "v1" or
  24429. "v2". Version defaults to "v2".
  24430. enum:
  24431. - v1
  24432. - v2
  24433. type: string
  24434. required:
  24435. - server
  24436. type: object
  24437. webhook:
  24438. description: Webhook configures this store to sync secrets using a generic templated webhook
  24439. properties:
  24440. auth:
  24441. description: Auth specifies a authorization protocol. Only one protocol may be set.
  24442. maxProperties: 1
  24443. minProperties: 1
  24444. properties:
  24445. ntlm:
  24446. description: NTLMProtocol configures the store to use NTLM for auth
  24447. properties:
  24448. passwordSecret:
  24449. description: |-
  24450. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24451. In some instances, `key` is a required field.
  24452. properties:
  24453. key:
  24454. description: |-
  24455. A key in the referenced Secret.
  24456. Some instances of this field may be defaulted, in others it may be required.
  24457. maxLength: 253
  24458. minLength: 1
  24459. pattern: ^[-._a-zA-Z0-9]+$
  24460. type: string
  24461. name:
  24462. description: The name of the Secret resource being referred to.
  24463. maxLength: 253
  24464. minLength: 1
  24465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24466. type: string
  24467. namespace:
  24468. description: |-
  24469. The namespace of the Secret resource being referred to.
  24470. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24471. maxLength: 63
  24472. minLength: 1
  24473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24474. type: string
  24475. type: object
  24476. usernameSecret:
  24477. description: |-
  24478. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24479. In some instances, `key` is a required field.
  24480. properties:
  24481. key:
  24482. description: |-
  24483. A key in the referenced Secret.
  24484. Some instances of this field may be defaulted, in others it may be required.
  24485. maxLength: 253
  24486. minLength: 1
  24487. pattern: ^[-._a-zA-Z0-9]+$
  24488. type: string
  24489. name:
  24490. description: The name of the Secret resource being referred to.
  24491. maxLength: 253
  24492. minLength: 1
  24493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24494. type: string
  24495. namespace:
  24496. description: |-
  24497. The namespace of the Secret resource being referred to.
  24498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24499. maxLength: 63
  24500. minLength: 1
  24501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24502. type: string
  24503. type: object
  24504. required:
  24505. - passwordSecret
  24506. - usernameSecret
  24507. type: object
  24508. type: object
  24509. body:
  24510. description: Body
  24511. type: string
  24512. caBundle:
  24513. description: |-
  24514. PEM encoded CA bundle used to validate webhook server certificate. Only used
  24515. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24516. plain HTTP protocol connection. If not set the system root certificates
  24517. are used to validate the TLS connection.
  24518. format: byte
  24519. type: string
  24520. caProvider:
  24521. description: The provider for the CA bundle to use to validate webhook server certificate.
  24522. properties:
  24523. key:
  24524. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24525. maxLength: 253
  24526. minLength: 1
  24527. pattern: ^[-._a-zA-Z0-9]+$
  24528. type: string
  24529. name:
  24530. description: The name of the object located at the provider type.
  24531. maxLength: 253
  24532. minLength: 1
  24533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24534. type: string
  24535. namespace:
  24536. description: The namespace the Provider type is in.
  24537. maxLength: 63
  24538. minLength: 1
  24539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24540. type: string
  24541. type:
  24542. description: The type of provider to use such as "Secret", or "ConfigMap".
  24543. enum:
  24544. - Secret
  24545. - ConfigMap
  24546. type: string
  24547. required:
  24548. - name
  24549. - type
  24550. type: object
  24551. headers:
  24552. additionalProperties:
  24553. type: string
  24554. description: Headers
  24555. type: object
  24556. method:
  24557. description: Webhook Method
  24558. type: string
  24559. result:
  24560. description: Result formatting
  24561. properties:
  24562. jsonPath:
  24563. description: Json path of return value
  24564. type: string
  24565. type: object
  24566. secrets:
  24567. description: |-
  24568. Secrets to fill in templates
  24569. These secrets will be passed to the templating function as key value pairs under the given name
  24570. items:
  24571. description: WebhookSecret defines a secret to be used in webhook templates.
  24572. properties:
  24573. name:
  24574. description: Name of this secret in templates
  24575. type: string
  24576. secretRef:
  24577. description: Secret ref to fill in credentials
  24578. properties:
  24579. key:
  24580. description: |-
  24581. A key in the referenced Secret.
  24582. Some instances of this field may be defaulted, in others it may be required.
  24583. maxLength: 253
  24584. minLength: 1
  24585. pattern: ^[-._a-zA-Z0-9]+$
  24586. type: string
  24587. name:
  24588. description: The name of the Secret resource being referred to.
  24589. maxLength: 253
  24590. minLength: 1
  24591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24592. type: string
  24593. namespace:
  24594. description: |-
  24595. The namespace of the Secret resource being referred to.
  24596. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24597. maxLength: 63
  24598. minLength: 1
  24599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24600. type: string
  24601. type: object
  24602. required:
  24603. - name
  24604. - secretRef
  24605. type: object
  24606. type: array
  24607. timeout:
  24608. description: Timeout
  24609. type: string
  24610. url:
  24611. description: Webhook url to call
  24612. type: string
  24613. required:
  24614. - result
  24615. - url
  24616. type: object
  24617. yandexcertificatemanager:
  24618. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  24619. properties:
  24620. apiEndpoint:
  24621. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24622. type: string
  24623. auth:
  24624. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  24625. properties:
  24626. authorizedKeySecretRef:
  24627. description: The authorized key used for authentication
  24628. properties:
  24629. key:
  24630. description: |-
  24631. A key in the referenced Secret.
  24632. Some instances of this field may be defaulted, in others it may be required.
  24633. maxLength: 253
  24634. minLength: 1
  24635. pattern: ^[-._a-zA-Z0-9]+$
  24636. type: string
  24637. name:
  24638. description: The name of the Secret resource being referred to.
  24639. maxLength: 253
  24640. minLength: 1
  24641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24642. type: string
  24643. namespace:
  24644. description: |-
  24645. The namespace of the Secret resource being referred to.
  24646. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24647. maxLength: 63
  24648. minLength: 1
  24649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24650. type: string
  24651. type: object
  24652. type: object
  24653. caProvider:
  24654. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24655. properties:
  24656. certSecretRef:
  24657. description: |-
  24658. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24659. In some instances, `key` is a required field.
  24660. properties:
  24661. key:
  24662. description: |-
  24663. A key in the referenced Secret.
  24664. Some instances of this field may be defaulted, in others it may be required.
  24665. maxLength: 253
  24666. minLength: 1
  24667. pattern: ^[-._a-zA-Z0-9]+$
  24668. type: string
  24669. name:
  24670. description: The name of the Secret resource being referred to.
  24671. maxLength: 253
  24672. minLength: 1
  24673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24674. type: string
  24675. namespace:
  24676. description: |-
  24677. The namespace of the Secret resource being referred to.
  24678. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24679. maxLength: 63
  24680. minLength: 1
  24681. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24682. type: string
  24683. type: object
  24684. type: object
  24685. required:
  24686. - auth
  24687. type: object
  24688. yandexlockbox:
  24689. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  24690. properties:
  24691. apiEndpoint:
  24692. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24693. type: string
  24694. auth:
  24695. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  24696. properties:
  24697. authorizedKeySecretRef:
  24698. description: The authorized key used for authentication
  24699. properties:
  24700. key:
  24701. description: |-
  24702. A key in the referenced Secret.
  24703. Some instances of this field may be defaulted, in others it may be required.
  24704. maxLength: 253
  24705. minLength: 1
  24706. pattern: ^[-._a-zA-Z0-9]+$
  24707. type: string
  24708. name:
  24709. description: The name of the Secret resource being referred to.
  24710. maxLength: 253
  24711. minLength: 1
  24712. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24713. type: string
  24714. namespace:
  24715. description: |-
  24716. The namespace of the Secret resource being referred to.
  24717. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24718. maxLength: 63
  24719. minLength: 1
  24720. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24721. type: string
  24722. type: object
  24723. type: object
  24724. caProvider:
  24725. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24726. properties:
  24727. certSecretRef:
  24728. description: |-
  24729. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24730. In some instances, `key` is a required field.
  24731. properties:
  24732. key:
  24733. description: |-
  24734. A key in the referenced Secret.
  24735. Some instances of this field may be defaulted, in others it may be required.
  24736. maxLength: 253
  24737. minLength: 1
  24738. pattern: ^[-._a-zA-Z0-9]+$
  24739. type: string
  24740. name:
  24741. description: The name of the Secret resource being referred to.
  24742. maxLength: 253
  24743. minLength: 1
  24744. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24745. type: string
  24746. namespace:
  24747. description: |-
  24748. The namespace of the Secret resource being referred to.
  24749. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24750. maxLength: 63
  24751. minLength: 1
  24752. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24753. type: string
  24754. type: object
  24755. type: object
  24756. required:
  24757. - auth
  24758. type: object
  24759. type: object
  24760. refreshInterval:
  24761. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  24762. type: integer
  24763. retrySettings:
  24764. description: Used to configure HTTP retries on failures.
  24765. properties:
  24766. maxRetries:
  24767. description: MaxRetries is the maximum number of retry attempts.
  24768. format: int32
  24769. type: integer
  24770. retryInterval:
  24771. description: RetryInterval is the interval between retry attempts.
  24772. type: string
  24773. type: object
  24774. required:
  24775. - provider
  24776. type: object
  24777. status:
  24778. description: SecretStoreStatus defines the observed state of the SecretStore.
  24779. properties:
  24780. capabilities:
  24781. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  24782. type: string
  24783. conditions:
  24784. items:
  24785. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  24786. properties:
  24787. lastTransitionTime:
  24788. format: date-time
  24789. type: string
  24790. message:
  24791. type: string
  24792. reason:
  24793. type: string
  24794. status:
  24795. type: string
  24796. type:
  24797. description: SecretStoreConditionType represents the condition type of the SecretStore.
  24798. type: string
  24799. required:
  24800. - status
  24801. - type
  24802. type: object
  24803. type: array
  24804. type: object
  24805. type: object
  24806. served: false
  24807. storage: false
  24808. subresources:
  24809. status: {}
  24810. ---
  24811. apiVersion: apiextensions.k8s.io/v1
  24812. kind: CustomResourceDefinition
  24813. metadata:
  24814. annotations:
  24815. controller-gen.kubebuilder.io/version: v0.19.0
  24816. labels:
  24817. external-secrets.io/component: controller
  24818. name: acraccesstokens.generators.external-secrets.io
  24819. spec:
  24820. group: generators.external-secrets.io
  24821. names:
  24822. categories:
  24823. - external-secrets
  24824. - external-secrets-generators
  24825. kind: ACRAccessToken
  24826. listKind: ACRAccessTokenList
  24827. plural: acraccesstokens
  24828. singular: acraccesstoken
  24829. scope: Namespaced
  24830. versions:
  24831. - name: v1alpha1
  24832. schema:
  24833. openAPIV3Schema:
  24834. description: |-
  24835. ACRAccessToken returns an Azure Container Registry token
  24836. that can be used for pushing/pulling images.
  24837. Note: by default it will return an ACR Refresh Token with full access
  24838. (depending on the identity).
  24839. This can be scoped down to the repository level using .spec.scope.
  24840. In case scope is defined it will return an ACR Access Token.
  24841. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  24842. properties:
  24843. apiVersion:
  24844. description: |-
  24845. APIVersion defines the versioned schema of this representation of an object.
  24846. Servers should convert recognized schemas to the latest internal value, and
  24847. may reject unrecognized values.
  24848. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24849. type: string
  24850. kind:
  24851. description: |-
  24852. Kind is a string value representing the REST resource this object represents.
  24853. Servers may infer this from the endpoint the client submits requests to.
  24854. Cannot be updated.
  24855. In CamelCase.
  24856. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24857. type: string
  24858. metadata:
  24859. type: object
  24860. spec:
  24861. description: |-
  24862. ACRAccessTokenSpec defines how to generate the access token
  24863. e.g. how to authenticate and which registry to use.
  24864. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  24865. properties:
  24866. auth:
  24867. description: ACRAuth defines the authentication methods for Azure Container Registry.
  24868. properties:
  24869. managedIdentity:
  24870. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  24871. properties:
  24872. identityId:
  24873. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  24874. type: string
  24875. type: object
  24876. servicePrincipal:
  24877. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  24878. properties:
  24879. secretRef:
  24880. description: |-
  24881. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  24882. It uses static credentials stored in a Kind=Secret.
  24883. properties:
  24884. clientId:
  24885. description: The Azure clientId of the service principle used for authentication.
  24886. properties:
  24887. key:
  24888. description: |-
  24889. A key in the referenced Secret.
  24890. Some instances of this field may be defaulted, in others it may be required.
  24891. maxLength: 253
  24892. minLength: 1
  24893. pattern: ^[-._a-zA-Z0-9]+$
  24894. type: string
  24895. name:
  24896. description: The name of the Secret resource being referred to.
  24897. maxLength: 253
  24898. minLength: 1
  24899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24900. type: string
  24901. namespace:
  24902. description: |-
  24903. The namespace of the Secret resource being referred to.
  24904. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24905. maxLength: 63
  24906. minLength: 1
  24907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24908. type: string
  24909. type: object
  24910. clientSecret:
  24911. description: The Azure ClientSecret of the service principle used for authentication.
  24912. properties:
  24913. key:
  24914. description: |-
  24915. A key in the referenced Secret.
  24916. Some instances of this field may be defaulted, in others it may be required.
  24917. maxLength: 253
  24918. minLength: 1
  24919. pattern: ^[-._a-zA-Z0-9]+$
  24920. type: string
  24921. name:
  24922. description: The name of the Secret resource being referred to.
  24923. maxLength: 253
  24924. minLength: 1
  24925. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24926. type: string
  24927. namespace:
  24928. description: |-
  24929. The namespace of the Secret resource being referred to.
  24930. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24931. maxLength: 63
  24932. minLength: 1
  24933. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24934. type: string
  24935. type: object
  24936. type: object
  24937. required:
  24938. - secretRef
  24939. type: object
  24940. workloadIdentity:
  24941. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  24942. properties:
  24943. serviceAccountRef:
  24944. description: |-
  24945. ServiceAccountRef specified the service account
  24946. that should be used when authenticating with WorkloadIdentity.
  24947. properties:
  24948. audiences:
  24949. description: |-
  24950. Audience specifies the `aud` claim for the service account token
  24951. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24952. then this audiences will be appended to the list
  24953. items:
  24954. type: string
  24955. type: array
  24956. name:
  24957. description: The name of the ServiceAccount resource being referred to.
  24958. maxLength: 253
  24959. minLength: 1
  24960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24961. type: string
  24962. namespace:
  24963. description: |-
  24964. Namespace of the resource being referred to.
  24965. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24966. maxLength: 63
  24967. minLength: 1
  24968. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24969. type: string
  24970. required:
  24971. - name
  24972. type: object
  24973. type: object
  24974. type: object
  24975. environmentType:
  24976. default: PublicCloud
  24977. description: |-
  24978. EnvironmentType specifies the Azure cloud environment endpoints to use for
  24979. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  24980. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  24981. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  24982. enum:
  24983. - PublicCloud
  24984. - USGovernmentCloud
  24985. - ChinaCloud
  24986. - GermanCloud
  24987. - AzureStackCloud
  24988. type: string
  24989. registry:
  24990. description: |-
  24991. the domain name of the ACR registry
  24992. e.g. foobarexample.azurecr.io
  24993. type: string
  24994. scope:
  24995. description: |-
  24996. Define the scope for the access token, e.g. pull/push access for a repository.
  24997. if not provided it will return a refresh token that has full scope.
  24998. Note: you need to pin it down to the repository level, there is no wildcard available.
  24999. examples:
  25000. repository:my-repository:pull,push
  25001. repository:my-repository:pull
  25002. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25003. type: string
  25004. tenantId:
  25005. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25006. type: string
  25007. required:
  25008. - auth
  25009. - registry
  25010. type: object
  25011. type: object
  25012. served: true
  25013. storage: true
  25014. subresources:
  25015. status: {}
  25016. ---
  25017. apiVersion: apiextensions.k8s.io/v1
  25018. kind: CustomResourceDefinition
  25019. metadata:
  25020. annotations:
  25021. controller-gen.kubebuilder.io/version: v0.19.0
  25022. labels:
  25023. external-secrets.io/component: controller
  25024. name: cloudsmithaccesstokens.generators.external-secrets.io
  25025. spec:
  25026. group: generators.external-secrets.io
  25027. names:
  25028. categories:
  25029. - external-secrets
  25030. - external-secrets-generators
  25031. kind: CloudsmithAccessToken
  25032. listKind: CloudsmithAccessTokenList
  25033. plural: cloudsmithaccesstokens
  25034. singular: cloudsmithaccesstoken
  25035. scope: Namespaced
  25036. versions:
  25037. - name: v1alpha1
  25038. schema:
  25039. openAPIV3Schema:
  25040. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  25041. properties:
  25042. apiVersion:
  25043. description: |-
  25044. APIVersion defines the versioned schema of this representation of an object.
  25045. Servers should convert recognized schemas to the latest internal value, and
  25046. may reject unrecognized values.
  25047. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25048. type: string
  25049. kind:
  25050. description: |-
  25051. Kind is a string value representing the REST resource this object represents.
  25052. Servers may infer this from the endpoint the client submits requests to.
  25053. Cannot be updated.
  25054. In CamelCase.
  25055. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25056. type: string
  25057. metadata:
  25058. type: object
  25059. spec:
  25060. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25061. properties:
  25062. apiUrl:
  25063. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25064. type: string
  25065. orgSlug:
  25066. description: OrgSlug is the organization slug in Cloudsmith
  25067. type: string
  25068. serviceAccountRef:
  25069. description: Name of the service account you are federating with
  25070. properties:
  25071. audiences:
  25072. description: |-
  25073. Audience specifies the `aud` claim for the service account token
  25074. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25075. then this audiences will be appended to the list
  25076. items:
  25077. type: string
  25078. type: array
  25079. name:
  25080. description: The name of the ServiceAccount resource being referred to.
  25081. maxLength: 253
  25082. minLength: 1
  25083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25084. type: string
  25085. namespace:
  25086. description: |-
  25087. Namespace of the resource being referred to.
  25088. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25089. maxLength: 63
  25090. minLength: 1
  25091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25092. type: string
  25093. required:
  25094. - name
  25095. type: object
  25096. serviceSlug:
  25097. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25098. type: string
  25099. required:
  25100. - orgSlug
  25101. - serviceAccountRef
  25102. - serviceSlug
  25103. type: object
  25104. type: object
  25105. served: true
  25106. storage: true
  25107. subresources:
  25108. status: {}
  25109. ---
  25110. apiVersion: apiextensions.k8s.io/v1
  25111. kind: CustomResourceDefinition
  25112. metadata:
  25113. annotations:
  25114. controller-gen.kubebuilder.io/version: v0.19.0
  25115. labels:
  25116. external-secrets.io/component: controller
  25117. name: clustergenerators.generators.external-secrets.io
  25118. spec:
  25119. group: generators.external-secrets.io
  25120. names:
  25121. categories:
  25122. - external-secrets
  25123. - external-secrets-generators
  25124. kind: ClusterGenerator
  25125. listKind: ClusterGeneratorList
  25126. plural: clustergenerators
  25127. singular: clustergenerator
  25128. scope: Cluster
  25129. versions:
  25130. - name: v1alpha1
  25131. schema:
  25132. openAPIV3Schema:
  25133. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  25134. properties:
  25135. apiVersion:
  25136. description: |-
  25137. APIVersion defines the versioned schema of this representation of an object.
  25138. Servers should convert recognized schemas to the latest internal value, and
  25139. may reject unrecognized values.
  25140. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25141. type: string
  25142. kind:
  25143. description: |-
  25144. Kind is a string value representing the REST resource this object represents.
  25145. Servers may infer this from the endpoint the client submits requests to.
  25146. Cannot be updated.
  25147. In CamelCase.
  25148. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25149. type: string
  25150. metadata:
  25151. type: object
  25152. spec:
  25153. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  25154. properties:
  25155. generator:
  25156. description: Generator the spec for this generator, must match the kind.
  25157. maxProperties: 1
  25158. minProperties: 1
  25159. properties:
  25160. acrAccessTokenSpec:
  25161. description: |-
  25162. ACRAccessTokenSpec defines how to generate the access token
  25163. e.g. how to authenticate and which registry to use.
  25164. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25165. properties:
  25166. auth:
  25167. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25168. properties:
  25169. managedIdentity:
  25170. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25171. properties:
  25172. identityId:
  25173. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25174. type: string
  25175. type: object
  25176. servicePrincipal:
  25177. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25178. properties:
  25179. secretRef:
  25180. description: |-
  25181. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25182. It uses static credentials stored in a Kind=Secret.
  25183. properties:
  25184. clientId:
  25185. description: The Azure clientId of the service principle used for authentication.
  25186. properties:
  25187. key:
  25188. description: |-
  25189. A key in the referenced Secret.
  25190. Some instances of this field may be defaulted, in others it may be required.
  25191. maxLength: 253
  25192. minLength: 1
  25193. pattern: ^[-._a-zA-Z0-9]+$
  25194. type: string
  25195. name:
  25196. description: The name of the Secret resource being referred to.
  25197. maxLength: 253
  25198. minLength: 1
  25199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25200. type: string
  25201. namespace:
  25202. description: |-
  25203. The namespace of the Secret resource being referred to.
  25204. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25205. maxLength: 63
  25206. minLength: 1
  25207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25208. type: string
  25209. type: object
  25210. clientSecret:
  25211. description: The Azure ClientSecret of the service principle used for authentication.
  25212. properties:
  25213. key:
  25214. description: |-
  25215. A key in the referenced Secret.
  25216. Some instances of this field may be defaulted, in others it may be required.
  25217. maxLength: 253
  25218. minLength: 1
  25219. pattern: ^[-._a-zA-Z0-9]+$
  25220. type: string
  25221. name:
  25222. description: The name of the Secret resource being referred to.
  25223. maxLength: 253
  25224. minLength: 1
  25225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25226. type: string
  25227. namespace:
  25228. description: |-
  25229. The namespace of the Secret resource being referred to.
  25230. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25231. maxLength: 63
  25232. minLength: 1
  25233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25234. type: string
  25235. type: object
  25236. type: object
  25237. required:
  25238. - secretRef
  25239. type: object
  25240. workloadIdentity:
  25241. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  25242. properties:
  25243. serviceAccountRef:
  25244. description: |-
  25245. ServiceAccountRef specified the service account
  25246. that should be used when authenticating with WorkloadIdentity.
  25247. properties:
  25248. audiences:
  25249. description: |-
  25250. Audience specifies the `aud` claim for the service account token
  25251. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25252. then this audiences will be appended to the list
  25253. items:
  25254. type: string
  25255. type: array
  25256. name:
  25257. description: The name of the ServiceAccount resource being referred to.
  25258. maxLength: 253
  25259. minLength: 1
  25260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25261. type: string
  25262. namespace:
  25263. description: |-
  25264. Namespace of the resource being referred to.
  25265. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25266. maxLength: 63
  25267. minLength: 1
  25268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25269. type: string
  25270. required:
  25271. - name
  25272. type: object
  25273. type: object
  25274. type: object
  25275. environmentType:
  25276. default: PublicCloud
  25277. description: |-
  25278. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25279. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25280. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25281. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25282. enum:
  25283. - PublicCloud
  25284. - USGovernmentCloud
  25285. - ChinaCloud
  25286. - GermanCloud
  25287. - AzureStackCloud
  25288. type: string
  25289. registry:
  25290. description: |-
  25291. the domain name of the ACR registry
  25292. e.g. foobarexample.azurecr.io
  25293. type: string
  25294. scope:
  25295. description: |-
  25296. Define the scope for the access token, e.g. pull/push access for a repository.
  25297. if not provided it will return a refresh token that has full scope.
  25298. Note: you need to pin it down to the repository level, there is no wildcard available.
  25299. examples:
  25300. repository:my-repository:pull,push
  25301. repository:my-repository:pull
  25302. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25303. type: string
  25304. tenantId:
  25305. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25306. type: string
  25307. required:
  25308. - auth
  25309. - registry
  25310. type: object
  25311. cloudsmithAccessTokenSpec:
  25312. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25313. properties:
  25314. apiUrl:
  25315. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25316. type: string
  25317. orgSlug:
  25318. description: OrgSlug is the organization slug in Cloudsmith
  25319. type: string
  25320. serviceAccountRef:
  25321. description: Name of the service account you are federating with
  25322. properties:
  25323. audiences:
  25324. description: |-
  25325. Audience specifies the `aud` claim for the service account token
  25326. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25327. then this audiences will be appended to the list
  25328. items:
  25329. type: string
  25330. type: array
  25331. name:
  25332. description: The name of the ServiceAccount resource being referred to.
  25333. maxLength: 253
  25334. minLength: 1
  25335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25336. type: string
  25337. namespace:
  25338. description: |-
  25339. Namespace of the resource being referred to.
  25340. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25341. maxLength: 63
  25342. minLength: 1
  25343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25344. type: string
  25345. required:
  25346. - name
  25347. type: object
  25348. serviceSlug:
  25349. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25350. type: string
  25351. required:
  25352. - orgSlug
  25353. - serviceAccountRef
  25354. - serviceSlug
  25355. type: object
  25356. ecrAuthorizationTokenSpec:
  25357. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  25358. properties:
  25359. auth:
  25360. description: Auth defines how to authenticate with AWS
  25361. properties:
  25362. jwt:
  25363. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  25364. properties:
  25365. serviceAccountRef:
  25366. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25367. properties:
  25368. audiences:
  25369. description: |-
  25370. Audience specifies the `aud` claim for the service account token
  25371. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25372. then this audiences will be appended to the list
  25373. items:
  25374. type: string
  25375. type: array
  25376. name:
  25377. description: The name of the ServiceAccount resource being referred to.
  25378. maxLength: 253
  25379. minLength: 1
  25380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25381. type: string
  25382. namespace:
  25383. description: |-
  25384. Namespace of the resource being referred to.
  25385. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25386. maxLength: 63
  25387. minLength: 1
  25388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25389. type: string
  25390. required:
  25391. - name
  25392. type: object
  25393. type: object
  25394. secretRef:
  25395. description: |-
  25396. AWSAuthSecretRef holds secret references for AWS credentials
  25397. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  25398. properties:
  25399. accessKeyIDSecretRef:
  25400. description: The AccessKeyID is used for authentication
  25401. properties:
  25402. key:
  25403. description: |-
  25404. A key in the referenced Secret.
  25405. Some instances of this field may be defaulted, in others it may be required.
  25406. maxLength: 253
  25407. minLength: 1
  25408. pattern: ^[-._a-zA-Z0-9]+$
  25409. type: string
  25410. name:
  25411. description: The name of the Secret resource being referred to.
  25412. maxLength: 253
  25413. minLength: 1
  25414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25415. type: string
  25416. namespace:
  25417. description: |-
  25418. The namespace of the Secret resource being referred to.
  25419. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25420. maxLength: 63
  25421. minLength: 1
  25422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25423. type: string
  25424. type: object
  25425. secretAccessKeySecretRef:
  25426. description: The SecretAccessKey is used for authentication
  25427. properties:
  25428. key:
  25429. description: |-
  25430. A key in the referenced Secret.
  25431. Some instances of this field may be defaulted, in others it may be required.
  25432. maxLength: 253
  25433. minLength: 1
  25434. pattern: ^[-._a-zA-Z0-9]+$
  25435. type: string
  25436. name:
  25437. description: The name of the Secret resource being referred to.
  25438. maxLength: 253
  25439. minLength: 1
  25440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25441. type: string
  25442. namespace:
  25443. description: |-
  25444. The namespace of the Secret resource being referred to.
  25445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25446. maxLength: 63
  25447. minLength: 1
  25448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25449. type: string
  25450. type: object
  25451. sessionTokenSecretRef:
  25452. description: |-
  25453. The SessionToken used for authentication
  25454. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  25455. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  25456. properties:
  25457. key:
  25458. description: |-
  25459. A key in the referenced Secret.
  25460. Some instances of this field may be defaulted, in others it may be required.
  25461. maxLength: 253
  25462. minLength: 1
  25463. pattern: ^[-._a-zA-Z0-9]+$
  25464. type: string
  25465. name:
  25466. description: The name of the Secret resource being referred to.
  25467. maxLength: 253
  25468. minLength: 1
  25469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25470. type: string
  25471. namespace:
  25472. description: |-
  25473. The namespace of the Secret resource being referred to.
  25474. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25475. maxLength: 63
  25476. minLength: 1
  25477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25478. type: string
  25479. type: object
  25480. type: object
  25481. type: object
  25482. region:
  25483. description: Region specifies the region to operate in.
  25484. type: string
  25485. role:
  25486. description: |-
  25487. You can assume a role before making calls to the
  25488. desired AWS service.
  25489. type: string
  25490. scope:
  25491. description: |-
  25492. Scope specifies the ECR service scope.
  25493. Valid options are private and public.
  25494. type: string
  25495. required:
  25496. - region
  25497. type: object
  25498. fakeSpec:
  25499. description: FakeSpec contains the static data.
  25500. properties:
  25501. controller:
  25502. description: |-
  25503. Used to select the correct ESO controller (think: ingress.ingressClassName)
  25504. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  25505. type: string
  25506. data:
  25507. additionalProperties:
  25508. type: string
  25509. description: |-
  25510. Data defines the static data returned
  25511. by this generator.
  25512. type: object
  25513. type: object
  25514. gcrAccessTokenSpec:
  25515. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  25516. properties:
  25517. auth:
  25518. description: Auth defines the means for authenticating with GCP
  25519. properties:
  25520. secretRef:
  25521. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  25522. properties:
  25523. secretAccessKeySecretRef:
  25524. description: The SecretAccessKey is used for authentication
  25525. properties:
  25526. key:
  25527. description: |-
  25528. A key in the referenced Secret.
  25529. Some instances of this field may be defaulted, in others it may be required.
  25530. maxLength: 253
  25531. minLength: 1
  25532. pattern: ^[-._a-zA-Z0-9]+$
  25533. type: string
  25534. name:
  25535. description: The name of the Secret resource being referred to.
  25536. maxLength: 253
  25537. minLength: 1
  25538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25539. type: string
  25540. namespace:
  25541. description: |-
  25542. The namespace of the Secret resource being referred to.
  25543. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25544. maxLength: 63
  25545. minLength: 1
  25546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25547. type: string
  25548. type: object
  25549. type: object
  25550. workloadIdentity:
  25551. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  25552. properties:
  25553. clusterLocation:
  25554. type: string
  25555. clusterName:
  25556. type: string
  25557. clusterProjectID:
  25558. type: string
  25559. serviceAccountRef:
  25560. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25561. properties:
  25562. audiences:
  25563. description: |-
  25564. Audience specifies the `aud` claim for the service account token
  25565. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25566. then this audiences will be appended to the list
  25567. items:
  25568. type: string
  25569. type: array
  25570. name:
  25571. description: The name of the ServiceAccount resource being referred to.
  25572. maxLength: 253
  25573. minLength: 1
  25574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25575. type: string
  25576. namespace:
  25577. description: |-
  25578. Namespace of the resource being referred to.
  25579. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25580. maxLength: 63
  25581. minLength: 1
  25582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25583. type: string
  25584. required:
  25585. - name
  25586. type: object
  25587. required:
  25588. - clusterLocation
  25589. - clusterName
  25590. - serviceAccountRef
  25591. type: object
  25592. workloadIdentityFederation:
  25593. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  25594. properties:
  25595. audience:
  25596. description: |-
  25597. 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.
  25598. If specified, Audience found in the external account credential config will be overridden with the configured value.
  25599. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  25600. type: string
  25601. awsSecurityCredentials:
  25602. description: |-
  25603. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  25604. when using the AWS metadata server is not an option.
  25605. properties:
  25606. awsCredentialsSecretRef:
  25607. description: |-
  25608. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  25609. Secret should be created with below names for keys
  25610. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  25611. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  25612. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  25613. properties:
  25614. name:
  25615. description: name of the secret.
  25616. maxLength: 253
  25617. minLength: 1
  25618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25619. type: string
  25620. namespace:
  25621. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  25622. maxLength: 63
  25623. minLength: 1
  25624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25625. type: string
  25626. required:
  25627. - name
  25628. type: object
  25629. region:
  25630. description: region is for configuring the AWS region to be used.
  25631. example: ap-south-1
  25632. maxLength: 50
  25633. minLength: 1
  25634. pattern: ^[a-z0-9-]+$
  25635. type: string
  25636. required:
  25637. - awsCredentialsSecretRef
  25638. - region
  25639. type: object
  25640. credConfig:
  25641. description: |-
  25642. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  25643. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  25644. serviceAccountRef must be used by providing operators service account details.
  25645. properties:
  25646. key:
  25647. description: key name holding the external account credential config.
  25648. maxLength: 253
  25649. minLength: 1
  25650. pattern: ^[-._a-zA-Z0-9]+$
  25651. type: string
  25652. name:
  25653. description: name of the configmap.
  25654. maxLength: 253
  25655. minLength: 1
  25656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25657. type: string
  25658. namespace:
  25659. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  25660. maxLength: 63
  25661. minLength: 1
  25662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25663. type: string
  25664. required:
  25665. - key
  25666. - name
  25667. type: object
  25668. externalTokenEndpoint:
  25669. description: |-
  25670. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  25671. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  25672. URL is having the expected value.
  25673. type: string
  25674. gcpServiceAccountEmail:
  25675. description: |-
  25676. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  25677. after Workload Identity Federation. Use this to grant access through the service account's
  25678. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  25679. service_account_impersonation_url in the external account JSON from credConfig;
  25680. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  25681. on that ServiceAccount.
  25682. example: my-gsa@my-project.iam.gserviceaccount.com
  25683. minLength: 1
  25684. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  25685. type: string
  25686. serviceAccountRef:
  25687. description: |-
  25688. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  25689. when Kubernetes is configured as provider in workload identity pool.
  25690. properties:
  25691. audiences:
  25692. description: |-
  25693. Audience specifies the `aud` claim for the service account token
  25694. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25695. then this audiences will be appended to the list
  25696. items:
  25697. type: string
  25698. type: array
  25699. name:
  25700. description: The name of the ServiceAccount resource being referred to.
  25701. maxLength: 253
  25702. minLength: 1
  25703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25704. type: string
  25705. namespace:
  25706. description: |-
  25707. Namespace of the resource being referred to.
  25708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25709. maxLength: 63
  25710. minLength: 1
  25711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25712. type: string
  25713. required:
  25714. - name
  25715. type: object
  25716. type: object
  25717. type: object
  25718. projectID:
  25719. description: ProjectID defines which project to use to authenticate with
  25720. type: string
  25721. required:
  25722. - auth
  25723. - projectID
  25724. type: object
  25725. githubAccessTokenSpec:
  25726. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  25727. properties:
  25728. appID:
  25729. type: string
  25730. auth:
  25731. description: Auth configures how ESO authenticates with a Github instance.
  25732. properties:
  25733. privateKey:
  25734. description: GithubSecretRef references a secret containing GitHub credentials.
  25735. properties:
  25736. secretRef:
  25737. description: |-
  25738. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25739. In some instances, `key` is a required field.
  25740. properties:
  25741. key:
  25742. description: |-
  25743. A key in the referenced Secret.
  25744. Some instances of this field may be defaulted, in others it may be required.
  25745. maxLength: 253
  25746. minLength: 1
  25747. pattern: ^[-._a-zA-Z0-9]+$
  25748. type: string
  25749. name:
  25750. description: The name of the Secret resource being referred to.
  25751. maxLength: 253
  25752. minLength: 1
  25753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25754. type: string
  25755. namespace:
  25756. description: |-
  25757. The namespace of the Secret resource being referred to.
  25758. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25759. maxLength: 63
  25760. minLength: 1
  25761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25762. type: string
  25763. type: object
  25764. required:
  25765. - secretRef
  25766. type: object
  25767. required:
  25768. - privateKey
  25769. type: object
  25770. installID:
  25771. type: string
  25772. permissions:
  25773. additionalProperties:
  25774. type: string
  25775. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  25776. type: object
  25777. repositories:
  25778. description: |-
  25779. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  25780. is installed to.
  25781. items:
  25782. type: string
  25783. type: array
  25784. url:
  25785. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  25786. type: string
  25787. required:
  25788. - appID
  25789. - auth
  25790. - installID
  25791. type: object
  25792. grafanaSpec:
  25793. description: GrafanaSpec controls the behavior of the grafana generator.
  25794. properties:
  25795. auth:
  25796. description: |-
  25797. Auth is the authentication configuration to authenticate
  25798. against the Grafana instance.
  25799. properties:
  25800. basic:
  25801. description: |-
  25802. Basic auth credentials used to authenticate against the Grafana instance.
  25803. Note: you need a token which has elevated permissions to create service accounts.
  25804. See here for the documentation on basic roles offered by Grafana:
  25805. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25806. properties:
  25807. password:
  25808. description: A basic auth password used to authenticate against the Grafana instance.
  25809. properties:
  25810. key:
  25811. description: The key where the token is found.
  25812. maxLength: 253
  25813. minLength: 1
  25814. pattern: ^[-._a-zA-Z0-9]+$
  25815. type: string
  25816. name:
  25817. description: The name of the Secret resource being referred to.
  25818. maxLength: 253
  25819. minLength: 1
  25820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25821. type: string
  25822. type: object
  25823. username:
  25824. description: A basic auth username used to authenticate against the Grafana instance.
  25825. type: string
  25826. required:
  25827. - password
  25828. - username
  25829. type: object
  25830. token:
  25831. description: |-
  25832. A service account token used to authenticate against the Grafana instance.
  25833. Note: you need a token which has elevated permissions to create service accounts.
  25834. See here for the documentation on basic roles offered by Grafana:
  25835. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25836. properties:
  25837. key:
  25838. description: The key where the token is found.
  25839. maxLength: 253
  25840. minLength: 1
  25841. pattern: ^[-._a-zA-Z0-9]+$
  25842. type: string
  25843. name:
  25844. description: The name of the Secret resource being referred to.
  25845. maxLength: 253
  25846. minLength: 1
  25847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25848. type: string
  25849. type: object
  25850. type: object
  25851. serviceAccount:
  25852. description: |-
  25853. ServiceAccount is the configuration for the service account that
  25854. is supposed to be generated by the generator.
  25855. properties:
  25856. name:
  25857. description: Name is the name of the service account that will be created by ESO.
  25858. type: string
  25859. role:
  25860. description: |-
  25861. Role is the role of the service account.
  25862. See here for the documentation on basic roles offered by Grafana:
  25863. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25864. type: string
  25865. required:
  25866. - name
  25867. - role
  25868. type: object
  25869. url:
  25870. description: URL is the URL of the Grafana instance.
  25871. type: string
  25872. required:
  25873. - auth
  25874. - serviceAccount
  25875. - url
  25876. type: object
  25877. mfaSpec:
  25878. description: MFASpec controls the behavior of the mfa generator.
  25879. properties:
  25880. algorithm:
  25881. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  25882. type: string
  25883. length:
  25884. description: Length defines the token length. Defaults to 6 characters.
  25885. type: integer
  25886. secret:
  25887. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  25888. properties:
  25889. key:
  25890. description: |-
  25891. A key in the referenced Secret.
  25892. Some instances of this field may be defaulted, in others it may be required.
  25893. maxLength: 253
  25894. minLength: 1
  25895. pattern: ^[-._a-zA-Z0-9]+$
  25896. type: string
  25897. name:
  25898. description: The name of the Secret resource being referred to.
  25899. maxLength: 253
  25900. minLength: 1
  25901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25902. type: string
  25903. namespace:
  25904. description: |-
  25905. The namespace of the Secret resource being referred to.
  25906. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25907. maxLength: 63
  25908. minLength: 1
  25909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25910. type: string
  25911. type: object
  25912. timePeriod:
  25913. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  25914. type: integer
  25915. when:
  25916. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  25917. format: date-time
  25918. type: string
  25919. required:
  25920. - secret
  25921. type: object
  25922. passwordSpec:
  25923. description: PasswordSpec controls the behavior of the password generator.
  25924. properties:
  25925. allowRepeat:
  25926. default: false
  25927. description: set AllowRepeat to true to allow repeating characters.
  25928. type: boolean
  25929. digits:
  25930. description: |-
  25931. Digits specifies the number of digits in the generated
  25932. password. If omitted it defaults to 25% of the length of the password
  25933. type: integer
  25934. encoding:
  25935. default: raw
  25936. description: |-
  25937. Encoding specifies the encoding of the generated password.
  25938. Valid values are:
  25939. - "raw" (default): no encoding
  25940. - "base64": standard base64 encoding
  25941. - "base64url": base64url encoding
  25942. - "base32": base32 encoding
  25943. - "hex": hexadecimal encoding
  25944. enum:
  25945. - base64
  25946. - base64url
  25947. - base32
  25948. - hex
  25949. - raw
  25950. type: string
  25951. length:
  25952. default: 24
  25953. description: |-
  25954. Length of the password to be generated.
  25955. Defaults to 24
  25956. type: integer
  25957. noUpper:
  25958. default: false
  25959. description: Set NoUpper to disable uppercase characters
  25960. type: boolean
  25961. secretKeys:
  25962. description: |-
  25963. SecretKeys defines the keys that will be populated with generated passwords.
  25964. Defaults to "password" when not set.
  25965. items:
  25966. type: string
  25967. minItems: 1
  25968. type: array
  25969. symbolCharacters:
  25970. description: |-
  25971. SymbolCharacters specifies the special characters that should be used
  25972. in the generated password.
  25973. type: string
  25974. symbols:
  25975. description: |-
  25976. Symbols specifies the number of symbol characters in the generated
  25977. password. If omitted it defaults to 25% of the length of the password
  25978. type: integer
  25979. required:
  25980. - allowRepeat
  25981. - length
  25982. - noUpper
  25983. type: object
  25984. quayAccessTokenSpec:
  25985. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  25986. properties:
  25987. robotAccount:
  25988. description: Name of the robot account you are federating with
  25989. type: string
  25990. serviceAccountRef:
  25991. description: Name of the service account you are federating with
  25992. properties:
  25993. audiences:
  25994. description: |-
  25995. Audience specifies the `aud` claim for the service account token
  25996. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25997. then this audiences will be appended to the list
  25998. items:
  25999. type: string
  26000. type: array
  26001. name:
  26002. description: The name of the ServiceAccount resource being referred to.
  26003. maxLength: 253
  26004. minLength: 1
  26005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26006. type: string
  26007. namespace:
  26008. description: |-
  26009. Namespace of the resource being referred to.
  26010. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26011. maxLength: 63
  26012. minLength: 1
  26013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26014. type: string
  26015. required:
  26016. - name
  26017. type: object
  26018. url:
  26019. description: URL configures the Quay instance URL. Defaults to quay.io.
  26020. type: string
  26021. required:
  26022. - robotAccount
  26023. - serviceAccountRef
  26024. type: object
  26025. sshKeySpec:
  26026. description: SSHKeySpec controls the behavior of the ssh key generator.
  26027. properties:
  26028. comment:
  26029. description: Comment specifies an optional comment for the SSH key
  26030. type: string
  26031. keySize:
  26032. description: |-
  26033. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  26034. For RSA keys: 2048, 3072, 4096
  26035. For ECDSA keys: 256, 384, 521
  26036. Ignored for ed25519 keys
  26037. maximum: 8192
  26038. minimum: 256
  26039. type: integer
  26040. keyType:
  26041. default: rsa
  26042. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  26043. enum:
  26044. - rsa
  26045. - ecdsa
  26046. - ed25519
  26047. type: string
  26048. type: object
  26049. stsAssumeRoleTokenSpec:
  26050. description: |-
  26051. STSAssumeRoleTokenSpec defines the desired state to generate temporary AWS credentials
  26052. via sts:AssumeRole. Unlike STSSessionToken, this generator works with both long-term
  26053. credentials and temporary credentials (e.g. IRSA / pod identity).
  26054. properties:
  26055. auth:
  26056. description: Auth defines how to authenticate with AWS.
  26057. properties:
  26058. jwt:
  26059. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26060. properties:
  26061. serviceAccountRef:
  26062. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26063. properties:
  26064. audiences:
  26065. description: |-
  26066. Audience specifies the `aud` claim for the service account token
  26067. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26068. then this audiences will be appended to the list
  26069. items:
  26070. type: string
  26071. type: array
  26072. name:
  26073. description: The name of the ServiceAccount resource being referred to.
  26074. maxLength: 253
  26075. minLength: 1
  26076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26077. type: string
  26078. namespace:
  26079. description: |-
  26080. Namespace of the resource being referred to.
  26081. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26082. maxLength: 63
  26083. minLength: 1
  26084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26085. type: string
  26086. required:
  26087. - name
  26088. type: object
  26089. type: object
  26090. secretRef:
  26091. description: |-
  26092. AWSAuthSecretRef holds secret references for AWS credentials
  26093. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26094. properties:
  26095. accessKeyIDSecretRef:
  26096. description: The AccessKeyID is used for authentication
  26097. properties:
  26098. key:
  26099. description: |-
  26100. A key in the referenced Secret.
  26101. Some instances of this field may be defaulted, in others it may be required.
  26102. maxLength: 253
  26103. minLength: 1
  26104. pattern: ^[-._a-zA-Z0-9]+$
  26105. type: string
  26106. name:
  26107. description: The name of the Secret resource being referred to.
  26108. maxLength: 253
  26109. minLength: 1
  26110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26111. type: string
  26112. namespace:
  26113. description: |-
  26114. The namespace of the Secret resource being referred to.
  26115. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26116. maxLength: 63
  26117. minLength: 1
  26118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26119. type: string
  26120. type: object
  26121. secretAccessKeySecretRef:
  26122. description: The SecretAccessKey is used for authentication
  26123. properties:
  26124. key:
  26125. description: |-
  26126. A key in the referenced Secret.
  26127. Some instances of this field may be defaulted, in others it may be required.
  26128. maxLength: 253
  26129. minLength: 1
  26130. pattern: ^[-._a-zA-Z0-9]+$
  26131. type: string
  26132. name:
  26133. description: The name of the Secret resource being referred to.
  26134. maxLength: 253
  26135. minLength: 1
  26136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26137. type: string
  26138. namespace:
  26139. description: |-
  26140. The namespace of the Secret resource being referred to.
  26141. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26142. maxLength: 63
  26143. minLength: 1
  26144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26145. type: string
  26146. type: object
  26147. sessionTokenSecretRef:
  26148. description: |-
  26149. The SessionToken used for authentication
  26150. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26151. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26152. properties:
  26153. key:
  26154. description: |-
  26155. A key in the referenced Secret.
  26156. Some instances of this field may be defaulted, in others it may be required.
  26157. maxLength: 253
  26158. minLength: 1
  26159. pattern: ^[-._a-zA-Z0-9]+$
  26160. type: string
  26161. name:
  26162. description: The name of the Secret resource being referred to.
  26163. maxLength: 253
  26164. minLength: 1
  26165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26166. type: string
  26167. namespace:
  26168. description: |-
  26169. The namespace of the Secret resource being referred to.
  26170. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26171. maxLength: 63
  26172. minLength: 1
  26173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26174. type: string
  26175. type: object
  26176. type: object
  26177. type: object
  26178. region:
  26179. description: Region specifies the AWS region to operate in.
  26180. type: string
  26181. requestParameters:
  26182. description: RequestParameters contains optional parameters for the AssumeRole call.
  26183. properties:
  26184. externalID:
  26185. description: |-
  26186. ExternalID is a unique identifier that might be required when you assume a
  26187. role in another account. If the administrator of the account to which the
  26188. role belongs provided you with an external ID, then provide that value.
  26189. type: string
  26190. sessionDuration:
  26191. description: |-
  26192. SessionDuration The duration, in seconds, of the role session.
  26193. The value can range from 900 seconds (15 minutes) to the maximum session
  26194. duration setting for the role. If not specified, the default is 1 hour.
  26195. format: int32
  26196. type: integer
  26197. type: object
  26198. role:
  26199. description: Role is the ARN of the IAM role to assume.
  26200. minLength: 1
  26201. type: string
  26202. required:
  26203. - region
  26204. - role
  26205. type: object
  26206. stsSessionTokenSpec:
  26207. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  26208. properties:
  26209. auth:
  26210. description: Auth defines how to authenticate with AWS
  26211. properties:
  26212. jwt:
  26213. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26214. properties:
  26215. serviceAccountRef:
  26216. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26217. properties:
  26218. audiences:
  26219. description: |-
  26220. Audience specifies the `aud` claim for the service account token
  26221. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26222. then this audiences will be appended to the list
  26223. items:
  26224. type: string
  26225. type: array
  26226. name:
  26227. description: The name of the ServiceAccount resource being referred to.
  26228. maxLength: 253
  26229. minLength: 1
  26230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26231. type: string
  26232. namespace:
  26233. description: |-
  26234. Namespace of the resource being referred to.
  26235. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26236. maxLength: 63
  26237. minLength: 1
  26238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26239. type: string
  26240. required:
  26241. - name
  26242. type: object
  26243. type: object
  26244. secretRef:
  26245. description: |-
  26246. AWSAuthSecretRef holds secret references for AWS credentials
  26247. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26248. properties:
  26249. accessKeyIDSecretRef:
  26250. description: The AccessKeyID is used for authentication
  26251. properties:
  26252. key:
  26253. description: |-
  26254. A key in the referenced Secret.
  26255. Some instances of this field may be defaulted, in others it may be required.
  26256. maxLength: 253
  26257. minLength: 1
  26258. pattern: ^[-._a-zA-Z0-9]+$
  26259. type: string
  26260. name:
  26261. description: The name of the Secret resource being referred to.
  26262. maxLength: 253
  26263. minLength: 1
  26264. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26265. type: string
  26266. namespace:
  26267. description: |-
  26268. The namespace of the Secret resource being referred to.
  26269. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26270. maxLength: 63
  26271. minLength: 1
  26272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26273. type: string
  26274. type: object
  26275. secretAccessKeySecretRef:
  26276. description: The SecretAccessKey is used for authentication
  26277. properties:
  26278. key:
  26279. description: |-
  26280. A key in the referenced Secret.
  26281. Some instances of this field may be defaulted, in others it may be required.
  26282. maxLength: 253
  26283. minLength: 1
  26284. pattern: ^[-._a-zA-Z0-9]+$
  26285. type: string
  26286. name:
  26287. description: The name of the Secret resource being referred to.
  26288. maxLength: 253
  26289. minLength: 1
  26290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26291. type: string
  26292. namespace:
  26293. description: |-
  26294. The namespace of the Secret resource being referred to.
  26295. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26296. maxLength: 63
  26297. minLength: 1
  26298. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26299. type: string
  26300. type: object
  26301. sessionTokenSecretRef:
  26302. description: |-
  26303. The SessionToken used for authentication
  26304. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26305. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26306. properties:
  26307. key:
  26308. description: |-
  26309. A key in the referenced Secret.
  26310. Some instances of this field may be defaulted, in others it may be required.
  26311. maxLength: 253
  26312. minLength: 1
  26313. pattern: ^[-._a-zA-Z0-9]+$
  26314. type: string
  26315. name:
  26316. description: The name of the Secret resource being referred to.
  26317. maxLength: 253
  26318. minLength: 1
  26319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26320. type: string
  26321. namespace:
  26322. description: |-
  26323. The namespace of the Secret resource being referred to.
  26324. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26325. maxLength: 63
  26326. minLength: 1
  26327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26328. type: string
  26329. type: object
  26330. type: object
  26331. type: object
  26332. region:
  26333. description: Region specifies the region to operate in.
  26334. type: string
  26335. requestParameters:
  26336. description: RequestParameters contains parameters that can be passed to the STS service.
  26337. properties:
  26338. serialNumber:
  26339. description: |-
  26340. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  26341. the GetSessionToken call.
  26342. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  26343. (such as arn:aws:iam::123456789012:mfa/user)
  26344. type: string
  26345. sessionDuration:
  26346. format: int32
  26347. type: integer
  26348. tokenCode:
  26349. description: TokenCode is the value provided by the MFA device, if MFA is required.
  26350. type: string
  26351. type: object
  26352. role:
  26353. description: |-
  26354. You can assume a role before making calls to the
  26355. desired AWS service.
  26356. type: string
  26357. required:
  26358. - region
  26359. type: object
  26360. uuidSpec:
  26361. description: UUIDSpec controls the behavior of the uuid generator.
  26362. type: object
  26363. vaultDynamicSecretSpec:
  26364. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  26365. properties:
  26366. allowEmptyResponse:
  26367. default: false
  26368. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  26369. type: boolean
  26370. controller:
  26371. description: |-
  26372. Used to select the correct ESO controller (think: ingress.ingressClassName)
  26373. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  26374. type: string
  26375. getParameters:
  26376. additionalProperties:
  26377. items:
  26378. type: string
  26379. type: array
  26380. description: |-
  26381. GetParameters are query-string parameters passed to Vault on GET calls.
  26382. Each key may map to multiple values, matching HTTP query-string semantics.
  26383. Ignored for non-GET methods; use Parameters for write bodies.
  26384. type: object
  26385. method:
  26386. description: Vault API method to use (GET/POST/other)
  26387. type: string
  26388. parameters:
  26389. description: Parameters to pass to Vault write (for non-GET methods)
  26390. x-kubernetes-preserve-unknown-fields: true
  26391. path:
  26392. description: Vault path to obtain the dynamic secret from
  26393. type: string
  26394. provider:
  26395. description: Vault provider common spec
  26396. properties:
  26397. auth:
  26398. description: Auth configures how secret-manager authenticates with the Vault server.
  26399. properties:
  26400. appRole:
  26401. description: |-
  26402. AppRole authenticates with Vault using the App Role auth mechanism,
  26403. with the role and secret stored in a Kubernetes Secret resource.
  26404. properties:
  26405. path:
  26406. default: approle
  26407. description: |-
  26408. Path where the App Role authentication backend is mounted
  26409. in Vault, e.g: "approle"
  26410. type: string
  26411. roleId:
  26412. description: |-
  26413. RoleID configured in the App Role authentication backend when setting
  26414. up the authentication backend in Vault.
  26415. type: string
  26416. roleRef:
  26417. description: |-
  26418. Reference to a key in a Secret that contains the App Role ID used
  26419. to authenticate with Vault.
  26420. The `key` field must be specified and denotes which entry within the Secret
  26421. resource is used as the app role id.
  26422. properties:
  26423. key:
  26424. description: |-
  26425. A key in the referenced Secret.
  26426. Some instances of this field may be defaulted, in others it may be required.
  26427. maxLength: 253
  26428. minLength: 1
  26429. pattern: ^[-._a-zA-Z0-9]+$
  26430. type: string
  26431. name:
  26432. description: The name of the Secret resource being referred to.
  26433. maxLength: 253
  26434. minLength: 1
  26435. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26436. type: string
  26437. namespace:
  26438. description: |-
  26439. The namespace of the Secret resource being referred to.
  26440. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26441. maxLength: 63
  26442. minLength: 1
  26443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26444. type: string
  26445. type: object
  26446. secretRef:
  26447. description: |-
  26448. Reference to a key in a Secret that contains the App Role secret used
  26449. to authenticate with Vault.
  26450. The `key` field must be specified and denotes which entry within the Secret
  26451. resource is used as the app role secret.
  26452. properties:
  26453. key:
  26454. description: |-
  26455. A key in the referenced Secret.
  26456. Some instances of this field may be defaulted, in others it may be required.
  26457. maxLength: 253
  26458. minLength: 1
  26459. pattern: ^[-._a-zA-Z0-9]+$
  26460. type: string
  26461. name:
  26462. description: The name of the Secret resource being referred to.
  26463. maxLength: 253
  26464. minLength: 1
  26465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26466. type: string
  26467. namespace:
  26468. description: |-
  26469. The namespace of the Secret resource being referred to.
  26470. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26471. maxLength: 63
  26472. minLength: 1
  26473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26474. type: string
  26475. type: object
  26476. required:
  26477. - path
  26478. - secretRef
  26479. type: object
  26480. cert:
  26481. description: |-
  26482. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  26483. Cert authentication method
  26484. properties:
  26485. clientCert:
  26486. description: |-
  26487. ClientCert is a certificate to authenticate using the Cert Vault
  26488. authentication method
  26489. properties:
  26490. key:
  26491. description: |-
  26492. A key in the referenced Secret.
  26493. Some instances of this field may be defaulted, in others it may be required.
  26494. maxLength: 253
  26495. minLength: 1
  26496. pattern: ^[-._a-zA-Z0-9]+$
  26497. type: string
  26498. name:
  26499. description: The name of the Secret resource being referred to.
  26500. maxLength: 253
  26501. minLength: 1
  26502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26503. type: string
  26504. namespace:
  26505. description: |-
  26506. The namespace of the Secret resource being referred to.
  26507. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26508. maxLength: 63
  26509. minLength: 1
  26510. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26511. type: string
  26512. type: object
  26513. path:
  26514. default: cert
  26515. description: |-
  26516. Path where the Certificate authentication backend is mounted
  26517. in Vault, e.g: "cert"
  26518. type: string
  26519. secretRef:
  26520. description: |-
  26521. SecretRef to a key in a Secret resource containing client private key to
  26522. authenticate with Vault using the Cert authentication method
  26523. properties:
  26524. key:
  26525. description: |-
  26526. A key in the referenced Secret.
  26527. Some instances of this field may be defaulted, in others it may be required.
  26528. maxLength: 253
  26529. minLength: 1
  26530. pattern: ^[-._a-zA-Z0-9]+$
  26531. type: string
  26532. name:
  26533. description: The name of the Secret resource being referred to.
  26534. maxLength: 253
  26535. minLength: 1
  26536. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26537. type: string
  26538. namespace:
  26539. description: |-
  26540. The namespace of the Secret resource being referred to.
  26541. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26542. maxLength: 63
  26543. minLength: 1
  26544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26545. type: string
  26546. type: object
  26547. vaultRole:
  26548. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  26549. type: string
  26550. type: object
  26551. gcp:
  26552. description: |-
  26553. Gcp authenticates with Vault using Google Cloud Platform authentication method
  26554. GCP authentication method
  26555. properties:
  26556. location:
  26557. description: Location optionally defines a location/region for the secret
  26558. type: string
  26559. path:
  26560. default: gcp
  26561. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  26562. type: string
  26563. projectID:
  26564. description: Project ID of the Google Cloud Platform project
  26565. type: string
  26566. role:
  26567. 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.
  26568. type: string
  26569. secretRef:
  26570. description: Specify credentials in a Secret object
  26571. properties:
  26572. secretAccessKeySecretRef:
  26573. description: The SecretAccessKey is used for authentication
  26574. properties:
  26575. key:
  26576. description: |-
  26577. A key in the referenced Secret.
  26578. Some instances of this field may be defaulted, in others it may be required.
  26579. maxLength: 253
  26580. minLength: 1
  26581. pattern: ^[-._a-zA-Z0-9]+$
  26582. type: string
  26583. name:
  26584. description: The name of the Secret resource being referred to.
  26585. maxLength: 253
  26586. minLength: 1
  26587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26588. type: string
  26589. namespace:
  26590. description: |-
  26591. The namespace of the Secret resource being referred to.
  26592. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26593. maxLength: 63
  26594. minLength: 1
  26595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26596. type: string
  26597. type: object
  26598. type: object
  26599. serviceAccountRef:
  26600. description: ServiceAccountRef to a service account for impersonation
  26601. properties:
  26602. audiences:
  26603. description: |-
  26604. Audience specifies the `aud` claim for the service account token
  26605. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26606. then this audiences will be appended to the list
  26607. items:
  26608. type: string
  26609. type: array
  26610. name:
  26611. description: The name of the ServiceAccount resource being referred to.
  26612. maxLength: 253
  26613. minLength: 1
  26614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26615. type: string
  26616. namespace:
  26617. description: |-
  26618. Namespace of the resource being referred to.
  26619. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26620. maxLength: 63
  26621. minLength: 1
  26622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26623. type: string
  26624. required:
  26625. - name
  26626. type: object
  26627. workloadIdentity:
  26628. description: Specify a service account with Workload Identity
  26629. properties:
  26630. clusterLocation:
  26631. description: |-
  26632. ClusterLocation is the location of the cluster
  26633. If not specified, it fetches information from the metadata server
  26634. type: string
  26635. clusterName:
  26636. description: |-
  26637. ClusterName is the name of the cluster
  26638. If not specified, it fetches information from the metadata server
  26639. type: string
  26640. clusterProjectID:
  26641. description: |-
  26642. ClusterProjectID is the project ID of the cluster
  26643. If not specified, it fetches information from the metadata server
  26644. type: string
  26645. serviceAccountRef:
  26646. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26647. properties:
  26648. audiences:
  26649. description: |-
  26650. Audience specifies the `aud` claim for the service account token
  26651. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26652. then this audiences will be appended to the list
  26653. items:
  26654. type: string
  26655. type: array
  26656. name:
  26657. description: The name of the ServiceAccount resource being referred to.
  26658. maxLength: 253
  26659. minLength: 1
  26660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26661. type: string
  26662. namespace:
  26663. description: |-
  26664. Namespace of the resource being referred to.
  26665. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26666. maxLength: 63
  26667. minLength: 1
  26668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26669. type: string
  26670. required:
  26671. - name
  26672. type: object
  26673. required:
  26674. - serviceAccountRef
  26675. type: object
  26676. required:
  26677. - role
  26678. type: object
  26679. iam:
  26680. description: |-
  26681. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  26682. AWS IAM authentication method
  26683. properties:
  26684. externalID:
  26685. description: AWS External ID set on assumed IAM roles
  26686. type: string
  26687. jwt:
  26688. description: Specify a service account with IRSA enabled
  26689. properties:
  26690. serviceAccountRef:
  26691. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26692. properties:
  26693. audiences:
  26694. description: |-
  26695. Audience specifies the `aud` claim for the service account token
  26696. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26697. then this audiences will be appended to the list
  26698. items:
  26699. type: string
  26700. type: array
  26701. name:
  26702. description: The name of the ServiceAccount resource being referred to.
  26703. maxLength: 253
  26704. minLength: 1
  26705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26706. type: string
  26707. namespace:
  26708. description: |-
  26709. Namespace of the resource being referred to.
  26710. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26711. maxLength: 63
  26712. minLength: 1
  26713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26714. type: string
  26715. required:
  26716. - name
  26717. type: object
  26718. type: object
  26719. path:
  26720. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  26721. type: string
  26722. region:
  26723. description: AWS region
  26724. type: string
  26725. role:
  26726. description: This is the AWS role to be assumed before talking to vault
  26727. type: string
  26728. secretRef:
  26729. description: Specify credentials in a Secret object
  26730. properties:
  26731. accessKeyIDSecretRef:
  26732. description: The AccessKeyID is used for authentication
  26733. properties:
  26734. key:
  26735. description: |-
  26736. A key in the referenced Secret.
  26737. Some instances of this field may be defaulted, in others it may be required.
  26738. maxLength: 253
  26739. minLength: 1
  26740. pattern: ^[-._a-zA-Z0-9]+$
  26741. type: string
  26742. name:
  26743. description: The name of the Secret resource being referred to.
  26744. maxLength: 253
  26745. minLength: 1
  26746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26747. type: string
  26748. namespace:
  26749. description: |-
  26750. The namespace of the Secret resource being referred to.
  26751. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26752. maxLength: 63
  26753. minLength: 1
  26754. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26755. type: string
  26756. type: object
  26757. secretAccessKeySecretRef:
  26758. description: The SecretAccessKey is used for authentication
  26759. properties:
  26760. key:
  26761. description: |-
  26762. A key in the referenced Secret.
  26763. Some instances of this field may be defaulted, in others it may be required.
  26764. maxLength: 253
  26765. minLength: 1
  26766. pattern: ^[-._a-zA-Z0-9]+$
  26767. type: string
  26768. name:
  26769. description: The name of the Secret resource being referred to.
  26770. maxLength: 253
  26771. minLength: 1
  26772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26773. type: string
  26774. namespace:
  26775. description: |-
  26776. The namespace of the Secret resource being referred to.
  26777. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26778. maxLength: 63
  26779. minLength: 1
  26780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26781. type: string
  26782. type: object
  26783. sessionTokenSecretRef:
  26784. description: |-
  26785. The SessionToken used for authentication
  26786. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26787. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26788. properties:
  26789. key:
  26790. description: |-
  26791. A key in the referenced Secret.
  26792. Some instances of this field may be defaulted, in others it may be required.
  26793. maxLength: 253
  26794. minLength: 1
  26795. pattern: ^[-._a-zA-Z0-9]+$
  26796. type: string
  26797. name:
  26798. description: The name of the Secret resource being referred to.
  26799. maxLength: 253
  26800. minLength: 1
  26801. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26802. type: string
  26803. namespace:
  26804. description: |-
  26805. The namespace of the Secret resource being referred to.
  26806. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26807. maxLength: 63
  26808. minLength: 1
  26809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26810. type: string
  26811. type: object
  26812. type: object
  26813. vaultAwsIamServerID:
  26814. 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'
  26815. type: string
  26816. vaultRole:
  26817. 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
  26818. type: string
  26819. required:
  26820. - vaultRole
  26821. type: object
  26822. jwt:
  26823. description: |-
  26824. Jwt authenticates with Vault by passing role and JWT token using the
  26825. JWT/OIDC authentication method
  26826. properties:
  26827. kubernetesServiceAccountToken:
  26828. description: |-
  26829. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  26830. a token for with the `TokenRequest` API.
  26831. properties:
  26832. audiences:
  26833. description: |-
  26834. Optional audiences field that will be used to request a temporary Kubernetes service
  26835. account token for the service account referenced by `serviceAccountRef`.
  26836. Defaults to a single audience `vault` it not specified.
  26837. Deprecated: use serviceAccountRef.Audiences instead
  26838. items:
  26839. type: string
  26840. type: array
  26841. expirationSeconds:
  26842. description: |-
  26843. Optional expiration time in seconds that will be used to request a temporary
  26844. Kubernetes service account token for the service account referenced by
  26845. `serviceAccountRef`.
  26846. Deprecated: this will be removed in the future.
  26847. Defaults to 10 minutes.
  26848. format: int64
  26849. type: integer
  26850. serviceAccountRef:
  26851. description: Service account field containing the name of a kubernetes ServiceAccount.
  26852. properties:
  26853. audiences:
  26854. description: |-
  26855. Audience specifies the `aud` claim for the service account token
  26856. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26857. then this audiences will be appended to the list
  26858. items:
  26859. type: string
  26860. type: array
  26861. name:
  26862. description: The name of the ServiceAccount resource being referred to.
  26863. maxLength: 253
  26864. minLength: 1
  26865. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26866. type: string
  26867. namespace:
  26868. description: |-
  26869. Namespace of the resource being referred to.
  26870. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26871. maxLength: 63
  26872. minLength: 1
  26873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26874. type: string
  26875. required:
  26876. - name
  26877. type: object
  26878. required:
  26879. - serviceAccountRef
  26880. type: object
  26881. path:
  26882. default: jwt
  26883. description: |-
  26884. Path where the JWT authentication backend is mounted
  26885. in Vault, e.g: "jwt"
  26886. type: string
  26887. role:
  26888. description: |-
  26889. Role is a JWT role to authenticate using the JWT/OIDC Vault
  26890. authentication method
  26891. type: string
  26892. secretRef:
  26893. description: |-
  26894. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  26895. authenticate with Vault using the JWT/OIDC authentication method.
  26896. properties:
  26897. key:
  26898. description: |-
  26899. A key in the referenced Secret.
  26900. Some instances of this field may be defaulted, in others it may be required.
  26901. maxLength: 253
  26902. minLength: 1
  26903. pattern: ^[-._a-zA-Z0-9]+$
  26904. type: string
  26905. name:
  26906. description: The name of the Secret resource being referred to.
  26907. maxLength: 253
  26908. minLength: 1
  26909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26910. type: string
  26911. namespace:
  26912. description: |-
  26913. The namespace of the Secret resource being referred to.
  26914. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26915. maxLength: 63
  26916. minLength: 1
  26917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26918. type: string
  26919. type: object
  26920. required:
  26921. - path
  26922. type: object
  26923. kubernetes:
  26924. description: |-
  26925. Kubernetes authenticates with Vault by passing the ServiceAccount
  26926. token stored in the named Secret resource to the Vault server.
  26927. properties:
  26928. mountPath:
  26929. default: kubernetes
  26930. description: |-
  26931. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  26932. "kubernetes"
  26933. type: string
  26934. role:
  26935. description: |-
  26936. A required field containing the Vault Role to assume. A Role binds a
  26937. Kubernetes ServiceAccount with a set of Vault policies.
  26938. type: string
  26939. secretRef:
  26940. description: |-
  26941. Optional secret field containing a Kubernetes ServiceAccount JWT used
  26942. for authenticating with Vault. If a name is specified without a key,
  26943. `token` is the default. If one is not specified, the one bound to
  26944. the controller will be used.
  26945. properties:
  26946. key:
  26947. description: |-
  26948. A key in the referenced Secret.
  26949. Some instances of this field may be defaulted, in others it may be required.
  26950. maxLength: 253
  26951. minLength: 1
  26952. pattern: ^[-._a-zA-Z0-9]+$
  26953. type: string
  26954. name:
  26955. description: The name of the Secret resource being referred to.
  26956. maxLength: 253
  26957. minLength: 1
  26958. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26959. type: string
  26960. namespace:
  26961. description: |-
  26962. The namespace of the Secret resource being referred to.
  26963. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26964. maxLength: 63
  26965. minLength: 1
  26966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26967. type: string
  26968. type: object
  26969. serviceAccountRef:
  26970. description: |-
  26971. Optional service account field containing the name of a kubernetes ServiceAccount.
  26972. If the service account is specified, the service account secret token JWT will be used
  26973. for authenticating with Vault. If the service account selector is not supplied,
  26974. the secretRef will be used instead.
  26975. properties:
  26976. audiences:
  26977. description: |-
  26978. Audience specifies the `aud` claim for the service account token
  26979. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26980. then this audiences will be appended to the list
  26981. items:
  26982. type: string
  26983. type: array
  26984. name:
  26985. description: The name of the ServiceAccount resource being referred to.
  26986. maxLength: 253
  26987. minLength: 1
  26988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26989. type: string
  26990. namespace:
  26991. description: |-
  26992. Namespace of the resource being referred to.
  26993. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26994. maxLength: 63
  26995. minLength: 1
  26996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26997. type: string
  26998. required:
  26999. - name
  27000. type: object
  27001. required:
  27002. - mountPath
  27003. - role
  27004. type: object
  27005. ldap:
  27006. description: |-
  27007. Ldap authenticates with Vault by passing username/password pair using
  27008. the LDAP authentication method
  27009. properties:
  27010. path:
  27011. default: ldap
  27012. description: |-
  27013. Path where the LDAP authentication backend is mounted
  27014. in Vault, e.g: "ldap"
  27015. type: string
  27016. secretRef:
  27017. description: |-
  27018. SecretRef to a key in a Secret resource containing password for the LDAP
  27019. user used to authenticate with Vault using the LDAP authentication
  27020. method
  27021. properties:
  27022. key:
  27023. description: |-
  27024. A key in the referenced Secret.
  27025. Some instances of this field may be defaulted, in others it may be required.
  27026. maxLength: 253
  27027. minLength: 1
  27028. pattern: ^[-._a-zA-Z0-9]+$
  27029. type: string
  27030. name:
  27031. description: The name of the Secret resource being referred to.
  27032. maxLength: 253
  27033. minLength: 1
  27034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27035. type: string
  27036. namespace:
  27037. description: |-
  27038. The namespace of the Secret resource being referred to.
  27039. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27040. maxLength: 63
  27041. minLength: 1
  27042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27043. type: string
  27044. type: object
  27045. username:
  27046. description: |-
  27047. Username is an LDAP username used to authenticate using the LDAP Vault
  27048. authentication method
  27049. type: string
  27050. required:
  27051. - path
  27052. - username
  27053. type: object
  27054. namespace:
  27055. description: |-
  27056. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  27057. Namespaces is a set of features within Vault Enterprise that allows
  27058. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  27059. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  27060. This will default to Vault.Namespace field if set, or empty otherwise
  27061. type: string
  27062. tokenSecretRef:
  27063. description: TokenSecretRef authenticates with Vault by presenting a token.
  27064. properties:
  27065. key:
  27066. description: |-
  27067. A key in the referenced Secret.
  27068. Some instances of this field may be defaulted, in others it may be required.
  27069. maxLength: 253
  27070. minLength: 1
  27071. pattern: ^[-._a-zA-Z0-9]+$
  27072. type: string
  27073. name:
  27074. description: The name of the Secret resource being referred to.
  27075. maxLength: 253
  27076. minLength: 1
  27077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27078. type: string
  27079. namespace:
  27080. description: |-
  27081. The namespace of the Secret resource being referred to.
  27082. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27083. maxLength: 63
  27084. minLength: 1
  27085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27086. type: string
  27087. type: object
  27088. userPass:
  27089. description: UserPass authenticates with Vault by passing username/password pair
  27090. properties:
  27091. path:
  27092. default: userpass
  27093. description: |-
  27094. Path where the UserPassword authentication backend is mounted
  27095. in Vault, e.g: "userpass"
  27096. type: string
  27097. secretRef:
  27098. description: |-
  27099. SecretRef to a key in a Secret resource containing password for the
  27100. user used to authenticate with Vault using the UserPass authentication
  27101. method
  27102. properties:
  27103. key:
  27104. description: |-
  27105. A key in the referenced Secret.
  27106. Some instances of this field may be defaulted, in others it may be required.
  27107. maxLength: 253
  27108. minLength: 1
  27109. pattern: ^[-._a-zA-Z0-9]+$
  27110. type: string
  27111. name:
  27112. description: The name of the Secret resource being referred to.
  27113. maxLength: 253
  27114. minLength: 1
  27115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27116. type: string
  27117. namespace:
  27118. description: |-
  27119. The namespace of the Secret resource being referred to.
  27120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27121. maxLength: 63
  27122. minLength: 1
  27123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27124. type: string
  27125. type: object
  27126. username:
  27127. description: |-
  27128. Username is a username used to authenticate using the UserPass Vault
  27129. authentication method
  27130. type: string
  27131. required:
  27132. - path
  27133. - username
  27134. type: object
  27135. type: object
  27136. caBundle:
  27137. description: |-
  27138. PEM encoded CA bundle used to validate Vault server certificate. Only used
  27139. if the Server URL is using HTTPS protocol. This parameter is ignored for
  27140. plain HTTP protocol connection. If not set the system root certificates
  27141. are used to validate the TLS connection.
  27142. format: byte
  27143. type: string
  27144. caProvider:
  27145. description: The provider for the CA bundle to use to validate Vault server certificate.
  27146. properties:
  27147. key:
  27148. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  27149. maxLength: 253
  27150. minLength: 1
  27151. pattern: ^[-._a-zA-Z0-9]+$
  27152. type: string
  27153. name:
  27154. description: The name of the object located at the provider type.
  27155. maxLength: 253
  27156. minLength: 1
  27157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27158. type: string
  27159. namespace:
  27160. description: |-
  27161. The namespace the Provider type is in.
  27162. Can only be defined when used in a ClusterSecretStore.
  27163. maxLength: 63
  27164. minLength: 1
  27165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27166. type: string
  27167. type:
  27168. description: The type of provider to use such as "Secret", or "ConfigMap".
  27169. enum:
  27170. - Secret
  27171. - ConfigMap
  27172. type: string
  27173. required:
  27174. - name
  27175. - type
  27176. type: object
  27177. checkAndSet:
  27178. description: |-
  27179. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  27180. Only applies to Vault KV v2 stores. When enabled, write operations must include
  27181. the current version of the secret to prevent unintentional overwrites.
  27182. properties:
  27183. required:
  27184. description: |-
  27185. Required when true, all write operations must include a check-and-set parameter.
  27186. This helps prevent unintentional overwrites of secrets.
  27187. type: boolean
  27188. type: object
  27189. forwardInconsistent:
  27190. description: |-
  27191. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  27192. leader instead of simply retrying within a loop. This can increase performance if
  27193. the option is enabled serverside.
  27194. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  27195. type: boolean
  27196. headers:
  27197. additionalProperties:
  27198. type: string
  27199. description: Headers to be added in Vault request
  27200. type: object
  27201. namespace:
  27202. description: |-
  27203. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  27204. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  27205. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  27206. type: string
  27207. path:
  27208. description: |-
  27209. Path is the mount path of the Vault KV backend endpoint, e.g:
  27210. "secret". The v2 KV secret engine version specific "/data" path suffix
  27211. for fetching secrets from Vault is optional and will be appended
  27212. if not present in specified path.
  27213. type: string
  27214. readYourWrites:
  27215. description: |-
  27216. ReadYourWrites ensures isolated read-after-write semantics by
  27217. providing discovered cluster replication states in each request.
  27218. More information about eventual consistency in Vault can be found here
  27219. https://www.vaultproject.io/docs/enterprise/consistency
  27220. type: boolean
  27221. server:
  27222. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  27223. type: string
  27224. tls:
  27225. description: |-
  27226. The configuration used for client side related TLS communication, when the Vault server
  27227. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  27228. This parameter is ignored for plain HTTP protocol connection.
  27229. It's worth noting this configuration is different from the "TLS certificates auth method",
  27230. which is available under the `auth.cert` section.
  27231. properties:
  27232. certSecretRef:
  27233. description: |-
  27234. CertSecretRef is a certificate added to the transport layer
  27235. when communicating with the Vault server.
  27236. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  27237. properties:
  27238. key:
  27239. description: |-
  27240. A key in the referenced Secret.
  27241. Some instances of this field may be defaulted, in others it may be required.
  27242. maxLength: 253
  27243. minLength: 1
  27244. pattern: ^[-._a-zA-Z0-9]+$
  27245. type: string
  27246. name:
  27247. description: The name of the Secret resource being referred to.
  27248. maxLength: 253
  27249. minLength: 1
  27250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27251. type: string
  27252. namespace:
  27253. description: |-
  27254. The namespace of the Secret resource being referred to.
  27255. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27256. maxLength: 63
  27257. minLength: 1
  27258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27259. type: string
  27260. type: object
  27261. keySecretRef:
  27262. description: |-
  27263. KeySecretRef to a key in a Secret resource containing client private key
  27264. added to the transport layer when communicating with the Vault server.
  27265. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  27266. properties:
  27267. key:
  27268. description: |-
  27269. A key in the referenced Secret.
  27270. Some instances of this field may be defaulted, in others it may be required.
  27271. maxLength: 253
  27272. minLength: 1
  27273. pattern: ^[-._a-zA-Z0-9]+$
  27274. type: string
  27275. name:
  27276. description: The name of the Secret resource being referred to.
  27277. maxLength: 253
  27278. minLength: 1
  27279. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27280. type: string
  27281. namespace:
  27282. description: |-
  27283. The namespace of the Secret resource being referred to.
  27284. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27285. maxLength: 63
  27286. minLength: 1
  27287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27288. type: string
  27289. type: object
  27290. type: object
  27291. version:
  27292. default: v2
  27293. description: |-
  27294. Version is the Vault KV secret engine version. This can be either "v1" or
  27295. "v2". Version defaults to "v2".
  27296. enum:
  27297. - v1
  27298. - v2
  27299. type: string
  27300. required:
  27301. - server
  27302. type: object
  27303. resultType:
  27304. default: Data
  27305. description: |-
  27306. Result type defines which data is returned from the generator.
  27307. By default, it is the "data" section of the Vault API response.
  27308. When using e.g. /auth/token/create the "data" section is empty but
  27309. the "auth" section contains the generated token.
  27310. Please refer to the vault docs regarding the result data structure.
  27311. Additionally, accessing the raw response is possibly by using "Raw" result type.
  27312. enum:
  27313. - Data
  27314. - Auth
  27315. - Raw
  27316. type: string
  27317. retrySettings:
  27318. description: Used to configure http retries if failed
  27319. properties:
  27320. maxRetries:
  27321. format: int32
  27322. type: integer
  27323. retryInterval:
  27324. type: string
  27325. type: object
  27326. required:
  27327. - path
  27328. - provider
  27329. type: object
  27330. webhookSpec:
  27331. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  27332. properties:
  27333. auth:
  27334. description: Auth specifies a authorization protocol. Only one protocol may be set.
  27335. maxProperties: 1
  27336. minProperties: 1
  27337. properties:
  27338. ntlm:
  27339. description: NTLMProtocol configures the store to use NTLM for auth
  27340. properties:
  27341. passwordSecret:
  27342. description: |-
  27343. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27344. In some instances, `key` is a required field.
  27345. properties:
  27346. key:
  27347. description: |-
  27348. A key in the referenced Secret.
  27349. Some instances of this field may be defaulted, in others it may be required.
  27350. maxLength: 253
  27351. minLength: 1
  27352. pattern: ^[-._a-zA-Z0-9]+$
  27353. type: string
  27354. name:
  27355. description: The name of the Secret resource being referred to.
  27356. maxLength: 253
  27357. minLength: 1
  27358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27359. type: string
  27360. namespace:
  27361. description: |-
  27362. The namespace of the Secret resource being referred to.
  27363. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27364. maxLength: 63
  27365. minLength: 1
  27366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27367. type: string
  27368. type: object
  27369. usernameSecret:
  27370. description: |-
  27371. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27372. In some instances, `key` is a required field.
  27373. properties:
  27374. key:
  27375. description: |-
  27376. A key in the referenced Secret.
  27377. Some instances of this field may be defaulted, in others it may be required.
  27378. maxLength: 253
  27379. minLength: 1
  27380. pattern: ^[-._a-zA-Z0-9]+$
  27381. type: string
  27382. name:
  27383. description: The name of the Secret resource being referred to.
  27384. maxLength: 253
  27385. minLength: 1
  27386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27387. type: string
  27388. namespace:
  27389. description: |-
  27390. The namespace of the Secret resource being referred to.
  27391. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27392. maxLength: 63
  27393. minLength: 1
  27394. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27395. type: string
  27396. type: object
  27397. required:
  27398. - passwordSecret
  27399. - usernameSecret
  27400. type: object
  27401. type: object
  27402. body:
  27403. description: Body
  27404. type: string
  27405. caBundle:
  27406. description: |-
  27407. PEM encoded CA bundle used to validate webhook server certificate. Only used
  27408. if the Server URL is using HTTPS protocol. This parameter is ignored for
  27409. plain HTTP protocol connection. If not set the system root certificates
  27410. are used to validate the TLS connection.
  27411. format: byte
  27412. type: string
  27413. caProvider:
  27414. description: The provider for the CA bundle to use to validate webhook server certificate.
  27415. properties:
  27416. key:
  27417. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  27418. maxLength: 253
  27419. minLength: 1
  27420. pattern: ^[-._a-zA-Z0-9]+$
  27421. type: string
  27422. name:
  27423. description: The name of the object located at the provider type.
  27424. maxLength: 253
  27425. minLength: 1
  27426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27427. type: string
  27428. namespace:
  27429. description: The namespace the Provider type is in.
  27430. maxLength: 63
  27431. minLength: 1
  27432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27433. type: string
  27434. type:
  27435. description: The type of provider to use such as "Secret", or "ConfigMap".
  27436. enum:
  27437. - Secret
  27438. - ConfigMap
  27439. type: string
  27440. required:
  27441. - name
  27442. - type
  27443. type: object
  27444. headers:
  27445. additionalProperties:
  27446. type: string
  27447. description: Headers
  27448. type: object
  27449. method:
  27450. description: Webhook Method
  27451. type: string
  27452. result:
  27453. description: Result formatting
  27454. properties:
  27455. jsonPath:
  27456. description: Json path of return value
  27457. type: string
  27458. type: object
  27459. secrets:
  27460. description: |-
  27461. Secrets to fill in templates
  27462. These secrets will be passed to the templating function as key value pairs under the given name
  27463. items:
  27464. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  27465. properties:
  27466. name:
  27467. description: Name of this secret in templates
  27468. type: string
  27469. secretRef:
  27470. description: Secret ref to fill in credentials
  27471. properties:
  27472. key:
  27473. description: The key where the token is found.
  27474. maxLength: 253
  27475. minLength: 1
  27476. pattern: ^[-._a-zA-Z0-9]+$
  27477. type: string
  27478. name:
  27479. description: The name of the Secret resource being referred to.
  27480. maxLength: 253
  27481. minLength: 1
  27482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27483. type: string
  27484. type: object
  27485. required:
  27486. - name
  27487. - secretRef
  27488. type: object
  27489. type: array
  27490. timeout:
  27491. description: Timeout
  27492. type: string
  27493. url:
  27494. description: Webhook url to call
  27495. type: string
  27496. required:
  27497. - result
  27498. - url
  27499. type: object
  27500. type: object
  27501. kind:
  27502. description: Kind the kind of this generator.
  27503. enum:
  27504. - ACRAccessToken
  27505. - CloudsmithAccessToken
  27506. - ECRAuthorizationToken
  27507. - Fake
  27508. - GCRAccessToken
  27509. - GithubAccessToken
  27510. - QuayAccessToken
  27511. - Password
  27512. - SSHKey
  27513. - STSAssumeRoleToken
  27514. - STSSessionToken
  27515. - UUID
  27516. - VaultDynamicSecret
  27517. - Webhook
  27518. - Grafana
  27519. type: string
  27520. required:
  27521. - generator
  27522. - kind
  27523. type: object
  27524. type: object
  27525. served: true
  27526. storage: true
  27527. subresources:
  27528. status: {}
  27529. ---
  27530. apiVersion: apiextensions.k8s.io/v1
  27531. kind: CustomResourceDefinition
  27532. metadata:
  27533. annotations:
  27534. controller-gen.kubebuilder.io/version: v0.19.0
  27535. labels:
  27536. external-secrets.io/component: controller
  27537. name: ecrauthorizationtokens.generators.external-secrets.io
  27538. spec:
  27539. group: generators.external-secrets.io
  27540. names:
  27541. categories:
  27542. - external-secrets
  27543. - external-secrets-generators
  27544. kind: ECRAuthorizationToken
  27545. listKind: ECRAuthorizationTokenList
  27546. plural: ecrauthorizationtokens
  27547. singular: ecrauthorizationtoken
  27548. scope: Namespaced
  27549. versions:
  27550. - name: v1alpha1
  27551. schema:
  27552. openAPIV3Schema:
  27553. description: |-
  27554. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  27555. The authorization token is valid for 12 hours.
  27556. The authorizationToken returned is a base64 encoded string that can be decoded
  27557. and used in a docker login command to authenticate to a registry.
  27558. 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.
  27559. properties:
  27560. apiVersion:
  27561. description: |-
  27562. APIVersion defines the versioned schema of this representation of an object.
  27563. Servers should convert recognized schemas to the latest internal value, and
  27564. may reject unrecognized values.
  27565. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27566. type: string
  27567. kind:
  27568. description: |-
  27569. Kind is a string value representing the REST resource this object represents.
  27570. Servers may infer this from the endpoint the client submits requests to.
  27571. Cannot be updated.
  27572. In CamelCase.
  27573. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27574. type: string
  27575. metadata:
  27576. type: object
  27577. spec:
  27578. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  27579. properties:
  27580. auth:
  27581. description: Auth defines how to authenticate with AWS
  27582. properties:
  27583. jwt:
  27584. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27585. properties:
  27586. serviceAccountRef:
  27587. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27588. properties:
  27589. audiences:
  27590. description: |-
  27591. Audience specifies the `aud` claim for the service account token
  27592. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27593. then this audiences will be appended to the list
  27594. items:
  27595. type: string
  27596. type: array
  27597. name:
  27598. description: The name of the ServiceAccount resource being referred to.
  27599. maxLength: 253
  27600. minLength: 1
  27601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27602. type: string
  27603. namespace:
  27604. description: |-
  27605. Namespace of the resource being referred to.
  27606. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27607. maxLength: 63
  27608. minLength: 1
  27609. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27610. type: string
  27611. required:
  27612. - name
  27613. type: object
  27614. type: object
  27615. secretRef:
  27616. description: |-
  27617. AWSAuthSecretRef holds secret references for AWS credentials
  27618. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27619. properties:
  27620. accessKeyIDSecretRef:
  27621. description: The AccessKeyID is used for authentication
  27622. properties:
  27623. key:
  27624. description: |-
  27625. A key in the referenced Secret.
  27626. Some instances of this field may be defaulted, in others it may be required.
  27627. maxLength: 253
  27628. minLength: 1
  27629. pattern: ^[-._a-zA-Z0-9]+$
  27630. type: string
  27631. name:
  27632. description: The name of the Secret resource being referred to.
  27633. maxLength: 253
  27634. minLength: 1
  27635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27636. type: string
  27637. namespace:
  27638. description: |-
  27639. The namespace of the Secret resource being referred to.
  27640. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27641. maxLength: 63
  27642. minLength: 1
  27643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27644. type: string
  27645. type: object
  27646. secretAccessKeySecretRef:
  27647. description: The SecretAccessKey is used for authentication
  27648. properties:
  27649. key:
  27650. description: |-
  27651. A key in the referenced Secret.
  27652. Some instances of this field may be defaulted, in others it may be required.
  27653. maxLength: 253
  27654. minLength: 1
  27655. pattern: ^[-._a-zA-Z0-9]+$
  27656. type: string
  27657. name:
  27658. description: The name of the Secret resource being referred to.
  27659. maxLength: 253
  27660. minLength: 1
  27661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27662. type: string
  27663. namespace:
  27664. description: |-
  27665. The namespace of the Secret resource being referred to.
  27666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27667. maxLength: 63
  27668. minLength: 1
  27669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27670. type: string
  27671. type: object
  27672. sessionTokenSecretRef:
  27673. description: |-
  27674. The SessionToken used for authentication
  27675. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27676. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27677. properties:
  27678. key:
  27679. description: |-
  27680. A key in the referenced Secret.
  27681. Some instances of this field may be defaulted, in others it may be required.
  27682. maxLength: 253
  27683. minLength: 1
  27684. pattern: ^[-._a-zA-Z0-9]+$
  27685. type: string
  27686. name:
  27687. description: The name of the Secret resource being referred to.
  27688. maxLength: 253
  27689. minLength: 1
  27690. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27691. type: string
  27692. namespace:
  27693. description: |-
  27694. The namespace of the Secret resource being referred to.
  27695. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27696. maxLength: 63
  27697. minLength: 1
  27698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27699. type: string
  27700. type: object
  27701. type: object
  27702. type: object
  27703. region:
  27704. description: Region specifies the region to operate in.
  27705. type: string
  27706. role:
  27707. description: |-
  27708. You can assume a role before making calls to the
  27709. desired AWS service.
  27710. type: string
  27711. scope:
  27712. description: |-
  27713. Scope specifies the ECR service scope.
  27714. Valid options are private and public.
  27715. type: string
  27716. required:
  27717. - region
  27718. type: object
  27719. type: object
  27720. served: true
  27721. storage: true
  27722. subresources:
  27723. status: {}
  27724. ---
  27725. apiVersion: apiextensions.k8s.io/v1
  27726. kind: CustomResourceDefinition
  27727. metadata:
  27728. annotations:
  27729. controller-gen.kubebuilder.io/version: v0.19.0
  27730. labels:
  27731. external-secrets.io/component: controller
  27732. name: fakes.generators.external-secrets.io
  27733. spec:
  27734. group: generators.external-secrets.io
  27735. names:
  27736. categories:
  27737. - external-secrets
  27738. - external-secrets-generators
  27739. kind: Fake
  27740. listKind: FakeList
  27741. plural: fakes
  27742. singular: fake
  27743. scope: Namespaced
  27744. versions:
  27745. - name: v1alpha1
  27746. schema:
  27747. openAPIV3Schema:
  27748. description: |-
  27749. Fake generator is used for testing. It lets you define
  27750. a static set of credentials that is always returned.
  27751. properties:
  27752. apiVersion:
  27753. description: |-
  27754. APIVersion defines the versioned schema of this representation of an object.
  27755. Servers should convert recognized schemas to the latest internal value, and
  27756. may reject unrecognized values.
  27757. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27758. type: string
  27759. kind:
  27760. description: |-
  27761. Kind is a string value representing the REST resource this object represents.
  27762. Servers may infer this from the endpoint the client submits requests to.
  27763. Cannot be updated.
  27764. In CamelCase.
  27765. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27766. type: string
  27767. metadata:
  27768. type: object
  27769. spec:
  27770. description: FakeSpec contains the static data.
  27771. properties:
  27772. controller:
  27773. description: |-
  27774. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27775. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27776. type: string
  27777. data:
  27778. additionalProperties:
  27779. type: string
  27780. description: |-
  27781. Data defines the static data returned
  27782. by this generator.
  27783. type: object
  27784. type: object
  27785. type: object
  27786. served: true
  27787. storage: true
  27788. subresources:
  27789. status: {}
  27790. ---
  27791. apiVersion: apiextensions.k8s.io/v1
  27792. kind: CustomResourceDefinition
  27793. metadata:
  27794. annotations:
  27795. controller-gen.kubebuilder.io/version: v0.19.0
  27796. labels:
  27797. external-secrets.io/component: controller
  27798. name: gcraccesstokens.generators.external-secrets.io
  27799. spec:
  27800. group: generators.external-secrets.io
  27801. names:
  27802. categories:
  27803. - external-secrets
  27804. - external-secrets-generators
  27805. kind: GCRAccessToken
  27806. listKind: GCRAccessTokenList
  27807. plural: gcraccesstokens
  27808. singular: gcraccesstoken
  27809. scope: Namespaced
  27810. versions:
  27811. - name: v1alpha1
  27812. schema:
  27813. openAPIV3Schema:
  27814. description: |-
  27815. GCRAccessToken generates an GCP access token
  27816. that can be used to authenticate with GCR.
  27817. properties:
  27818. apiVersion:
  27819. description: |-
  27820. APIVersion defines the versioned schema of this representation of an object.
  27821. Servers should convert recognized schemas to the latest internal value, and
  27822. may reject unrecognized values.
  27823. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27824. type: string
  27825. kind:
  27826. description: |-
  27827. Kind is a string value representing the REST resource this object represents.
  27828. Servers may infer this from the endpoint the client submits requests to.
  27829. Cannot be updated.
  27830. In CamelCase.
  27831. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27832. type: string
  27833. metadata:
  27834. type: object
  27835. spec:
  27836. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  27837. properties:
  27838. auth:
  27839. description: Auth defines the means for authenticating with GCP
  27840. properties:
  27841. secretRef:
  27842. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  27843. properties:
  27844. secretAccessKeySecretRef:
  27845. description: The SecretAccessKey is used for authentication
  27846. properties:
  27847. key:
  27848. description: |-
  27849. A key in the referenced Secret.
  27850. Some instances of this field may be defaulted, in others it may be required.
  27851. maxLength: 253
  27852. minLength: 1
  27853. pattern: ^[-._a-zA-Z0-9]+$
  27854. type: string
  27855. name:
  27856. description: The name of the Secret resource being referred to.
  27857. maxLength: 253
  27858. minLength: 1
  27859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27860. type: string
  27861. namespace:
  27862. description: |-
  27863. The namespace of the Secret resource being referred to.
  27864. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27865. maxLength: 63
  27866. minLength: 1
  27867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27868. type: string
  27869. type: object
  27870. type: object
  27871. workloadIdentity:
  27872. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  27873. properties:
  27874. clusterLocation:
  27875. type: string
  27876. clusterName:
  27877. type: string
  27878. clusterProjectID:
  27879. type: string
  27880. serviceAccountRef:
  27881. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27882. properties:
  27883. audiences:
  27884. description: |-
  27885. Audience specifies the `aud` claim for the service account token
  27886. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27887. then this audiences will be appended to the list
  27888. items:
  27889. type: string
  27890. type: array
  27891. name:
  27892. description: The name of the ServiceAccount resource being referred to.
  27893. maxLength: 253
  27894. minLength: 1
  27895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27896. type: string
  27897. namespace:
  27898. description: |-
  27899. Namespace of the resource being referred to.
  27900. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27901. maxLength: 63
  27902. minLength: 1
  27903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27904. type: string
  27905. required:
  27906. - name
  27907. type: object
  27908. required:
  27909. - clusterLocation
  27910. - clusterName
  27911. - serviceAccountRef
  27912. type: object
  27913. workloadIdentityFederation:
  27914. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  27915. properties:
  27916. audience:
  27917. description: |-
  27918. 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.
  27919. If specified, Audience found in the external account credential config will be overridden with the configured value.
  27920. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  27921. type: string
  27922. awsSecurityCredentials:
  27923. description: |-
  27924. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  27925. when using the AWS metadata server is not an option.
  27926. properties:
  27927. awsCredentialsSecretRef:
  27928. description: |-
  27929. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  27930. Secret should be created with below names for keys
  27931. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  27932. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  27933. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  27934. properties:
  27935. name:
  27936. description: name of the secret.
  27937. maxLength: 253
  27938. minLength: 1
  27939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27940. type: string
  27941. namespace:
  27942. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  27943. maxLength: 63
  27944. minLength: 1
  27945. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27946. type: string
  27947. required:
  27948. - name
  27949. type: object
  27950. region:
  27951. description: region is for configuring the AWS region to be used.
  27952. example: ap-south-1
  27953. maxLength: 50
  27954. minLength: 1
  27955. pattern: ^[a-z0-9-]+$
  27956. type: string
  27957. required:
  27958. - awsCredentialsSecretRef
  27959. - region
  27960. type: object
  27961. credConfig:
  27962. description: |-
  27963. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  27964. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  27965. serviceAccountRef must be used by providing operators service account details.
  27966. properties:
  27967. key:
  27968. description: key name holding the external account credential config.
  27969. maxLength: 253
  27970. minLength: 1
  27971. pattern: ^[-._a-zA-Z0-9]+$
  27972. type: string
  27973. name:
  27974. description: name of the configmap.
  27975. maxLength: 253
  27976. minLength: 1
  27977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27978. type: string
  27979. namespace:
  27980. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  27981. maxLength: 63
  27982. minLength: 1
  27983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27984. type: string
  27985. required:
  27986. - key
  27987. - name
  27988. type: object
  27989. externalTokenEndpoint:
  27990. description: |-
  27991. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  27992. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  27993. URL is having the expected value.
  27994. type: string
  27995. gcpServiceAccountEmail:
  27996. description: |-
  27997. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  27998. after Workload Identity Federation. Use this to grant access through the service account's
  27999. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  28000. service_account_impersonation_url in the external account JSON from credConfig;
  28001. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  28002. on that ServiceAccount.
  28003. example: my-gsa@my-project.iam.gserviceaccount.com
  28004. minLength: 1
  28005. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  28006. type: string
  28007. serviceAccountRef:
  28008. description: |-
  28009. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  28010. when Kubernetes is configured as provider in workload identity pool.
  28011. properties:
  28012. audiences:
  28013. description: |-
  28014. Audience specifies the `aud` claim for the service account token
  28015. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28016. then this audiences will be appended to the list
  28017. items:
  28018. type: string
  28019. type: array
  28020. name:
  28021. description: The name of the ServiceAccount resource being referred to.
  28022. maxLength: 253
  28023. minLength: 1
  28024. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28025. type: string
  28026. namespace:
  28027. description: |-
  28028. Namespace of the resource being referred to.
  28029. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28030. maxLength: 63
  28031. minLength: 1
  28032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28033. type: string
  28034. required:
  28035. - name
  28036. type: object
  28037. type: object
  28038. type: object
  28039. projectID:
  28040. description: ProjectID defines which project to use to authenticate with
  28041. type: string
  28042. required:
  28043. - auth
  28044. - projectID
  28045. type: object
  28046. type: object
  28047. served: true
  28048. storage: true
  28049. subresources:
  28050. status: {}
  28051. ---
  28052. apiVersion: apiextensions.k8s.io/v1
  28053. kind: CustomResourceDefinition
  28054. metadata:
  28055. annotations:
  28056. controller-gen.kubebuilder.io/version: v0.19.0
  28057. labels:
  28058. external-secrets.io/component: controller
  28059. name: generatorstates.generators.external-secrets.io
  28060. spec:
  28061. group: generators.external-secrets.io
  28062. names:
  28063. categories:
  28064. - external-secrets
  28065. - external-secrets-generators
  28066. kind: GeneratorState
  28067. listKind: GeneratorStateList
  28068. plural: generatorstates
  28069. shortNames:
  28070. - gs
  28071. singular: generatorstate
  28072. scope: Namespaced
  28073. versions:
  28074. - additionalPrinterColumns:
  28075. - jsonPath: .spec.garbageCollectionDeadline
  28076. name: GC Deadline
  28077. type: string
  28078. - jsonPath: .metadata.creationTimestamp
  28079. name: Age
  28080. type: date
  28081. name: v1alpha1
  28082. schema:
  28083. openAPIV3Schema:
  28084. description: GeneratorState represents the state created and managed by a generator resource.
  28085. properties:
  28086. apiVersion:
  28087. description: |-
  28088. APIVersion defines the versioned schema of this representation of an object.
  28089. Servers should convert recognized schemas to the latest internal value, and
  28090. may reject unrecognized values.
  28091. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28092. type: string
  28093. kind:
  28094. description: |-
  28095. Kind is a string value representing the REST resource this object represents.
  28096. Servers may infer this from the endpoint the client submits requests to.
  28097. Cannot be updated.
  28098. In CamelCase.
  28099. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28100. type: string
  28101. metadata:
  28102. type: object
  28103. spec:
  28104. description: GeneratorStateSpec defines the desired state of a generator state resource.
  28105. properties:
  28106. garbageCollectionDeadline:
  28107. description: |-
  28108. GarbageCollectionDeadline is the time after which the generator state
  28109. will be deleted.
  28110. It is set by the controller which creates the generator state and
  28111. can be set configured by the user.
  28112. If the garbage collection deadline is not set the generator state will not be deleted.
  28113. format: date-time
  28114. type: string
  28115. resource:
  28116. description: |-
  28117. Resource is the generator manifest that produced the state.
  28118. It is a snapshot of the generator manifest at the time the state was produced.
  28119. This manifest will be used to delete the resource. Any configuration that is referenced
  28120. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  28121. be blocked by a finalizer.
  28122. x-kubernetes-preserve-unknown-fields: true
  28123. state:
  28124. description: State is the state that was produced by the generator implementation.
  28125. x-kubernetes-preserve-unknown-fields: true
  28126. required:
  28127. - resource
  28128. - state
  28129. type: object
  28130. status:
  28131. description: GeneratorStateStatus defines the observed state of a generator state resource.
  28132. properties:
  28133. conditions:
  28134. items:
  28135. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  28136. properties:
  28137. lastTransitionTime:
  28138. format: date-time
  28139. type: string
  28140. message:
  28141. type: string
  28142. reason:
  28143. type: string
  28144. status:
  28145. type: string
  28146. type:
  28147. description: GeneratorStateConditionType represents the type of condition for a generator state.
  28148. type: string
  28149. required:
  28150. - status
  28151. - type
  28152. type: object
  28153. type: array
  28154. type: object
  28155. type: object
  28156. served: true
  28157. storage: true
  28158. subresources: {}
  28159. ---
  28160. apiVersion: apiextensions.k8s.io/v1
  28161. kind: CustomResourceDefinition
  28162. metadata:
  28163. annotations:
  28164. controller-gen.kubebuilder.io/version: v0.19.0
  28165. labels:
  28166. external-secrets.io/component: controller
  28167. name: githubaccesstokens.generators.external-secrets.io
  28168. spec:
  28169. group: generators.external-secrets.io
  28170. names:
  28171. categories:
  28172. - external-secrets
  28173. - external-secrets-generators
  28174. kind: GithubAccessToken
  28175. listKind: GithubAccessTokenList
  28176. plural: githubaccesstokens
  28177. singular: githubaccesstoken
  28178. scope: Namespaced
  28179. versions:
  28180. - name: v1alpha1
  28181. schema:
  28182. openAPIV3Schema:
  28183. description: GithubAccessToken generates ghs_ accessToken
  28184. properties:
  28185. apiVersion:
  28186. description: |-
  28187. APIVersion defines the versioned schema of this representation of an object.
  28188. Servers should convert recognized schemas to the latest internal value, and
  28189. may reject unrecognized values.
  28190. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28191. type: string
  28192. kind:
  28193. description: |-
  28194. Kind is a string value representing the REST resource this object represents.
  28195. Servers may infer this from the endpoint the client submits requests to.
  28196. Cannot be updated.
  28197. In CamelCase.
  28198. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28199. type: string
  28200. metadata:
  28201. type: object
  28202. spec:
  28203. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  28204. properties:
  28205. appID:
  28206. type: string
  28207. auth:
  28208. description: Auth configures how ESO authenticates with a Github instance.
  28209. properties:
  28210. privateKey:
  28211. description: GithubSecretRef references a secret containing GitHub credentials.
  28212. properties:
  28213. secretRef:
  28214. description: |-
  28215. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28216. In some instances, `key` is a required field.
  28217. properties:
  28218. key:
  28219. description: |-
  28220. A key in the referenced Secret.
  28221. Some instances of this field may be defaulted, in others it may be required.
  28222. maxLength: 253
  28223. minLength: 1
  28224. pattern: ^[-._a-zA-Z0-9]+$
  28225. type: string
  28226. name:
  28227. description: The name of the Secret resource being referred to.
  28228. maxLength: 253
  28229. minLength: 1
  28230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28231. type: string
  28232. namespace:
  28233. description: |-
  28234. The namespace of the Secret resource being referred to.
  28235. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28236. maxLength: 63
  28237. minLength: 1
  28238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28239. type: string
  28240. type: object
  28241. required:
  28242. - secretRef
  28243. type: object
  28244. required:
  28245. - privateKey
  28246. type: object
  28247. installID:
  28248. type: string
  28249. permissions:
  28250. additionalProperties:
  28251. type: string
  28252. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  28253. type: object
  28254. repositories:
  28255. description: |-
  28256. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  28257. is installed to.
  28258. items:
  28259. type: string
  28260. type: array
  28261. url:
  28262. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  28263. type: string
  28264. required:
  28265. - appID
  28266. - auth
  28267. - installID
  28268. type: object
  28269. type: object
  28270. served: true
  28271. storage: true
  28272. subresources:
  28273. status: {}
  28274. ---
  28275. apiVersion: apiextensions.k8s.io/v1
  28276. kind: CustomResourceDefinition
  28277. metadata:
  28278. annotations:
  28279. controller-gen.kubebuilder.io/version: v0.19.0
  28280. labels:
  28281. external-secrets.io/component: controller
  28282. name: grafanas.generators.external-secrets.io
  28283. spec:
  28284. group: generators.external-secrets.io
  28285. names:
  28286. categories:
  28287. - external-secrets
  28288. - external-secrets-generators
  28289. kind: Grafana
  28290. listKind: GrafanaList
  28291. plural: grafanas
  28292. singular: grafana
  28293. scope: Namespaced
  28294. versions:
  28295. - name: v1alpha1
  28296. schema:
  28297. openAPIV3Schema:
  28298. description: Grafana represents a generator for Grafana service account tokens.
  28299. properties:
  28300. apiVersion:
  28301. description: |-
  28302. APIVersion defines the versioned schema of this representation of an object.
  28303. Servers should convert recognized schemas to the latest internal value, and
  28304. may reject unrecognized values.
  28305. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28306. type: string
  28307. kind:
  28308. description: |-
  28309. Kind is a string value representing the REST resource this object represents.
  28310. Servers may infer this from the endpoint the client submits requests to.
  28311. Cannot be updated.
  28312. In CamelCase.
  28313. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28314. type: string
  28315. metadata:
  28316. type: object
  28317. spec:
  28318. description: GrafanaSpec controls the behavior of the grafana generator.
  28319. properties:
  28320. auth:
  28321. description: |-
  28322. Auth is the authentication configuration to authenticate
  28323. against the Grafana instance.
  28324. properties:
  28325. basic:
  28326. description: |-
  28327. Basic auth credentials used to authenticate against the Grafana instance.
  28328. Note: you need a token which has elevated permissions to create service accounts.
  28329. See here for the documentation on basic roles offered by Grafana:
  28330. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28331. properties:
  28332. password:
  28333. description: A basic auth password used to authenticate against the Grafana instance.
  28334. properties:
  28335. key:
  28336. description: The key where the token is found.
  28337. maxLength: 253
  28338. minLength: 1
  28339. pattern: ^[-._a-zA-Z0-9]+$
  28340. type: string
  28341. name:
  28342. description: The name of the Secret resource being referred to.
  28343. maxLength: 253
  28344. minLength: 1
  28345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28346. type: string
  28347. type: object
  28348. username:
  28349. description: A basic auth username used to authenticate against the Grafana instance.
  28350. type: string
  28351. required:
  28352. - password
  28353. - username
  28354. type: object
  28355. token:
  28356. description: |-
  28357. A service account token used to authenticate against the Grafana instance.
  28358. Note: you need a token which has elevated permissions to create service accounts.
  28359. See here for the documentation on basic roles offered by Grafana:
  28360. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28361. properties:
  28362. key:
  28363. description: The key where the token is found.
  28364. maxLength: 253
  28365. minLength: 1
  28366. pattern: ^[-._a-zA-Z0-9]+$
  28367. type: string
  28368. name:
  28369. description: The name of the Secret resource being referred to.
  28370. maxLength: 253
  28371. minLength: 1
  28372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28373. type: string
  28374. type: object
  28375. type: object
  28376. serviceAccount:
  28377. description: |-
  28378. ServiceAccount is the configuration for the service account that
  28379. is supposed to be generated by the generator.
  28380. properties:
  28381. name:
  28382. description: Name is the name of the service account that will be created by ESO.
  28383. type: string
  28384. role:
  28385. description: |-
  28386. Role is the role of the service account.
  28387. See here for the documentation on basic roles offered by Grafana:
  28388. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28389. type: string
  28390. required:
  28391. - name
  28392. - role
  28393. type: object
  28394. url:
  28395. description: URL is the URL of the Grafana instance.
  28396. type: string
  28397. required:
  28398. - auth
  28399. - serviceAccount
  28400. - url
  28401. type: object
  28402. type: object
  28403. served: true
  28404. storage: true
  28405. subresources:
  28406. status: {}
  28407. ---
  28408. apiVersion: apiextensions.k8s.io/v1
  28409. kind: CustomResourceDefinition
  28410. metadata:
  28411. annotations:
  28412. controller-gen.kubebuilder.io/version: v0.19.0
  28413. labels:
  28414. external-secrets.io/component: controller
  28415. name: mfas.generators.external-secrets.io
  28416. spec:
  28417. group: generators.external-secrets.io
  28418. names:
  28419. categories:
  28420. - external-secrets
  28421. - external-secrets-generators
  28422. kind: MFA
  28423. listKind: MFAList
  28424. plural: mfas
  28425. singular: mfa
  28426. scope: Namespaced
  28427. versions:
  28428. - name: v1alpha1
  28429. schema:
  28430. openAPIV3Schema:
  28431. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  28432. properties:
  28433. apiVersion:
  28434. description: |-
  28435. APIVersion defines the versioned schema of this representation of an object.
  28436. Servers should convert recognized schemas to the latest internal value, and
  28437. may reject unrecognized values.
  28438. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28439. type: string
  28440. kind:
  28441. description: |-
  28442. Kind is a string value representing the REST resource this object represents.
  28443. Servers may infer this from the endpoint the client submits requests to.
  28444. Cannot be updated.
  28445. In CamelCase.
  28446. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28447. type: string
  28448. metadata:
  28449. type: object
  28450. spec:
  28451. description: MFASpec controls the behavior of the mfa generator.
  28452. properties:
  28453. algorithm:
  28454. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  28455. type: string
  28456. length:
  28457. description: Length defines the token length. Defaults to 6 characters.
  28458. type: integer
  28459. secret:
  28460. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  28461. properties:
  28462. key:
  28463. description: |-
  28464. A key in the referenced Secret.
  28465. Some instances of this field may be defaulted, in others it may be required.
  28466. maxLength: 253
  28467. minLength: 1
  28468. pattern: ^[-._a-zA-Z0-9]+$
  28469. type: string
  28470. name:
  28471. description: The name of the Secret resource being referred to.
  28472. maxLength: 253
  28473. minLength: 1
  28474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28475. type: string
  28476. namespace:
  28477. description: |-
  28478. The namespace of the Secret resource being referred to.
  28479. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28480. maxLength: 63
  28481. minLength: 1
  28482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28483. type: string
  28484. type: object
  28485. timePeriod:
  28486. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  28487. type: integer
  28488. when:
  28489. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  28490. format: date-time
  28491. type: string
  28492. required:
  28493. - secret
  28494. type: object
  28495. type: object
  28496. served: true
  28497. storage: true
  28498. subresources:
  28499. status: {}
  28500. ---
  28501. apiVersion: apiextensions.k8s.io/v1
  28502. kind: CustomResourceDefinition
  28503. metadata:
  28504. annotations:
  28505. controller-gen.kubebuilder.io/version: v0.19.0
  28506. labels:
  28507. external-secrets.io/component: controller
  28508. name: passwords.generators.external-secrets.io
  28509. spec:
  28510. group: generators.external-secrets.io
  28511. names:
  28512. categories:
  28513. - external-secrets
  28514. - external-secrets-generators
  28515. kind: Password
  28516. listKind: PasswordList
  28517. plural: passwords
  28518. singular: password
  28519. scope: Namespaced
  28520. versions:
  28521. - name: v1alpha1
  28522. schema:
  28523. openAPIV3Schema:
  28524. description: |-
  28525. Password generates a random password based on the
  28526. configuration parameters in spec.
  28527. You can specify the length, characterset and other attributes.
  28528. properties:
  28529. apiVersion:
  28530. description: |-
  28531. APIVersion defines the versioned schema of this representation of an object.
  28532. Servers should convert recognized schemas to the latest internal value, and
  28533. may reject unrecognized values.
  28534. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28535. type: string
  28536. kind:
  28537. description: |-
  28538. Kind is a string value representing the REST resource this object represents.
  28539. Servers may infer this from the endpoint the client submits requests to.
  28540. Cannot be updated.
  28541. In CamelCase.
  28542. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28543. type: string
  28544. metadata:
  28545. type: object
  28546. spec:
  28547. description: PasswordSpec controls the behavior of the password generator.
  28548. properties:
  28549. allowRepeat:
  28550. default: false
  28551. description: set AllowRepeat to true to allow repeating characters.
  28552. type: boolean
  28553. digits:
  28554. description: |-
  28555. Digits specifies the number of digits in the generated
  28556. password. If omitted it defaults to 25% of the length of the password
  28557. type: integer
  28558. encoding:
  28559. default: raw
  28560. description: |-
  28561. Encoding specifies the encoding of the generated password.
  28562. Valid values are:
  28563. - "raw" (default): no encoding
  28564. - "base64": standard base64 encoding
  28565. - "base64url": base64url encoding
  28566. - "base32": base32 encoding
  28567. - "hex": hexadecimal encoding
  28568. enum:
  28569. - base64
  28570. - base64url
  28571. - base32
  28572. - hex
  28573. - raw
  28574. type: string
  28575. length:
  28576. default: 24
  28577. description: |-
  28578. Length of the password to be generated.
  28579. Defaults to 24
  28580. type: integer
  28581. noUpper:
  28582. default: false
  28583. description: Set NoUpper to disable uppercase characters
  28584. type: boolean
  28585. secretKeys:
  28586. description: |-
  28587. SecretKeys defines the keys that will be populated with generated passwords.
  28588. Defaults to "password" when not set.
  28589. items:
  28590. type: string
  28591. minItems: 1
  28592. type: array
  28593. symbolCharacters:
  28594. description: |-
  28595. SymbolCharacters specifies the special characters that should be used
  28596. in the generated password.
  28597. type: string
  28598. symbols:
  28599. description: |-
  28600. Symbols specifies the number of symbol characters in the generated
  28601. password. If omitted it defaults to 25% of the length of the password
  28602. type: integer
  28603. required:
  28604. - allowRepeat
  28605. - length
  28606. - noUpper
  28607. type: object
  28608. type: object
  28609. served: true
  28610. storage: true
  28611. subresources:
  28612. status: {}
  28613. ---
  28614. apiVersion: apiextensions.k8s.io/v1
  28615. kind: CustomResourceDefinition
  28616. metadata:
  28617. annotations:
  28618. controller-gen.kubebuilder.io/version: v0.19.0
  28619. labels:
  28620. external-secrets.io/component: controller
  28621. name: quayaccesstokens.generators.external-secrets.io
  28622. spec:
  28623. group: generators.external-secrets.io
  28624. names:
  28625. categories:
  28626. - external-secrets
  28627. - external-secrets-generators
  28628. kind: QuayAccessToken
  28629. listKind: QuayAccessTokenList
  28630. plural: quayaccesstokens
  28631. singular: quayaccesstoken
  28632. scope: Namespaced
  28633. versions:
  28634. - name: v1alpha1
  28635. schema:
  28636. openAPIV3Schema:
  28637. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  28638. properties:
  28639. apiVersion:
  28640. description: |-
  28641. APIVersion defines the versioned schema of this representation of an object.
  28642. Servers should convert recognized schemas to the latest internal value, and
  28643. may reject unrecognized values.
  28644. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28645. type: string
  28646. kind:
  28647. description: |-
  28648. Kind is a string value representing the REST resource this object represents.
  28649. Servers may infer this from the endpoint the client submits requests to.
  28650. Cannot be updated.
  28651. In CamelCase.
  28652. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28653. type: string
  28654. metadata:
  28655. type: object
  28656. spec:
  28657. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  28658. properties:
  28659. robotAccount:
  28660. description: Name of the robot account you are federating with
  28661. type: string
  28662. serviceAccountRef:
  28663. description: Name of the service account you are federating with
  28664. properties:
  28665. audiences:
  28666. description: |-
  28667. Audience specifies the `aud` claim for the service account token
  28668. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28669. then this audiences will be appended to the list
  28670. items:
  28671. type: string
  28672. type: array
  28673. name:
  28674. description: The name of the ServiceAccount resource being referred to.
  28675. maxLength: 253
  28676. minLength: 1
  28677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28678. type: string
  28679. namespace:
  28680. description: |-
  28681. Namespace of the resource being referred to.
  28682. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28683. maxLength: 63
  28684. minLength: 1
  28685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28686. type: string
  28687. required:
  28688. - name
  28689. type: object
  28690. url:
  28691. description: URL configures the Quay instance URL. Defaults to quay.io.
  28692. type: string
  28693. required:
  28694. - robotAccount
  28695. - serviceAccountRef
  28696. type: object
  28697. type: object
  28698. served: true
  28699. storage: true
  28700. subresources:
  28701. status: {}
  28702. ---
  28703. apiVersion: apiextensions.k8s.io/v1
  28704. kind: CustomResourceDefinition
  28705. metadata:
  28706. annotations:
  28707. controller-gen.kubebuilder.io/version: v0.19.0
  28708. labels:
  28709. external-secrets.io/component: controller
  28710. name: sshkeys.generators.external-secrets.io
  28711. spec:
  28712. group: generators.external-secrets.io
  28713. names:
  28714. categories:
  28715. - external-secrets
  28716. - external-secrets-generators
  28717. kind: SSHKey
  28718. listKind: SSHKeyList
  28719. plural: sshkeys
  28720. singular: sshkey
  28721. scope: Namespaced
  28722. versions:
  28723. - name: v1alpha1
  28724. schema:
  28725. openAPIV3Schema:
  28726. description: SSHKey generates SSH key pairs.
  28727. properties:
  28728. apiVersion:
  28729. description: |-
  28730. APIVersion defines the versioned schema of this representation of an object.
  28731. Servers should convert recognized schemas to the latest internal value, and
  28732. may reject unrecognized values.
  28733. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28734. type: string
  28735. kind:
  28736. description: |-
  28737. Kind is a string value representing the REST resource this object represents.
  28738. Servers may infer this from the endpoint the client submits requests to.
  28739. Cannot be updated.
  28740. In CamelCase.
  28741. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28742. type: string
  28743. metadata:
  28744. type: object
  28745. spec:
  28746. description: SSHKeySpec controls the behavior of the ssh key generator.
  28747. properties:
  28748. comment:
  28749. description: Comment specifies an optional comment for the SSH key
  28750. type: string
  28751. keySize:
  28752. description: |-
  28753. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  28754. For RSA keys: 2048, 3072, 4096
  28755. For ECDSA keys: 256, 384, 521
  28756. Ignored for ed25519 keys
  28757. maximum: 8192
  28758. minimum: 256
  28759. type: integer
  28760. keyType:
  28761. default: rsa
  28762. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  28763. enum:
  28764. - rsa
  28765. - ecdsa
  28766. - ed25519
  28767. type: string
  28768. type: object
  28769. type: object
  28770. served: true
  28771. storage: true
  28772. subresources:
  28773. status: {}
  28774. ---
  28775. apiVersion: apiextensions.k8s.io/v1
  28776. kind: CustomResourceDefinition
  28777. metadata:
  28778. annotations:
  28779. controller-gen.kubebuilder.io/version: v0.19.0
  28780. labels:
  28781. external-secrets.io/component: controller
  28782. name: stsassumeroletokens.generators.external-secrets.io
  28783. spec:
  28784. group: generators.external-secrets.io
  28785. names:
  28786. categories:
  28787. - external-secrets
  28788. - external-secrets-generators
  28789. kind: STSAssumeRoleToken
  28790. listKind: STSAssumeRoleTokenList
  28791. plural: stsassumeroletokens
  28792. singular: stsassumeroletoken
  28793. scope: Namespaced
  28794. versions:
  28795. - name: v1alpha1
  28796. schema:
  28797. openAPIV3Schema:
  28798. description: |-
  28799. STSAssumeRoleToken uses sts:AssumeRole to obtain temporary AWS credentials.
  28800. Unlike STSSessionToken (which calls GetSessionToken), this generator works with
  28801. both long-term IAM credentials and temporary credentials such as IRSA pod identity,
  28802. making it suitable for any environment including on-premises clusters.
  28803. properties:
  28804. apiVersion:
  28805. description: |-
  28806. APIVersion defines the versioned schema of this representation of an object.
  28807. Servers should convert recognized schemas to the latest internal value, and
  28808. may reject unrecognized values.
  28809. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28810. type: string
  28811. kind:
  28812. description: |-
  28813. Kind is a string value representing the REST resource this object represents.
  28814. Servers may infer this from the endpoint the client submits requests to.
  28815. Cannot be updated.
  28816. In CamelCase.
  28817. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28818. type: string
  28819. metadata:
  28820. type: object
  28821. spec:
  28822. description: |-
  28823. STSAssumeRoleTokenSpec defines the desired state to generate temporary AWS credentials
  28824. via sts:AssumeRole. Unlike STSSessionToken, this generator works with both long-term
  28825. credentials and temporary credentials (e.g. IRSA / pod identity).
  28826. properties:
  28827. auth:
  28828. description: Auth defines how to authenticate with AWS.
  28829. properties:
  28830. jwt:
  28831. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28832. properties:
  28833. serviceAccountRef:
  28834. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28835. properties:
  28836. audiences:
  28837. description: |-
  28838. Audience specifies the `aud` claim for the service account token
  28839. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28840. then this audiences will be appended to the list
  28841. items:
  28842. type: string
  28843. type: array
  28844. name:
  28845. description: The name of the ServiceAccount resource being referred to.
  28846. maxLength: 253
  28847. minLength: 1
  28848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28849. type: string
  28850. namespace:
  28851. description: |-
  28852. Namespace of the resource being referred to.
  28853. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28854. maxLength: 63
  28855. minLength: 1
  28856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28857. type: string
  28858. required:
  28859. - name
  28860. type: object
  28861. type: object
  28862. secretRef:
  28863. description: |-
  28864. AWSAuthSecretRef holds secret references for AWS credentials
  28865. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28866. properties:
  28867. accessKeyIDSecretRef:
  28868. description: The AccessKeyID is used for authentication
  28869. properties:
  28870. key:
  28871. description: |-
  28872. A key in the referenced Secret.
  28873. Some instances of this field may be defaulted, in others it may be required.
  28874. maxLength: 253
  28875. minLength: 1
  28876. pattern: ^[-._a-zA-Z0-9]+$
  28877. type: string
  28878. name:
  28879. description: The name of the Secret resource being referred to.
  28880. maxLength: 253
  28881. minLength: 1
  28882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28883. type: string
  28884. namespace:
  28885. description: |-
  28886. The namespace of the Secret resource being referred to.
  28887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28888. maxLength: 63
  28889. minLength: 1
  28890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28891. type: string
  28892. type: object
  28893. secretAccessKeySecretRef:
  28894. description: The SecretAccessKey is used for authentication
  28895. properties:
  28896. key:
  28897. description: |-
  28898. A key in the referenced Secret.
  28899. Some instances of this field may be defaulted, in others it may be required.
  28900. maxLength: 253
  28901. minLength: 1
  28902. pattern: ^[-._a-zA-Z0-9]+$
  28903. type: string
  28904. name:
  28905. description: The name of the Secret resource being referred to.
  28906. maxLength: 253
  28907. minLength: 1
  28908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28909. type: string
  28910. namespace:
  28911. description: |-
  28912. The namespace of the Secret resource being referred to.
  28913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28914. maxLength: 63
  28915. minLength: 1
  28916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28917. type: string
  28918. type: object
  28919. sessionTokenSecretRef:
  28920. description: |-
  28921. The SessionToken used for authentication
  28922. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28923. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28924. properties:
  28925. key:
  28926. description: |-
  28927. A key in the referenced Secret.
  28928. Some instances of this field may be defaulted, in others it may be required.
  28929. maxLength: 253
  28930. minLength: 1
  28931. pattern: ^[-._a-zA-Z0-9]+$
  28932. type: string
  28933. name:
  28934. description: The name of the Secret resource being referred to.
  28935. maxLength: 253
  28936. minLength: 1
  28937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28938. type: string
  28939. namespace:
  28940. description: |-
  28941. The namespace of the Secret resource being referred to.
  28942. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28943. maxLength: 63
  28944. minLength: 1
  28945. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28946. type: string
  28947. type: object
  28948. type: object
  28949. type: object
  28950. region:
  28951. description: Region specifies the AWS region to operate in.
  28952. type: string
  28953. requestParameters:
  28954. description: RequestParameters contains optional parameters for the AssumeRole call.
  28955. properties:
  28956. externalID:
  28957. description: |-
  28958. ExternalID is a unique identifier that might be required when you assume a
  28959. role in another account. If the administrator of the account to which the
  28960. role belongs provided you with an external ID, then provide that value.
  28961. type: string
  28962. sessionDuration:
  28963. description: |-
  28964. SessionDuration The duration, in seconds, of the role session.
  28965. The value can range from 900 seconds (15 minutes) to the maximum session
  28966. duration setting for the role. If not specified, the default is 1 hour.
  28967. format: int32
  28968. type: integer
  28969. type: object
  28970. role:
  28971. description: Role is the ARN of the IAM role to assume.
  28972. minLength: 1
  28973. type: string
  28974. required:
  28975. - region
  28976. - role
  28977. type: object
  28978. type: object
  28979. served: true
  28980. storage: true
  28981. subresources:
  28982. status: {}
  28983. ---
  28984. apiVersion: apiextensions.k8s.io/v1
  28985. kind: CustomResourceDefinition
  28986. metadata:
  28987. annotations:
  28988. controller-gen.kubebuilder.io/version: v0.19.0
  28989. labels:
  28990. external-secrets.io/component: controller
  28991. name: stssessiontokens.generators.external-secrets.io
  28992. spec:
  28993. group: generators.external-secrets.io
  28994. names:
  28995. categories:
  28996. - external-secrets
  28997. - external-secrets-generators
  28998. kind: STSSessionToken
  28999. listKind: STSSessionTokenList
  29000. plural: stssessiontokens
  29001. singular: stssessiontoken
  29002. scope: Namespaced
  29003. versions:
  29004. - name: v1alpha1
  29005. schema:
  29006. openAPIV3Schema:
  29007. description: |-
  29008. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  29009. The authorization token is valid for 12 hours.
  29010. The authorizationToken returned is a base64 encoded string that can be decoded.
  29011. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  29012. properties:
  29013. apiVersion:
  29014. description: |-
  29015. APIVersion defines the versioned schema of this representation of an object.
  29016. Servers should convert recognized schemas to the latest internal value, and
  29017. may reject unrecognized values.
  29018. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29019. type: string
  29020. kind:
  29021. description: |-
  29022. Kind is a string value representing the REST resource this object represents.
  29023. Servers may infer this from the endpoint the client submits requests to.
  29024. Cannot be updated.
  29025. In CamelCase.
  29026. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29027. type: string
  29028. metadata:
  29029. type: object
  29030. spec:
  29031. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  29032. properties:
  29033. auth:
  29034. description: Auth defines how to authenticate with AWS
  29035. properties:
  29036. jwt:
  29037. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  29038. properties:
  29039. serviceAccountRef:
  29040. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29041. properties:
  29042. audiences:
  29043. description: |-
  29044. Audience specifies the `aud` claim for the service account token
  29045. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29046. then this audiences will be appended to the list
  29047. items:
  29048. type: string
  29049. type: array
  29050. name:
  29051. description: The name of the ServiceAccount resource being referred to.
  29052. maxLength: 253
  29053. minLength: 1
  29054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29055. type: string
  29056. namespace:
  29057. description: |-
  29058. Namespace of the resource being referred to.
  29059. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29060. maxLength: 63
  29061. minLength: 1
  29062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29063. type: string
  29064. required:
  29065. - name
  29066. type: object
  29067. type: object
  29068. secretRef:
  29069. description: |-
  29070. AWSAuthSecretRef holds secret references for AWS credentials
  29071. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  29072. properties:
  29073. accessKeyIDSecretRef:
  29074. description: The AccessKeyID is used for authentication
  29075. properties:
  29076. key:
  29077. description: |-
  29078. A key in the referenced Secret.
  29079. Some instances of this field may be defaulted, in others it may be required.
  29080. maxLength: 253
  29081. minLength: 1
  29082. pattern: ^[-._a-zA-Z0-9]+$
  29083. type: string
  29084. name:
  29085. description: The name of the Secret resource being referred to.
  29086. maxLength: 253
  29087. minLength: 1
  29088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29089. type: string
  29090. namespace:
  29091. description: |-
  29092. The namespace of the Secret resource being referred to.
  29093. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29094. maxLength: 63
  29095. minLength: 1
  29096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29097. type: string
  29098. type: object
  29099. secretAccessKeySecretRef:
  29100. description: The SecretAccessKey is used for authentication
  29101. properties:
  29102. key:
  29103. description: |-
  29104. A key in the referenced Secret.
  29105. Some instances of this field may be defaulted, in others it may be required.
  29106. maxLength: 253
  29107. minLength: 1
  29108. pattern: ^[-._a-zA-Z0-9]+$
  29109. type: string
  29110. name:
  29111. description: The name of the Secret resource being referred to.
  29112. maxLength: 253
  29113. minLength: 1
  29114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29115. type: string
  29116. namespace:
  29117. description: |-
  29118. The namespace of the Secret resource being referred to.
  29119. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29120. maxLength: 63
  29121. minLength: 1
  29122. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29123. type: string
  29124. type: object
  29125. sessionTokenSecretRef:
  29126. description: |-
  29127. The SessionToken used for authentication
  29128. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  29129. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  29130. properties:
  29131. key:
  29132. description: |-
  29133. A key in the referenced Secret.
  29134. Some instances of this field may be defaulted, in others it may be required.
  29135. maxLength: 253
  29136. minLength: 1
  29137. pattern: ^[-._a-zA-Z0-9]+$
  29138. type: string
  29139. name:
  29140. description: The name of the Secret resource being referred to.
  29141. maxLength: 253
  29142. minLength: 1
  29143. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29144. type: string
  29145. namespace:
  29146. description: |-
  29147. The namespace of the Secret resource being referred to.
  29148. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29149. maxLength: 63
  29150. minLength: 1
  29151. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29152. type: string
  29153. type: object
  29154. type: object
  29155. type: object
  29156. region:
  29157. description: Region specifies the region to operate in.
  29158. type: string
  29159. requestParameters:
  29160. description: RequestParameters contains parameters that can be passed to the STS service.
  29161. properties:
  29162. serialNumber:
  29163. description: |-
  29164. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  29165. the GetSessionToken call.
  29166. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  29167. (such as arn:aws:iam::123456789012:mfa/user)
  29168. type: string
  29169. sessionDuration:
  29170. format: int32
  29171. type: integer
  29172. tokenCode:
  29173. description: TokenCode is the value provided by the MFA device, if MFA is required.
  29174. type: string
  29175. type: object
  29176. role:
  29177. description: |-
  29178. You can assume a role before making calls to the
  29179. desired AWS service.
  29180. type: string
  29181. required:
  29182. - region
  29183. type: object
  29184. type: object
  29185. served: true
  29186. storage: true
  29187. subresources:
  29188. status: {}
  29189. ---
  29190. apiVersion: apiextensions.k8s.io/v1
  29191. kind: CustomResourceDefinition
  29192. metadata:
  29193. annotations:
  29194. controller-gen.kubebuilder.io/version: v0.19.0
  29195. labels:
  29196. external-secrets.io/component: controller
  29197. name: uuids.generators.external-secrets.io
  29198. spec:
  29199. group: generators.external-secrets.io
  29200. names:
  29201. categories:
  29202. - external-secrets
  29203. - external-secrets-generators
  29204. kind: UUID
  29205. listKind: UUIDList
  29206. plural: uuids
  29207. singular: uuid
  29208. scope: Namespaced
  29209. versions:
  29210. - name: v1alpha1
  29211. schema:
  29212. openAPIV3Schema:
  29213. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  29214. properties:
  29215. apiVersion:
  29216. description: |-
  29217. APIVersion defines the versioned schema of this representation of an object.
  29218. Servers should convert recognized schemas to the latest internal value, and
  29219. may reject unrecognized values.
  29220. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29221. type: string
  29222. kind:
  29223. description: |-
  29224. Kind is a string value representing the REST resource this object represents.
  29225. Servers may infer this from the endpoint the client submits requests to.
  29226. Cannot be updated.
  29227. In CamelCase.
  29228. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29229. type: string
  29230. metadata:
  29231. type: object
  29232. spec:
  29233. description: UUIDSpec controls the behavior of the uuid generator.
  29234. type: object
  29235. type: object
  29236. served: true
  29237. storage: true
  29238. subresources:
  29239. status: {}
  29240. ---
  29241. apiVersion: apiextensions.k8s.io/v1
  29242. kind: CustomResourceDefinition
  29243. metadata:
  29244. annotations:
  29245. controller-gen.kubebuilder.io/version: v0.19.0
  29246. labels:
  29247. external-secrets.io/component: controller
  29248. name: vaultdynamicsecrets.generators.external-secrets.io
  29249. spec:
  29250. group: generators.external-secrets.io
  29251. names:
  29252. categories:
  29253. - external-secrets
  29254. - external-secrets-generators
  29255. kind: VaultDynamicSecret
  29256. listKind: VaultDynamicSecretList
  29257. plural: vaultdynamicsecrets
  29258. singular: vaultdynamicsecret
  29259. scope: Namespaced
  29260. versions:
  29261. - name: v1alpha1
  29262. schema:
  29263. openAPIV3Schema:
  29264. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  29265. properties:
  29266. apiVersion:
  29267. description: |-
  29268. APIVersion defines the versioned schema of this representation of an object.
  29269. Servers should convert recognized schemas to the latest internal value, and
  29270. may reject unrecognized values.
  29271. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29272. type: string
  29273. kind:
  29274. description: |-
  29275. Kind is a string value representing the REST resource this object represents.
  29276. Servers may infer this from the endpoint the client submits requests to.
  29277. Cannot be updated.
  29278. In CamelCase.
  29279. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29280. type: string
  29281. metadata:
  29282. type: object
  29283. spec:
  29284. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  29285. properties:
  29286. allowEmptyResponse:
  29287. default: false
  29288. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  29289. type: boolean
  29290. controller:
  29291. description: |-
  29292. Used to select the correct ESO controller (think: ingress.ingressClassName)
  29293. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  29294. type: string
  29295. getParameters:
  29296. additionalProperties:
  29297. items:
  29298. type: string
  29299. type: array
  29300. description: |-
  29301. GetParameters are query-string parameters passed to Vault on GET calls.
  29302. Each key may map to multiple values, matching HTTP query-string semantics.
  29303. Ignored for non-GET methods; use Parameters for write bodies.
  29304. type: object
  29305. method:
  29306. description: Vault API method to use (GET/POST/other)
  29307. type: string
  29308. parameters:
  29309. description: Parameters to pass to Vault write (for non-GET methods)
  29310. x-kubernetes-preserve-unknown-fields: true
  29311. path:
  29312. description: Vault path to obtain the dynamic secret from
  29313. type: string
  29314. provider:
  29315. description: Vault provider common spec
  29316. properties:
  29317. auth:
  29318. description: Auth configures how secret-manager authenticates with the Vault server.
  29319. properties:
  29320. appRole:
  29321. description: |-
  29322. AppRole authenticates with Vault using the App Role auth mechanism,
  29323. with the role and secret stored in a Kubernetes Secret resource.
  29324. properties:
  29325. path:
  29326. default: approle
  29327. description: |-
  29328. Path where the App Role authentication backend is mounted
  29329. in Vault, e.g: "approle"
  29330. type: string
  29331. roleId:
  29332. description: |-
  29333. RoleID configured in the App Role authentication backend when setting
  29334. up the authentication backend in Vault.
  29335. type: string
  29336. roleRef:
  29337. description: |-
  29338. Reference to a key in a Secret that contains the App Role ID used
  29339. to authenticate with Vault.
  29340. The `key` field must be specified and denotes which entry within the Secret
  29341. resource is used as the app role id.
  29342. properties:
  29343. key:
  29344. description: |-
  29345. A key in the referenced Secret.
  29346. Some instances of this field may be defaulted, in others it may be required.
  29347. maxLength: 253
  29348. minLength: 1
  29349. pattern: ^[-._a-zA-Z0-9]+$
  29350. type: string
  29351. name:
  29352. description: The name of the Secret resource being referred to.
  29353. maxLength: 253
  29354. minLength: 1
  29355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29356. type: string
  29357. namespace:
  29358. description: |-
  29359. The namespace of the Secret resource being referred to.
  29360. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29361. maxLength: 63
  29362. minLength: 1
  29363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29364. type: string
  29365. type: object
  29366. secretRef:
  29367. description: |-
  29368. Reference to a key in a Secret that contains the App Role secret used
  29369. to authenticate with Vault.
  29370. The `key` field must be specified and denotes which entry within the Secret
  29371. resource is used as the app role secret.
  29372. properties:
  29373. key:
  29374. description: |-
  29375. A key in the referenced Secret.
  29376. Some instances of this field may be defaulted, in others it may be required.
  29377. maxLength: 253
  29378. minLength: 1
  29379. pattern: ^[-._a-zA-Z0-9]+$
  29380. type: string
  29381. name:
  29382. description: The name of the Secret resource being referred to.
  29383. maxLength: 253
  29384. minLength: 1
  29385. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29386. type: string
  29387. namespace:
  29388. description: |-
  29389. The namespace of the Secret resource being referred to.
  29390. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29391. maxLength: 63
  29392. minLength: 1
  29393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29394. type: string
  29395. type: object
  29396. required:
  29397. - path
  29398. - secretRef
  29399. type: object
  29400. cert:
  29401. description: |-
  29402. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  29403. Cert authentication method
  29404. properties:
  29405. clientCert:
  29406. description: |-
  29407. ClientCert is a certificate to authenticate using the Cert Vault
  29408. authentication method
  29409. properties:
  29410. key:
  29411. description: |-
  29412. A key in the referenced Secret.
  29413. Some instances of this field may be defaulted, in others it may be required.
  29414. maxLength: 253
  29415. minLength: 1
  29416. pattern: ^[-._a-zA-Z0-9]+$
  29417. type: string
  29418. name:
  29419. description: The name of the Secret resource being referred to.
  29420. maxLength: 253
  29421. minLength: 1
  29422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29423. type: string
  29424. namespace:
  29425. description: |-
  29426. The namespace of the Secret resource being referred to.
  29427. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29428. maxLength: 63
  29429. minLength: 1
  29430. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29431. type: string
  29432. type: object
  29433. path:
  29434. default: cert
  29435. description: |-
  29436. Path where the Certificate authentication backend is mounted
  29437. in Vault, e.g: "cert"
  29438. type: string
  29439. secretRef:
  29440. description: |-
  29441. SecretRef to a key in a Secret resource containing client private key to
  29442. authenticate with Vault using the Cert authentication method
  29443. properties:
  29444. key:
  29445. description: |-
  29446. A key in the referenced Secret.
  29447. Some instances of this field may be defaulted, in others it may be required.
  29448. maxLength: 253
  29449. minLength: 1
  29450. pattern: ^[-._a-zA-Z0-9]+$
  29451. type: string
  29452. name:
  29453. description: The name of the Secret resource being referred to.
  29454. maxLength: 253
  29455. minLength: 1
  29456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29457. type: string
  29458. namespace:
  29459. description: |-
  29460. The namespace of the Secret resource being referred to.
  29461. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29462. maxLength: 63
  29463. minLength: 1
  29464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29465. type: string
  29466. type: object
  29467. vaultRole:
  29468. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  29469. type: string
  29470. type: object
  29471. gcp:
  29472. description: |-
  29473. Gcp authenticates with Vault using Google Cloud Platform authentication method
  29474. GCP authentication method
  29475. properties:
  29476. location:
  29477. description: Location optionally defines a location/region for the secret
  29478. type: string
  29479. path:
  29480. default: gcp
  29481. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  29482. type: string
  29483. projectID:
  29484. description: Project ID of the Google Cloud Platform project
  29485. type: string
  29486. role:
  29487. 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.
  29488. type: string
  29489. secretRef:
  29490. description: Specify credentials in a Secret object
  29491. properties:
  29492. secretAccessKeySecretRef:
  29493. description: The SecretAccessKey is used for authentication
  29494. properties:
  29495. key:
  29496. description: |-
  29497. A key in the referenced Secret.
  29498. Some instances of this field may be defaulted, in others it may be required.
  29499. maxLength: 253
  29500. minLength: 1
  29501. pattern: ^[-._a-zA-Z0-9]+$
  29502. type: string
  29503. name:
  29504. description: The name of the Secret resource being referred to.
  29505. maxLength: 253
  29506. minLength: 1
  29507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29508. type: string
  29509. namespace:
  29510. description: |-
  29511. The namespace of the Secret resource being referred to.
  29512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29513. maxLength: 63
  29514. minLength: 1
  29515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29516. type: string
  29517. type: object
  29518. type: object
  29519. serviceAccountRef:
  29520. description: ServiceAccountRef to a service account for impersonation
  29521. properties:
  29522. audiences:
  29523. description: |-
  29524. Audience specifies the `aud` claim for the service account token
  29525. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29526. then this audiences will be appended to the list
  29527. items:
  29528. type: string
  29529. type: array
  29530. name:
  29531. description: The name of the ServiceAccount resource being referred to.
  29532. maxLength: 253
  29533. minLength: 1
  29534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29535. type: string
  29536. namespace:
  29537. description: |-
  29538. Namespace of the resource being referred to.
  29539. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29540. maxLength: 63
  29541. minLength: 1
  29542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29543. type: string
  29544. required:
  29545. - name
  29546. type: object
  29547. workloadIdentity:
  29548. description: Specify a service account with Workload Identity
  29549. properties:
  29550. clusterLocation:
  29551. description: |-
  29552. ClusterLocation is the location of the cluster
  29553. If not specified, it fetches information from the metadata server
  29554. type: string
  29555. clusterName:
  29556. description: |-
  29557. ClusterName is the name of the cluster
  29558. If not specified, it fetches information from the metadata server
  29559. type: string
  29560. clusterProjectID:
  29561. description: |-
  29562. ClusterProjectID is the project ID of the cluster
  29563. If not specified, it fetches information from the metadata server
  29564. type: string
  29565. serviceAccountRef:
  29566. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29567. properties:
  29568. audiences:
  29569. description: |-
  29570. Audience specifies the `aud` claim for the service account token
  29571. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29572. then this audiences will be appended to the list
  29573. items:
  29574. type: string
  29575. type: array
  29576. name:
  29577. description: The name of the ServiceAccount resource being referred to.
  29578. maxLength: 253
  29579. minLength: 1
  29580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29581. type: string
  29582. namespace:
  29583. description: |-
  29584. Namespace of the resource being referred to.
  29585. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29586. maxLength: 63
  29587. minLength: 1
  29588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29589. type: string
  29590. required:
  29591. - name
  29592. type: object
  29593. required:
  29594. - serviceAccountRef
  29595. type: object
  29596. required:
  29597. - role
  29598. type: object
  29599. iam:
  29600. description: |-
  29601. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  29602. AWS IAM authentication method
  29603. properties:
  29604. externalID:
  29605. description: AWS External ID set on assumed IAM roles
  29606. type: string
  29607. jwt:
  29608. description: Specify a service account with IRSA enabled
  29609. properties:
  29610. serviceAccountRef:
  29611. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29612. properties:
  29613. audiences:
  29614. description: |-
  29615. Audience specifies the `aud` claim for the service account token
  29616. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29617. then this audiences will be appended to the list
  29618. items:
  29619. type: string
  29620. type: array
  29621. name:
  29622. description: The name of the ServiceAccount resource being referred to.
  29623. maxLength: 253
  29624. minLength: 1
  29625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29626. type: string
  29627. namespace:
  29628. description: |-
  29629. Namespace of the resource being referred to.
  29630. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29631. maxLength: 63
  29632. minLength: 1
  29633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29634. type: string
  29635. required:
  29636. - name
  29637. type: object
  29638. type: object
  29639. path:
  29640. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  29641. type: string
  29642. region:
  29643. description: AWS region
  29644. type: string
  29645. role:
  29646. description: This is the AWS role to be assumed before talking to vault
  29647. type: string
  29648. secretRef:
  29649. description: Specify credentials in a Secret object
  29650. properties:
  29651. accessKeyIDSecretRef:
  29652. description: The AccessKeyID is used for authentication
  29653. properties:
  29654. key:
  29655. description: |-
  29656. A key in the referenced Secret.
  29657. Some instances of this field may be defaulted, in others it may be required.
  29658. maxLength: 253
  29659. minLength: 1
  29660. pattern: ^[-._a-zA-Z0-9]+$
  29661. type: string
  29662. name:
  29663. description: The name of the Secret resource being referred to.
  29664. maxLength: 253
  29665. minLength: 1
  29666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29667. type: string
  29668. namespace:
  29669. description: |-
  29670. The namespace of the Secret resource being referred to.
  29671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29672. maxLength: 63
  29673. minLength: 1
  29674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29675. type: string
  29676. type: object
  29677. secretAccessKeySecretRef:
  29678. description: The SecretAccessKey is used for authentication
  29679. properties:
  29680. key:
  29681. description: |-
  29682. A key in the referenced Secret.
  29683. Some instances of this field may be defaulted, in others it may be required.
  29684. maxLength: 253
  29685. minLength: 1
  29686. pattern: ^[-._a-zA-Z0-9]+$
  29687. type: string
  29688. name:
  29689. description: The name of the Secret resource being referred to.
  29690. maxLength: 253
  29691. minLength: 1
  29692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29693. type: string
  29694. namespace:
  29695. description: |-
  29696. The namespace of the Secret resource being referred to.
  29697. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29698. maxLength: 63
  29699. minLength: 1
  29700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29701. type: string
  29702. type: object
  29703. sessionTokenSecretRef:
  29704. description: |-
  29705. The SessionToken used for authentication
  29706. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  29707. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  29708. properties:
  29709. key:
  29710. description: |-
  29711. A key in the referenced Secret.
  29712. Some instances of this field may be defaulted, in others it may be required.
  29713. maxLength: 253
  29714. minLength: 1
  29715. pattern: ^[-._a-zA-Z0-9]+$
  29716. type: string
  29717. name:
  29718. description: The name of the Secret resource being referred to.
  29719. maxLength: 253
  29720. minLength: 1
  29721. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29722. type: string
  29723. namespace:
  29724. description: |-
  29725. The namespace of the Secret resource being referred to.
  29726. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29727. maxLength: 63
  29728. minLength: 1
  29729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29730. type: string
  29731. type: object
  29732. type: object
  29733. vaultAwsIamServerID:
  29734. 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'
  29735. type: string
  29736. vaultRole:
  29737. 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
  29738. type: string
  29739. required:
  29740. - vaultRole
  29741. type: object
  29742. jwt:
  29743. description: |-
  29744. Jwt authenticates with Vault by passing role and JWT token using the
  29745. JWT/OIDC authentication method
  29746. properties:
  29747. kubernetesServiceAccountToken:
  29748. description: |-
  29749. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  29750. a token for with the `TokenRequest` API.
  29751. properties:
  29752. audiences:
  29753. description: |-
  29754. Optional audiences field that will be used to request a temporary Kubernetes service
  29755. account token for the service account referenced by `serviceAccountRef`.
  29756. Defaults to a single audience `vault` it not specified.
  29757. Deprecated: use serviceAccountRef.Audiences instead
  29758. items:
  29759. type: string
  29760. type: array
  29761. expirationSeconds:
  29762. description: |-
  29763. Optional expiration time in seconds that will be used to request a temporary
  29764. Kubernetes service account token for the service account referenced by
  29765. `serviceAccountRef`.
  29766. Deprecated: this will be removed in the future.
  29767. Defaults to 10 minutes.
  29768. format: int64
  29769. type: integer
  29770. serviceAccountRef:
  29771. description: Service account field containing the name of a kubernetes ServiceAccount.
  29772. properties:
  29773. audiences:
  29774. description: |-
  29775. Audience specifies the `aud` claim for the service account token
  29776. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29777. then this audiences will be appended to the list
  29778. items:
  29779. type: string
  29780. type: array
  29781. name:
  29782. description: The name of the ServiceAccount resource being referred to.
  29783. maxLength: 253
  29784. minLength: 1
  29785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29786. type: string
  29787. namespace:
  29788. description: |-
  29789. Namespace of the resource being referred to.
  29790. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29791. maxLength: 63
  29792. minLength: 1
  29793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29794. type: string
  29795. required:
  29796. - name
  29797. type: object
  29798. required:
  29799. - serviceAccountRef
  29800. type: object
  29801. path:
  29802. default: jwt
  29803. description: |-
  29804. Path where the JWT authentication backend is mounted
  29805. in Vault, e.g: "jwt"
  29806. type: string
  29807. role:
  29808. description: |-
  29809. Role is a JWT role to authenticate using the JWT/OIDC Vault
  29810. authentication method
  29811. type: string
  29812. secretRef:
  29813. description: |-
  29814. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  29815. authenticate with Vault using the JWT/OIDC authentication method.
  29816. properties:
  29817. key:
  29818. description: |-
  29819. A key in the referenced Secret.
  29820. Some instances of this field may be defaulted, in others it may be required.
  29821. maxLength: 253
  29822. minLength: 1
  29823. pattern: ^[-._a-zA-Z0-9]+$
  29824. type: string
  29825. name:
  29826. description: The name of the Secret resource being referred to.
  29827. maxLength: 253
  29828. minLength: 1
  29829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29830. type: string
  29831. namespace:
  29832. description: |-
  29833. The namespace of the Secret resource being referred to.
  29834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29835. maxLength: 63
  29836. minLength: 1
  29837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29838. type: string
  29839. type: object
  29840. required:
  29841. - path
  29842. type: object
  29843. kubernetes:
  29844. description: |-
  29845. Kubernetes authenticates with Vault by passing the ServiceAccount
  29846. token stored in the named Secret resource to the Vault server.
  29847. properties:
  29848. mountPath:
  29849. default: kubernetes
  29850. description: |-
  29851. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  29852. "kubernetes"
  29853. type: string
  29854. role:
  29855. description: |-
  29856. A required field containing the Vault Role to assume. A Role binds a
  29857. Kubernetes ServiceAccount with a set of Vault policies.
  29858. type: string
  29859. secretRef:
  29860. description: |-
  29861. Optional secret field containing a Kubernetes ServiceAccount JWT used
  29862. for authenticating with Vault. If a name is specified without a key,
  29863. `token` is the default. If one is not specified, the one bound to
  29864. the controller will be used.
  29865. properties:
  29866. key:
  29867. description: |-
  29868. A key in the referenced Secret.
  29869. Some instances of this field may be defaulted, in others it may be required.
  29870. maxLength: 253
  29871. minLength: 1
  29872. pattern: ^[-._a-zA-Z0-9]+$
  29873. type: string
  29874. name:
  29875. description: The name of the Secret resource being referred to.
  29876. maxLength: 253
  29877. minLength: 1
  29878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29879. type: string
  29880. namespace:
  29881. description: |-
  29882. The namespace of the Secret resource being referred to.
  29883. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29884. maxLength: 63
  29885. minLength: 1
  29886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29887. type: string
  29888. type: object
  29889. serviceAccountRef:
  29890. description: |-
  29891. Optional service account field containing the name of a kubernetes ServiceAccount.
  29892. If the service account is specified, the service account secret token JWT will be used
  29893. for authenticating with Vault. If the service account selector is not supplied,
  29894. the secretRef will be used instead.
  29895. properties:
  29896. audiences:
  29897. description: |-
  29898. Audience specifies the `aud` claim for the service account token
  29899. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29900. then this audiences will be appended to the list
  29901. items:
  29902. type: string
  29903. type: array
  29904. name:
  29905. description: The name of the ServiceAccount resource being referred to.
  29906. maxLength: 253
  29907. minLength: 1
  29908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29909. type: string
  29910. namespace:
  29911. description: |-
  29912. Namespace of the resource being referred to.
  29913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29914. maxLength: 63
  29915. minLength: 1
  29916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29917. type: string
  29918. required:
  29919. - name
  29920. type: object
  29921. required:
  29922. - mountPath
  29923. - role
  29924. type: object
  29925. ldap:
  29926. description: |-
  29927. Ldap authenticates with Vault by passing username/password pair using
  29928. the LDAP authentication method
  29929. properties:
  29930. path:
  29931. default: ldap
  29932. description: |-
  29933. Path where the LDAP authentication backend is mounted
  29934. in Vault, e.g: "ldap"
  29935. type: string
  29936. secretRef:
  29937. description: |-
  29938. SecretRef to a key in a Secret resource containing password for the LDAP
  29939. user used to authenticate with Vault using the LDAP authentication
  29940. method
  29941. properties:
  29942. key:
  29943. description: |-
  29944. A key in the referenced Secret.
  29945. Some instances of this field may be defaulted, in others it may be required.
  29946. maxLength: 253
  29947. minLength: 1
  29948. pattern: ^[-._a-zA-Z0-9]+$
  29949. type: string
  29950. name:
  29951. description: The name of the Secret resource being referred to.
  29952. maxLength: 253
  29953. minLength: 1
  29954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29955. type: string
  29956. namespace:
  29957. description: |-
  29958. The namespace of the Secret resource being referred to.
  29959. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29960. maxLength: 63
  29961. minLength: 1
  29962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29963. type: string
  29964. type: object
  29965. username:
  29966. description: |-
  29967. Username is an LDAP username used to authenticate using the LDAP Vault
  29968. authentication method
  29969. type: string
  29970. required:
  29971. - path
  29972. - username
  29973. type: object
  29974. namespace:
  29975. description: |-
  29976. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  29977. Namespaces is a set of features within Vault Enterprise that allows
  29978. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29979. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29980. This will default to Vault.Namespace field if set, or empty otherwise
  29981. type: string
  29982. tokenSecretRef:
  29983. description: TokenSecretRef authenticates with Vault by presenting a token.
  29984. properties:
  29985. key:
  29986. description: |-
  29987. A key in the referenced Secret.
  29988. Some instances of this field may be defaulted, in others it may be required.
  29989. maxLength: 253
  29990. minLength: 1
  29991. pattern: ^[-._a-zA-Z0-9]+$
  29992. type: string
  29993. name:
  29994. description: The name of the Secret resource being referred to.
  29995. maxLength: 253
  29996. minLength: 1
  29997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29998. type: string
  29999. namespace:
  30000. description: |-
  30001. The namespace of the Secret resource being referred to.
  30002. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30003. maxLength: 63
  30004. minLength: 1
  30005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30006. type: string
  30007. type: object
  30008. userPass:
  30009. description: UserPass authenticates with Vault by passing username/password pair
  30010. properties:
  30011. path:
  30012. default: userpass
  30013. description: |-
  30014. Path where the UserPassword authentication backend is mounted
  30015. in Vault, e.g: "userpass"
  30016. type: string
  30017. secretRef:
  30018. description: |-
  30019. SecretRef to a key in a Secret resource containing password for the
  30020. user used to authenticate with Vault using the UserPass authentication
  30021. method
  30022. properties:
  30023. key:
  30024. description: |-
  30025. A key in the referenced Secret.
  30026. Some instances of this field may be defaulted, in others it may be required.
  30027. maxLength: 253
  30028. minLength: 1
  30029. pattern: ^[-._a-zA-Z0-9]+$
  30030. type: string
  30031. name:
  30032. description: The name of the Secret resource being referred to.
  30033. maxLength: 253
  30034. minLength: 1
  30035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30036. type: string
  30037. namespace:
  30038. description: |-
  30039. The namespace of the Secret resource being referred to.
  30040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30041. maxLength: 63
  30042. minLength: 1
  30043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30044. type: string
  30045. type: object
  30046. username:
  30047. description: |-
  30048. Username is a username used to authenticate using the UserPass Vault
  30049. authentication method
  30050. type: string
  30051. required:
  30052. - path
  30053. - username
  30054. type: object
  30055. type: object
  30056. caBundle:
  30057. description: |-
  30058. PEM encoded CA bundle used to validate Vault server certificate. Only used
  30059. if the Server URL is using HTTPS protocol. This parameter is ignored for
  30060. plain HTTP protocol connection. If not set the system root certificates
  30061. are used to validate the TLS connection.
  30062. format: byte
  30063. type: string
  30064. caProvider:
  30065. description: The provider for the CA bundle to use to validate Vault server certificate.
  30066. properties:
  30067. key:
  30068. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  30069. maxLength: 253
  30070. minLength: 1
  30071. pattern: ^[-._a-zA-Z0-9]+$
  30072. type: string
  30073. name:
  30074. description: The name of the object located at the provider type.
  30075. maxLength: 253
  30076. minLength: 1
  30077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30078. type: string
  30079. namespace:
  30080. description: |-
  30081. The namespace the Provider type is in.
  30082. Can only be defined when used in a ClusterSecretStore.
  30083. maxLength: 63
  30084. minLength: 1
  30085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30086. type: string
  30087. type:
  30088. description: The type of provider to use such as "Secret", or "ConfigMap".
  30089. enum:
  30090. - Secret
  30091. - ConfigMap
  30092. type: string
  30093. required:
  30094. - name
  30095. - type
  30096. type: object
  30097. checkAndSet:
  30098. description: |-
  30099. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  30100. Only applies to Vault KV v2 stores. When enabled, write operations must include
  30101. the current version of the secret to prevent unintentional overwrites.
  30102. properties:
  30103. required:
  30104. description: |-
  30105. Required when true, all write operations must include a check-and-set parameter.
  30106. This helps prevent unintentional overwrites of secrets.
  30107. type: boolean
  30108. type: object
  30109. forwardInconsistent:
  30110. description: |-
  30111. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  30112. leader instead of simply retrying within a loop. This can increase performance if
  30113. the option is enabled serverside.
  30114. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  30115. type: boolean
  30116. headers:
  30117. additionalProperties:
  30118. type: string
  30119. description: Headers to be added in Vault request
  30120. type: object
  30121. namespace:
  30122. description: |-
  30123. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  30124. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  30125. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  30126. type: string
  30127. path:
  30128. description: |-
  30129. Path is the mount path of the Vault KV backend endpoint, e.g:
  30130. "secret". The v2 KV secret engine version specific "/data" path suffix
  30131. for fetching secrets from Vault is optional and will be appended
  30132. if not present in specified path.
  30133. type: string
  30134. readYourWrites:
  30135. description: |-
  30136. ReadYourWrites ensures isolated read-after-write semantics by
  30137. providing discovered cluster replication states in each request.
  30138. More information about eventual consistency in Vault can be found here
  30139. https://www.vaultproject.io/docs/enterprise/consistency
  30140. type: boolean
  30141. server:
  30142. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  30143. type: string
  30144. tls:
  30145. description: |-
  30146. The configuration used for client side related TLS communication, when the Vault server
  30147. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  30148. This parameter is ignored for plain HTTP protocol connection.
  30149. It's worth noting this configuration is different from the "TLS certificates auth method",
  30150. which is available under the `auth.cert` section.
  30151. properties:
  30152. certSecretRef:
  30153. description: |-
  30154. CertSecretRef is a certificate added to the transport layer
  30155. when communicating with the Vault server.
  30156. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  30157. properties:
  30158. key:
  30159. description: |-
  30160. A key in the referenced Secret.
  30161. Some instances of this field may be defaulted, in others it may be required.
  30162. maxLength: 253
  30163. minLength: 1
  30164. pattern: ^[-._a-zA-Z0-9]+$
  30165. type: string
  30166. name:
  30167. description: The name of the Secret resource being referred to.
  30168. maxLength: 253
  30169. minLength: 1
  30170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30171. type: string
  30172. namespace:
  30173. description: |-
  30174. The namespace of the Secret resource being referred to.
  30175. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30176. maxLength: 63
  30177. minLength: 1
  30178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30179. type: string
  30180. type: object
  30181. keySecretRef:
  30182. description: |-
  30183. KeySecretRef to a key in a Secret resource containing client private key
  30184. added to the transport layer when communicating with the Vault server.
  30185. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  30186. properties:
  30187. key:
  30188. description: |-
  30189. A key in the referenced Secret.
  30190. Some instances of this field may be defaulted, in others it may be required.
  30191. maxLength: 253
  30192. minLength: 1
  30193. pattern: ^[-._a-zA-Z0-9]+$
  30194. type: string
  30195. name:
  30196. description: The name of the Secret resource being referred to.
  30197. maxLength: 253
  30198. minLength: 1
  30199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30200. type: string
  30201. namespace:
  30202. description: |-
  30203. The namespace of the Secret resource being referred to.
  30204. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30205. maxLength: 63
  30206. minLength: 1
  30207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30208. type: string
  30209. type: object
  30210. type: object
  30211. version:
  30212. default: v2
  30213. description: |-
  30214. Version is the Vault KV secret engine version. This can be either "v1" or
  30215. "v2". Version defaults to "v2".
  30216. enum:
  30217. - v1
  30218. - v2
  30219. type: string
  30220. required:
  30221. - server
  30222. type: object
  30223. resultType:
  30224. default: Data
  30225. description: |-
  30226. Result type defines which data is returned from the generator.
  30227. By default, it is the "data" section of the Vault API response.
  30228. When using e.g. /auth/token/create the "data" section is empty but
  30229. the "auth" section contains the generated token.
  30230. Please refer to the vault docs regarding the result data structure.
  30231. Additionally, accessing the raw response is possibly by using "Raw" result type.
  30232. enum:
  30233. - Data
  30234. - Auth
  30235. - Raw
  30236. type: string
  30237. retrySettings:
  30238. description: Used to configure http retries if failed
  30239. properties:
  30240. maxRetries:
  30241. format: int32
  30242. type: integer
  30243. retryInterval:
  30244. type: string
  30245. type: object
  30246. required:
  30247. - path
  30248. - provider
  30249. type: object
  30250. type: object
  30251. served: true
  30252. storage: true
  30253. subresources:
  30254. status: {}
  30255. ---
  30256. apiVersion: apiextensions.k8s.io/v1
  30257. kind: CustomResourceDefinition
  30258. metadata:
  30259. annotations:
  30260. controller-gen.kubebuilder.io/version: v0.19.0
  30261. labels:
  30262. external-secrets.io/component: controller
  30263. name: webhooks.generators.external-secrets.io
  30264. spec:
  30265. group: generators.external-secrets.io
  30266. names:
  30267. categories:
  30268. - external-secrets
  30269. - external-secrets-generators
  30270. kind: Webhook
  30271. listKind: WebhookList
  30272. plural: webhooks
  30273. singular: webhook
  30274. scope: Namespaced
  30275. versions:
  30276. - name: v1alpha1
  30277. schema:
  30278. openAPIV3Schema:
  30279. description: |-
  30280. Webhook connects to a third party API server to handle the secrets generation
  30281. configuration parameters in spec.
  30282. You can specify the server, the token, and additional body parameters.
  30283. See documentation for the full API specification for requests and responses.
  30284. properties:
  30285. apiVersion:
  30286. description: |-
  30287. APIVersion defines the versioned schema of this representation of an object.
  30288. Servers should convert recognized schemas to the latest internal value, and
  30289. may reject unrecognized values.
  30290. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30291. type: string
  30292. kind:
  30293. description: |-
  30294. Kind is a string value representing the REST resource this object represents.
  30295. Servers may infer this from the endpoint the client submits requests to.
  30296. Cannot be updated.
  30297. In CamelCase.
  30298. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30299. type: string
  30300. metadata:
  30301. type: object
  30302. spec:
  30303. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  30304. properties:
  30305. auth:
  30306. description: Auth specifies a authorization protocol. Only one protocol may be set.
  30307. maxProperties: 1
  30308. minProperties: 1
  30309. properties:
  30310. ntlm:
  30311. description: NTLMProtocol configures the store to use NTLM for auth
  30312. properties:
  30313. passwordSecret:
  30314. description: |-
  30315. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30316. In some instances, `key` is a required field.
  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. usernameSecret:
  30342. description: |-
  30343. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30344. In some instances, `key` is a required field.
  30345. properties:
  30346. key:
  30347. description: |-
  30348. A key in the referenced Secret.
  30349. Some instances of this field may be defaulted, in others it may be required.
  30350. maxLength: 253
  30351. minLength: 1
  30352. pattern: ^[-._a-zA-Z0-9]+$
  30353. type: string
  30354. name:
  30355. description: The name of the Secret resource being referred to.
  30356. maxLength: 253
  30357. minLength: 1
  30358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30359. type: string
  30360. namespace:
  30361. description: |-
  30362. The namespace of the Secret resource being referred to.
  30363. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30364. maxLength: 63
  30365. minLength: 1
  30366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30367. type: string
  30368. type: object
  30369. required:
  30370. - passwordSecret
  30371. - usernameSecret
  30372. type: object
  30373. type: object
  30374. body:
  30375. description: Body
  30376. type: string
  30377. caBundle:
  30378. description: |-
  30379. PEM encoded CA bundle used to validate webhook server certificate. Only used
  30380. if the Server URL is using HTTPS protocol. This parameter is ignored for
  30381. plain HTTP protocol connection. If not set the system root certificates
  30382. are used to validate the TLS connection.
  30383. format: byte
  30384. type: string
  30385. caProvider:
  30386. description: The provider for the CA bundle to use to validate webhook server certificate.
  30387. properties:
  30388. key:
  30389. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  30390. maxLength: 253
  30391. minLength: 1
  30392. pattern: ^[-._a-zA-Z0-9]+$
  30393. type: string
  30394. name:
  30395. description: The name of the object located at the provider type.
  30396. maxLength: 253
  30397. minLength: 1
  30398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30399. type: string
  30400. namespace:
  30401. description: The namespace the Provider type is in.
  30402. maxLength: 63
  30403. minLength: 1
  30404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30405. type: string
  30406. type:
  30407. description: The type of provider to use such as "Secret", or "ConfigMap".
  30408. enum:
  30409. - Secret
  30410. - ConfigMap
  30411. type: string
  30412. required:
  30413. - name
  30414. - type
  30415. type: object
  30416. headers:
  30417. additionalProperties:
  30418. type: string
  30419. description: Headers
  30420. type: object
  30421. method:
  30422. description: Webhook Method
  30423. type: string
  30424. result:
  30425. description: Result formatting
  30426. properties:
  30427. jsonPath:
  30428. description: Json path of return value
  30429. type: string
  30430. type: object
  30431. secrets:
  30432. description: |-
  30433. Secrets to fill in templates
  30434. These secrets will be passed to the templating function as key value pairs under the given name
  30435. items:
  30436. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  30437. properties:
  30438. name:
  30439. description: Name of this secret in templates
  30440. type: string
  30441. secretRef:
  30442. description: Secret ref to fill in credentials
  30443. properties:
  30444. key:
  30445. description: The key where the token is found.
  30446. maxLength: 253
  30447. minLength: 1
  30448. pattern: ^[-._a-zA-Z0-9]+$
  30449. type: string
  30450. name:
  30451. description: The name of the Secret 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. type: object
  30457. required:
  30458. - name
  30459. - secretRef
  30460. type: object
  30461. type: array
  30462. timeout:
  30463. description: Timeout
  30464. type: string
  30465. url:
  30466. description: Webhook url to call
  30467. type: string
  30468. required:
  30469. - result
  30470. - url
  30471. type: object
  30472. type: object
  30473. served: true
  30474. storage: true
  30475. subresources:
  30476. status: {}