bundle.yaml 1.7 MB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136201372013820139201402014120142201432014420145201462014720148201492015020151201522015320154201552015620157201582015920160201612016220163201642016520166201672016820169201702017120172201732017420175201762017720178201792018020181201822018320184201852018620187201882018920190201912019220193201942019520196201972019820199202002020120202202032020420205202062020720208202092021020211202122021320214202152021620217202182021920220202212022220223202242022520226202272022820229202302023120232202332023420235202362023720238202392024020241202422024320244202452024620247202482024920250202512025220253202542025520256202572025820259202602026120262202632026420265202662026720268202692027020271202722027320274202752027620277202782027920280202812028220283202842028520286202872028820289202902029120292202932029420295202962029720298202992030020301203022030320304203052030620307203082030920310203112031220313203142031520316203172031820319203202032120322203232032420325203262032720328203292033020331203322033320334203352033620337203382033920340203412034220343203442034520346203472034820349203502035120352203532035420355203562035720358203592036020361203622036320364203652036620367203682036920370203712037220373203742037520376203772037820379203802038120382203832038420385203862038720388203892039020391203922039320394203952039620397203982039920400204012040220403204042040520406204072040820409204102041120412204132041420415204162041720418204192042020421204222042320424204252042620427204282042920430204312043220433204342043520436204372043820439204402044120442204432044420445204462044720448204492045020451204522045320454204552045620457204582045920460204612046220463204642046520466204672046820469204702047120472204732047420475204762047720478204792048020481204822048320484204852048620487204882048920490204912049220493204942049520496204972049820499205002050120502205032050420505205062050720508205092051020511205122051320514205152051620517205182051920520205212052220523205242052520526205272052820529205302053120532205332053420535205362053720538205392054020541205422054320544205452054620547205482054920550205512055220553205542055520556205572055820559205602056120562205632056420565205662056720568205692057020571205722057320574205752057620577205782057920580205812058220583205842058520586205872058820589205902059120592205932059420595205962059720598205992060020601206022060320604206052060620607206082060920610206112061220613206142061520616206172061820619206202062120622206232062420625206262062720628206292063020631206322063320634206352063620637206382063920640206412064220643206442064520646206472064820649206502065120652206532065420655206562065720658206592066020661206622066320664206652066620667206682066920670206712067220673206742067520676206772067820679206802068120682206832068420685206862068720688206892069020691206922069320694206952069620697206982069920700207012070220703207042070520706207072070820709207102071120712207132071420715207162071720718207192072020721207222072320724207252072620727207282072920730207312073220733207342073520736207372073820739207402074120742207432074420745207462074720748207492075020751207522075320754207552075620757207582075920760207612076220763207642076520766207672076820769207702077120772207732077420775207762077720778207792078020781207822078320784207852078620787207882078920790207912079220793207942079520796207972079820799208002080120802208032080420805208062080720808208092081020811208122081320814208152081620817208182081920820208212082220823208242082520826208272082820829208302083120832208332083420835208362083720838208392084020841208422084320844208452084620847208482084920850208512085220853208542085520856208572085820859208602086120862208632086420865208662086720868208692087020871208722087320874208752087620877208782087920880208812088220883208842088520886208872088820889208902089120892208932089420895208962089720898208992090020901209022090320904209052090620907209082090920910209112091220913209142091520916209172091820919209202092120922209232092420925209262092720928209292093020931209322093320934209352093620937209382093920940209412094220943209442094520946209472094820949209502095120952209532095420955209562095720958209592096020961209622096320964209652096620967209682096920970209712097220973209742097520976209772097820979209802098120982209832098420985209862098720988209892099020991209922099320994209952099620997209982099921000210012100221003210042100521006210072100821009210102101121012210132101421015210162101721018210192102021021210222102321024210252102621027210282102921030210312103221033210342103521036210372103821039210402104121042210432104421045210462104721048210492105021051210522105321054210552105621057210582105921060210612106221063210642106521066210672106821069210702107121072210732107421075210762107721078210792108021081210822108321084210852108621087210882108921090210912109221093210942109521096210972109821099211002110121102211032110421105211062110721108211092111021111211122111321114211152111621117211182111921120211212112221123211242112521126211272112821129211302113121132211332113421135211362113721138211392114021141211422114321144211452114621147211482114921150211512115221153211542115521156211572115821159211602116121162211632116421165211662116721168211692117021171211722117321174211752117621177211782117921180211812118221183211842118521186211872118821189211902119121192211932119421195211962119721198211992120021201212022120321204212052120621207212082120921210212112121221213212142121521216212172121821219212202122121222212232122421225212262122721228212292123021231212322123321234212352123621237212382123921240212412124221243212442124521246212472124821249212502125121252212532125421255212562125721258212592126021261212622126321264212652126621267212682126921270212712127221273212742127521276212772127821279212802128121282212832128421285212862128721288212892129021291212922129321294212952129621297212982129921300213012130221303213042130521306213072130821309213102131121312213132131421315213162131721318213192132021321213222132321324213252132621327213282132921330213312133221333213342133521336213372133821339213402134121342213432134421345213462134721348213492135021351213522135321354213552135621357213582135921360213612136221363213642136521366213672136821369213702137121372213732137421375213762137721378213792138021381213822138321384213852138621387213882138921390213912139221393213942139521396213972139821399214002140121402214032140421405214062140721408214092141021411214122141321414214152141621417214182141921420214212142221423214242142521426214272142821429214302143121432214332143421435214362143721438214392144021441214422144321444214452144621447214482144921450214512145221453214542145521456214572145821459214602146121462214632146421465214662146721468214692147021471214722147321474214752147621477214782147921480214812148221483214842148521486214872148821489214902149121492214932149421495214962149721498214992150021501215022150321504215052150621507215082150921510215112151221513215142151521516215172151821519215202152121522215232152421525215262152721528215292153021531215322153321534215352153621537215382153921540215412154221543215442154521546215472154821549215502155121552215532155421555215562155721558215592156021561215622156321564215652156621567215682156921570215712157221573215742157521576215772157821579215802158121582215832158421585215862158721588215892159021591215922159321594215952159621597215982159921600216012160221603216042160521606216072160821609216102161121612216132161421615216162161721618216192162021621216222162321624216252162621627216282162921630216312163221633216342163521636216372163821639216402164121642216432164421645216462164721648216492165021651216522165321654216552165621657216582165921660216612166221663216642166521666216672166821669216702167121672216732167421675216762167721678216792168021681216822168321684216852168621687216882168921690216912169221693216942169521696216972169821699217002170121702217032170421705217062170721708217092171021711217122171321714217152171621717217182171921720217212172221723217242172521726217272172821729217302173121732217332173421735217362173721738217392174021741217422174321744217452174621747217482174921750217512175221753217542175521756217572175821759217602176121762217632176421765217662176721768217692177021771217722177321774217752177621777217782177921780217812178221783217842178521786217872178821789217902179121792217932179421795217962179721798217992180021801218022180321804218052180621807218082180921810218112181221813218142181521816218172181821819218202182121822218232182421825218262182721828218292183021831218322183321834218352183621837218382183921840218412184221843218442184521846218472184821849218502185121852218532185421855218562185721858218592186021861218622186321864218652186621867218682186921870218712187221873218742187521876218772187821879218802188121882218832188421885218862188721888218892189021891218922189321894218952189621897218982189921900219012190221903219042190521906219072190821909219102191121912219132191421915219162191721918219192192021921219222192321924219252192621927219282192921930219312193221933219342193521936219372193821939219402194121942219432194421945219462194721948219492195021951219522195321954219552195621957219582195921960219612196221963219642196521966219672196821969219702197121972219732197421975219762197721978219792198021981219822198321984219852198621987219882198921990219912199221993219942199521996219972199821999220002200122002220032200422005220062200722008220092201022011220122201322014220152201622017220182201922020220212202222023220242202522026220272202822029220302203122032220332203422035220362203722038220392204022041220422204322044220452204622047220482204922050220512205222053220542205522056220572205822059220602206122062220632206422065220662206722068220692207022071220722207322074220752207622077220782207922080220812208222083220842208522086220872208822089220902209122092220932209422095220962209722098220992210022101221022210322104221052210622107221082210922110221112211222113221142211522116221172211822119221202212122122221232212422125221262212722128221292213022131221322213322134221352213622137221382213922140221412214222143221442214522146221472214822149221502215122152221532215422155221562215722158221592216022161221622216322164221652216622167221682216922170221712217222173221742217522176221772217822179221802218122182221832218422185221862218722188221892219022191221922219322194221952219622197221982219922200222012220222203222042220522206222072220822209222102221122212222132221422215222162221722218222192222022221222222222322224222252222622227222282222922230222312223222233222342223522236222372223822239222402224122242222432224422245222462224722248222492225022251222522225322254222552225622257222582225922260222612226222263222642226522266222672226822269222702227122272222732227422275222762227722278222792228022281222822228322284222852228622287222882228922290222912229222293222942229522296222972229822299223002230122302223032230422305223062230722308223092231022311223122231322314223152231622317223182231922320223212232222323223242232522326223272232822329223302233122332223332233422335223362233722338223392234022341223422234322344223452234622347223482234922350223512235222353223542235522356223572235822359223602236122362223632236422365223662236722368223692237022371223722237322374223752237622377223782237922380223812238222383223842238522386223872238822389223902239122392223932239422395223962239722398223992240022401224022240322404224052240622407224082240922410224112241222413224142241522416224172241822419224202242122422224232242422425224262242722428224292243022431224322243322434224352243622437224382243922440224412244222443224442244522446224472244822449224502245122452224532245422455224562245722458224592246022461224622246322464224652246622467224682246922470224712247222473224742247522476224772247822479224802248122482224832248422485224862248722488224892249022491224922249322494224952249622497224982249922500225012250222503225042250522506225072250822509225102251122512225132251422515225162251722518225192252022521225222252322524225252252622527225282252922530225312253222533225342253522536225372253822539225402254122542225432254422545225462254722548225492255022551225522255322554225552255622557225582255922560225612256222563225642256522566225672256822569225702257122572225732257422575225762257722578225792258022581225822258322584225852258622587225882258922590225912259222593225942259522596225972259822599226002260122602226032260422605226062260722608226092261022611226122261322614226152261622617226182261922620226212262222623226242262522626226272262822629226302263122632226332263422635226362263722638226392264022641226422264322644226452264622647226482264922650226512265222653226542265522656226572265822659226602266122662226632266422665226662266722668226692267022671226722267322674226752267622677226782267922680226812268222683226842268522686226872268822689226902269122692226932269422695226962269722698226992270022701227022270322704227052270622707227082270922710227112271222713227142271522716227172271822719227202272122722227232272422725227262272722728227292273022731227322273322734227352273622737227382273922740227412274222743227442274522746227472274822749227502275122752227532275422755227562275722758227592276022761227622276322764227652276622767227682276922770227712277222773227742277522776227772277822779227802278122782227832278422785227862278722788227892279022791227922279322794227952279622797227982279922800228012280222803228042280522806228072280822809228102281122812228132281422815228162281722818228192282022821228222282322824228252282622827228282282922830228312283222833228342283522836228372283822839228402284122842228432284422845228462284722848228492285022851228522285322854228552285622857228582285922860228612286222863228642286522866228672286822869228702287122872228732287422875228762287722878228792288022881228822288322884228852288622887228882288922890228912289222893228942289522896228972289822899229002290122902229032290422905229062290722908229092291022911229122291322914229152291622917229182291922920229212292222923229242292522926229272292822929229302293122932229332293422935229362293722938229392294022941229422294322944229452294622947229482294922950229512295222953229542295522956229572295822959229602296122962229632296422965229662296722968229692297022971229722297322974229752297622977229782297922980229812298222983229842298522986229872298822989229902299122992229932299422995229962299722998229992300023001230022300323004230052300623007230082300923010230112301223013230142301523016230172301823019230202302123022230232302423025230262302723028230292303023031230322303323034230352303623037230382303923040230412304223043230442304523046230472304823049230502305123052230532305423055230562305723058230592306023061230622306323064230652306623067230682306923070230712307223073230742307523076230772307823079230802308123082230832308423085230862308723088230892309023091230922309323094230952309623097230982309923100231012310223103231042310523106231072310823109231102311123112231132311423115231162311723118231192312023121231222312323124231252312623127231282312923130231312313223133231342313523136231372313823139231402314123142231432314423145231462314723148231492315023151231522315323154231552315623157231582315923160231612316223163231642316523166231672316823169231702317123172231732317423175231762317723178231792318023181231822318323184231852318623187231882318923190231912319223193231942319523196231972319823199232002320123202232032320423205232062320723208232092321023211232122321323214232152321623217232182321923220232212322223223232242322523226232272322823229232302323123232232332323423235232362323723238232392324023241232422324323244232452324623247232482324923250232512325223253232542325523256232572325823259232602326123262232632326423265232662326723268232692327023271232722327323274232752327623277232782327923280232812328223283232842328523286232872328823289232902329123292232932329423295232962329723298232992330023301233022330323304233052330623307233082330923310233112331223313233142331523316233172331823319233202332123322233232332423325233262332723328233292333023331233322333323334233352333623337233382333923340233412334223343233442334523346233472334823349233502335123352233532335423355233562335723358233592336023361233622336323364233652336623367233682336923370233712337223373233742337523376233772337823379233802338123382233832338423385233862338723388233892339023391233922339323394233952339623397233982339923400234012340223403234042340523406234072340823409234102341123412234132341423415234162341723418234192342023421234222342323424234252342623427234282342923430234312343223433234342343523436234372343823439234402344123442234432344423445234462344723448234492345023451234522345323454234552345623457234582345923460234612346223463234642346523466234672346823469234702347123472234732347423475234762347723478234792348023481234822348323484234852348623487234882348923490234912349223493234942349523496234972349823499235002350123502235032350423505235062350723508235092351023511235122351323514235152351623517235182351923520235212352223523235242352523526235272352823529235302353123532235332353423535235362353723538235392354023541235422354323544235452354623547235482354923550235512355223553235542355523556235572355823559235602356123562235632356423565235662356723568235692357023571235722357323574235752357623577235782357923580235812358223583235842358523586235872358823589235902359123592235932359423595235962359723598235992360023601236022360323604236052360623607236082360923610236112361223613236142361523616236172361823619236202362123622236232362423625236262362723628236292363023631236322363323634236352363623637236382363923640236412364223643236442364523646236472364823649236502365123652236532365423655236562365723658236592366023661236622366323664236652366623667236682366923670236712367223673236742367523676236772367823679236802368123682236832368423685236862368723688236892369023691236922369323694236952369623697236982369923700237012370223703237042370523706237072370823709237102371123712237132371423715237162371723718237192372023721237222372323724237252372623727237282372923730237312373223733237342373523736237372373823739237402374123742237432374423745237462374723748237492375023751237522375323754237552375623757237582375923760237612376223763237642376523766237672376823769237702377123772237732377423775237762377723778237792378023781237822378323784237852378623787237882378923790237912379223793237942379523796237972379823799238002380123802238032380423805238062380723808238092381023811238122381323814238152381623817238182381923820238212382223823238242382523826238272382823829238302383123832238332383423835238362383723838238392384023841238422384323844238452384623847238482384923850238512385223853238542385523856238572385823859238602386123862238632386423865238662386723868238692387023871238722387323874238752387623877238782387923880238812388223883238842388523886238872388823889238902389123892238932389423895238962389723898238992390023901239022390323904239052390623907239082390923910239112391223913239142391523916239172391823919239202392123922239232392423925239262392723928239292393023931239322393323934239352393623937239382393923940239412394223943239442394523946239472394823949239502395123952239532395423955239562395723958239592396023961239622396323964239652396623967239682396923970239712397223973239742397523976239772397823979239802398123982239832398423985239862398723988239892399023991239922399323994239952399623997239982399924000240012400224003240042400524006240072400824009240102401124012240132401424015240162401724018240192402024021240222402324024240252402624027240282402924030240312403224033240342403524036240372403824039240402404124042240432404424045240462404724048240492405024051240522405324054240552405624057240582405924060240612406224063240642406524066240672406824069240702407124072240732407424075240762407724078240792408024081240822408324084240852408624087240882408924090240912409224093240942409524096240972409824099241002410124102241032410424105241062410724108241092411024111241122411324114241152411624117241182411924120241212412224123241242412524126241272412824129241302413124132241332413424135241362413724138241392414024141241422414324144241452414624147241482414924150241512415224153241542415524156241572415824159241602416124162241632416424165241662416724168241692417024171241722417324174241752417624177241782417924180241812418224183241842418524186241872418824189241902419124192241932419424195241962419724198241992420024201242022420324204242052420624207242082420924210242112421224213242142421524216242172421824219242202422124222242232422424225242262422724228242292423024231242322423324234242352423624237242382423924240242412424224243242442424524246242472424824249242502425124252242532425424255242562425724258242592426024261242622426324264242652426624267242682426924270242712427224273242742427524276242772427824279242802428124282242832428424285242862428724288242892429024291242922429324294242952429624297242982429924300243012430224303243042430524306243072430824309243102431124312243132431424315243162431724318243192432024321243222432324324243252432624327243282432924330243312433224333243342433524336243372433824339243402434124342243432434424345243462434724348243492435024351243522435324354243552435624357243582435924360243612436224363243642436524366243672436824369243702437124372243732437424375243762437724378243792438024381243822438324384243852438624387243882438924390243912439224393243942439524396243972439824399244002440124402244032440424405244062440724408244092441024411244122441324414244152441624417244182441924420244212442224423244242442524426244272442824429244302443124432244332443424435244362443724438244392444024441244422444324444244452444624447244482444924450244512445224453244542445524456244572445824459244602446124462244632446424465244662446724468244692447024471244722447324474244752447624477244782447924480244812448224483244842448524486244872448824489244902449124492244932449424495244962449724498244992450024501245022450324504245052450624507245082450924510245112451224513245142451524516245172451824519245202452124522245232452424525245262452724528245292453024531245322453324534245352453624537245382453924540245412454224543245442454524546245472454824549245502455124552245532455424555245562455724558245592456024561245622456324564245652456624567245682456924570245712457224573245742457524576245772457824579245802458124582245832458424585245862458724588245892459024591245922459324594245952459624597245982459924600246012460224603246042460524606246072460824609246102461124612246132461424615246162461724618246192462024621246222462324624246252462624627246282462924630246312463224633246342463524636246372463824639246402464124642246432464424645246462464724648246492465024651246522465324654246552465624657246582465924660246612466224663246642466524666246672466824669246702467124672246732467424675246762467724678246792468024681246822468324684246852468624687246882468924690246912469224693246942469524696246972469824699247002470124702247032470424705247062470724708247092471024711247122471324714247152471624717247182471924720247212472224723247242472524726247272472824729247302473124732247332473424735247362473724738247392474024741247422474324744247452474624747247482474924750247512475224753247542475524756247572475824759247602476124762247632476424765247662476724768247692477024771247722477324774247752477624777247782477924780247812478224783247842478524786247872478824789247902479124792247932479424795247962479724798247992480024801248022480324804248052480624807248082480924810248112481224813248142481524816248172481824819248202482124822248232482424825248262482724828248292483024831248322483324834248352483624837248382483924840248412484224843248442484524846248472484824849248502485124852248532485424855248562485724858248592486024861248622486324864248652486624867248682486924870248712487224873248742487524876248772487824879248802488124882248832488424885248862488724888248892489024891248922489324894248952489624897248982489924900249012490224903249042490524906249072490824909249102491124912249132491424915249162491724918249192492024921249222492324924249252492624927249282492924930249312493224933249342493524936249372493824939249402494124942249432494424945249462494724948249492495024951249522495324954249552495624957249582495924960249612496224963249642496524966249672496824969249702497124972249732497424975249762497724978249792498024981249822498324984249852498624987249882498924990249912499224993249942499524996249972499824999250002500125002250032500425005250062500725008250092501025011250122501325014250152501625017250182501925020250212502225023250242502525026250272502825029250302503125032250332503425035250362503725038250392504025041250422504325044250452504625047250482504925050250512505225053250542505525056250572505825059250602506125062250632506425065250662506725068250692507025071250722507325074250752507625077250782507925080250812508225083250842508525086250872508825089250902509125092250932509425095250962509725098250992510025101251022510325104251052510625107251082510925110251112511225113251142511525116251172511825119251202512125122251232512425125251262512725128251292513025131251322513325134251352513625137251382513925140251412514225143251442514525146251472514825149251502515125152251532515425155251562515725158251592516025161251622516325164251652516625167251682516925170251712517225173251742517525176251772517825179251802518125182251832518425185251862518725188251892519025191251922519325194251952519625197251982519925200252012520225203252042520525206252072520825209252102521125212252132521425215252162521725218252192522025221252222522325224252252522625227252282522925230252312523225233252342523525236252372523825239252402524125242252432524425245252462524725248252492525025251252522525325254252552525625257252582525925260252612526225263252642526525266252672526825269252702527125272252732527425275252762527725278252792528025281252822528325284252852528625287252882528925290252912529225293252942529525296252972529825299253002530125302253032530425305253062530725308253092531025311253122531325314253152531625317253182531925320253212532225323253242532525326253272532825329253302533125332253332533425335253362533725338253392534025341253422534325344253452534625347253482534925350253512535225353253542535525356253572535825359253602536125362253632536425365253662536725368253692537025371253722537325374253752537625377253782537925380253812538225383253842538525386253872538825389253902539125392253932539425395253962539725398253992540025401254022540325404254052540625407254082540925410254112541225413254142541525416254172541825419254202542125422254232542425425254262542725428254292543025431254322543325434254352543625437254382543925440254412544225443254442544525446254472544825449254502545125452254532545425455254562545725458254592546025461254622546325464254652546625467254682546925470254712547225473254742547525476254772547825479254802548125482254832548425485254862548725488254892549025491254922549325494254952549625497254982549925500255012550225503255042550525506255072550825509255102551125512255132551425515255162551725518255192552025521255222552325524255252552625527255282552925530255312553225533255342553525536255372553825539255402554125542255432554425545255462554725548255492555025551255522555325554255552555625557255582555925560255612556225563255642556525566255672556825569255702557125572255732557425575255762557725578255792558025581255822558325584255852558625587255882558925590255912559225593255942559525596255972559825599256002560125602256032560425605256062560725608256092561025611256122561325614256152561625617256182561925620256212562225623256242562525626256272562825629256302563125632256332563425635256362563725638256392564025641256422564325644256452564625647256482564925650256512565225653256542565525656256572565825659256602566125662256632566425665256662566725668256692567025671256722567325674256752567625677256782567925680256812568225683256842568525686256872568825689256902569125692256932569425695256962569725698256992570025701257022570325704257052570625707257082570925710257112571225713257142571525716257172571825719257202572125722257232572425725257262572725728257292573025731257322573325734257352573625737257382573925740257412574225743257442574525746257472574825749257502575125752257532575425755257562575725758257592576025761257622576325764257652576625767257682576925770257712577225773257742577525776257772577825779257802578125782257832578425785257862578725788257892579025791257922579325794257952579625797257982579925800258012580225803258042580525806258072580825809258102581125812258132581425815258162581725818258192582025821258222582325824258252582625827258282582925830258312583225833258342583525836258372583825839258402584125842258432584425845258462584725848258492585025851258522585325854258552585625857258582585925860258612586225863258642586525866258672586825869258702587125872258732587425875258762587725878258792588025881258822588325884258852588625887258882588925890258912589225893258942589525896258972589825899259002590125902259032590425905259062590725908259092591025911259122591325914259152591625917259182591925920259212592225923259242592525926259272592825929259302593125932259332593425935259362593725938259392594025941259422594325944259452594625947259482594925950259512595225953259542595525956259572595825959259602596125962259632596425965259662596725968259692597025971259722597325974259752597625977259782597925980259812598225983259842598525986259872598825989259902599125992259932599425995259962599725998259992600026001260022600326004260052600626007260082600926010260112601226013260142601526016260172601826019260202602126022260232602426025260262602726028260292603026031260322603326034260352603626037260382603926040260412604226043260442604526046260472604826049260502605126052260532605426055260562605726058260592606026061260622606326064260652606626067260682606926070260712607226073260742607526076260772607826079260802608126082260832608426085260862608726088260892609026091260922609326094260952609626097260982609926100261012610226103261042610526106261072610826109261102611126112261132611426115261162611726118261192612026121261222612326124261252612626127261282612926130261312613226133261342613526136261372613826139261402614126142261432614426145261462614726148261492615026151261522615326154261552615626157261582615926160261612616226163261642616526166261672616826169261702617126172261732617426175261762617726178261792618026181261822618326184261852618626187261882618926190261912619226193261942619526196261972619826199262002620126202262032620426205262062620726208262092621026211262122621326214262152621626217262182621926220262212622226223262242622526226262272622826229262302623126232262332623426235262362623726238262392624026241262422624326244262452624626247262482624926250262512625226253262542625526256262572625826259262602626126262262632626426265262662626726268262692627026271262722627326274262752627626277262782627926280262812628226283262842628526286262872628826289262902629126292262932629426295262962629726298262992630026301263022630326304263052630626307263082630926310263112631226313263142631526316263172631826319263202632126322263232632426325263262632726328263292633026331263322633326334263352633626337263382633926340263412634226343263442634526346263472634826349263502635126352263532635426355263562635726358263592636026361263622636326364263652636626367263682636926370263712637226373263742637526376263772637826379263802638126382263832638426385263862638726388263892639026391263922639326394263952639626397263982639926400264012640226403264042640526406264072640826409264102641126412264132641426415264162641726418264192642026421264222642326424264252642626427264282642926430264312643226433264342643526436264372643826439264402644126442264432644426445264462644726448264492645026451264522645326454264552645626457264582645926460264612646226463264642646526466264672646826469264702647126472264732647426475264762647726478264792648026481264822648326484264852648626487264882648926490264912649226493264942649526496264972649826499265002650126502265032650426505265062650726508265092651026511265122651326514265152651626517265182651926520265212652226523265242652526526265272652826529265302653126532265332653426535265362653726538265392654026541265422654326544265452654626547265482654926550265512655226553265542655526556265572655826559265602656126562265632656426565265662656726568265692657026571265722657326574265752657626577265782657926580265812658226583265842658526586265872658826589265902659126592265932659426595265962659726598265992660026601266022660326604266052660626607266082660926610266112661226613266142661526616266172661826619266202662126622266232662426625266262662726628266292663026631266322663326634266352663626637266382663926640266412664226643266442664526646266472664826649266502665126652266532665426655266562665726658266592666026661266622666326664266652666626667266682666926670266712667226673266742667526676266772667826679266802668126682266832668426685266862668726688266892669026691266922669326694266952669626697266982669926700267012670226703267042670526706267072670826709267102671126712267132671426715267162671726718267192672026721267222672326724267252672626727267282672926730267312673226733267342673526736267372673826739267402674126742267432674426745267462674726748267492675026751267522675326754267552675626757267582675926760267612676226763267642676526766267672676826769267702677126772267732677426775267762677726778267792678026781267822678326784267852678626787267882678926790267912679226793267942679526796267972679826799268002680126802268032680426805268062680726808268092681026811268122681326814268152681626817268182681926820268212682226823268242682526826268272682826829268302683126832268332683426835268362683726838268392684026841268422684326844268452684626847268482684926850268512685226853268542685526856268572685826859268602686126862268632686426865268662686726868268692687026871268722687326874268752687626877268782687926880268812688226883268842688526886268872688826889268902689126892268932689426895268962689726898268992690026901269022690326904269052690626907269082690926910269112691226913269142691526916269172691826919269202692126922269232692426925269262692726928269292693026931269322693326934269352693626937269382693926940269412694226943269442694526946269472694826949269502695126952269532695426955269562695726958269592696026961269622696326964269652696626967269682696926970269712697226973269742697526976269772697826979269802698126982269832698426985269862698726988269892699026991269922699326994269952699626997269982699927000270012700227003270042700527006270072700827009270102701127012270132701427015270162701727018270192702027021270222702327024270252702627027270282702927030270312703227033270342703527036270372703827039270402704127042270432704427045270462704727048270492705027051270522705327054270552705627057270582705927060270612706227063270642706527066270672706827069270702707127072270732707427075270762707727078270792708027081270822708327084270852708627087270882708927090270912709227093270942709527096270972709827099271002710127102271032710427105271062710727108271092711027111271122711327114271152711627117271182711927120271212712227123271242712527126271272712827129271302713127132271332713427135271362713727138271392714027141271422714327144271452714627147271482714927150271512715227153271542715527156271572715827159271602716127162271632716427165271662716727168271692717027171271722717327174271752717627177271782717927180271812718227183271842718527186271872718827189271902719127192271932719427195271962719727198271992720027201272022720327204272052720627207272082720927210272112721227213272142721527216272172721827219272202722127222272232722427225272262722727228272292723027231272322723327234272352723627237272382723927240272412724227243272442724527246272472724827249272502725127252272532725427255272562725727258272592726027261272622726327264272652726627267272682726927270272712727227273272742727527276272772727827279272802728127282272832728427285272862728727288272892729027291272922729327294272952729627297272982729927300273012730227303273042730527306273072730827309273102731127312273132731427315273162731727318273192732027321273222732327324273252732627327273282732927330273312733227333273342733527336273372733827339273402734127342273432734427345273462734727348273492735027351273522735327354273552735627357273582735927360273612736227363273642736527366273672736827369273702737127372273732737427375273762737727378273792738027381273822738327384273852738627387273882738927390273912739227393273942739527396273972739827399274002740127402274032740427405274062740727408274092741027411274122741327414274152741627417274182741927420274212742227423274242742527426274272742827429274302743127432274332743427435274362743727438274392744027441274422744327444274452744627447274482744927450274512745227453274542745527456274572745827459274602746127462274632746427465274662746727468274692747027471274722747327474274752747627477274782747927480274812748227483274842748527486274872748827489274902749127492274932749427495274962749727498274992750027501275022750327504275052750627507275082750927510275112751227513275142751527516275172751827519275202752127522275232752427525275262752727528275292753027531275322753327534275352753627537275382753927540275412754227543275442754527546275472754827549275502755127552275532755427555275562755727558275592756027561275622756327564275652756627567275682756927570275712757227573275742757527576275772757827579275802758127582275832758427585275862758727588275892759027591275922759327594275952759627597275982759927600276012760227603276042760527606276072760827609276102761127612276132761427615276162761727618276192762027621276222762327624276252762627627276282762927630276312763227633276342763527636276372763827639276402764127642276432764427645276462764727648276492765027651276522765327654276552765627657276582765927660276612766227663276642766527666276672766827669276702767127672276732767427675276762767727678276792768027681276822768327684276852768627687276882768927690276912769227693276942769527696276972769827699277002770127702277032770427705277062770727708277092771027711277122771327714277152771627717277182771927720277212772227723277242772527726277272772827729277302773127732277332773427735277362773727738277392774027741277422774327744277452774627747277482774927750277512775227753277542775527756277572775827759277602776127762277632776427765277662776727768277692777027771277722777327774277752777627777277782777927780277812778227783277842778527786277872778827789277902779127792277932779427795277962779727798277992780027801278022780327804278052780627807278082780927810278112781227813278142781527816278172781827819278202782127822278232782427825278262782727828278292783027831278322783327834278352783627837278382783927840278412784227843278442784527846278472784827849278502785127852278532785427855278562785727858278592786027861278622786327864278652786627867278682786927870278712787227873278742787527876278772787827879278802788127882278832788427885278862788727888278892789027891278922789327894278952789627897278982789927900279012790227903279042790527906279072790827909279102791127912279132791427915279162791727918279192792027921279222792327924279252792627927279282792927930279312793227933279342793527936279372793827939279402794127942279432794427945279462794727948279492795027951279522795327954279552795627957279582795927960279612796227963279642796527966279672796827969279702797127972279732797427975279762797727978279792798027981279822798327984279852798627987279882798927990279912799227993279942799527996279972799827999280002800128002280032800428005280062800728008280092801028011280122801328014280152801628017280182801928020280212802228023280242802528026280272802828029280302803128032280332803428035280362803728038280392804028041280422804328044280452804628047280482804928050280512805228053280542805528056280572805828059280602806128062280632806428065280662806728068280692807028071280722807328074280752807628077280782807928080280812808228083280842808528086280872808828089280902809128092280932809428095280962809728098280992810028101281022810328104281052810628107281082810928110281112811228113281142811528116281172811828119281202812128122281232812428125281262812728128281292813028131281322813328134281352813628137281382813928140281412814228143281442814528146281472814828149281502815128152281532815428155281562815728158281592816028161281622816328164281652816628167281682816928170281712817228173281742817528176281772817828179281802818128182281832818428185281862818728188281892819028191281922819328194281952819628197281982819928200282012820228203282042820528206282072820828209282102821128212282132821428215282162821728218282192822028221282222822328224282252822628227282282822928230282312823228233282342823528236282372823828239282402824128242282432824428245282462824728248282492825028251282522825328254282552825628257282582825928260282612826228263282642826528266282672826828269282702827128272282732827428275282762827728278282792828028281282822828328284282852828628287282882828928290282912829228293282942829528296282972829828299283002830128302283032830428305283062830728308283092831028311283122831328314283152831628317283182831928320283212832228323283242832528326283272832828329283302833128332283332833428335283362833728338283392834028341283422834328344283452834628347283482834928350283512835228353283542835528356283572835828359283602836128362283632836428365283662836728368283692837028371283722837328374283752837628377283782837928380283812838228383283842838528386283872838828389283902839128392283932839428395283962839728398283992840028401284022840328404284052840628407284082840928410284112841228413284142841528416284172841828419284202842128422284232842428425284262842728428284292843028431284322843328434284352843628437284382843928440284412844228443284442844528446284472844828449284502845128452284532845428455284562845728458284592846028461284622846328464284652846628467284682846928470284712847228473284742847528476284772847828479284802848128482284832848428485284862848728488284892849028491284922849328494284952849628497284982849928500285012850228503285042850528506285072850828509285102851128512285132851428515285162851728518285192852028521285222852328524285252852628527285282852928530285312853228533285342853528536285372853828539285402854128542285432854428545285462854728548285492855028551285522855328554285552855628557285582855928560285612856228563285642856528566285672856828569285702857128572285732857428575285762857728578285792858028581285822858328584285852858628587285882858928590285912859228593285942859528596285972859828599286002860128602286032860428605286062860728608286092861028611286122861328614286152861628617286182861928620286212862228623286242862528626286272862828629286302863128632286332863428635286362863728638286392864028641286422864328644286452864628647286482864928650286512865228653286542865528656286572865828659286602866128662286632866428665286662866728668286692867028671286722867328674286752867628677286782867928680286812868228683286842868528686286872868828689286902869128692286932869428695286962869728698286992870028701287022870328704287052870628707287082870928710287112871228713287142871528716287172871828719287202872128722287232872428725287262872728728287292873028731287322873328734287352873628737287382873928740287412874228743287442874528746287472874828749287502875128752287532875428755287562875728758287592876028761287622876328764287652876628767287682876928770287712877228773287742877528776287772877828779287802878128782287832878428785287862878728788287892879028791287922879328794287952879628797287982879928800288012880228803288042880528806288072880828809288102881128812288132881428815288162881728818288192882028821288222882328824288252882628827288282882928830288312883228833288342883528836288372883828839288402884128842288432884428845288462884728848288492885028851288522885328854288552885628857288582885928860288612886228863288642886528866288672886828869288702887128872288732887428875288762887728878288792888028881288822888328884288852888628887288882888928890288912889228893288942889528896288972889828899289002890128902289032890428905289062890728908289092891028911289122891328914289152891628917289182891928920289212892228923289242892528926289272892828929289302893128932289332893428935289362893728938289392894028941289422894328944289452894628947289482894928950289512895228953289542895528956289572895828959289602896128962289632896428965289662896728968289692897028971289722897328974289752897628977289782897928980289812898228983289842898528986289872898828989289902899128992289932899428995289962899728998289992900029001290022900329004290052900629007290082900929010290112901229013290142901529016290172901829019290202902129022290232902429025290262902729028290292903029031290322903329034290352903629037290382903929040290412904229043290442904529046290472904829049290502905129052290532905429055290562905729058290592906029061290622906329064290652906629067290682906929070290712907229073290742907529076290772907829079290802908129082290832908429085290862908729088290892909029091290922909329094290952909629097290982909929100291012910229103291042910529106291072910829109291102911129112291132911429115291162911729118291192912029121291222912329124291252912629127291282912929130291312913229133291342913529136291372913829139291402914129142291432914429145291462914729148291492915029151291522915329154291552915629157291582915929160291612916229163291642916529166291672916829169291702917129172291732917429175291762917729178291792918029181291822918329184291852918629187291882918929190291912919229193291942919529196291972919829199292002920129202292032920429205292062920729208292092921029211292122921329214292152921629217292182921929220292212922229223292242922529226292272922829229292302923129232292332923429235292362923729238292392924029241292422924329244292452924629247292482924929250292512925229253292542925529256292572925829259292602926129262292632926429265292662926729268292692927029271292722927329274292752927629277292782927929280292812928229283292842928529286292872928829289292902929129292292932929429295292962929729298292992930029301293022930329304293052930629307293082930929310293112931229313293142931529316293172931829319293202932129322293232932429325293262932729328293292933029331293322933329334293352933629337293382933929340293412934229343293442934529346293472934829349293502935129352293532935429355293562935729358293592936029361293622936329364293652936629367293682936929370293712937229373293742937529376293772937829379293802938129382293832938429385293862938729388293892939029391293922939329394293952939629397293982939929400294012940229403294042940529406294072940829409294102941129412294132941429415294162941729418294192942029421294222942329424294252942629427294282942929430294312943229433294342943529436294372943829439294402944129442294432944429445294462944729448294492945029451294522945329454294552945629457294582945929460294612946229463294642946529466294672946829469294702947129472294732947429475294762947729478294792948029481294822948329484294852948629487294882948929490294912949229493294942949529496294972949829499295002950129502295032950429505295062950729508295092951029511295122951329514295152951629517295182951929520295212952229523295242952529526295272952829529295302953129532295332953429535295362953729538295392954029541295422954329544295452954629547295482954929550295512955229553295542955529556295572955829559295602956129562295632956429565295662956729568295692957029571295722957329574295752957629577295782957929580295812958229583295842958529586295872958829589295902959129592295932959429595295962959729598295992960029601296022960329604296052960629607296082960929610296112961229613296142961529616296172961829619296202962129622296232962429625296262962729628296292963029631296322963329634296352963629637296382963929640296412964229643296442964529646296472964829649296502965129652296532965429655296562965729658296592966029661296622966329664296652966629667296682966929670296712967229673296742967529676296772967829679296802968129682296832968429685296862968729688296892969029691296922969329694296952969629697296982969929700297012970229703297042970529706297072970829709297102971129712297132971429715297162971729718297192972029721297222972329724297252972629727297282972929730297312973229733297342973529736297372973829739297402974129742297432974429745297462974729748297492975029751297522975329754297552975629757297582975929760297612976229763297642976529766297672976829769297702977129772297732977429775297762977729778297792978029781297822978329784297852978629787297882978929790297912979229793297942979529796297972979829799298002980129802298032980429805298062980729808298092981029811298122981329814298152981629817298182981929820298212982229823298242982529826298272982829829298302983129832298332983429835298362983729838298392984029841298422984329844298452984629847298482984929850298512985229853298542985529856298572985829859298602986129862298632986429865298662986729868298692987029871298722987329874298752987629877298782987929880298812988229883298842988529886298872988829889298902989129892298932989429895298962989729898298992990029901299022990329904299052990629907299082990929910299112991229913299142991529916299172991829919299202992129922299232992429925299262992729928299292993029931299322993329934299352993629937299382993929940299412994229943299442994529946299472994829949299502995129952299532995429955299562995729958299592996029961299622996329964299652996629967299682996929970299712997229973299742997529976299772997829979299802998129982299832998429985299862998729988299892999029991299922999329994299952999629997299982999930000300013000230003300043000530006300073000830009300103001130012300133001430015300163001730018300193002030021300223002330024300253002630027300283002930030300313003230033300343003530036300373003830039300403004130042300433004430045300463004730048300493005030051300523005330054300553005630057300583005930060300613006230063300643006530066300673006830069300703007130072300733007430075300763007730078300793008030081300823008330084300853008630087300883008930090300913009230093300943009530096300973009830099301003010130102301033010430105301063010730108301093011030111301123011330114301153011630117301183011930120301213012230123301243012530126301273012830129301303013130132301333013430135301363013730138301393014030141301423014330144301453014630147301483014930150301513015230153301543015530156301573015830159301603016130162301633016430165301663016730168301693017030171301723017330174301753017630177301783017930180301813018230183301843018530186301873018830189301903019130192301933019430195301963019730198301993020030201302023020330204302053020630207302083020930210302113021230213302143021530216302173021830219302203022130222302233022430225302263022730228302293023030231302323023330234302353023630237302383023930240302413024230243302443024530246302473024830249302503025130252302533025430255302563025730258302593026030261302623026330264302653026630267302683026930270302713027230273302743027530276302773027830279302803028130282302833028430285302863028730288302893029030291302923029330294302953029630297302983029930300303013030230303303043030530306303073030830309303103031130312303133031430315303163031730318303193032030321303223032330324303253032630327303283032930330303313033230333303343033530336303373033830339303403034130342303433034430345303463034730348303493035030351303523035330354303553035630357303583035930360303613036230363303643036530366303673036830369303703037130372303733037430375303763037730378303793038030381303823038330384303853038630387303883038930390303913039230393303943039530396303973039830399304003040130402304033040430405304063040730408304093041030411304123041330414304153041630417304183041930420304213042230423304243042530426304273042830429304303043130432304333043430435304363043730438304393044030441304423044330444304453044630447304483044930450304513045230453304543045530456304573045830459304603046130462304633046430465304663046730468304693047030471304723047330474304753047630477304783047930480304813048230483304843048530486304873048830489304903049130492304933049430495304963049730498304993050030501305023050330504305053050630507305083050930510305113051230513305143051530516305173051830519305203052130522305233052430525305263052730528305293053030531305323053330534305353053630537305383053930540305413054230543305443054530546305473054830549305503055130552305533055430555305563055730558305593056030561305623056330564305653056630567305683056930570305713057230573305743057530576305773057830579305803058130582305833058430585305863058730588305893059030591305923059330594305953059630597305983059930600306013060230603306043060530606306073060830609306103061130612306133061430615306163061730618306193062030621306223062330624306253062630627306283062930630306313063230633306343063530636306373063830639306403064130642306433064430645306463064730648306493065030651306523065330654306553065630657306583065930660306613066230663306643066530666306673066830669306703067130672306733067430675306763067730678306793068030681306823068330684306853068630687306883068930690306913069230693306943069530696306973069830699307003070130702307033070430705307063070730708307093071030711307123071330714307153071630717307183071930720307213072230723307243072530726307273072830729307303073130732307333073430735307363073730738307393074030741
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: clusterexternalsecrets.external-secrets.io
  9. spec:
  10. group: external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. kind: ClusterExternalSecret
  15. listKind: ClusterExternalSecretList
  16. plural: clusterexternalsecrets
  17. shortNames:
  18. - ces
  19. singular: clusterexternalsecret
  20. scope: Cluster
  21. versions:
  22. - additionalPrinterColumns:
  23. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  24. name: Store
  25. type: string
  26. - jsonPath: .spec.refreshTime
  27. name: Refresh Interval
  28. type: string
  29. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  30. name: Ready
  31. type: string
  32. name: v1
  33. schema:
  34. openAPIV3Schema:
  35. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  36. properties:
  37. apiVersion:
  38. description: |-
  39. APIVersion defines the versioned schema of this representation of an object.
  40. Servers should convert recognized schemas to the latest internal value, and
  41. may reject unrecognized values.
  42. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  43. type: string
  44. kind:
  45. description: |-
  46. Kind is a string value representing the REST resource this object represents.
  47. Servers may infer this from the endpoint the client submits requests to.
  48. Cannot be updated.
  49. In CamelCase.
  50. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  51. type: string
  52. metadata:
  53. type: object
  54. spec:
  55. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  56. properties:
  57. externalSecretMetadata:
  58. description: The metadata of the external secrets to be created
  59. properties:
  60. annotations:
  61. additionalProperties:
  62. type: string
  63. type: object
  64. labels:
  65. additionalProperties:
  66. type: string
  67. type: object
  68. type: object
  69. externalSecretName:
  70. description: |-
  71. The name of the external secrets to be created.
  72. Defaults to the name of the ClusterExternalSecret
  73. maxLength: 253
  74. minLength: 1
  75. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  76. type: string
  77. externalSecretSpec:
  78. description: The spec for the ExternalSecrets to be created
  79. properties:
  80. data:
  81. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  82. items:
  83. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  84. properties:
  85. remoteRef:
  86. description: |-
  87. RemoteRef points to the remote secret and defines
  88. which secret (version/property/..) to fetch.
  89. properties:
  90. conversionStrategy:
  91. default: Default
  92. description: Used to define a conversion Strategy
  93. enum:
  94. - Default
  95. - Unicode
  96. type: string
  97. decodingStrategy:
  98. default: None
  99. description: Used to define a decoding Strategy
  100. enum:
  101. - Auto
  102. - Base64
  103. - Base64URL
  104. - None
  105. type: string
  106. key:
  107. description: Key is the key used in the Provider, mandatory
  108. type: string
  109. metadataPolicy:
  110. default: None
  111. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  112. enum:
  113. - None
  114. - Fetch
  115. type: string
  116. nullBytePolicy:
  117. default: Ignore
  118. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  119. enum:
  120. - Ignore
  121. - Fail
  122. type: string
  123. property:
  124. description: Used to select a specific property of the Provider value (if a map), if supported
  125. type: string
  126. version:
  127. description: Used to select a specific version of the Provider value, if supported
  128. type: string
  129. required:
  130. - key
  131. type: object
  132. secretKey:
  133. description: The key in the Kubernetes Secret to store the value.
  134. maxLength: 253
  135. minLength: 1
  136. pattern: ^[-._a-zA-Z0-9]+$
  137. type: string
  138. sourceRef:
  139. description: |-
  140. SourceRef allows you to override the source
  141. from which the value will be pulled.
  142. maxProperties: 1
  143. minProperties: 1
  144. properties:
  145. generatorRef:
  146. description: |-
  147. GeneratorRef points to a generator custom resource.
  148. Deprecated: The generatorRef is not implemented in .data[].
  149. this will be removed with v1.
  150. properties:
  151. apiVersion:
  152. default: generators.external-secrets.io/v1alpha1
  153. description: Specify the apiVersion of the generator resource
  154. type: string
  155. kind:
  156. description: Specify the Kind of the generator resource
  157. enum:
  158. - ACRAccessToken
  159. - ClusterGenerator
  160. - CloudsmithAccessToken
  161. - ECRAuthorizationToken
  162. - Fake
  163. - GCRAccessToken
  164. - GithubAccessToken
  165. - QuayAccessToken
  166. - Password
  167. - SSHKey
  168. - STSSessionToken
  169. - UUID
  170. - VaultDynamicSecret
  171. - Webhook
  172. - Grafana
  173. - MFA
  174. type: string
  175. name:
  176. description: Specify the name of the generator resource
  177. maxLength: 253
  178. minLength: 1
  179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  180. type: string
  181. required:
  182. - kind
  183. - name
  184. type: object
  185. storeRef:
  186. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  187. properties:
  188. kind:
  189. description: |-
  190. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  191. Defaults to `SecretStore`
  192. enum:
  193. - SecretStore
  194. - ClusterSecretStore
  195. - Provider
  196. - ClusterProvider
  197. type: string
  198. name:
  199. description: Name of the SecretStore resource
  200. maxLength: 253
  201. minLength: 1
  202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  203. type: string
  204. type: object
  205. type: object
  206. required:
  207. - remoteRef
  208. - secretKey
  209. type: object
  210. type: array
  211. dataFrom:
  212. description: |-
  213. DataFrom is used to fetch all properties from a specific Provider data
  214. If multiple entries are specified, the Secret keys are merged in the specified order
  215. items:
  216. description: |-
  217. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  218. when using DataFrom to fetch multiple values from a Provider.
  219. properties:
  220. extract:
  221. description: |-
  222. Used to extract multiple key/value pairs from one secret
  223. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  224. properties:
  225. conversionStrategy:
  226. default: Default
  227. description: Used to define a conversion Strategy
  228. enum:
  229. - Default
  230. - Unicode
  231. type: string
  232. decodingStrategy:
  233. default: None
  234. description: Used to define a decoding Strategy
  235. enum:
  236. - Auto
  237. - Base64
  238. - Base64URL
  239. - None
  240. type: string
  241. key:
  242. description: Key is the key used in the Provider, mandatory
  243. type: string
  244. metadataPolicy:
  245. default: None
  246. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  247. enum:
  248. - None
  249. - Fetch
  250. type: string
  251. nullBytePolicy:
  252. default: Ignore
  253. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  254. enum:
  255. - Ignore
  256. - Fail
  257. type: string
  258. property:
  259. description: Used to select a specific property of the Provider value (if a map), if supported
  260. type: string
  261. version:
  262. description: Used to select a specific version of the Provider value, if supported
  263. type: string
  264. required:
  265. - key
  266. type: object
  267. find:
  268. description: |-
  269. Used to find secrets based on tags or regular expressions
  270. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  271. properties:
  272. conversionStrategy:
  273. default: Default
  274. description: Used to define a conversion Strategy
  275. enum:
  276. - Default
  277. - Unicode
  278. type: string
  279. decodingStrategy:
  280. default: None
  281. description: Used to define a decoding Strategy
  282. enum:
  283. - Auto
  284. - Base64
  285. - Base64URL
  286. - None
  287. type: string
  288. name:
  289. description: Finds secrets based on the name.
  290. properties:
  291. regexp:
  292. description: Finds secrets base
  293. type: string
  294. type: object
  295. nullBytePolicy:
  296. default: Ignore
  297. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  298. enum:
  299. - Ignore
  300. - Fail
  301. type: string
  302. path:
  303. description: A root path to start the find operations.
  304. type: string
  305. tags:
  306. additionalProperties:
  307. type: string
  308. description: Find secrets based on tags.
  309. type: object
  310. type: object
  311. rewrite:
  312. description: |-
  313. Used to rewrite secret Keys after getting them from the secret Provider
  314. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  315. items:
  316. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  317. maxProperties: 1
  318. minProperties: 1
  319. properties:
  320. merge:
  321. description: |-
  322. Used to merge key/values in one single Secret
  323. The resulting key will contain all values from the specified secrets
  324. properties:
  325. conflictPolicy:
  326. default: Error
  327. description: Used to define the policy to use in conflict resolution.
  328. enum:
  329. - Ignore
  330. - Error
  331. type: string
  332. into:
  333. default: ""
  334. description: |-
  335. Used to define the target key of the merge operation.
  336. Required if strategy is JSON. Ignored otherwise.
  337. type: string
  338. priority:
  339. description: Used to define key priority in conflict resolution.
  340. items:
  341. type: string
  342. type: array
  343. priorityPolicy:
  344. default: Strict
  345. description: Used to define the policy when a key in the priority list does not exist in the input.
  346. enum:
  347. - IgnoreNotFound
  348. - Strict
  349. type: string
  350. strategy:
  351. default: Extract
  352. description: Used to define the strategy to use in the merge operation.
  353. enum:
  354. - Extract
  355. - JSON
  356. type: string
  357. type: object
  358. regexp:
  359. description: |-
  360. Used to rewrite with regular expressions.
  361. The resulting key will be the output of a regexp.ReplaceAll operation.
  362. properties:
  363. source:
  364. description: Used to define the regular expression of a re.Compiler.
  365. type: string
  366. target:
  367. description: Used to define the target pattern of a ReplaceAll operation.
  368. type: string
  369. required:
  370. - source
  371. - target
  372. type: object
  373. transform:
  374. description: |-
  375. Used to apply string transformation on the secrets.
  376. The resulting key will be the output of the template applied by the operation.
  377. properties:
  378. template:
  379. description: |-
  380. Used to define the template to apply on the secret name.
  381. `.value ` will specify the secret name in the template.
  382. type: string
  383. required:
  384. - template
  385. type: object
  386. type: object
  387. type: array
  388. sourceRef:
  389. description: |-
  390. SourceRef points to a store or generator
  391. which contains secret values ready to use.
  392. Use this in combination with Extract or Find pull values out of
  393. a specific SecretStore.
  394. When sourceRef points to a generator Extract or Find is not supported.
  395. The generator returns a static map of values
  396. maxProperties: 1
  397. minProperties: 1
  398. properties:
  399. generatorRef:
  400. description: GeneratorRef points to a generator custom resource.
  401. properties:
  402. apiVersion:
  403. default: generators.external-secrets.io/v1alpha1
  404. description: Specify the apiVersion of the generator resource
  405. type: string
  406. kind:
  407. description: Specify the Kind of the generator resource
  408. enum:
  409. - ACRAccessToken
  410. - ClusterGenerator
  411. - CloudsmithAccessToken
  412. - ECRAuthorizationToken
  413. - Fake
  414. - GCRAccessToken
  415. - GithubAccessToken
  416. - QuayAccessToken
  417. - Password
  418. - SSHKey
  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. - Provider
  447. - ClusterProvider
  448. type: string
  449. name:
  450. description: Name of the SecretStore resource
  451. maxLength: 253
  452. minLength: 1
  453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  454. type: string
  455. type: object
  456. type: object
  457. type: object
  458. type: array
  459. refreshInterval:
  460. default: 1h0m0s
  461. description: |-
  462. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  463. specified as Golang Duration strings.
  464. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  465. Example values: "1h0m0s", "2h30m0s", "10m0s"
  466. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  467. type: string
  468. refreshPolicy:
  469. description: |-
  470. RefreshPolicy determines how the ExternalSecret should be refreshed:
  471. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  472. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  473. No periodic updates occur if refreshInterval is 0.
  474. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  475. enum:
  476. - CreatedOnce
  477. - Periodic
  478. - OnChange
  479. type: string
  480. secretStoreRef:
  481. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  482. properties:
  483. kind:
  484. description: |-
  485. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  486. Defaults to `SecretStore`
  487. enum:
  488. - SecretStore
  489. - ClusterSecretStore
  490. - Provider
  491. - ClusterProvider
  492. type: string
  493. name:
  494. description: Name of the SecretStore resource
  495. maxLength: 253
  496. minLength: 1
  497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  498. type: string
  499. type: object
  500. target:
  501. default:
  502. creationPolicy: Owner
  503. deletionPolicy: Retain
  504. description: |-
  505. ExternalSecretTarget defines the Kubernetes Secret to be created,
  506. there can be only one target per ExternalSecret.
  507. properties:
  508. creationPolicy:
  509. default: Owner
  510. description: |-
  511. CreationPolicy defines rules on how to create the resulting Secret.
  512. Defaults to "Owner"
  513. enum:
  514. - Owner
  515. - Orphan
  516. - Merge
  517. - None
  518. type: string
  519. deletionPolicy:
  520. default: Retain
  521. description: |-
  522. DeletionPolicy defines rules on how to delete the resulting Secret.
  523. Defaults to "Retain"
  524. enum:
  525. - Delete
  526. - Merge
  527. - Retain
  528. type: string
  529. immutable:
  530. description: Immutable defines if the final secret will be immutable
  531. type: boolean
  532. manifest:
  533. description: |-
  534. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  535. When specified, ExternalSecret will create the resource type defined here
  536. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  537. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  538. properties:
  539. apiVersion:
  540. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  541. minLength: 1
  542. type: string
  543. kind:
  544. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  545. minLength: 1
  546. type: string
  547. required:
  548. - apiVersion
  549. - kind
  550. type: object
  551. name:
  552. description: |-
  553. The name of the Secret resource to be managed.
  554. Defaults to the .metadata.name of the ExternalSecret resource
  555. maxLength: 253
  556. minLength: 1
  557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  558. type: string
  559. template:
  560. description: Template defines a blueprint for the created Secret resource.
  561. properties:
  562. data:
  563. additionalProperties:
  564. type: string
  565. type: object
  566. engineVersion:
  567. default: v2
  568. description: |-
  569. EngineVersion specifies the template engine version
  570. that should be used to compile/execute the
  571. template specified in .data and .templateFrom[].
  572. enum:
  573. - v2
  574. type: string
  575. mergePolicy:
  576. default: Replace
  577. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  578. enum:
  579. - Replace
  580. - Merge
  581. type: string
  582. metadata:
  583. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  584. properties:
  585. annotations:
  586. additionalProperties:
  587. type: string
  588. type: object
  589. finalizers:
  590. items:
  591. type: string
  592. type: array
  593. labels:
  594. additionalProperties:
  595. type: string
  596. type: object
  597. type: object
  598. templateFrom:
  599. items:
  600. description: |-
  601. TemplateFrom specifies a source for templates.
  602. Each item in the list can either reference a ConfigMap or a Secret resource.
  603. properties:
  604. configMap:
  605. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  606. properties:
  607. items:
  608. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  609. items:
  610. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  611. properties:
  612. key:
  613. description: A key in the ConfigMap/Secret
  614. maxLength: 253
  615. minLength: 1
  616. pattern: ^[-._a-zA-Z0-9]+$
  617. type: string
  618. templateAs:
  619. default: Values
  620. description: TemplateScope specifies how the template keys should be interpreted.
  621. enum:
  622. - Values
  623. - KeysAndValues
  624. type: string
  625. required:
  626. - key
  627. type: object
  628. type: array
  629. name:
  630. description: The name of the ConfigMap/Secret resource
  631. maxLength: 253
  632. minLength: 1
  633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  634. type: string
  635. required:
  636. - items
  637. - name
  638. type: object
  639. literal:
  640. type: string
  641. secret:
  642. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  643. properties:
  644. items:
  645. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  646. items:
  647. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  648. properties:
  649. key:
  650. description: A key in the ConfigMap/Secret
  651. maxLength: 253
  652. minLength: 1
  653. pattern: ^[-._a-zA-Z0-9]+$
  654. type: string
  655. templateAs:
  656. default: Values
  657. description: TemplateScope specifies how the template keys should be interpreted.
  658. enum:
  659. - Values
  660. - KeysAndValues
  661. type: string
  662. required:
  663. - key
  664. type: object
  665. type: array
  666. name:
  667. description: The name of the ConfigMap/Secret resource
  668. maxLength: 253
  669. minLength: 1
  670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  671. type: string
  672. required:
  673. - items
  674. - name
  675. type: object
  676. target:
  677. default: Data
  678. description: |-
  679. Target specifies where to place the template result.
  680. For Secret resources, common values are: "Data", "Annotations", "Labels".
  681. For custom resources (when spec.target.manifest is set), this supports
  682. nested paths like "spec.database.config" or "data".
  683. type: string
  684. type: object
  685. type: array
  686. type:
  687. type: string
  688. type: object
  689. type: object
  690. type: object
  691. namespaceSelector:
  692. description: |-
  693. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  694. Deprecated: Use NamespaceSelectors instead.
  695. properties:
  696. matchExpressions:
  697. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  698. items:
  699. description: |-
  700. A label selector requirement is a selector that contains values, a key, and an operator that
  701. relates the key and values.
  702. properties:
  703. key:
  704. description: key is the label key that the selector applies to.
  705. type: string
  706. operator:
  707. description: |-
  708. operator represents a key's relationship to a set of values.
  709. Valid operators are In, NotIn, Exists and DoesNotExist.
  710. type: string
  711. values:
  712. description: |-
  713. values is an array of string values. If the operator is In or NotIn,
  714. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  715. the values array must be empty. This array is replaced during a strategic
  716. merge patch.
  717. items:
  718. type: string
  719. type: array
  720. x-kubernetes-list-type: atomic
  721. required:
  722. - key
  723. - operator
  724. type: object
  725. type: array
  726. x-kubernetes-list-type: atomic
  727. matchLabels:
  728. additionalProperties:
  729. type: string
  730. description: |-
  731. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  732. map is equivalent to an element of matchExpressions, whose key field is "key", the
  733. operator is "In", and the values array contains only "value". The requirements are ANDed.
  734. type: object
  735. type: object
  736. x-kubernetes-map-type: atomic
  737. namespaceSelectors:
  738. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  739. items:
  740. description: |-
  741. A label selector is a label query over a set of resources. The result of matchLabels and
  742. matchExpressions are ANDed. An empty label selector matches all objects. A null
  743. label selector matches no objects.
  744. properties:
  745. matchExpressions:
  746. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  747. items:
  748. description: |-
  749. A label selector requirement is a selector that contains values, a key, and an operator that
  750. relates the key and values.
  751. properties:
  752. key:
  753. description: key is the label key that the selector applies to.
  754. type: string
  755. operator:
  756. description: |-
  757. operator represents a key's relationship to a set of values.
  758. Valid operators are In, NotIn, Exists and DoesNotExist.
  759. type: string
  760. values:
  761. description: |-
  762. values is an array of string values. If the operator is In or NotIn,
  763. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  764. the values array must be empty. This array is replaced during a strategic
  765. merge patch.
  766. items:
  767. type: string
  768. type: array
  769. x-kubernetes-list-type: atomic
  770. required:
  771. - key
  772. - operator
  773. type: object
  774. type: array
  775. x-kubernetes-list-type: atomic
  776. matchLabels:
  777. additionalProperties:
  778. type: string
  779. description: |-
  780. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  781. map is equivalent to an element of matchExpressions, whose key field is "key", the
  782. operator is "In", and the values array contains only "value". The requirements are ANDed.
  783. type: object
  784. type: object
  785. x-kubernetes-map-type: atomic
  786. type: array
  787. namespaces:
  788. description: |-
  789. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  790. Deprecated: Use NamespaceSelectors instead.
  791. items:
  792. maxLength: 63
  793. minLength: 1
  794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  795. type: string
  796. type: array
  797. refreshTime:
  798. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  799. type: string
  800. required:
  801. - externalSecretSpec
  802. type: object
  803. status:
  804. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  805. properties:
  806. conditions:
  807. items:
  808. description: ClusterExternalSecretStatusCondition defines the observed state of a ClusterExternalSecret resource.
  809. properties:
  810. message:
  811. type: string
  812. status:
  813. type: string
  814. type:
  815. description: ClusterExternalSecretConditionType defines a value type for ClusterExternalSecret conditions.
  816. type: string
  817. required:
  818. - status
  819. - type
  820. type: object
  821. type: array
  822. externalSecretName:
  823. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  824. type: string
  825. failedNamespaces:
  826. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  827. items:
  828. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  829. properties:
  830. namespace:
  831. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  832. type: string
  833. reason:
  834. description: Reason is why the ExternalSecret failed to apply to the namespace
  835. type: string
  836. required:
  837. - namespace
  838. type: object
  839. type: array
  840. provisionedNamespaces:
  841. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  842. items:
  843. type: string
  844. type: array
  845. type: object
  846. type: object
  847. served: true
  848. storage: true
  849. subresources:
  850. status: {}
  851. - additionalPrinterColumns:
  852. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  853. name: Store
  854. type: string
  855. - jsonPath: .spec.refreshTime
  856. name: Refresh Interval
  857. type: string
  858. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  859. name: Ready
  860. type: string
  861. deprecated: true
  862. name: v1beta1
  863. schema:
  864. openAPIV3Schema:
  865. description: ClusterExternalSecret is the schema for the clusterexternalsecrets API.
  866. properties:
  867. apiVersion:
  868. description: |-
  869. APIVersion defines the versioned schema of this representation of an object.
  870. Servers should convert recognized schemas to the latest internal value, and
  871. may reject unrecognized values.
  872. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  873. type: string
  874. kind:
  875. description: |-
  876. Kind is a string value representing the REST resource this object represents.
  877. Servers may infer this from the endpoint the client submits requests to.
  878. Cannot be updated.
  879. In CamelCase.
  880. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  881. type: string
  882. metadata:
  883. type: object
  884. spec:
  885. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  886. properties:
  887. externalSecretMetadata:
  888. description: The metadata of the external secrets to be created
  889. properties:
  890. annotations:
  891. additionalProperties:
  892. type: string
  893. type: object
  894. labels:
  895. additionalProperties:
  896. type: string
  897. type: object
  898. type: object
  899. externalSecretName:
  900. description: |-
  901. The name of the external secrets to be created.
  902. Defaults to the name of the ClusterExternalSecret
  903. maxLength: 253
  904. minLength: 1
  905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  906. type: string
  907. externalSecretSpec:
  908. description: The spec for the ExternalSecrets to be created
  909. properties:
  910. data:
  911. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  912. items:
  913. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  914. properties:
  915. remoteRef:
  916. description: |-
  917. RemoteRef points to the remote secret and defines
  918. which secret (version/property/..) to fetch.
  919. properties:
  920. conversionStrategy:
  921. default: Default
  922. description: Used to define a conversion Strategy
  923. enum:
  924. - Default
  925. - Unicode
  926. type: string
  927. decodingStrategy:
  928. default: None
  929. description: Used to define a decoding Strategy
  930. enum:
  931. - Auto
  932. - Base64
  933. - Base64URL
  934. - None
  935. type: string
  936. key:
  937. description: Key is the key used in the Provider, mandatory
  938. type: string
  939. metadataPolicy:
  940. default: None
  941. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  942. enum:
  943. - None
  944. - Fetch
  945. type: string
  946. property:
  947. description: Used to select a specific property of the Provider value (if a map), if supported
  948. type: string
  949. version:
  950. description: Used to select a specific version of the Provider value, if supported
  951. type: string
  952. required:
  953. - key
  954. type: object
  955. secretKey:
  956. description: The key in the Kubernetes Secret to store the value.
  957. maxLength: 253
  958. minLength: 1
  959. pattern: ^[-._a-zA-Z0-9]+$
  960. type: string
  961. sourceRef:
  962. description: |-
  963. SourceRef allows you to override the source
  964. from which the value will be pulled.
  965. maxProperties: 1
  966. minProperties: 1
  967. properties:
  968. generatorRef:
  969. description: |-
  970. GeneratorRef points to a generator custom resource.
  971. Deprecated: The generatorRef is not implemented in .data[].
  972. this will be removed with v1.
  973. properties:
  974. apiVersion:
  975. default: generators.external-secrets.io/v1alpha1
  976. description: Specify the apiVersion of the generator resource
  977. type: string
  978. kind:
  979. description: Specify the Kind of the generator resource
  980. enum:
  981. - ACRAccessToken
  982. - ClusterGenerator
  983. - ECRAuthorizationToken
  984. - Fake
  985. - GCRAccessToken
  986. - GithubAccessToken
  987. - QuayAccessToken
  988. - Password
  989. - SSHKey
  990. - STSSessionToken
  991. - UUID
  992. - VaultDynamicSecret
  993. - Webhook
  994. - Grafana
  995. type: string
  996. name:
  997. description: Specify the name of the generator resource
  998. maxLength: 253
  999. minLength: 1
  1000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1001. type: string
  1002. required:
  1003. - kind
  1004. - name
  1005. type: object
  1006. storeRef:
  1007. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1008. properties:
  1009. kind:
  1010. description: |-
  1011. Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider or ClusterProvider)
  1012. Defaults to `SecretStore`
  1013. enum:
  1014. - SecretStore
  1015. - ClusterSecretStore
  1016. - Provider
  1017. - ClusterProvider
  1018. type: string
  1019. name:
  1020. description: Name of the SecretStore resource
  1021. maxLength: 253
  1022. minLength: 1
  1023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1024. type: string
  1025. type: object
  1026. type: object
  1027. required:
  1028. - remoteRef
  1029. - secretKey
  1030. type: object
  1031. type: array
  1032. dataFrom:
  1033. description: |-
  1034. DataFrom is used to fetch all properties from a specific Provider data
  1035. If multiple entries are specified, the Secret keys are merged in the specified order
  1036. items:
  1037. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  1038. properties:
  1039. extract:
  1040. description: |-
  1041. Used to extract multiple key/value pairs from one secret
  1042. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1043. properties:
  1044. conversionStrategy:
  1045. default: Default
  1046. description: Used to define a conversion Strategy
  1047. enum:
  1048. - Default
  1049. - Unicode
  1050. type: string
  1051. decodingStrategy:
  1052. default: None
  1053. description: Used to define a decoding Strategy
  1054. enum:
  1055. - Auto
  1056. - Base64
  1057. - Base64URL
  1058. - None
  1059. type: string
  1060. key:
  1061. description: Key is the key used in the Provider, mandatory
  1062. type: string
  1063. metadataPolicy:
  1064. default: None
  1065. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  1066. enum:
  1067. - None
  1068. - Fetch
  1069. type: string
  1070. property:
  1071. description: Used to select a specific property of the Provider value (if a map), if supported
  1072. type: string
  1073. version:
  1074. description: Used to select a specific version of the Provider value, if supported
  1075. type: string
  1076. required:
  1077. - key
  1078. type: object
  1079. find:
  1080. description: |-
  1081. Used to find secrets based on tags or regular expressions
  1082. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1083. properties:
  1084. conversionStrategy:
  1085. default: Default
  1086. description: Used to define a conversion Strategy
  1087. enum:
  1088. - Default
  1089. - Unicode
  1090. type: string
  1091. decodingStrategy:
  1092. default: None
  1093. description: Used to define a decoding Strategy
  1094. enum:
  1095. - Auto
  1096. - Base64
  1097. - Base64URL
  1098. - None
  1099. type: string
  1100. name:
  1101. description: Finds secrets based on the name.
  1102. properties:
  1103. regexp:
  1104. description: Finds secrets base
  1105. type: string
  1106. type: object
  1107. path:
  1108. description: A root path to start the find operations.
  1109. type: string
  1110. tags:
  1111. additionalProperties:
  1112. type: string
  1113. description: Find secrets based on tags.
  1114. type: object
  1115. type: object
  1116. rewrite:
  1117. description: |-
  1118. Used to rewrite secret Keys after getting them from the secret Provider
  1119. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  1120. items:
  1121. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  1122. maxProperties: 1
  1123. minProperties: 1
  1124. properties:
  1125. regexp:
  1126. description: |-
  1127. Used to rewrite with regular expressions.
  1128. The resulting key will be the output of a regexp.ReplaceAll operation.
  1129. properties:
  1130. source:
  1131. description: Used to define the regular expression of a re.Compiler.
  1132. type: string
  1133. target:
  1134. description: Used to define the target pattern of a ReplaceAll operation.
  1135. type: string
  1136. required:
  1137. - source
  1138. - target
  1139. type: object
  1140. transform:
  1141. description: |-
  1142. Used to apply string transformation on the secrets.
  1143. The resulting key will be the output of the template applied by the operation.
  1144. properties:
  1145. template:
  1146. description: |-
  1147. Used to define the template to apply on the secret name.
  1148. `.value ` will specify the secret name in the template.
  1149. type: string
  1150. required:
  1151. - template
  1152. type: object
  1153. type: object
  1154. type: array
  1155. sourceRef:
  1156. description: |-
  1157. SourceRef points to a store or generator
  1158. which contains secret values ready to use.
  1159. Use this in combination with Extract or Find pull values out of
  1160. a specific SecretStore.
  1161. When sourceRef points to a generator Extract or Find is not supported.
  1162. The generator returns a static map of values
  1163. maxProperties: 1
  1164. minProperties: 1
  1165. properties:
  1166. generatorRef:
  1167. description: GeneratorRef points to a generator custom resource.
  1168. properties:
  1169. apiVersion:
  1170. default: generators.external-secrets.io/v1alpha1
  1171. description: Specify the apiVersion of the generator resource
  1172. type: string
  1173. kind:
  1174. description: Specify the Kind of the generator resource
  1175. enum:
  1176. - ACRAccessToken
  1177. - ClusterGenerator
  1178. - ECRAuthorizationToken
  1179. - Fake
  1180. - GCRAccessToken
  1181. - GithubAccessToken
  1182. - QuayAccessToken
  1183. - Password
  1184. - SSHKey
  1185. - STSSessionToken
  1186. - UUID
  1187. - VaultDynamicSecret
  1188. - Webhook
  1189. - Grafana
  1190. type: string
  1191. name:
  1192. description: Specify the name of the generator resource
  1193. maxLength: 253
  1194. minLength: 1
  1195. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1196. type: string
  1197. required:
  1198. - kind
  1199. - name
  1200. type: object
  1201. storeRef:
  1202. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1203. properties:
  1204. kind:
  1205. description: |-
  1206. Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider or ClusterProvider)
  1207. Defaults to `SecretStore`
  1208. enum:
  1209. - SecretStore
  1210. - ClusterSecretStore
  1211. - Provider
  1212. - ClusterProvider
  1213. type: string
  1214. name:
  1215. description: Name of the SecretStore resource
  1216. maxLength: 253
  1217. minLength: 1
  1218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1219. type: string
  1220. type: object
  1221. type: object
  1222. type: object
  1223. type: array
  1224. refreshInterval:
  1225. default: 1h0m0s
  1226. description: |-
  1227. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  1228. specified as Golang Duration strings.
  1229. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  1230. Example values: "1h0m0s", "2h30m0s", "10m0s"
  1231. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  1232. type: string
  1233. refreshPolicy:
  1234. description: |-
  1235. RefreshPolicy determines how the ExternalSecret should be refreshed:
  1236. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  1237. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  1238. No periodic updates occur if refreshInterval is 0.
  1239. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  1240. enum:
  1241. - CreatedOnce
  1242. - Periodic
  1243. - OnChange
  1244. type: string
  1245. secretStoreRef:
  1246. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1247. properties:
  1248. kind:
  1249. description: |-
  1250. Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider or ClusterProvider)
  1251. Defaults to `SecretStore`
  1252. enum:
  1253. - SecretStore
  1254. - ClusterSecretStore
  1255. - Provider
  1256. - ClusterProvider
  1257. type: string
  1258. name:
  1259. description: Name of the SecretStore resource
  1260. maxLength: 253
  1261. minLength: 1
  1262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1263. type: string
  1264. type: object
  1265. target:
  1266. default:
  1267. creationPolicy: Owner
  1268. deletionPolicy: Retain
  1269. description: |-
  1270. ExternalSecretTarget defines the Kubernetes Secret to be created
  1271. There can be only one target per ExternalSecret.
  1272. properties:
  1273. creationPolicy:
  1274. default: Owner
  1275. description: |-
  1276. CreationPolicy defines rules on how to create the resulting Secret.
  1277. Defaults to "Owner"
  1278. enum:
  1279. - Owner
  1280. - Orphan
  1281. - Merge
  1282. - None
  1283. type: string
  1284. deletionPolicy:
  1285. default: Retain
  1286. description: |-
  1287. DeletionPolicy defines rules on how to delete the resulting Secret.
  1288. Defaults to "Retain"
  1289. enum:
  1290. - Delete
  1291. - Merge
  1292. - Retain
  1293. type: string
  1294. immutable:
  1295. description: Immutable defines if the final secret will be immutable
  1296. type: boolean
  1297. name:
  1298. description: |-
  1299. The name of the Secret resource to be managed.
  1300. Defaults to the .metadata.name of the ExternalSecret resource
  1301. maxLength: 253
  1302. minLength: 1
  1303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1304. type: string
  1305. template:
  1306. description: Template defines a blueprint for the created Secret resource.
  1307. properties:
  1308. data:
  1309. additionalProperties:
  1310. type: string
  1311. type: object
  1312. engineVersion:
  1313. default: v2
  1314. description: |-
  1315. EngineVersion specifies the template engine version
  1316. that should be used to compile/execute the
  1317. template specified in .data and .templateFrom[].
  1318. enum:
  1319. - v2
  1320. type: string
  1321. mergePolicy:
  1322. default: Replace
  1323. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  1324. enum:
  1325. - Replace
  1326. - Merge
  1327. type: string
  1328. metadata:
  1329. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1330. properties:
  1331. annotations:
  1332. additionalProperties:
  1333. type: string
  1334. type: object
  1335. labels:
  1336. additionalProperties:
  1337. type: string
  1338. type: object
  1339. type: object
  1340. templateFrom:
  1341. items:
  1342. description: TemplateFrom defines a source for template data.
  1343. properties:
  1344. configMap:
  1345. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1346. properties:
  1347. items:
  1348. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1349. items:
  1350. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1351. properties:
  1352. key:
  1353. description: A key in the ConfigMap/Secret
  1354. maxLength: 253
  1355. minLength: 1
  1356. pattern: ^[-._a-zA-Z0-9]+$
  1357. type: string
  1358. templateAs:
  1359. default: Values
  1360. description: TemplateScope defines the scope of the template when processing template data.
  1361. enum:
  1362. - Values
  1363. - KeysAndValues
  1364. type: string
  1365. required:
  1366. - key
  1367. type: object
  1368. type: array
  1369. name:
  1370. description: The name of the ConfigMap/Secret resource
  1371. maxLength: 253
  1372. minLength: 1
  1373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1374. type: string
  1375. required:
  1376. - items
  1377. - name
  1378. type: object
  1379. literal:
  1380. type: string
  1381. secret:
  1382. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1383. properties:
  1384. items:
  1385. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1386. items:
  1387. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1388. properties:
  1389. key:
  1390. description: A key in the ConfigMap/Secret
  1391. maxLength: 253
  1392. minLength: 1
  1393. pattern: ^[-._a-zA-Z0-9]+$
  1394. type: string
  1395. templateAs:
  1396. default: Values
  1397. description: TemplateScope defines the scope of the template when processing template data.
  1398. enum:
  1399. - Values
  1400. - KeysAndValues
  1401. type: string
  1402. required:
  1403. - key
  1404. type: object
  1405. type: array
  1406. name:
  1407. description: The name of the ConfigMap/Secret resource
  1408. maxLength: 253
  1409. minLength: 1
  1410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1411. type: string
  1412. required:
  1413. - items
  1414. - name
  1415. type: object
  1416. target:
  1417. default: Data
  1418. description: TemplateTarget defines the target field where the template result will be stored.
  1419. enum:
  1420. - Data
  1421. - Annotations
  1422. - Labels
  1423. type: string
  1424. type: object
  1425. type: array
  1426. type:
  1427. type: string
  1428. type: object
  1429. type: object
  1430. type: object
  1431. namespaceSelector:
  1432. description: The labels to select by to find the Namespaces to create the ExternalSecrets in
  1433. properties:
  1434. matchExpressions:
  1435. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1436. items:
  1437. description: |-
  1438. A label selector requirement is a selector that contains values, a key, and an operator that
  1439. relates the key and values.
  1440. properties:
  1441. key:
  1442. description: key is the label key that the selector applies to.
  1443. type: string
  1444. operator:
  1445. description: |-
  1446. operator represents a key's relationship to a set of values.
  1447. Valid operators are In, NotIn, Exists and DoesNotExist.
  1448. type: string
  1449. values:
  1450. description: |-
  1451. values is an array of string values. If the operator is In or NotIn,
  1452. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1453. the values array must be empty. This array is replaced during a strategic
  1454. merge patch.
  1455. items:
  1456. type: string
  1457. type: array
  1458. x-kubernetes-list-type: atomic
  1459. required:
  1460. - key
  1461. - operator
  1462. type: object
  1463. type: array
  1464. x-kubernetes-list-type: atomic
  1465. matchLabels:
  1466. additionalProperties:
  1467. type: string
  1468. description: |-
  1469. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1470. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1471. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1472. type: object
  1473. type: object
  1474. x-kubernetes-map-type: atomic
  1475. namespaceSelectors:
  1476. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1477. items:
  1478. description: |-
  1479. A label selector is a label query over a set of resources. The result of matchLabels and
  1480. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1481. label selector matches no objects.
  1482. properties:
  1483. matchExpressions:
  1484. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1485. items:
  1486. description: |-
  1487. A label selector requirement is a selector that contains values, a key, and an operator that
  1488. relates the key and values.
  1489. properties:
  1490. key:
  1491. description: key is the label key that the selector applies to.
  1492. type: string
  1493. operator:
  1494. description: |-
  1495. operator represents a key's relationship to a set of values.
  1496. Valid operators are In, NotIn, Exists and DoesNotExist.
  1497. type: string
  1498. values:
  1499. description: |-
  1500. values is an array of string values. If the operator is In or NotIn,
  1501. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1502. the values array must be empty. This array is replaced during a strategic
  1503. merge patch.
  1504. items:
  1505. type: string
  1506. type: array
  1507. x-kubernetes-list-type: atomic
  1508. required:
  1509. - key
  1510. - operator
  1511. type: object
  1512. type: array
  1513. x-kubernetes-list-type: atomic
  1514. matchLabels:
  1515. additionalProperties:
  1516. type: string
  1517. description: |-
  1518. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1519. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1520. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1521. type: object
  1522. type: object
  1523. x-kubernetes-map-type: atomic
  1524. type: array
  1525. namespaces:
  1526. description: |-
  1527. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  1528. Deprecated: Use NamespaceSelectors instead.
  1529. items:
  1530. maxLength: 63
  1531. minLength: 1
  1532. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1533. type: string
  1534. type: array
  1535. refreshTime:
  1536. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  1537. type: string
  1538. required:
  1539. - externalSecretSpec
  1540. type: object
  1541. status:
  1542. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  1543. properties:
  1544. conditions:
  1545. items:
  1546. description: ClusterExternalSecretStatusCondition indicates the status of the ClusterExternalSecret.
  1547. properties:
  1548. message:
  1549. type: string
  1550. status:
  1551. type: string
  1552. type:
  1553. description: ClusterExternalSecretConditionType indicates the condition of the ClusterExternalSecret.
  1554. type: string
  1555. required:
  1556. - status
  1557. - type
  1558. type: object
  1559. type: array
  1560. externalSecretName:
  1561. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  1562. type: string
  1563. failedNamespaces:
  1564. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  1565. items:
  1566. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  1567. properties:
  1568. namespace:
  1569. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  1570. type: string
  1571. reason:
  1572. description: Reason is why the ExternalSecret failed to apply to the namespace
  1573. type: string
  1574. required:
  1575. - namespace
  1576. type: object
  1577. type: array
  1578. provisionedNamespaces:
  1579. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  1580. items:
  1581. type: string
  1582. type: array
  1583. type: object
  1584. type: object
  1585. served: false
  1586. storage: false
  1587. subresources:
  1588. status: {}
  1589. ---
  1590. apiVersion: apiextensions.k8s.io/v1
  1591. kind: CustomResourceDefinition
  1592. metadata:
  1593. annotations:
  1594. controller-gen.kubebuilder.io/version: v0.19.0
  1595. name: clusterproviders.external-secrets.io
  1596. spec:
  1597. group: external-secrets.io
  1598. names:
  1599. categories:
  1600. - externalsecrets
  1601. kind: ClusterProvider
  1602. listKind: ClusterProviderList
  1603. plural: clusterproviders
  1604. shortNames:
  1605. - cprov
  1606. singular: clusterprovider
  1607. scope: Cluster
  1608. versions:
  1609. - additionalPrinterColumns:
  1610. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1611. name: Ready
  1612. type: string
  1613. - jsonPath: .spec.config.address
  1614. name: Address
  1615. type: string
  1616. - jsonPath: .spec.authenticationScope
  1617. name: AuthScope
  1618. type: string
  1619. - jsonPath: .metadata.creationTimestamp
  1620. name: Age
  1621. type: date
  1622. name: v1
  1623. schema:
  1624. openAPIV3Schema:
  1625. description: |-
  1626. ClusterProvider is the cluster-scoped variant of Provider.
  1627. It can be referenced from ExternalSecrets and PushSecrets in any namespace.
  1628. properties:
  1629. apiVersion:
  1630. description: |-
  1631. APIVersion defines the versioned schema of this representation of an object.
  1632. Servers should convert recognized schemas to the latest internal value, and
  1633. may reject unrecognized values.
  1634. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1635. type: string
  1636. kind:
  1637. description: |-
  1638. Kind is a string value representing the REST resource this object represents.
  1639. Servers may infer this from the endpoint the client submits requests to.
  1640. Cannot be updated.
  1641. In CamelCase.
  1642. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1643. type: string
  1644. metadata:
  1645. type: object
  1646. spec:
  1647. description: ClusterProviderSpec defines the desired state of ClusterProvider.
  1648. properties:
  1649. authenticationScope:
  1650. default: ProviderNamespace
  1651. description: |-
  1652. AuthenticationScope defines which namespace should be used for authentication.
  1653. ProviderNamespace (default): uses the namespace from spec.config.providerRef.namespace
  1654. ManifestNamespace: uses the namespace of the ExternalSecret/PushSecret
  1655. enum:
  1656. - ProviderNamespace
  1657. - ManifestNamespace
  1658. type: string
  1659. conditions:
  1660. description: |-
  1661. Conditions constrain where this ClusterProvider can be used from.
  1662. Conditions are evaluated against the namespace of the ExternalSecret/PushSecret.
  1663. items:
  1664. description: |-
  1665. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  1666. for a ClusterSecretStore instance.
  1667. properties:
  1668. namespaceRegexes:
  1669. description: Choose namespaces by using regex matching
  1670. items:
  1671. type: string
  1672. type: array
  1673. namespaceSelector:
  1674. description: Choose namespace using a labelSelector
  1675. properties:
  1676. matchExpressions:
  1677. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1678. items:
  1679. description: |-
  1680. A label selector requirement is a selector that contains values, a key, and an operator that
  1681. relates the key and values.
  1682. properties:
  1683. key:
  1684. description: key is the label key that the selector applies to.
  1685. type: string
  1686. operator:
  1687. description: |-
  1688. operator represents a key's relationship to a set of values.
  1689. Valid operators are In, NotIn, Exists and DoesNotExist.
  1690. type: string
  1691. values:
  1692. description: |-
  1693. values is an array of string values. If the operator is In or NotIn,
  1694. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1695. the values array must be empty. This array is replaced during a strategic
  1696. merge patch.
  1697. items:
  1698. type: string
  1699. type: array
  1700. x-kubernetes-list-type: atomic
  1701. required:
  1702. - key
  1703. - operator
  1704. type: object
  1705. type: array
  1706. x-kubernetes-list-type: atomic
  1707. matchLabels:
  1708. additionalProperties:
  1709. type: string
  1710. description: |-
  1711. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1712. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1713. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1714. type: object
  1715. type: object
  1716. x-kubernetes-map-type: atomic
  1717. namespaces:
  1718. description: Choose namespaces by name
  1719. items:
  1720. maxLength: 63
  1721. minLength: 1
  1722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1723. type: string
  1724. type: array
  1725. type: object
  1726. type: array
  1727. config:
  1728. description: Config contains configuration for connecting to the provider.
  1729. properties:
  1730. address:
  1731. description: |-
  1732. Address is the gRPC address of the provider service.
  1733. Format: "hostname:port" (e.g., "aws-provider:8080")
  1734. type: string
  1735. providerRef:
  1736. description: ProviderRef references the provider-specific configuration resource.
  1737. properties:
  1738. apiVersion:
  1739. description: |-
  1740. APIVersion of the referenced resource.
  1741. Example: "provider.aws.external-secrets.io/v2alpha1"
  1742. type: string
  1743. kind:
  1744. description: |-
  1745. Kind of the referenced resource.
  1746. Example: "AWSSecretsManager"
  1747. type: string
  1748. name:
  1749. description: Name of the referenced resource.
  1750. type: string
  1751. namespace:
  1752. description: |-
  1753. Namespace of the referenced resource.
  1754. If empty, assumes the same namespace as the Provider.
  1755. type: string
  1756. required:
  1757. - apiVersion
  1758. - kind
  1759. - name
  1760. type: object
  1761. required:
  1762. - address
  1763. - providerRef
  1764. type: object
  1765. required:
  1766. - config
  1767. type: object
  1768. status:
  1769. description: ProviderStatus defines the observed state of Provider.
  1770. properties:
  1771. capabilities:
  1772. description: Capabilities indicates what operations this Provider supports.
  1773. type: string
  1774. conditions:
  1775. description: Conditions represent the latest available observations of the Provider's state.
  1776. items:
  1777. description: ProviderCondition describes the state of a Provider at a certain point.
  1778. properties:
  1779. lastTransitionTime:
  1780. description: LastTransitionTime is the last time the condition transitioned.
  1781. format: date-time
  1782. type: string
  1783. message:
  1784. description: Message is a human-readable message indicating details about the transition.
  1785. type: string
  1786. reason:
  1787. description: Reason contains a programmatic identifier indicating the reason for the condition's last transition.
  1788. type: string
  1789. status:
  1790. description: Status of the condition, one of True, False, Unknown.
  1791. type: string
  1792. type:
  1793. description: Type of the condition.
  1794. type: string
  1795. required:
  1796. - status
  1797. - type
  1798. type: object
  1799. type: array
  1800. type: object
  1801. type: object
  1802. served: true
  1803. storage: true
  1804. subresources:
  1805. status: {}
  1806. ---
  1807. apiVersion: apiextensions.k8s.io/v1
  1808. kind: CustomResourceDefinition
  1809. metadata:
  1810. annotations:
  1811. controller-gen.kubebuilder.io/version: v0.19.0
  1812. labels:
  1813. external-secrets.io/component: controller
  1814. name: clusterpushsecrets.external-secrets.io
  1815. spec:
  1816. group: external-secrets.io
  1817. names:
  1818. categories:
  1819. - external-secrets
  1820. kind: ClusterPushSecret
  1821. listKind: ClusterPushSecretList
  1822. plural: clusterpushsecrets
  1823. singular: clusterpushsecret
  1824. scope: Cluster
  1825. versions:
  1826. - additionalPrinterColumns:
  1827. - jsonPath: .metadata.creationTimestamp
  1828. name: AGE
  1829. type: date
  1830. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1831. name: Status
  1832. type: string
  1833. name: v1alpha1
  1834. schema:
  1835. openAPIV3Schema:
  1836. description: ClusterPushSecret is the Schema for the ClusterPushSecrets API that enables cluster-wide management of pushing Kubernetes secrets to external providers.
  1837. properties:
  1838. apiVersion:
  1839. description: |-
  1840. APIVersion defines the versioned schema of this representation of an object.
  1841. Servers should convert recognized schemas to the latest internal value, and
  1842. may reject unrecognized values.
  1843. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1844. type: string
  1845. kind:
  1846. description: |-
  1847. Kind is a string value representing the REST resource this object represents.
  1848. Servers may infer this from the endpoint the client submits requests to.
  1849. Cannot be updated.
  1850. In CamelCase.
  1851. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1852. type: string
  1853. metadata:
  1854. type: object
  1855. spec:
  1856. description: ClusterPushSecretSpec defines the configuration for a ClusterPushSecret resource.
  1857. properties:
  1858. namespaceSelectors:
  1859. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1860. items:
  1861. description: |-
  1862. A label selector is a label query over a set of resources. The result of matchLabels and
  1863. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1864. label selector matches no objects.
  1865. properties:
  1866. matchExpressions:
  1867. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1868. items:
  1869. description: |-
  1870. A label selector requirement is a selector that contains values, a key, and an operator that
  1871. relates the key and values.
  1872. properties:
  1873. key:
  1874. description: key is the label key that the selector applies to.
  1875. type: string
  1876. operator:
  1877. description: |-
  1878. operator represents a key's relationship to a set of values.
  1879. Valid operators are In, NotIn, Exists and DoesNotExist.
  1880. type: string
  1881. values:
  1882. description: |-
  1883. values is an array of string values. If the operator is In or NotIn,
  1884. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1885. the values array must be empty. This array is replaced during a strategic
  1886. merge patch.
  1887. items:
  1888. type: string
  1889. type: array
  1890. x-kubernetes-list-type: atomic
  1891. required:
  1892. - key
  1893. - operator
  1894. type: object
  1895. type: array
  1896. x-kubernetes-list-type: atomic
  1897. matchLabels:
  1898. additionalProperties:
  1899. type: string
  1900. description: |-
  1901. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1902. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1903. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1904. type: object
  1905. type: object
  1906. x-kubernetes-map-type: atomic
  1907. type: array
  1908. pushSecretMetadata:
  1909. description: The metadata of the external secrets to be created
  1910. properties:
  1911. annotations:
  1912. additionalProperties:
  1913. type: string
  1914. type: object
  1915. labels:
  1916. additionalProperties:
  1917. type: string
  1918. type: object
  1919. type: object
  1920. pushSecretName:
  1921. description: |-
  1922. The name of the push secrets to be created.
  1923. Defaults to the name of the ClusterPushSecret
  1924. maxLength: 253
  1925. minLength: 1
  1926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1927. type: string
  1928. pushSecretSpec:
  1929. description: PushSecretSpec defines what to do with the secrets.
  1930. properties:
  1931. data:
  1932. description: Secret Data that should be pushed to providers
  1933. items:
  1934. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  1935. properties:
  1936. conversionStrategy:
  1937. default: None
  1938. description: Used to define a conversion Strategy for the secret keys
  1939. enum:
  1940. - None
  1941. - ReverseUnicode
  1942. type: string
  1943. match:
  1944. description: Match a given Secret Key to be pushed to the provider.
  1945. properties:
  1946. remoteRef:
  1947. description: Remote Refs to push to providers.
  1948. properties:
  1949. property:
  1950. description: Name of the property in the resulting secret
  1951. type: string
  1952. remoteKey:
  1953. description: Name of the resulting provider secret.
  1954. type: string
  1955. required:
  1956. - remoteKey
  1957. type: object
  1958. secretKey:
  1959. description: Secret Key to be pushed
  1960. type: string
  1961. required:
  1962. - remoteRef
  1963. type: object
  1964. metadata:
  1965. description: |-
  1966. Metadata is metadata attached to the secret.
  1967. The structure of metadata is provider specific, please look it up in the provider documentation.
  1968. x-kubernetes-preserve-unknown-fields: true
  1969. required:
  1970. - match
  1971. type: object
  1972. type: array
  1973. dataTo:
  1974. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  1975. items:
  1976. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  1977. properties:
  1978. conversionStrategy:
  1979. default: None
  1980. description: Used to define a conversion Strategy for the secret keys
  1981. enum:
  1982. - None
  1983. - ReverseUnicode
  1984. type: string
  1985. match:
  1986. description: |-
  1987. Match pattern for selecting keys from the source Secret.
  1988. If not specified, all keys are selected.
  1989. properties:
  1990. regexp:
  1991. description: |-
  1992. Regexp matches keys by regular expression.
  1993. If not specified, all keys are matched.
  1994. type: string
  1995. type: object
  1996. metadata:
  1997. description: |-
  1998. Metadata is metadata attached to the secret.
  1999. The structure of metadata is provider specific, please look it up in the provider documentation.
  2000. x-kubernetes-preserve-unknown-fields: true
  2001. remoteKey:
  2002. description: |-
  2003. RemoteKey is the name of the single provider secret that will receive ALL
  2004. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  2005. When set, per-key expansion is skipped and a single push is performed.
  2006. The provider's store prefix (if any) is still prepended to this value.
  2007. When not set, each matched key is pushed as its own individual provider secret.
  2008. type: string
  2009. rewrite:
  2010. description: |-
  2011. Rewrite operations to transform keys before pushing to the provider.
  2012. Operations are applied sequentially.
  2013. items:
  2014. description: PushSecretRewrite defines how to transform secret keys before pushing.
  2015. properties:
  2016. regexp:
  2017. description: Used to rewrite with regular expressions.
  2018. properties:
  2019. source:
  2020. description: Used to define the regular expression of a re.Compiler.
  2021. type: string
  2022. target:
  2023. description: Used to define the target pattern of a ReplaceAll operation.
  2024. type: string
  2025. required:
  2026. - source
  2027. - target
  2028. type: object
  2029. transform:
  2030. description: Used to apply string transformation on the secrets.
  2031. properties:
  2032. template:
  2033. description: |-
  2034. Used to define the template to apply on the secret name.
  2035. `.value ` will specify the secret name in the template.
  2036. type: string
  2037. required:
  2038. - template
  2039. type: object
  2040. type: object
  2041. x-kubernetes-validations:
  2042. - message: exactly one of regexp or transform must be set
  2043. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  2044. type: array
  2045. storeRef:
  2046. description: StoreRef specifies which SecretStore to push to. Required.
  2047. properties:
  2048. kind:
  2049. default: SecretStore
  2050. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  2051. enum:
  2052. - SecretStore
  2053. - ClusterSecretStore
  2054. type: string
  2055. labelSelector:
  2056. description: Optionally, sync to secret stores with label selector
  2057. properties:
  2058. matchExpressions:
  2059. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2060. items:
  2061. description: |-
  2062. A label selector requirement is a selector that contains values, a key, and an operator that
  2063. relates the key and values.
  2064. properties:
  2065. key:
  2066. description: key is the label key that the selector applies to.
  2067. type: string
  2068. operator:
  2069. description: |-
  2070. operator represents a key's relationship to a set of values.
  2071. Valid operators are In, NotIn, Exists and DoesNotExist.
  2072. type: string
  2073. values:
  2074. description: |-
  2075. values is an array of string values. If the operator is In or NotIn,
  2076. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2077. the values array must be empty. This array is replaced during a strategic
  2078. merge patch.
  2079. items:
  2080. type: string
  2081. type: array
  2082. x-kubernetes-list-type: atomic
  2083. required:
  2084. - key
  2085. - operator
  2086. type: object
  2087. type: array
  2088. x-kubernetes-list-type: atomic
  2089. matchLabels:
  2090. additionalProperties:
  2091. type: string
  2092. description: |-
  2093. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2094. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2095. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2096. type: object
  2097. type: object
  2098. x-kubernetes-map-type: atomic
  2099. name:
  2100. description: Optionally, sync to the SecretStore of the given name
  2101. maxLength: 253
  2102. minLength: 1
  2103. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2104. type: string
  2105. type: object
  2106. type: object
  2107. x-kubernetes-validations:
  2108. - message: storeRef must specify either name or labelSelector
  2109. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  2110. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  2111. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  2112. type: array
  2113. deletionPolicy:
  2114. default: None
  2115. description: Deletion Policy to handle Secrets in the provider.
  2116. enum:
  2117. - Delete
  2118. - None
  2119. type: string
  2120. refreshInterval:
  2121. default: 1h0m0s
  2122. description: The Interval to which External Secrets will try to push a secret definition
  2123. type: string
  2124. secretStoreRefs:
  2125. items:
  2126. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  2127. properties:
  2128. apiVersion:
  2129. default: external-secrets.io/v1
  2130. description: APIVersion of the SecretStore resource (external-secrets.io/v1 or secretstore.external-secrets.io/v2alpha1)
  2131. type: string
  2132. kind:
  2133. default: SecretStore
  2134. description: Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider, or ClusterProvider)
  2135. enum:
  2136. - SecretStore
  2137. - ClusterSecretStore
  2138. - Provider
  2139. - ClusterProvider
  2140. type: string
  2141. labelSelector:
  2142. description: Optionally, sync to secret stores with label selector
  2143. properties:
  2144. matchExpressions:
  2145. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2146. items:
  2147. description: |-
  2148. A label selector requirement is a selector that contains values, a key, and an operator that
  2149. relates the key and values.
  2150. properties:
  2151. key:
  2152. description: key is the label key that the selector applies to.
  2153. type: string
  2154. operator:
  2155. description: |-
  2156. operator represents a key's relationship to a set of values.
  2157. Valid operators are In, NotIn, Exists and DoesNotExist.
  2158. type: string
  2159. values:
  2160. description: |-
  2161. values is an array of string values. If the operator is In or NotIn,
  2162. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2163. the values array must be empty. This array is replaced during a strategic
  2164. merge patch.
  2165. items:
  2166. type: string
  2167. type: array
  2168. x-kubernetes-list-type: atomic
  2169. required:
  2170. - key
  2171. - operator
  2172. type: object
  2173. type: array
  2174. x-kubernetes-list-type: atomic
  2175. matchLabels:
  2176. additionalProperties:
  2177. type: string
  2178. description: |-
  2179. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2180. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2181. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2182. type: object
  2183. type: object
  2184. x-kubernetes-map-type: atomic
  2185. name:
  2186. description: Optionally, sync to the SecretStore of the given name
  2187. maxLength: 253
  2188. minLength: 1
  2189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2190. type: string
  2191. type: object
  2192. type: array
  2193. selector:
  2194. description: The Secret Selector (k8s source) for the Push Secret
  2195. maxProperties: 1
  2196. minProperties: 1
  2197. properties:
  2198. generatorRef:
  2199. description: Point to a generator to create a Secret.
  2200. properties:
  2201. apiVersion:
  2202. default: generators.external-secrets.io/v1alpha1
  2203. description: Specify the apiVersion of the generator resource
  2204. type: string
  2205. kind:
  2206. description: Specify the Kind of the generator resource
  2207. enum:
  2208. - ACRAccessToken
  2209. - ClusterGenerator
  2210. - CloudsmithAccessToken
  2211. - ECRAuthorizationToken
  2212. - Fake
  2213. - GCRAccessToken
  2214. - GithubAccessToken
  2215. - QuayAccessToken
  2216. - Password
  2217. - SSHKey
  2218. - STSSessionToken
  2219. - UUID
  2220. - VaultDynamicSecret
  2221. - Webhook
  2222. - Grafana
  2223. - MFA
  2224. type: string
  2225. name:
  2226. description: Specify the name of the generator resource
  2227. maxLength: 253
  2228. minLength: 1
  2229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2230. type: string
  2231. required:
  2232. - kind
  2233. - name
  2234. type: object
  2235. secret:
  2236. description: Select a Secret to Push.
  2237. properties:
  2238. name:
  2239. description: |-
  2240. Name of the Secret.
  2241. The Secret must exist in the same namespace as the PushSecret manifest.
  2242. maxLength: 253
  2243. minLength: 1
  2244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2245. type: string
  2246. selector:
  2247. description: Selector chooses secrets using a labelSelector.
  2248. properties:
  2249. matchExpressions:
  2250. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2251. items:
  2252. description: |-
  2253. A label selector requirement is a selector that contains values, a key, and an operator that
  2254. relates the key and values.
  2255. properties:
  2256. key:
  2257. description: key is the label key that the selector applies to.
  2258. type: string
  2259. operator:
  2260. description: |-
  2261. operator represents a key's relationship to a set of values.
  2262. Valid operators are In, NotIn, Exists and DoesNotExist.
  2263. type: string
  2264. values:
  2265. description: |-
  2266. values is an array of string values. If the operator is In or NotIn,
  2267. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2268. the values array must be empty. This array is replaced during a strategic
  2269. merge patch.
  2270. items:
  2271. type: string
  2272. type: array
  2273. x-kubernetes-list-type: atomic
  2274. required:
  2275. - key
  2276. - operator
  2277. type: object
  2278. type: array
  2279. x-kubernetes-list-type: atomic
  2280. matchLabels:
  2281. additionalProperties:
  2282. type: string
  2283. description: |-
  2284. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2285. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2286. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2287. type: object
  2288. type: object
  2289. x-kubernetes-map-type: atomic
  2290. type: object
  2291. type: object
  2292. template:
  2293. description: Template defines a blueprint for the created Secret resource.
  2294. properties:
  2295. data:
  2296. additionalProperties:
  2297. type: string
  2298. type: object
  2299. engineVersion:
  2300. default: v2
  2301. description: |-
  2302. EngineVersion specifies the template engine version
  2303. that should be used to compile/execute the
  2304. template specified in .data and .templateFrom[].
  2305. enum:
  2306. - v2
  2307. type: string
  2308. mergePolicy:
  2309. default: Replace
  2310. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  2311. enum:
  2312. - Replace
  2313. - Merge
  2314. type: string
  2315. metadata:
  2316. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2317. properties:
  2318. annotations:
  2319. additionalProperties:
  2320. type: string
  2321. type: object
  2322. finalizers:
  2323. items:
  2324. type: string
  2325. type: array
  2326. labels:
  2327. additionalProperties:
  2328. type: string
  2329. type: object
  2330. type: object
  2331. templateFrom:
  2332. items:
  2333. description: |-
  2334. TemplateFrom specifies a source for templates.
  2335. Each item in the list can either reference a ConfigMap or a Secret resource.
  2336. properties:
  2337. configMap:
  2338. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2339. properties:
  2340. items:
  2341. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2342. items:
  2343. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2344. properties:
  2345. key:
  2346. description: A key in the ConfigMap/Secret
  2347. maxLength: 253
  2348. minLength: 1
  2349. pattern: ^[-._a-zA-Z0-9]+$
  2350. type: string
  2351. templateAs:
  2352. default: Values
  2353. description: TemplateScope specifies how the template keys should be interpreted.
  2354. enum:
  2355. - Values
  2356. - KeysAndValues
  2357. type: string
  2358. required:
  2359. - key
  2360. type: object
  2361. type: array
  2362. name:
  2363. description: The name of the ConfigMap/Secret resource
  2364. maxLength: 253
  2365. minLength: 1
  2366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2367. type: string
  2368. required:
  2369. - items
  2370. - name
  2371. type: object
  2372. literal:
  2373. type: string
  2374. secret:
  2375. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2376. properties:
  2377. items:
  2378. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2379. items:
  2380. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2381. properties:
  2382. key:
  2383. description: A key in the ConfigMap/Secret
  2384. maxLength: 253
  2385. minLength: 1
  2386. pattern: ^[-._a-zA-Z0-9]+$
  2387. type: string
  2388. templateAs:
  2389. default: Values
  2390. description: TemplateScope specifies how the template keys should be interpreted.
  2391. enum:
  2392. - Values
  2393. - KeysAndValues
  2394. type: string
  2395. required:
  2396. - key
  2397. type: object
  2398. type: array
  2399. name:
  2400. description: The name of the ConfigMap/Secret resource
  2401. maxLength: 253
  2402. minLength: 1
  2403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2404. type: string
  2405. required:
  2406. - items
  2407. - name
  2408. type: object
  2409. target:
  2410. default: Data
  2411. description: |-
  2412. Target specifies where to place the template result.
  2413. For Secret resources, common values are: "Data", "Annotations", "Labels".
  2414. For custom resources (when spec.target.manifest is set), this supports
  2415. nested paths like "spec.database.config" or "data".
  2416. type: string
  2417. type: object
  2418. type: array
  2419. type:
  2420. type: string
  2421. type: object
  2422. updatePolicy:
  2423. default: Replace
  2424. description: UpdatePolicy to handle Secrets in the provider.
  2425. enum:
  2426. - Replace
  2427. - IfNotExists
  2428. type: string
  2429. required:
  2430. - secretStoreRefs
  2431. - selector
  2432. type: object
  2433. refreshTime:
  2434. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  2435. type: string
  2436. required:
  2437. - pushSecretSpec
  2438. type: object
  2439. status:
  2440. description: ClusterPushSecretStatus contains the status information for the ClusterPushSecret resource.
  2441. properties:
  2442. conditions:
  2443. items:
  2444. description: PushSecretStatusCondition indicates the status of the PushSecret.
  2445. properties:
  2446. lastTransitionTime:
  2447. format: date-time
  2448. type: string
  2449. message:
  2450. type: string
  2451. reason:
  2452. type: string
  2453. status:
  2454. type: string
  2455. type:
  2456. description: PushSecretConditionType indicates the condition of the PushSecret.
  2457. type: string
  2458. required:
  2459. - status
  2460. - type
  2461. type: object
  2462. type: array
  2463. failedNamespaces:
  2464. description: Failed namespaces are the namespaces that failed to apply an PushSecret
  2465. items:
  2466. description: ClusterPushSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  2467. properties:
  2468. namespace:
  2469. description: Namespace is the namespace that failed when trying to apply an PushSecret
  2470. type: string
  2471. reason:
  2472. description: Reason is why the PushSecret failed to apply to the namespace
  2473. type: string
  2474. required:
  2475. - namespace
  2476. type: object
  2477. type: array
  2478. provisionedNamespaces:
  2479. description: ProvisionedNamespaces are the namespaces where the ClusterPushSecret has secrets
  2480. items:
  2481. type: string
  2482. type: array
  2483. pushSecretName:
  2484. type: string
  2485. type: object
  2486. type: object
  2487. served: true
  2488. storage: true
  2489. subresources:
  2490. status: {}
  2491. ---
  2492. apiVersion: apiextensions.k8s.io/v1
  2493. kind: CustomResourceDefinition
  2494. metadata:
  2495. annotations:
  2496. controller-gen.kubebuilder.io/version: v0.19.0
  2497. labels:
  2498. external-secrets.io/component: controller
  2499. name: clustersecretstores.external-secrets.io
  2500. spec:
  2501. group: external-secrets.io
  2502. names:
  2503. categories:
  2504. - external-secrets
  2505. kind: ClusterSecretStore
  2506. listKind: ClusterSecretStoreList
  2507. plural: clustersecretstores
  2508. shortNames:
  2509. - css
  2510. singular: clustersecretstore
  2511. scope: Cluster
  2512. versions:
  2513. - additionalPrinterColumns:
  2514. - jsonPath: .metadata.creationTimestamp
  2515. name: AGE
  2516. type: date
  2517. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2518. name: Status
  2519. type: string
  2520. - jsonPath: .status.capabilities
  2521. name: Capabilities
  2522. type: string
  2523. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2524. name: Ready
  2525. type: string
  2526. name: v1
  2527. schema:
  2528. openAPIV3Schema:
  2529. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2530. properties:
  2531. apiVersion:
  2532. description: |-
  2533. APIVersion defines the versioned schema of this representation of an object.
  2534. Servers should convert recognized schemas to the latest internal value, and
  2535. may reject unrecognized values.
  2536. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2537. type: string
  2538. kind:
  2539. description: |-
  2540. Kind is a string value representing the REST resource this object represents.
  2541. Servers may infer this from the endpoint the client submits requests to.
  2542. Cannot be updated.
  2543. In CamelCase.
  2544. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2545. type: string
  2546. metadata:
  2547. type: object
  2548. spec:
  2549. description: SecretStoreSpec defines the desired state of SecretStore.
  2550. properties:
  2551. conditions:
  2552. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  2553. items:
  2554. description: |-
  2555. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2556. for a ClusterSecretStore instance.
  2557. properties:
  2558. namespaceRegexes:
  2559. description: Choose namespaces by using regex matching
  2560. items:
  2561. type: string
  2562. type: array
  2563. namespaceSelector:
  2564. description: Choose namespace using a labelSelector
  2565. properties:
  2566. matchExpressions:
  2567. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2568. items:
  2569. description: |-
  2570. A label selector requirement is a selector that contains values, a key, and an operator that
  2571. relates the key and values.
  2572. properties:
  2573. key:
  2574. description: key is the label key that the selector applies to.
  2575. type: string
  2576. operator:
  2577. description: |-
  2578. operator represents a key's relationship to a set of values.
  2579. Valid operators are In, NotIn, Exists and DoesNotExist.
  2580. type: string
  2581. values:
  2582. description: |-
  2583. values is an array of string values. If the operator is In or NotIn,
  2584. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2585. the values array must be empty. This array is replaced during a strategic
  2586. merge patch.
  2587. items:
  2588. type: string
  2589. type: array
  2590. x-kubernetes-list-type: atomic
  2591. required:
  2592. - key
  2593. - operator
  2594. type: object
  2595. type: array
  2596. x-kubernetes-list-type: atomic
  2597. matchLabels:
  2598. additionalProperties:
  2599. type: string
  2600. description: |-
  2601. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2602. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2603. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2604. type: object
  2605. type: object
  2606. x-kubernetes-map-type: atomic
  2607. namespaces:
  2608. description: Choose namespaces by name
  2609. items:
  2610. maxLength: 63
  2611. minLength: 1
  2612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2613. type: string
  2614. type: array
  2615. type: object
  2616. type: array
  2617. controller:
  2618. description: |-
  2619. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2620. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2621. type: string
  2622. provider:
  2623. description: Used to configure the provider. Only one provider may be set
  2624. maxProperties: 1
  2625. minProperties: 1
  2626. properties:
  2627. akeyless:
  2628. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2629. properties:
  2630. akeylessGWApiURL:
  2631. description: Akeyless GW API Url from which the secrets to be fetched from.
  2632. type: string
  2633. authSecretRef:
  2634. description: Auth configures how the operator authenticates with Akeyless.
  2635. properties:
  2636. kubernetesAuth:
  2637. description: |-
  2638. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2639. token stored in the named Secret resource.
  2640. properties:
  2641. accessID:
  2642. description: the Akeyless Kubernetes auth-method access-id
  2643. type: string
  2644. k8sConfName:
  2645. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2646. type: string
  2647. secretRef:
  2648. description: |-
  2649. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2650. for authenticating with Akeyless. If a name is specified without a key,
  2651. `token` is the default. If one is not specified, the one bound to
  2652. the controller will be used.
  2653. properties:
  2654. key:
  2655. description: |-
  2656. A key in the referenced Secret.
  2657. Some instances of this field may be defaulted, in others it may be required.
  2658. maxLength: 253
  2659. minLength: 1
  2660. pattern: ^[-._a-zA-Z0-9]+$
  2661. type: string
  2662. name:
  2663. description: The name of the Secret resource being referred to.
  2664. maxLength: 253
  2665. minLength: 1
  2666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2667. type: string
  2668. namespace:
  2669. description: |-
  2670. The namespace of the Secret resource being referred to.
  2671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2672. maxLength: 63
  2673. minLength: 1
  2674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2675. type: string
  2676. type: object
  2677. serviceAccountRef:
  2678. description: |-
  2679. Optional service account field containing the name of a kubernetes ServiceAccount.
  2680. If the service account is specified, the service account secret token JWT will be used
  2681. for authenticating with Akeyless. If the service account selector is not supplied,
  2682. the secretRef will be used instead.
  2683. properties:
  2684. audiences:
  2685. description: |-
  2686. Audience specifies the `aud` claim for the service account token
  2687. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2688. then this audiences will be appended to the list
  2689. items:
  2690. type: string
  2691. type: array
  2692. name:
  2693. description: The name of the ServiceAccount resource being referred to.
  2694. maxLength: 253
  2695. minLength: 1
  2696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2697. type: string
  2698. namespace:
  2699. description: |-
  2700. Namespace of the resource being referred to.
  2701. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2702. maxLength: 63
  2703. minLength: 1
  2704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2705. type: string
  2706. required:
  2707. - name
  2708. type: object
  2709. required:
  2710. - accessID
  2711. - k8sConfName
  2712. type: object
  2713. secretRef:
  2714. description: |-
  2715. Reference to a Secret that contains the details
  2716. to authenticate with Akeyless.
  2717. properties:
  2718. accessID:
  2719. description: The SecretAccessID is used for authentication
  2720. properties:
  2721. key:
  2722. description: |-
  2723. A key in the referenced Secret.
  2724. Some instances of this field may be defaulted, in others it may be required.
  2725. maxLength: 253
  2726. minLength: 1
  2727. pattern: ^[-._a-zA-Z0-9]+$
  2728. type: string
  2729. name:
  2730. description: The name of the Secret resource being referred to.
  2731. maxLength: 253
  2732. minLength: 1
  2733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2734. type: string
  2735. namespace:
  2736. description: |-
  2737. The namespace of the Secret resource being referred to.
  2738. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2739. maxLength: 63
  2740. minLength: 1
  2741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2742. type: string
  2743. type: object
  2744. accessType:
  2745. description: |-
  2746. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2747. In some instances, `key` is a required field.
  2748. properties:
  2749. key:
  2750. description: |-
  2751. A key in the referenced Secret.
  2752. Some instances of this field may be defaulted, in others it may be required.
  2753. maxLength: 253
  2754. minLength: 1
  2755. pattern: ^[-._a-zA-Z0-9]+$
  2756. type: string
  2757. name:
  2758. description: The name of the Secret resource being referred to.
  2759. maxLength: 253
  2760. minLength: 1
  2761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2762. type: string
  2763. namespace:
  2764. description: |-
  2765. The namespace of the Secret resource being referred to.
  2766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2767. maxLength: 63
  2768. minLength: 1
  2769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2770. type: string
  2771. type: object
  2772. accessTypeParam:
  2773. description: |-
  2774. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2775. In some instances, `key` is a required field.
  2776. properties:
  2777. key:
  2778. description: |-
  2779. A key in the referenced Secret.
  2780. Some instances of this field may be defaulted, in others it may be required.
  2781. maxLength: 253
  2782. minLength: 1
  2783. pattern: ^[-._a-zA-Z0-9]+$
  2784. type: string
  2785. name:
  2786. description: The name of the Secret resource being referred to.
  2787. maxLength: 253
  2788. minLength: 1
  2789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2790. type: string
  2791. namespace:
  2792. description: |-
  2793. The namespace of the Secret resource being referred to.
  2794. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2795. maxLength: 63
  2796. minLength: 1
  2797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2798. type: string
  2799. type: object
  2800. type: object
  2801. type: object
  2802. caBundle:
  2803. description: |-
  2804. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2805. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2806. are used to validate the TLS connection.
  2807. format: byte
  2808. type: string
  2809. caProvider:
  2810. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2811. properties:
  2812. key:
  2813. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2814. maxLength: 253
  2815. minLength: 1
  2816. pattern: ^[-._a-zA-Z0-9]+$
  2817. type: string
  2818. name:
  2819. description: The name of the object located at the provider type.
  2820. maxLength: 253
  2821. minLength: 1
  2822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2823. type: string
  2824. namespace:
  2825. description: |-
  2826. The namespace the Provider type is in.
  2827. Can only be defined when used in a ClusterSecretStore.
  2828. maxLength: 63
  2829. minLength: 1
  2830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2831. type: string
  2832. type:
  2833. description: The type of provider to use such as "Secret", or "ConfigMap".
  2834. enum:
  2835. - Secret
  2836. - ConfigMap
  2837. type: string
  2838. required:
  2839. - name
  2840. - type
  2841. type: object
  2842. required:
  2843. - akeylessGWApiURL
  2844. - authSecretRef
  2845. type: object
  2846. aws:
  2847. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2848. properties:
  2849. additionalRoles:
  2850. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2851. items:
  2852. type: string
  2853. type: array
  2854. auth:
  2855. description: |-
  2856. Auth defines the information necessary to authenticate against AWS
  2857. if not set aws sdk will infer credentials from your environment
  2858. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2859. properties:
  2860. jwt:
  2861. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  2862. properties:
  2863. serviceAccountRef:
  2864. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  2865. properties:
  2866. audiences:
  2867. description: |-
  2868. Audience specifies the `aud` claim for the service account token
  2869. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2870. then this audiences will be appended to the list
  2871. items:
  2872. type: string
  2873. type: array
  2874. name:
  2875. description: The name of the ServiceAccount resource being referred to.
  2876. maxLength: 253
  2877. minLength: 1
  2878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2879. type: string
  2880. namespace:
  2881. description: |-
  2882. Namespace of the resource being referred to.
  2883. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2884. maxLength: 63
  2885. minLength: 1
  2886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2887. type: string
  2888. required:
  2889. - name
  2890. type: object
  2891. type: object
  2892. secretRef:
  2893. description: |-
  2894. AWSAuthSecretRef holds secret references for AWS credentials
  2895. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2896. properties:
  2897. accessKeyIDSecretRef:
  2898. description: The AccessKeyID is used for authentication
  2899. properties:
  2900. key:
  2901. description: |-
  2902. A key in the referenced Secret.
  2903. Some instances of this field may be defaulted, in others it may be required.
  2904. maxLength: 253
  2905. minLength: 1
  2906. pattern: ^[-._a-zA-Z0-9]+$
  2907. type: string
  2908. name:
  2909. description: The name of the Secret resource being referred to.
  2910. maxLength: 253
  2911. minLength: 1
  2912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2913. type: string
  2914. namespace:
  2915. description: |-
  2916. The namespace of the Secret resource being referred to.
  2917. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2918. maxLength: 63
  2919. minLength: 1
  2920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2921. type: string
  2922. type: object
  2923. secretAccessKeySecretRef:
  2924. description: The SecretAccessKey is used for authentication
  2925. properties:
  2926. key:
  2927. description: |-
  2928. A key in the referenced Secret.
  2929. Some instances of this field may be defaulted, in others it may be required.
  2930. maxLength: 253
  2931. minLength: 1
  2932. pattern: ^[-._a-zA-Z0-9]+$
  2933. type: string
  2934. name:
  2935. description: The name of the Secret resource being referred to.
  2936. maxLength: 253
  2937. minLength: 1
  2938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2939. type: string
  2940. namespace:
  2941. description: |-
  2942. The namespace of the Secret resource being referred to.
  2943. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2944. maxLength: 63
  2945. minLength: 1
  2946. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2947. type: string
  2948. type: object
  2949. sessionTokenSecretRef:
  2950. description: |-
  2951. The SessionToken used for authentication
  2952. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2953. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2954. properties:
  2955. key:
  2956. description: |-
  2957. A key in the referenced Secret.
  2958. Some instances of this field may be defaulted, in others it may be required.
  2959. maxLength: 253
  2960. minLength: 1
  2961. pattern: ^[-._a-zA-Z0-9]+$
  2962. type: string
  2963. name:
  2964. description: The name of the Secret resource being referred to.
  2965. maxLength: 253
  2966. minLength: 1
  2967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2968. type: string
  2969. namespace:
  2970. description: |-
  2971. The namespace of the Secret resource being referred to.
  2972. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2973. maxLength: 63
  2974. minLength: 1
  2975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2976. type: string
  2977. type: object
  2978. type: object
  2979. type: object
  2980. externalID:
  2981. description: AWS External ID set on assumed IAM roles
  2982. type: string
  2983. prefix:
  2984. description: Prefix adds a prefix to all retrieved values.
  2985. type: string
  2986. region:
  2987. description: AWS Region to be used for the provider
  2988. type: string
  2989. role:
  2990. description: Role is a Role ARN which the provider will assume
  2991. type: string
  2992. secretsManager:
  2993. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2994. properties:
  2995. forceDeleteWithoutRecovery:
  2996. description: |-
  2997. Specifies whether to delete the secret without any recovery window. You
  2998. can't use both this parameter and RecoveryWindowInDays in the same call.
  2999. If you don't use either, then by default Secrets Manager uses a 30 day
  3000. recovery window.
  3001. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  3002. type: boolean
  3003. recoveryWindowInDays:
  3004. description: |-
  3005. The number of days from 7 to 30 that Secrets Manager waits before
  3006. permanently deleting the secret. You can't use both this parameter and
  3007. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  3008. then by default Secrets Manager uses a 30-day recovery window.
  3009. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  3010. type: integer
  3011. type: object
  3012. service:
  3013. description: Service defines which service should be used to fetch the secrets
  3014. enum:
  3015. - SecretsManager
  3016. - ParameterStore
  3017. type: string
  3018. sessionTags:
  3019. description: AWS STS assume role session tags
  3020. items:
  3021. description: |-
  3022. Tag is a key-value pair that can be attached to an AWS resource.
  3023. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  3024. properties:
  3025. key:
  3026. type: string
  3027. value:
  3028. type: string
  3029. required:
  3030. - key
  3031. - value
  3032. type: object
  3033. type: array
  3034. transitiveTagKeys:
  3035. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  3036. items:
  3037. type: string
  3038. type: array
  3039. required:
  3040. - region
  3041. - service
  3042. type: object
  3043. azurekv:
  3044. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  3045. properties:
  3046. authSecretRef:
  3047. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3048. properties:
  3049. clientCertificate:
  3050. description: The Azure ClientCertificate of the service principle used for authentication.
  3051. properties:
  3052. key:
  3053. description: |-
  3054. A key in the referenced Secret.
  3055. Some instances of this field may be defaulted, in others it may be required.
  3056. maxLength: 253
  3057. minLength: 1
  3058. pattern: ^[-._a-zA-Z0-9]+$
  3059. type: string
  3060. name:
  3061. description: The name of the Secret resource being referred to.
  3062. maxLength: 253
  3063. minLength: 1
  3064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3065. type: string
  3066. namespace:
  3067. description: |-
  3068. The namespace of the Secret resource being referred to.
  3069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3070. maxLength: 63
  3071. minLength: 1
  3072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3073. type: string
  3074. type: object
  3075. clientId:
  3076. description: The Azure clientId of the service principle or managed identity used for authentication.
  3077. properties:
  3078. key:
  3079. description: |-
  3080. A key in the referenced Secret.
  3081. Some instances of this field may be defaulted, in others it may be required.
  3082. maxLength: 253
  3083. minLength: 1
  3084. pattern: ^[-._a-zA-Z0-9]+$
  3085. type: string
  3086. name:
  3087. description: The name of the Secret resource being referred to.
  3088. maxLength: 253
  3089. minLength: 1
  3090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3091. type: string
  3092. namespace:
  3093. description: |-
  3094. The namespace of the Secret resource being referred to.
  3095. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3096. maxLength: 63
  3097. minLength: 1
  3098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3099. type: string
  3100. type: object
  3101. clientSecret:
  3102. description: The Azure ClientSecret of the service principle used for authentication.
  3103. properties:
  3104. key:
  3105. description: |-
  3106. A key in the referenced Secret.
  3107. Some instances of this field may be defaulted, in others it may be required.
  3108. maxLength: 253
  3109. minLength: 1
  3110. pattern: ^[-._a-zA-Z0-9]+$
  3111. type: string
  3112. name:
  3113. description: The name of the Secret resource being referred to.
  3114. maxLength: 253
  3115. minLength: 1
  3116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3117. type: string
  3118. namespace:
  3119. description: |-
  3120. The namespace of the Secret resource being referred to.
  3121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3122. maxLength: 63
  3123. minLength: 1
  3124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3125. type: string
  3126. type: object
  3127. tenantId:
  3128. description: The Azure tenantId of the managed identity used for authentication.
  3129. properties:
  3130. key:
  3131. description: |-
  3132. A key in the referenced Secret.
  3133. Some instances of this field may be defaulted, in others it may be required.
  3134. maxLength: 253
  3135. minLength: 1
  3136. pattern: ^[-._a-zA-Z0-9]+$
  3137. type: string
  3138. name:
  3139. description: The name of the Secret resource being referred to.
  3140. maxLength: 253
  3141. minLength: 1
  3142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3143. type: string
  3144. namespace:
  3145. description: |-
  3146. The namespace of the Secret resource being referred to.
  3147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3148. maxLength: 63
  3149. minLength: 1
  3150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3151. type: string
  3152. type: object
  3153. type: object
  3154. authType:
  3155. default: ServicePrincipal
  3156. description: |-
  3157. Auth type defines how to authenticate to the keyvault service.
  3158. Valid values are:
  3159. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  3160. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  3161. enum:
  3162. - ServicePrincipal
  3163. - ManagedIdentity
  3164. - WorkloadIdentity
  3165. type: string
  3166. customCloudConfig:
  3167. description: |-
  3168. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  3169. Required when EnvironmentType is AzureStackCloud.
  3170. Optional for other environment types - useful for Azure China when using Workload Identity
  3171. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  3172. standard China Cloud endpoint (login.chinacloudapi.cn).
  3173. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  3174. configuration is not supported with the legacy go-autorest SDK.
  3175. properties:
  3176. activeDirectoryEndpoint:
  3177. description: |-
  3178. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  3179. Required when using custom cloud configuration
  3180. type: string
  3181. keyVaultDNSSuffix:
  3182. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  3183. type: string
  3184. keyVaultEndpoint:
  3185. description: KeyVaultEndpoint is the Key Vault service endpoint
  3186. type: string
  3187. resourceManagerEndpoint:
  3188. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  3189. type: string
  3190. required:
  3191. - activeDirectoryEndpoint
  3192. type: object
  3193. environmentType:
  3194. default: PublicCloud
  3195. description: |-
  3196. EnvironmentType specifies the Azure cloud environment endpoints to use for
  3197. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  3198. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  3199. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  3200. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  3201. enum:
  3202. - PublicCloud
  3203. - USGovernmentCloud
  3204. - ChinaCloud
  3205. - GermanCloud
  3206. - AzureStackCloud
  3207. type: string
  3208. identityId:
  3209. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3210. type: string
  3211. serviceAccountRef:
  3212. description: |-
  3213. ServiceAccountRef specified the service account
  3214. that should be used when authenticating with WorkloadIdentity.
  3215. properties:
  3216. audiences:
  3217. description: |-
  3218. Audience specifies the `aud` claim for the service account token
  3219. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3220. then this audiences will be appended to the list
  3221. items:
  3222. type: string
  3223. type: array
  3224. name:
  3225. description: The name of the ServiceAccount resource being referred to.
  3226. maxLength: 253
  3227. minLength: 1
  3228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3229. type: string
  3230. namespace:
  3231. description: |-
  3232. Namespace of the resource being referred to.
  3233. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3234. maxLength: 63
  3235. minLength: 1
  3236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3237. type: string
  3238. required:
  3239. - name
  3240. type: object
  3241. tenantId:
  3242. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3243. type: string
  3244. useAzureSDK:
  3245. default: false
  3246. description: |-
  3247. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3248. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3249. type: boolean
  3250. vaultUrl:
  3251. description: Vault Url from which the secrets to be fetched from.
  3252. type: string
  3253. required:
  3254. - vaultUrl
  3255. type: object
  3256. barbican:
  3257. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3258. properties:
  3259. auth:
  3260. description: BarbicanAuth contains the authentication information for Barbican.
  3261. properties:
  3262. password:
  3263. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3264. properties:
  3265. secretRef:
  3266. description: |-
  3267. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3268. In some instances, `key` is a required field.
  3269. properties:
  3270. key:
  3271. description: |-
  3272. A key in the referenced Secret.
  3273. Some instances of this field may be defaulted, in others it may be required.
  3274. maxLength: 253
  3275. minLength: 1
  3276. pattern: ^[-._a-zA-Z0-9]+$
  3277. type: string
  3278. name:
  3279. description: The name of the Secret resource being referred to.
  3280. maxLength: 253
  3281. minLength: 1
  3282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3283. type: string
  3284. namespace:
  3285. description: |-
  3286. The namespace of the Secret resource being referred to.
  3287. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3288. maxLength: 63
  3289. minLength: 1
  3290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3291. type: string
  3292. type: object
  3293. required:
  3294. - secretRef
  3295. type: object
  3296. username:
  3297. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3298. maxProperties: 1
  3299. minProperties: 1
  3300. properties:
  3301. secretRef:
  3302. description: |-
  3303. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3304. In some instances, `key` is a required field.
  3305. properties:
  3306. key:
  3307. description: |-
  3308. A key in the referenced Secret.
  3309. Some instances of this field may be defaulted, in others it may be required.
  3310. maxLength: 253
  3311. minLength: 1
  3312. pattern: ^[-._a-zA-Z0-9]+$
  3313. type: string
  3314. name:
  3315. description: The name of the Secret resource being referred to.
  3316. maxLength: 253
  3317. minLength: 1
  3318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3319. type: string
  3320. namespace:
  3321. description: |-
  3322. The namespace of the Secret resource being referred to.
  3323. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3324. maxLength: 63
  3325. minLength: 1
  3326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3327. type: string
  3328. type: object
  3329. value:
  3330. type: string
  3331. type: object
  3332. required:
  3333. - password
  3334. - username
  3335. type: object
  3336. authURL:
  3337. type: string
  3338. domainName:
  3339. type: string
  3340. region:
  3341. type: string
  3342. tenantName:
  3343. type: string
  3344. required:
  3345. - auth
  3346. type: object
  3347. beyondtrust:
  3348. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3349. properties:
  3350. auth:
  3351. description: Auth configures how the operator authenticates with Beyondtrust.
  3352. properties:
  3353. apiKey:
  3354. description: APIKey If not provided then ClientID/ClientSecret become required.
  3355. properties:
  3356. secretRef:
  3357. description: SecretRef references a key in a secret that will be used as value.
  3358. properties:
  3359. key:
  3360. description: |-
  3361. A key in the referenced Secret.
  3362. Some instances of this field may be defaulted, in others it may be required.
  3363. maxLength: 253
  3364. minLength: 1
  3365. pattern: ^[-._a-zA-Z0-9]+$
  3366. type: string
  3367. name:
  3368. description: The name of the Secret resource being referred to.
  3369. maxLength: 253
  3370. minLength: 1
  3371. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3372. type: string
  3373. namespace:
  3374. description: |-
  3375. The namespace of the Secret resource being referred to.
  3376. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3377. maxLength: 63
  3378. minLength: 1
  3379. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3380. type: string
  3381. type: object
  3382. value:
  3383. description: Value can be specified directly to set a value without using a secret.
  3384. type: string
  3385. type: object
  3386. certificate:
  3387. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3388. properties:
  3389. secretRef:
  3390. description: SecretRef references a key in a secret that will be used as value.
  3391. properties:
  3392. key:
  3393. description: |-
  3394. A key in the referenced Secret.
  3395. Some instances of this field may be defaulted, in others it may be required.
  3396. maxLength: 253
  3397. minLength: 1
  3398. pattern: ^[-._a-zA-Z0-9]+$
  3399. type: string
  3400. name:
  3401. description: The name of the Secret resource being referred to.
  3402. maxLength: 253
  3403. minLength: 1
  3404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3405. type: string
  3406. namespace:
  3407. description: |-
  3408. The namespace of the Secret resource being referred to.
  3409. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3410. maxLength: 63
  3411. minLength: 1
  3412. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3413. type: string
  3414. type: object
  3415. value:
  3416. description: Value can be specified directly to set a value without using a secret.
  3417. type: string
  3418. type: object
  3419. certificateKey:
  3420. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3421. properties:
  3422. secretRef:
  3423. description: SecretRef references a key in a secret that will be used as value.
  3424. properties:
  3425. key:
  3426. description: |-
  3427. A key in the referenced Secret.
  3428. Some instances of this field may be defaulted, in others it may be required.
  3429. maxLength: 253
  3430. minLength: 1
  3431. pattern: ^[-._a-zA-Z0-9]+$
  3432. type: string
  3433. name:
  3434. description: The name of the Secret resource being referred to.
  3435. maxLength: 253
  3436. minLength: 1
  3437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3438. type: string
  3439. namespace:
  3440. description: |-
  3441. The namespace of the Secret resource being referred to.
  3442. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3443. maxLength: 63
  3444. minLength: 1
  3445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3446. type: string
  3447. type: object
  3448. value:
  3449. description: Value can be specified directly to set a value without using a secret.
  3450. type: string
  3451. type: object
  3452. clientId:
  3453. description: ClientID is the API OAuth Client ID.
  3454. properties:
  3455. secretRef:
  3456. description: SecretRef references a key in a secret that will be used as value.
  3457. properties:
  3458. key:
  3459. description: |-
  3460. A key in the referenced Secret.
  3461. Some instances of this field may be defaulted, in others it may be required.
  3462. maxLength: 253
  3463. minLength: 1
  3464. pattern: ^[-._a-zA-Z0-9]+$
  3465. type: string
  3466. name:
  3467. description: The name of the Secret resource being referred to.
  3468. maxLength: 253
  3469. minLength: 1
  3470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3471. type: string
  3472. namespace:
  3473. description: |-
  3474. The namespace of the Secret resource being referred to.
  3475. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3476. maxLength: 63
  3477. minLength: 1
  3478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3479. type: string
  3480. type: object
  3481. value:
  3482. description: Value can be specified directly to set a value without using a secret.
  3483. type: string
  3484. type: object
  3485. clientSecret:
  3486. description: ClientSecret is the API OAuth Client Secret.
  3487. properties:
  3488. secretRef:
  3489. description: SecretRef references a key in a secret that will be used as value.
  3490. properties:
  3491. key:
  3492. description: |-
  3493. A key in the referenced Secret.
  3494. Some instances of this field may be defaulted, in others it may be required.
  3495. maxLength: 253
  3496. minLength: 1
  3497. pattern: ^[-._a-zA-Z0-9]+$
  3498. type: string
  3499. name:
  3500. description: The name of the Secret resource being referred to.
  3501. maxLength: 253
  3502. minLength: 1
  3503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3504. type: string
  3505. namespace:
  3506. description: |-
  3507. The namespace of the Secret resource being referred to.
  3508. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3509. maxLength: 63
  3510. minLength: 1
  3511. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3512. type: string
  3513. type: object
  3514. value:
  3515. description: Value can be specified directly to set a value without using a secret.
  3516. type: string
  3517. type: object
  3518. type: object
  3519. server:
  3520. description: Auth configures how API server works.
  3521. properties:
  3522. apiUrl:
  3523. type: string
  3524. apiVersion:
  3525. type: string
  3526. clientTimeOutSeconds:
  3527. 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.
  3528. type: integer
  3529. decrypt:
  3530. default: true
  3531. 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.'
  3532. type: boolean
  3533. retrievalType:
  3534. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3535. type: string
  3536. separator:
  3537. description: A character that separates the folder names.
  3538. type: string
  3539. verifyCA:
  3540. type: boolean
  3541. required:
  3542. - apiUrl
  3543. - verifyCA
  3544. type: object
  3545. required:
  3546. - auth
  3547. - server
  3548. type: object
  3549. bitwardensecretsmanager:
  3550. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3551. properties:
  3552. apiURL:
  3553. type: string
  3554. auth:
  3555. description: |-
  3556. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3557. Make sure that the token being used has permissions on the given secret.
  3558. properties:
  3559. secretRef:
  3560. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3561. properties:
  3562. credentials:
  3563. description: AccessToken used for the bitwarden instance.
  3564. properties:
  3565. key:
  3566. description: |-
  3567. A key in the referenced Secret.
  3568. Some instances of this field may be defaulted, in others it may be required.
  3569. maxLength: 253
  3570. minLength: 1
  3571. pattern: ^[-._a-zA-Z0-9]+$
  3572. type: string
  3573. name:
  3574. description: The name of the Secret resource being referred to.
  3575. maxLength: 253
  3576. minLength: 1
  3577. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3578. type: string
  3579. namespace:
  3580. description: |-
  3581. The namespace of the Secret resource being referred to.
  3582. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3583. maxLength: 63
  3584. minLength: 1
  3585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3586. type: string
  3587. type: object
  3588. required:
  3589. - credentials
  3590. type: object
  3591. required:
  3592. - secretRef
  3593. type: object
  3594. bitwardenServerSDKURL:
  3595. type: string
  3596. caBundle:
  3597. description: |-
  3598. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3599. can be performed.
  3600. type: string
  3601. caProvider:
  3602. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3603. properties:
  3604. key:
  3605. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3606. maxLength: 253
  3607. minLength: 1
  3608. pattern: ^[-._a-zA-Z0-9]+$
  3609. type: string
  3610. name:
  3611. description: The name of the object located at the provider type.
  3612. maxLength: 253
  3613. minLength: 1
  3614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3615. type: string
  3616. namespace:
  3617. description: |-
  3618. The namespace the Provider type is in.
  3619. Can only be defined when used in a ClusterSecretStore.
  3620. maxLength: 63
  3621. minLength: 1
  3622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3623. type: string
  3624. type:
  3625. description: The type of provider to use such as "Secret", or "ConfigMap".
  3626. enum:
  3627. - Secret
  3628. - ConfigMap
  3629. type: string
  3630. required:
  3631. - name
  3632. - type
  3633. type: object
  3634. identityURL:
  3635. type: string
  3636. organizationID:
  3637. description: OrganizationID determines which organization this secret store manages.
  3638. type: string
  3639. projectID:
  3640. description: ProjectID determines which project this secret store manages.
  3641. type: string
  3642. required:
  3643. - auth
  3644. - organizationID
  3645. - projectID
  3646. type: object
  3647. chef:
  3648. description: Chef configures this store to sync secrets with chef server
  3649. properties:
  3650. auth:
  3651. description: Auth defines the information necessary to authenticate against chef Server
  3652. properties:
  3653. secretRef:
  3654. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3655. properties:
  3656. privateKeySecretRef:
  3657. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3658. properties:
  3659. key:
  3660. description: |-
  3661. A key in the referenced Secret.
  3662. Some instances of this field may be defaulted, in others it may be required.
  3663. maxLength: 253
  3664. minLength: 1
  3665. pattern: ^[-._a-zA-Z0-9]+$
  3666. type: string
  3667. name:
  3668. description: The name of the Secret resource being referred to.
  3669. maxLength: 253
  3670. minLength: 1
  3671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3672. type: string
  3673. namespace:
  3674. description: |-
  3675. The namespace of the Secret resource being referred to.
  3676. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3677. maxLength: 63
  3678. minLength: 1
  3679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3680. type: string
  3681. type: object
  3682. required:
  3683. - privateKeySecretRef
  3684. type: object
  3685. required:
  3686. - secretRef
  3687. type: object
  3688. serverUrl:
  3689. 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 "/"
  3690. type: string
  3691. username:
  3692. description: UserName should be the user ID on the chef server
  3693. type: string
  3694. required:
  3695. - auth
  3696. - serverUrl
  3697. - username
  3698. type: object
  3699. cloudrusm:
  3700. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3701. properties:
  3702. auth:
  3703. description: CSMAuth contains a secretRef for credentials.
  3704. properties:
  3705. secretRef:
  3706. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3707. properties:
  3708. accessKeyIDSecretRef:
  3709. description: The AccessKeyID is used for authentication
  3710. properties:
  3711. key:
  3712. description: |-
  3713. A key in the referenced Secret.
  3714. Some instances of this field may be defaulted, in others it may be required.
  3715. maxLength: 253
  3716. minLength: 1
  3717. pattern: ^[-._a-zA-Z0-9]+$
  3718. type: string
  3719. name:
  3720. description: The name of the Secret resource being referred to.
  3721. maxLength: 253
  3722. minLength: 1
  3723. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3724. type: string
  3725. namespace:
  3726. description: |-
  3727. The namespace of the Secret resource being referred to.
  3728. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3729. maxLength: 63
  3730. minLength: 1
  3731. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3732. type: string
  3733. type: object
  3734. accessKeySecretSecretRef:
  3735. description: The AccessKeySecret is used for authentication
  3736. properties:
  3737. key:
  3738. description: |-
  3739. A key in the referenced Secret.
  3740. Some instances of this field may be defaulted, in others it may be required.
  3741. maxLength: 253
  3742. minLength: 1
  3743. pattern: ^[-._a-zA-Z0-9]+$
  3744. type: string
  3745. name:
  3746. description: The name of the Secret resource being referred to.
  3747. maxLength: 253
  3748. minLength: 1
  3749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3750. type: string
  3751. namespace:
  3752. description: |-
  3753. The namespace of the Secret resource being referred to.
  3754. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3755. maxLength: 63
  3756. minLength: 1
  3757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3758. type: string
  3759. type: object
  3760. required:
  3761. - accessKeyIDSecretRef
  3762. - accessKeySecretSecretRef
  3763. type: object
  3764. type: object
  3765. projectID:
  3766. description: ProjectID is the project, which the secrets are stored in.
  3767. type: string
  3768. required:
  3769. - auth
  3770. type: object
  3771. conjur:
  3772. description: Conjur configures this store to sync secrets using conjur provider
  3773. properties:
  3774. auth:
  3775. description: Defines authentication settings for connecting to Conjur.
  3776. properties:
  3777. apikey:
  3778. description: Authenticates with Conjur using an API key.
  3779. properties:
  3780. account:
  3781. description: Account is the Conjur organization account name.
  3782. type: string
  3783. apiKeyRef:
  3784. description: |-
  3785. A reference to a specific 'key' containing the Conjur API key
  3786. within a Secret resource. In some instances, `key` is a required field.
  3787. properties:
  3788. key:
  3789. description: |-
  3790. A key in the referenced Secret.
  3791. Some instances of this field may be defaulted, in others it may be required.
  3792. maxLength: 253
  3793. minLength: 1
  3794. pattern: ^[-._a-zA-Z0-9]+$
  3795. type: string
  3796. name:
  3797. description: The name of the Secret resource being referred to.
  3798. maxLength: 253
  3799. minLength: 1
  3800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3801. type: string
  3802. namespace:
  3803. description: |-
  3804. The namespace of the Secret resource being referred to.
  3805. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3806. maxLength: 63
  3807. minLength: 1
  3808. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3809. type: string
  3810. type: object
  3811. userRef:
  3812. description: |-
  3813. A reference to a specific 'key' containing the Conjur username
  3814. within a Secret resource. In some instances, `key` is a required field.
  3815. properties:
  3816. key:
  3817. description: |-
  3818. A key in the referenced Secret.
  3819. Some instances of this field may be defaulted, in others it may be required.
  3820. maxLength: 253
  3821. minLength: 1
  3822. pattern: ^[-._a-zA-Z0-9]+$
  3823. type: string
  3824. name:
  3825. description: The name of the Secret resource being referred to.
  3826. maxLength: 253
  3827. minLength: 1
  3828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3829. type: string
  3830. namespace:
  3831. description: |-
  3832. The namespace of the Secret resource being referred to.
  3833. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3834. maxLength: 63
  3835. minLength: 1
  3836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3837. type: string
  3838. type: object
  3839. required:
  3840. - account
  3841. - apiKeyRef
  3842. - userRef
  3843. type: object
  3844. jwt:
  3845. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3846. properties:
  3847. account:
  3848. description: Account is the Conjur organization account name.
  3849. type: string
  3850. hostId:
  3851. description: |-
  3852. Optional HostID for JWT authentication. This may be used depending
  3853. on how the Conjur JWT authenticator policy is configured.
  3854. type: string
  3855. secretRef:
  3856. description: |-
  3857. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3858. authenticate with Conjur using the JWT authentication method.
  3859. properties:
  3860. key:
  3861. description: |-
  3862. A key in the referenced Secret.
  3863. Some instances of this field may be defaulted, in others it may be required.
  3864. maxLength: 253
  3865. minLength: 1
  3866. pattern: ^[-._a-zA-Z0-9]+$
  3867. type: string
  3868. name:
  3869. description: The name of the Secret resource being referred to.
  3870. maxLength: 253
  3871. minLength: 1
  3872. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3873. type: string
  3874. namespace:
  3875. description: |-
  3876. The namespace of the Secret resource being referred to.
  3877. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3878. maxLength: 63
  3879. minLength: 1
  3880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3881. type: string
  3882. type: object
  3883. serviceAccountRef:
  3884. description: |-
  3885. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3886. a token for with the `TokenRequest` API.
  3887. properties:
  3888. audiences:
  3889. description: |-
  3890. Audience specifies the `aud` claim for the service account token
  3891. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3892. then this audiences will be appended to the list
  3893. items:
  3894. type: string
  3895. type: array
  3896. name:
  3897. description: The name of the ServiceAccount resource being referred to.
  3898. maxLength: 253
  3899. minLength: 1
  3900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3901. type: string
  3902. namespace:
  3903. description: |-
  3904. Namespace of the resource being referred to.
  3905. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3906. maxLength: 63
  3907. minLength: 1
  3908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3909. type: string
  3910. required:
  3911. - name
  3912. type: object
  3913. serviceID:
  3914. description: The conjur authn jwt webservice id
  3915. type: string
  3916. required:
  3917. - account
  3918. - serviceID
  3919. type: object
  3920. type: object
  3921. caBundle:
  3922. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3923. type: string
  3924. caProvider:
  3925. description: |-
  3926. Used to provide custom certificate authority (CA) certificates
  3927. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3928. that contains a PEM-encoded certificate.
  3929. properties:
  3930. key:
  3931. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3932. maxLength: 253
  3933. minLength: 1
  3934. pattern: ^[-._a-zA-Z0-9]+$
  3935. type: string
  3936. name:
  3937. description: The name of the object located at the provider type.
  3938. maxLength: 253
  3939. minLength: 1
  3940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3941. type: string
  3942. namespace:
  3943. description: |-
  3944. The namespace the Provider type is in.
  3945. Can only be defined when used in a ClusterSecretStore.
  3946. maxLength: 63
  3947. minLength: 1
  3948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3949. type: string
  3950. type:
  3951. description: The type of provider to use such as "Secret", or "ConfigMap".
  3952. enum:
  3953. - Secret
  3954. - ConfigMap
  3955. type: string
  3956. required:
  3957. - name
  3958. - type
  3959. type: object
  3960. url:
  3961. description: URL is the endpoint of the Conjur instance.
  3962. type: string
  3963. required:
  3964. - auth
  3965. - url
  3966. type: object
  3967. delinea:
  3968. description: |-
  3969. Delinea DevOps Secrets Vault
  3970. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3971. properties:
  3972. clientId:
  3973. description: ClientID is the non-secret part of the credential.
  3974. properties:
  3975. secretRef:
  3976. description: SecretRef references a key in a secret that will be used as value.
  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. value:
  4002. description: Value can be specified directly to set a value without using a secret.
  4003. type: string
  4004. type: object
  4005. clientSecret:
  4006. description: ClientSecret is the secret part of the credential.
  4007. properties:
  4008. secretRef:
  4009. description: SecretRef references a key in a secret that will be used as value.
  4010. properties:
  4011. key:
  4012. description: |-
  4013. A key in the referenced Secret.
  4014. Some instances of this field may be defaulted, in others it may be required.
  4015. maxLength: 253
  4016. minLength: 1
  4017. pattern: ^[-._a-zA-Z0-9]+$
  4018. type: string
  4019. name:
  4020. description: The name of the Secret resource being referred to.
  4021. maxLength: 253
  4022. minLength: 1
  4023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4024. type: string
  4025. namespace:
  4026. description: |-
  4027. The namespace of the Secret resource being referred to.
  4028. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4029. maxLength: 63
  4030. minLength: 1
  4031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4032. type: string
  4033. type: object
  4034. value:
  4035. description: Value can be specified directly to set a value without using a secret.
  4036. type: string
  4037. type: object
  4038. tenant:
  4039. description: Tenant is the chosen hostname / site name.
  4040. type: string
  4041. tld:
  4042. description: |-
  4043. TLD is based on the server location that was chosen during provisioning.
  4044. If unset, defaults to "com".
  4045. type: string
  4046. urlTemplate:
  4047. description: |-
  4048. URLTemplate
  4049. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  4050. type: string
  4051. required:
  4052. - clientId
  4053. - clientSecret
  4054. - tenant
  4055. type: object
  4056. doppler:
  4057. description: Doppler configures this store to sync secrets using the Doppler provider
  4058. properties:
  4059. auth:
  4060. description: Auth configures how the Operator authenticates with the Doppler API
  4061. properties:
  4062. oidcConfig:
  4063. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  4064. properties:
  4065. expirationSeconds:
  4066. default: 600
  4067. description: |-
  4068. ExpirationSeconds sets the ServiceAccount token validity duration.
  4069. Defaults to 10 minutes.
  4070. format: int64
  4071. type: integer
  4072. identity:
  4073. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  4074. type: string
  4075. serviceAccountRef:
  4076. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  4077. properties:
  4078. audiences:
  4079. description: |-
  4080. Audience specifies the `aud` claim for the service account token
  4081. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4082. then this audiences will be appended to the list
  4083. items:
  4084. type: string
  4085. type: array
  4086. name:
  4087. description: The name of the ServiceAccount resource being referred to.
  4088. maxLength: 253
  4089. minLength: 1
  4090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4091. type: string
  4092. namespace:
  4093. description: |-
  4094. Namespace of the resource being referred to.
  4095. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4096. maxLength: 63
  4097. minLength: 1
  4098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4099. type: string
  4100. required:
  4101. - name
  4102. type: object
  4103. required:
  4104. - identity
  4105. - serviceAccountRef
  4106. type: object
  4107. secretRef:
  4108. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  4109. properties:
  4110. dopplerToken:
  4111. description: |-
  4112. The DopplerToken is used for authentication.
  4113. See https://docs.doppler.com/reference/api#authentication for auth token types.
  4114. The Key attribute defaults to dopplerToken if not specified.
  4115. properties:
  4116. key:
  4117. description: |-
  4118. A key in the referenced Secret.
  4119. Some instances of this field may be defaulted, in others it may be required.
  4120. maxLength: 253
  4121. minLength: 1
  4122. pattern: ^[-._a-zA-Z0-9]+$
  4123. type: string
  4124. name:
  4125. description: The name of the Secret resource being referred to.
  4126. maxLength: 253
  4127. minLength: 1
  4128. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4129. type: string
  4130. namespace:
  4131. description: |-
  4132. The namespace of the Secret resource being referred to.
  4133. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4134. maxLength: 63
  4135. minLength: 1
  4136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4137. type: string
  4138. type: object
  4139. required:
  4140. - dopplerToken
  4141. type: object
  4142. type: object
  4143. x-kubernetes-validations:
  4144. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  4145. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  4146. config:
  4147. description: Doppler config (required if not using a Service Token)
  4148. type: string
  4149. format:
  4150. description: Format enables the downloading of secrets as a file (string)
  4151. enum:
  4152. - json
  4153. - dotnet-json
  4154. - env
  4155. - yaml
  4156. - docker
  4157. type: string
  4158. nameTransformer:
  4159. description: Environment variable compatible name transforms that change secret names to a different format
  4160. enum:
  4161. - upper-camel
  4162. - camel
  4163. - lower-snake
  4164. - tf-var
  4165. - dotnet-env
  4166. - lower-kebab
  4167. type: string
  4168. project:
  4169. description: Doppler project (required if not using a Service Token)
  4170. type: string
  4171. required:
  4172. - auth
  4173. type: object
  4174. dvls:
  4175. description: DVLS configures this store to sync secrets using Devolutions Server provider
  4176. properties:
  4177. auth:
  4178. description: Auth defines the authentication method to use.
  4179. properties:
  4180. secretRef:
  4181. description: SecretRef contains the Application ID and Application Secret for authentication.
  4182. properties:
  4183. appId:
  4184. description: AppID is the reference to the secret containing the Application ID.
  4185. properties:
  4186. key:
  4187. description: |-
  4188. A key in the referenced Secret.
  4189. Some instances of this field may be defaulted, in others it may be required.
  4190. maxLength: 253
  4191. minLength: 1
  4192. pattern: ^[-._a-zA-Z0-9]+$
  4193. type: string
  4194. name:
  4195. description: The name of the Secret resource being referred to.
  4196. maxLength: 253
  4197. minLength: 1
  4198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4199. type: string
  4200. namespace:
  4201. description: |-
  4202. The namespace of the Secret resource being referred to.
  4203. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4204. maxLength: 63
  4205. minLength: 1
  4206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4207. type: string
  4208. type: object
  4209. appSecret:
  4210. description: AppSecret is the reference to the secret containing the Application Secret.
  4211. properties:
  4212. key:
  4213. description: |-
  4214. A key in the referenced Secret.
  4215. Some instances of this field may be defaulted, in others it may be required.
  4216. maxLength: 253
  4217. minLength: 1
  4218. pattern: ^[-._a-zA-Z0-9]+$
  4219. type: string
  4220. name:
  4221. description: The name of the Secret resource being referred to.
  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: |-
  4228. The namespace of the Secret resource being referred to.
  4229. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4230. maxLength: 63
  4231. minLength: 1
  4232. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4233. type: string
  4234. type: object
  4235. required:
  4236. - appId
  4237. - appSecret
  4238. type: object
  4239. required:
  4240. - secretRef
  4241. type: object
  4242. insecure:
  4243. description: |-
  4244. Insecure allows connecting to DVLS over plain HTTP.
  4245. This is NOT RECOMMENDED for production use.
  4246. Set to true only if you understand the security implications.
  4247. type: boolean
  4248. serverUrl:
  4249. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4250. type: string
  4251. required:
  4252. - auth
  4253. - serverUrl
  4254. type: object
  4255. fake:
  4256. description: Fake configures a store with static key/value pairs
  4257. properties:
  4258. data:
  4259. items:
  4260. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4261. properties:
  4262. key:
  4263. type: string
  4264. value:
  4265. type: string
  4266. version:
  4267. type: string
  4268. required:
  4269. - key
  4270. - value
  4271. type: object
  4272. type: array
  4273. validationResult:
  4274. description: ValidationResult is defined type for the number of validation results.
  4275. type: integer
  4276. required:
  4277. - data
  4278. type: object
  4279. fortanix:
  4280. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4281. properties:
  4282. apiKey:
  4283. description: APIKey is the API token to access SDKMS Applications.
  4284. properties:
  4285. secretRef:
  4286. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4287. properties:
  4288. key:
  4289. description: |-
  4290. A key in the referenced Secret.
  4291. Some instances of this field may be defaulted, in others it may be required.
  4292. maxLength: 253
  4293. minLength: 1
  4294. pattern: ^[-._a-zA-Z0-9]+$
  4295. type: string
  4296. name:
  4297. description: The name of the Secret resource being referred to.
  4298. maxLength: 253
  4299. minLength: 1
  4300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4301. type: string
  4302. namespace:
  4303. description: |-
  4304. The namespace of the Secret resource being referred to.
  4305. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4306. maxLength: 63
  4307. minLength: 1
  4308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4309. type: string
  4310. type: object
  4311. type: object
  4312. apiUrl:
  4313. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4314. type: string
  4315. type: object
  4316. gcpsm:
  4317. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4318. properties:
  4319. auth:
  4320. description: Auth defines the information necessary to authenticate against GCP
  4321. properties:
  4322. secretRef:
  4323. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4324. properties:
  4325. secretAccessKeySecretRef:
  4326. description: The SecretAccessKey is used for authentication
  4327. properties:
  4328. key:
  4329. description: |-
  4330. A key in the referenced Secret.
  4331. Some instances of this field may be defaulted, in others it may be required.
  4332. maxLength: 253
  4333. minLength: 1
  4334. pattern: ^[-._a-zA-Z0-9]+$
  4335. type: string
  4336. name:
  4337. description: The name of the Secret resource being referred to.
  4338. maxLength: 253
  4339. minLength: 1
  4340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4341. type: string
  4342. namespace:
  4343. description: |-
  4344. The namespace of the Secret resource being referred to.
  4345. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4346. maxLength: 63
  4347. minLength: 1
  4348. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4349. type: string
  4350. type: object
  4351. type: object
  4352. workloadIdentity:
  4353. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4354. properties:
  4355. clusterLocation:
  4356. description: |-
  4357. ClusterLocation is the location of the cluster
  4358. If not specified, it fetches information from the metadata server
  4359. type: string
  4360. clusterName:
  4361. description: |-
  4362. ClusterName is the name of the cluster
  4363. If not specified, it fetches information from the metadata server
  4364. type: string
  4365. clusterProjectID:
  4366. description: |-
  4367. ClusterProjectID is the project ID of the cluster
  4368. If not specified, it fetches information from the metadata server
  4369. type: string
  4370. serviceAccountRef:
  4371. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4372. properties:
  4373. audiences:
  4374. description: |-
  4375. Audience specifies the `aud` claim for the service account token
  4376. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4377. then this audiences will be appended to the list
  4378. items:
  4379. type: string
  4380. type: array
  4381. name:
  4382. description: The name of the ServiceAccount resource being referred to.
  4383. maxLength: 253
  4384. minLength: 1
  4385. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4386. type: string
  4387. namespace:
  4388. description: |-
  4389. Namespace of the resource being referred to.
  4390. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4391. maxLength: 63
  4392. minLength: 1
  4393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4394. type: string
  4395. required:
  4396. - name
  4397. type: object
  4398. required:
  4399. - serviceAccountRef
  4400. type: object
  4401. workloadIdentityFederation:
  4402. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4403. properties:
  4404. audience:
  4405. description: |-
  4406. 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.
  4407. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4408. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4409. type: string
  4410. awsSecurityCredentials:
  4411. description: |-
  4412. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4413. when using the AWS metadata server is not an option.
  4414. properties:
  4415. awsCredentialsSecretRef:
  4416. description: |-
  4417. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4418. Secret should be created with below names for keys
  4419. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4420. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4421. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4422. properties:
  4423. name:
  4424. description: name of the secret.
  4425. maxLength: 253
  4426. minLength: 1
  4427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4428. type: string
  4429. namespace:
  4430. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4431. maxLength: 63
  4432. minLength: 1
  4433. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4434. type: string
  4435. required:
  4436. - name
  4437. type: object
  4438. region:
  4439. description: region is for configuring the AWS region to be used.
  4440. example: ap-south-1
  4441. maxLength: 50
  4442. minLength: 1
  4443. pattern: ^[a-z0-9-]+$
  4444. type: string
  4445. required:
  4446. - awsCredentialsSecretRef
  4447. - region
  4448. type: object
  4449. credConfig:
  4450. description: |-
  4451. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4452. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4453. serviceAccountRef must be used by providing operators service account details.
  4454. properties:
  4455. key:
  4456. description: key name holding the external account credential config.
  4457. maxLength: 253
  4458. minLength: 1
  4459. pattern: ^[-._a-zA-Z0-9]+$
  4460. type: string
  4461. name:
  4462. description: name of the configmap.
  4463. maxLength: 253
  4464. minLength: 1
  4465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4466. type: string
  4467. namespace:
  4468. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4469. maxLength: 63
  4470. minLength: 1
  4471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4472. type: string
  4473. required:
  4474. - key
  4475. - name
  4476. type: object
  4477. externalTokenEndpoint:
  4478. description: |-
  4479. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4480. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4481. URL is having the expected value.
  4482. type: string
  4483. serviceAccountRef:
  4484. description: |-
  4485. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4486. when Kubernetes is configured as provider in workload identity pool.
  4487. properties:
  4488. audiences:
  4489. description: |-
  4490. Audience specifies the `aud` claim for the service account token
  4491. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4492. then this audiences will be appended to the list
  4493. items:
  4494. type: string
  4495. type: array
  4496. name:
  4497. description: The name of the ServiceAccount resource being referred to.
  4498. maxLength: 253
  4499. minLength: 1
  4500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4501. type: string
  4502. namespace:
  4503. description: |-
  4504. Namespace of the resource being referred to.
  4505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4506. maxLength: 63
  4507. minLength: 1
  4508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4509. type: string
  4510. required:
  4511. - name
  4512. type: object
  4513. type: object
  4514. type: object
  4515. location:
  4516. description: Location optionally defines a location for a secret
  4517. type: string
  4518. projectID:
  4519. description: ProjectID project where secret is located
  4520. type: string
  4521. secretVersionSelectionPolicy:
  4522. default: LatestOrFail
  4523. description: |-
  4524. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4525. when "latest" is disabled or destroyed.
  4526. Possible values are:
  4527. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4528. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4529. type: string
  4530. type: object
  4531. github:
  4532. description: |-
  4533. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4534. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4535. properties:
  4536. appID:
  4537. description: appID specifies the Github APP that will be used to authenticate the client
  4538. type: integer
  4539. auth:
  4540. description: auth configures how secret-manager authenticates with a Github instance.
  4541. properties:
  4542. privateKey:
  4543. description: |-
  4544. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4545. In some instances, `key` is a required field.
  4546. properties:
  4547. key:
  4548. description: |-
  4549. A key in the referenced Secret.
  4550. Some instances of this field may be defaulted, in others it may be required.
  4551. maxLength: 253
  4552. minLength: 1
  4553. pattern: ^[-._a-zA-Z0-9]+$
  4554. type: string
  4555. name:
  4556. description: The name of the Secret resource being referred to.
  4557. maxLength: 253
  4558. minLength: 1
  4559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4560. type: string
  4561. namespace:
  4562. description: |-
  4563. The namespace of the Secret resource being referred to.
  4564. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4565. maxLength: 63
  4566. minLength: 1
  4567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4568. type: string
  4569. type: object
  4570. required:
  4571. - privateKey
  4572. type: object
  4573. environment:
  4574. description: environment will be used to fetch secrets from a particular environment within a github repository
  4575. type: string
  4576. installationID:
  4577. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4578. type: integer
  4579. orgSecretVisibility:
  4580. description: |-
  4581. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  4582. Valid values are "all" or "private".
  4583. When unset, new secrets are created with visibility "all" and existing secrets preserve
  4584. whatever visibility they already have in GitHub.
  4585. enum:
  4586. - all
  4587. - private
  4588. type: string
  4589. organization:
  4590. description: organization will be used to fetch secrets from the Github organization
  4591. type: string
  4592. repository:
  4593. description: repository will be used to fetch secrets from the Github repository within an organization
  4594. type: string
  4595. uploadURL:
  4596. description: Upload URL for enterprise instances. Default to URL.
  4597. type: string
  4598. url:
  4599. default: https://github.com/
  4600. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4601. type: string
  4602. required:
  4603. - appID
  4604. - auth
  4605. - installationID
  4606. - organization
  4607. type: object
  4608. gitlab:
  4609. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4610. properties:
  4611. auth:
  4612. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4613. properties:
  4614. SecretRef:
  4615. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4616. properties:
  4617. accessToken:
  4618. description: AccessToken is used for authentication.
  4619. properties:
  4620. key:
  4621. description: |-
  4622. A key in the referenced Secret.
  4623. Some instances of this field may be defaulted, in others it may be required.
  4624. maxLength: 253
  4625. minLength: 1
  4626. pattern: ^[-._a-zA-Z0-9]+$
  4627. type: string
  4628. name:
  4629. description: The name of the Secret resource being referred to.
  4630. maxLength: 253
  4631. minLength: 1
  4632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4633. type: string
  4634. namespace:
  4635. description: |-
  4636. The namespace of the Secret resource being referred to.
  4637. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4638. maxLength: 63
  4639. minLength: 1
  4640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4641. type: string
  4642. type: object
  4643. type: object
  4644. required:
  4645. - SecretRef
  4646. type: object
  4647. caBundle:
  4648. description: |-
  4649. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4650. can be performed.
  4651. format: byte
  4652. type: string
  4653. caProvider:
  4654. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4655. properties:
  4656. key:
  4657. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4658. maxLength: 253
  4659. minLength: 1
  4660. pattern: ^[-._a-zA-Z0-9]+$
  4661. type: string
  4662. name:
  4663. description: The name of the object located at the provider type.
  4664. maxLength: 253
  4665. minLength: 1
  4666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4667. type: string
  4668. namespace:
  4669. description: |-
  4670. The namespace the Provider type is in.
  4671. Can only be defined when used in a ClusterSecretStore.
  4672. maxLength: 63
  4673. minLength: 1
  4674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4675. type: string
  4676. type:
  4677. description: The type of provider to use such as "Secret", or "ConfigMap".
  4678. enum:
  4679. - Secret
  4680. - ConfigMap
  4681. type: string
  4682. required:
  4683. - name
  4684. - type
  4685. type: object
  4686. environment:
  4687. 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)
  4688. type: string
  4689. groupIDs:
  4690. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4691. items:
  4692. type: string
  4693. type: array
  4694. inheritFromGroups:
  4695. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4696. type: boolean
  4697. projectID:
  4698. description: ProjectID specifies a project where secrets are located.
  4699. type: string
  4700. url:
  4701. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4702. type: string
  4703. required:
  4704. - auth
  4705. type: object
  4706. ibm:
  4707. description: IBM configures this store to sync secrets using IBM Cloud provider
  4708. properties:
  4709. auth:
  4710. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4711. maxProperties: 1
  4712. minProperties: 1
  4713. properties:
  4714. containerAuth:
  4715. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4716. properties:
  4717. iamEndpoint:
  4718. type: string
  4719. profile:
  4720. description: the IBM Trusted Profile
  4721. type: string
  4722. tokenLocation:
  4723. description: Location the token is mounted on the pod
  4724. type: string
  4725. required:
  4726. - profile
  4727. type: object
  4728. secretRef:
  4729. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4730. properties:
  4731. iamEndpoint:
  4732. description: The IAM endpoint used to obain a token
  4733. type: string
  4734. secretApiKeySecretRef:
  4735. description: The SecretAccessKey is used for authentication
  4736. properties:
  4737. key:
  4738. description: |-
  4739. A key in the referenced Secret.
  4740. Some instances of this field may be defaulted, in others it may be required.
  4741. maxLength: 253
  4742. minLength: 1
  4743. pattern: ^[-._a-zA-Z0-9]+$
  4744. type: string
  4745. name:
  4746. description: The name of the Secret resource being referred to.
  4747. maxLength: 253
  4748. minLength: 1
  4749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4750. type: string
  4751. namespace:
  4752. description: |-
  4753. The namespace of the Secret resource being referred to.
  4754. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4755. maxLength: 63
  4756. minLength: 1
  4757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4758. type: string
  4759. type: object
  4760. type: object
  4761. type: object
  4762. serviceUrl:
  4763. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4764. type: string
  4765. required:
  4766. - auth
  4767. type: object
  4768. infisical:
  4769. description: Infisical configures this store to sync secrets using the Infisical provider
  4770. properties:
  4771. auth:
  4772. description: Auth configures how the Operator authenticates with the Infisical API
  4773. properties:
  4774. awsAuthCredentials:
  4775. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4776. properties:
  4777. identityId:
  4778. description: |-
  4779. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4780. In some instances, `key` is a required field.
  4781. properties:
  4782. key:
  4783. description: |-
  4784. A key in the referenced Secret.
  4785. Some instances of this field may be defaulted, in others it may be required.
  4786. maxLength: 253
  4787. minLength: 1
  4788. pattern: ^[-._a-zA-Z0-9]+$
  4789. type: string
  4790. name:
  4791. description: The name of the Secret resource being referred to.
  4792. maxLength: 253
  4793. minLength: 1
  4794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4795. type: string
  4796. namespace:
  4797. description: |-
  4798. The namespace of the Secret resource being referred to.
  4799. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4800. maxLength: 63
  4801. minLength: 1
  4802. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4803. type: string
  4804. type: object
  4805. required:
  4806. - identityId
  4807. type: object
  4808. azureAuthCredentials:
  4809. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4810. properties:
  4811. identityId:
  4812. description: |-
  4813. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4814. In some instances, `key` is a required field.
  4815. properties:
  4816. key:
  4817. description: |-
  4818. A key in the referenced Secret.
  4819. Some instances of this field may be defaulted, in others it may be required.
  4820. maxLength: 253
  4821. minLength: 1
  4822. pattern: ^[-._a-zA-Z0-9]+$
  4823. type: string
  4824. name:
  4825. description: The name of the Secret resource being referred to.
  4826. maxLength: 253
  4827. minLength: 1
  4828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4829. type: string
  4830. namespace:
  4831. description: |-
  4832. The namespace of the Secret resource being referred to.
  4833. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4834. maxLength: 63
  4835. minLength: 1
  4836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4837. type: string
  4838. type: object
  4839. resource:
  4840. description: |-
  4841. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4842. In some instances, `key` is a required field.
  4843. properties:
  4844. key:
  4845. description: |-
  4846. A key in the referenced Secret.
  4847. Some instances of this field may be defaulted, in others it may be required.
  4848. maxLength: 253
  4849. minLength: 1
  4850. pattern: ^[-._a-zA-Z0-9]+$
  4851. type: string
  4852. name:
  4853. description: The name of the Secret resource being referred to.
  4854. maxLength: 253
  4855. minLength: 1
  4856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4857. type: string
  4858. namespace:
  4859. description: |-
  4860. The namespace of the Secret resource being referred to.
  4861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4862. maxLength: 63
  4863. minLength: 1
  4864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4865. type: string
  4866. type: object
  4867. required:
  4868. - identityId
  4869. type: object
  4870. gcpIamAuthCredentials:
  4871. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4872. properties:
  4873. identityId:
  4874. description: |-
  4875. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4876. In some instances, `key` is a required field.
  4877. properties:
  4878. key:
  4879. description: |-
  4880. A key in the referenced Secret.
  4881. Some instances of this field may be defaulted, in others it may be required.
  4882. maxLength: 253
  4883. minLength: 1
  4884. pattern: ^[-._a-zA-Z0-9]+$
  4885. type: string
  4886. name:
  4887. description: The name of the Secret resource being referred to.
  4888. maxLength: 253
  4889. minLength: 1
  4890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4891. type: string
  4892. namespace:
  4893. description: |-
  4894. The namespace of the Secret resource being referred to.
  4895. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4896. maxLength: 63
  4897. minLength: 1
  4898. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4899. type: string
  4900. type: object
  4901. serviceAccountKeyFilePath:
  4902. description: |-
  4903. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4904. In some instances, `key` is a required field.
  4905. properties:
  4906. key:
  4907. description: |-
  4908. A key in the referenced Secret.
  4909. Some instances of this field may be defaulted, in others it may be required.
  4910. maxLength: 253
  4911. minLength: 1
  4912. pattern: ^[-._a-zA-Z0-9]+$
  4913. type: string
  4914. name:
  4915. description: The name of the Secret resource being referred to.
  4916. maxLength: 253
  4917. minLength: 1
  4918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4919. type: string
  4920. namespace:
  4921. description: |-
  4922. The namespace of the Secret resource being referred to.
  4923. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4924. maxLength: 63
  4925. minLength: 1
  4926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4927. type: string
  4928. type: object
  4929. required:
  4930. - identityId
  4931. - serviceAccountKeyFilePath
  4932. type: object
  4933. gcpIdTokenAuthCredentials:
  4934. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4935. properties:
  4936. identityId:
  4937. description: |-
  4938. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4939. In some instances, `key` is a required field.
  4940. properties:
  4941. key:
  4942. description: |-
  4943. A key in the referenced Secret.
  4944. Some instances of this field may be defaulted, in others it may be required.
  4945. maxLength: 253
  4946. minLength: 1
  4947. pattern: ^[-._a-zA-Z0-9]+$
  4948. type: string
  4949. name:
  4950. description: The name of the Secret resource being referred to.
  4951. maxLength: 253
  4952. minLength: 1
  4953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4954. type: string
  4955. namespace:
  4956. description: |-
  4957. The namespace of the Secret resource being referred to.
  4958. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4959. maxLength: 63
  4960. minLength: 1
  4961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4962. type: string
  4963. type: object
  4964. required:
  4965. - identityId
  4966. type: object
  4967. jwtAuthCredentials:
  4968. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4969. properties:
  4970. identityId:
  4971. description: |-
  4972. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4973. In some instances, `key` is a required field.
  4974. properties:
  4975. key:
  4976. description: |-
  4977. A key in the referenced Secret.
  4978. Some instances of this field may be defaulted, in others it may be required.
  4979. maxLength: 253
  4980. minLength: 1
  4981. pattern: ^[-._a-zA-Z0-9]+$
  4982. type: string
  4983. name:
  4984. description: The name of the Secret resource being referred to.
  4985. maxLength: 253
  4986. minLength: 1
  4987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4988. type: string
  4989. namespace:
  4990. description: |-
  4991. The namespace of the Secret resource being referred to.
  4992. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4993. maxLength: 63
  4994. minLength: 1
  4995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4996. type: string
  4997. type: object
  4998. jwt:
  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. required:
  5027. - identityId
  5028. - jwt
  5029. type: object
  5030. kubernetesAuthCredentials:
  5031. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  5032. properties:
  5033. identityId:
  5034. description: |-
  5035. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5036. In some instances, `key` is a required field.
  5037. properties:
  5038. key:
  5039. description: |-
  5040. A key in the referenced Secret.
  5041. Some instances of this field may be defaulted, in others it may be required.
  5042. maxLength: 253
  5043. minLength: 1
  5044. pattern: ^[-._a-zA-Z0-9]+$
  5045. type: string
  5046. name:
  5047. description: The name of the Secret resource being referred to.
  5048. maxLength: 253
  5049. minLength: 1
  5050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5051. type: string
  5052. namespace:
  5053. description: |-
  5054. The namespace of the Secret resource being referred to.
  5055. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5056. maxLength: 63
  5057. minLength: 1
  5058. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5059. type: string
  5060. type: object
  5061. serviceAccountTokenPath:
  5062. description: |-
  5063. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5064. In some instances, `key` is a required field.
  5065. properties:
  5066. key:
  5067. description: |-
  5068. A key in the referenced Secret.
  5069. Some instances of this field may be defaulted, in others it may be required.
  5070. maxLength: 253
  5071. minLength: 1
  5072. pattern: ^[-._a-zA-Z0-9]+$
  5073. type: string
  5074. name:
  5075. description: The name of the Secret resource being referred to.
  5076. maxLength: 253
  5077. minLength: 1
  5078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5079. type: string
  5080. namespace:
  5081. description: |-
  5082. The namespace of the Secret resource being referred to.
  5083. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5084. maxLength: 63
  5085. minLength: 1
  5086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5087. type: string
  5088. type: object
  5089. required:
  5090. - identityId
  5091. type: object
  5092. ldapAuthCredentials:
  5093. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  5094. properties:
  5095. identityId:
  5096. description: |-
  5097. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5098. In some instances, `key` is a required field.
  5099. properties:
  5100. key:
  5101. description: |-
  5102. A key in the referenced Secret.
  5103. Some instances of this field may be defaulted, in others it may be required.
  5104. maxLength: 253
  5105. minLength: 1
  5106. pattern: ^[-._a-zA-Z0-9]+$
  5107. type: string
  5108. name:
  5109. description: The name of the Secret resource being referred to.
  5110. maxLength: 253
  5111. minLength: 1
  5112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5113. type: string
  5114. namespace:
  5115. description: |-
  5116. The namespace of the Secret resource being referred to.
  5117. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5118. maxLength: 63
  5119. minLength: 1
  5120. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5121. type: string
  5122. type: object
  5123. ldapPassword:
  5124. description: |-
  5125. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5126. In some instances, `key` is a required field.
  5127. properties:
  5128. key:
  5129. description: |-
  5130. A key in the referenced Secret.
  5131. Some instances of this field may be defaulted, in others it may be required.
  5132. maxLength: 253
  5133. minLength: 1
  5134. pattern: ^[-._a-zA-Z0-9]+$
  5135. type: string
  5136. name:
  5137. description: The name of the Secret resource being referred to.
  5138. maxLength: 253
  5139. minLength: 1
  5140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5141. type: string
  5142. namespace:
  5143. description: |-
  5144. The namespace of the Secret resource being referred to.
  5145. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5146. maxLength: 63
  5147. minLength: 1
  5148. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5149. type: string
  5150. type: object
  5151. ldapUsername:
  5152. description: |-
  5153. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5154. In some instances, `key` is a required field.
  5155. properties:
  5156. key:
  5157. description: |-
  5158. A key in the referenced Secret.
  5159. Some instances of this field may be defaulted, in others it may be required.
  5160. maxLength: 253
  5161. minLength: 1
  5162. pattern: ^[-._a-zA-Z0-9]+$
  5163. type: string
  5164. name:
  5165. description: The name of the Secret resource being referred to.
  5166. maxLength: 253
  5167. minLength: 1
  5168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5169. type: string
  5170. namespace:
  5171. description: |-
  5172. The namespace of the Secret resource being referred to.
  5173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5174. maxLength: 63
  5175. minLength: 1
  5176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5177. type: string
  5178. type: object
  5179. required:
  5180. - identityId
  5181. - ldapPassword
  5182. - ldapUsername
  5183. type: object
  5184. ociAuthCredentials:
  5185. description: OciAuthCredentials represents the credentials for OCI authentication.
  5186. properties:
  5187. fingerprint:
  5188. description: |-
  5189. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5190. In some instances, `key` is a required field.
  5191. properties:
  5192. key:
  5193. description: |-
  5194. A key in the referenced Secret.
  5195. Some instances of this field may be defaulted, in others it may be required.
  5196. maxLength: 253
  5197. minLength: 1
  5198. pattern: ^[-._a-zA-Z0-9]+$
  5199. type: string
  5200. name:
  5201. description: The name of the Secret resource being referred to.
  5202. maxLength: 253
  5203. minLength: 1
  5204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5205. type: string
  5206. namespace:
  5207. description: |-
  5208. The namespace of the Secret resource being referred to.
  5209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5210. maxLength: 63
  5211. minLength: 1
  5212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5213. type: string
  5214. type: object
  5215. identityId:
  5216. description: |-
  5217. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5218. In some instances, `key` is a required field.
  5219. properties:
  5220. key:
  5221. description: |-
  5222. A key in the referenced Secret.
  5223. Some instances of this field may be defaulted, in others it may be required.
  5224. maxLength: 253
  5225. minLength: 1
  5226. pattern: ^[-._a-zA-Z0-9]+$
  5227. type: string
  5228. name:
  5229. description: The name of the Secret resource being referred to.
  5230. maxLength: 253
  5231. minLength: 1
  5232. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5233. type: string
  5234. namespace:
  5235. description: |-
  5236. The namespace of the Secret resource being referred to.
  5237. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5238. maxLength: 63
  5239. minLength: 1
  5240. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5241. type: string
  5242. type: object
  5243. privateKey:
  5244. description: |-
  5245. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5246. In some instances, `key` is a required field.
  5247. properties:
  5248. key:
  5249. description: |-
  5250. A key in the referenced Secret.
  5251. Some instances of this field may be defaulted, in others it may be required.
  5252. maxLength: 253
  5253. minLength: 1
  5254. pattern: ^[-._a-zA-Z0-9]+$
  5255. type: string
  5256. name:
  5257. description: The name of the Secret resource being referred to.
  5258. maxLength: 253
  5259. minLength: 1
  5260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5261. type: string
  5262. namespace:
  5263. description: |-
  5264. The namespace of the Secret resource being referred to.
  5265. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5266. maxLength: 63
  5267. minLength: 1
  5268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5269. type: string
  5270. type: object
  5271. privateKeyPassphrase:
  5272. description: |-
  5273. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5274. In some instances, `key` is a required field.
  5275. properties:
  5276. key:
  5277. description: |-
  5278. A key in the referenced Secret.
  5279. Some instances of this field may be defaulted, in others it may be required.
  5280. maxLength: 253
  5281. minLength: 1
  5282. pattern: ^[-._a-zA-Z0-9]+$
  5283. type: string
  5284. name:
  5285. description: The name of the Secret resource being referred to.
  5286. maxLength: 253
  5287. minLength: 1
  5288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5289. type: string
  5290. namespace:
  5291. description: |-
  5292. The namespace of the Secret resource being referred to.
  5293. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5294. maxLength: 63
  5295. minLength: 1
  5296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5297. type: string
  5298. type: object
  5299. region:
  5300. description: |-
  5301. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5302. In some instances, `key` is a required field.
  5303. properties:
  5304. key:
  5305. description: |-
  5306. A key in the referenced Secret.
  5307. Some instances of this field may be defaulted, in others it may be required.
  5308. maxLength: 253
  5309. minLength: 1
  5310. pattern: ^[-._a-zA-Z0-9]+$
  5311. type: string
  5312. name:
  5313. description: The name of the Secret resource being referred to.
  5314. maxLength: 253
  5315. minLength: 1
  5316. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5317. type: string
  5318. namespace:
  5319. description: |-
  5320. The namespace of the Secret resource being referred to.
  5321. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5322. maxLength: 63
  5323. minLength: 1
  5324. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5325. type: string
  5326. type: object
  5327. tenancyId:
  5328. description: |-
  5329. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5330. In some instances, `key` is a required field.
  5331. properties:
  5332. key:
  5333. description: |-
  5334. A key in the referenced Secret.
  5335. Some instances of this field may be defaulted, in others it may be required.
  5336. maxLength: 253
  5337. minLength: 1
  5338. pattern: ^[-._a-zA-Z0-9]+$
  5339. type: string
  5340. name:
  5341. description: The name of the Secret resource being referred to.
  5342. maxLength: 253
  5343. minLength: 1
  5344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5345. type: string
  5346. namespace:
  5347. description: |-
  5348. The namespace of the Secret resource being referred to.
  5349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5350. maxLength: 63
  5351. minLength: 1
  5352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5353. type: string
  5354. type: object
  5355. userId:
  5356. description: |-
  5357. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5358. In some instances, `key` is a required field.
  5359. properties:
  5360. key:
  5361. description: |-
  5362. A key in the referenced Secret.
  5363. Some instances of this field may be defaulted, in others it may be required.
  5364. maxLength: 253
  5365. minLength: 1
  5366. pattern: ^[-._a-zA-Z0-9]+$
  5367. type: string
  5368. name:
  5369. description: The name of the Secret resource being referred to.
  5370. maxLength: 253
  5371. minLength: 1
  5372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5373. type: string
  5374. namespace:
  5375. description: |-
  5376. The namespace of the Secret resource being referred to.
  5377. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5378. maxLength: 63
  5379. minLength: 1
  5380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5381. type: string
  5382. type: object
  5383. required:
  5384. - fingerprint
  5385. - identityId
  5386. - privateKey
  5387. - region
  5388. - tenancyId
  5389. - userId
  5390. type: object
  5391. tokenAuthCredentials:
  5392. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5393. properties:
  5394. accessToken:
  5395. description: |-
  5396. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5397. In some instances, `key` is a required field.
  5398. properties:
  5399. key:
  5400. description: |-
  5401. A key in the referenced Secret.
  5402. Some instances of this field may be defaulted, in others it may be required.
  5403. maxLength: 253
  5404. minLength: 1
  5405. pattern: ^[-._a-zA-Z0-9]+$
  5406. type: string
  5407. name:
  5408. description: The name of the Secret resource being referred to.
  5409. maxLength: 253
  5410. minLength: 1
  5411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5412. type: string
  5413. namespace:
  5414. description: |-
  5415. The namespace of the Secret resource being referred to.
  5416. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5417. maxLength: 63
  5418. minLength: 1
  5419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5420. type: string
  5421. type: object
  5422. required:
  5423. - accessToken
  5424. type: object
  5425. universalAuthCredentials:
  5426. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5427. properties:
  5428. clientId:
  5429. description: |-
  5430. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5431. In some instances, `key` is a required field.
  5432. properties:
  5433. key:
  5434. description: |-
  5435. A key in the referenced Secret.
  5436. Some instances of this field may be defaulted, in others it may be required.
  5437. maxLength: 253
  5438. minLength: 1
  5439. pattern: ^[-._a-zA-Z0-9]+$
  5440. type: string
  5441. name:
  5442. description: The name of the Secret resource being referred to.
  5443. maxLength: 253
  5444. minLength: 1
  5445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5446. type: string
  5447. namespace:
  5448. description: |-
  5449. The namespace of the Secret resource being referred to.
  5450. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5451. maxLength: 63
  5452. minLength: 1
  5453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5454. type: string
  5455. type: object
  5456. clientSecret:
  5457. description: |-
  5458. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5459. In some instances, `key` is a required field.
  5460. properties:
  5461. key:
  5462. description: |-
  5463. A key in the referenced Secret.
  5464. Some instances of this field may be defaulted, in others it may be required.
  5465. maxLength: 253
  5466. minLength: 1
  5467. pattern: ^[-._a-zA-Z0-9]+$
  5468. type: string
  5469. name:
  5470. description: The name of the Secret resource being referred to.
  5471. maxLength: 253
  5472. minLength: 1
  5473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5474. type: string
  5475. namespace:
  5476. description: |-
  5477. The namespace of the Secret resource being referred to.
  5478. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5479. maxLength: 63
  5480. minLength: 1
  5481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5482. type: string
  5483. type: object
  5484. required:
  5485. - clientId
  5486. - clientSecret
  5487. type: object
  5488. type: object
  5489. caBundle:
  5490. description: |-
  5491. CABundle is a PEM-encoded CA certificate bundle used to validate
  5492. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5493. format: byte
  5494. type: string
  5495. caProvider:
  5496. description: |-
  5497. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5498. The certificate is used to validate the Infisical server's TLS certificate.
  5499. Mutually exclusive with CABundle.
  5500. properties:
  5501. key:
  5502. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5503. maxLength: 253
  5504. minLength: 1
  5505. pattern: ^[-._a-zA-Z0-9]+$
  5506. type: string
  5507. name:
  5508. description: The name of the object located at the provider type.
  5509. maxLength: 253
  5510. minLength: 1
  5511. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5512. type: string
  5513. namespace:
  5514. description: |-
  5515. The namespace the Provider type is in.
  5516. Can only be defined when used in a ClusterSecretStore.
  5517. maxLength: 63
  5518. minLength: 1
  5519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5520. type: string
  5521. type:
  5522. description: The type of provider to use such as "Secret", or "ConfigMap".
  5523. enum:
  5524. - Secret
  5525. - ConfigMap
  5526. type: string
  5527. required:
  5528. - name
  5529. - type
  5530. type: object
  5531. hostAPI:
  5532. default: https://app.infisical.com/api
  5533. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5534. type: string
  5535. secretsScope:
  5536. description: SecretsScope defines the scope of the secrets within the workspace
  5537. properties:
  5538. environmentSlug:
  5539. description: EnvironmentSlug is the required slug identifier for the environment.
  5540. type: string
  5541. expandSecretReferences:
  5542. default: true
  5543. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5544. type: boolean
  5545. projectSlug:
  5546. description: ProjectSlug is the required slug identifier for the project.
  5547. type: string
  5548. recursive:
  5549. default: false
  5550. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5551. type: boolean
  5552. secretsPath:
  5553. default: /
  5554. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5555. type: string
  5556. required:
  5557. - environmentSlug
  5558. - projectSlug
  5559. type: object
  5560. required:
  5561. - auth
  5562. - secretsScope
  5563. type: object
  5564. keepersecurity:
  5565. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5566. properties:
  5567. authRef:
  5568. description: |-
  5569. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5570. In some instances, `key` is a required field.
  5571. properties:
  5572. key:
  5573. description: |-
  5574. A key in the referenced Secret.
  5575. Some instances of this field may be defaulted, in others it may be required.
  5576. maxLength: 253
  5577. minLength: 1
  5578. pattern: ^[-._a-zA-Z0-9]+$
  5579. type: string
  5580. name:
  5581. description: The name of the Secret resource being referred to.
  5582. maxLength: 253
  5583. minLength: 1
  5584. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5585. type: string
  5586. namespace:
  5587. description: |-
  5588. The namespace of the Secret resource being referred to.
  5589. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5590. maxLength: 63
  5591. minLength: 1
  5592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5593. type: string
  5594. type: object
  5595. folderID:
  5596. type: string
  5597. required:
  5598. - authRef
  5599. - folderID
  5600. type: object
  5601. kubernetes:
  5602. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5603. properties:
  5604. auth:
  5605. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5606. maxProperties: 1
  5607. minProperties: 1
  5608. properties:
  5609. cert:
  5610. description: has both clientCert and clientKey as secretKeySelector
  5611. properties:
  5612. clientCert:
  5613. description: |-
  5614. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5615. In some instances, `key` is a required field.
  5616. properties:
  5617. key:
  5618. description: |-
  5619. A key in the referenced Secret.
  5620. Some instances of this field may be defaulted, in others it may be required.
  5621. maxLength: 253
  5622. minLength: 1
  5623. pattern: ^[-._a-zA-Z0-9]+$
  5624. type: string
  5625. name:
  5626. description: The name of the Secret resource being referred to.
  5627. maxLength: 253
  5628. minLength: 1
  5629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5630. type: string
  5631. namespace:
  5632. description: |-
  5633. The namespace of the Secret resource being referred to.
  5634. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5635. maxLength: 63
  5636. minLength: 1
  5637. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5638. type: string
  5639. type: object
  5640. clientKey:
  5641. description: |-
  5642. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5643. In some instances, `key` is a required field.
  5644. properties:
  5645. key:
  5646. description: |-
  5647. A key in the referenced Secret.
  5648. Some instances of this field may be defaulted, in others it may be required.
  5649. maxLength: 253
  5650. minLength: 1
  5651. pattern: ^[-._a-zA-Z0-9]+$
  5652. type: string
  5653. name:
  5654. description: The name of the Secret resource being referred to.
  5655. maxLength: 253
  5656. minLength: 1
  5657. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5658. type: string
  5659. namespace:
  5660. description: |-
  5661. The namespace of the Secret resource being referred to.
  5662. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5663. maxLength: 63
  5664. minLength: 1
  5665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5666. type: string
  5667. type: object
  5668. type: object
  5669. serviceAccount:
  5670. description: points to a service account that should be used for authentication
  5671. properties:
  5672. audiences:
  5673. description: |-
  5674. Audience specifies the `aud` claim for the service account token
  5675. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5676. then this audiences will be appended to the list
  5677. items:
  5678. type: string
  5679. type: array
  5680. name:
  5681. description: The name of the ServiceAccount 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. Namespace of the 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. required:
  5695. - name
  5696. type: object
  5697. token:
  5698. description: use static token to authenticate with
  5699. properties:
  5700. bearerToken:
  5701. description: |-
  5702. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5703. In some instances, `key` is a required field.
  5704. properties:
  5705. key:
  5706. description: |-
  5707. A key in the referenced Secret.
  5708. Some instances of this field may be defaulted, in others it may be required.
  5709. maxLength: 253
  5710. minLength: 1
  5711. pattern: ^[-._a-zA-Z0-9]+$
  5712. type: string
  5713. name:
  5714. description: The name of the Secret resource being referred to.
  5715. maxLength: 253
  5716. minLength: 1
  5717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5718. type: string
  5719. namespace:
  5720. description: |-
  5721. The namespace of the Secret resource being referred to.
  5722. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5723. maxLength: 63
  5724. minLength: 1
  5725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5726. type: string
  5727. type: object
  5728. type: object
  5729. type: object
  5730. authRef:
  5731. description: A reference to a secret that contains the auth information.
  5732. properties:
  5733. key:
  5734. description: |-
  5735. A key in the referenced Secret.
  5736. Some instances of this field may be defaulted, in others it may be required.
  5737. maxLength: 253
  5738. minLength: 1
  5739. pattern: ^[-._a-zA-Z0-9]+$
  5740. type: string
  5741. name:
  5742. description: The name of the Secret resource being referred to.
  5743. maxLength: 253
  5744. minLength: 1
  5745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5746. type: string
  5747. namespace:
  5748. description: |-
  5749. The namespace of the Secret resource being referred to.
  5750. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5751. maxLength: 63
  5752. minLength: 1
  5753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5754. type: string
  5755. type: object
  5756. remoteNamespace:
  5757. default: default
  5758. description: Remote namespace to fetch the secrets from
  5759. maxLength: 63
  5760. minLength: 1
  5761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5762. type: string
  5763. server:
  5764. description: configures the Kubernetes server Address.
  5765. properties:
  5766. caBundle:
  5767. description: CABundle is a base64-encoded CA certificate
  5768. format: byte
  5769. type: string
  5770. caProvider:
  5771. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5772. properties:
  5773. key:
  5774. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5775. maxLength: 253
  5776. minLength: 1
  5777. pattern: ^[-._a-zA-Z0-9]+$
  5778. type: string
  5779. name:
  5780. description: The name of the object located at the provider type.
  5781. maxLength: 253
  5782. minLength: 1
  5783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5784. type: string
  5785. namespace:
  5786. description: |-
  5787. The namespace the Provider type is in.
  5788. Can only be defined when used in a ClusterSecretStore.
  5789. maxLength: 63
  5790. minLength: 1
  5791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5792. type: string
  5793. type:
  5794. description: The type of provider to use such as "Secret", or "ConfigMap".
  5795. enum:
  5796. - Secret
  5797. - ConfigMap
  5798. type: string
  5799. required:
  5800. - name
  5801. - type
  5802. type: object
  5803. url:
  5804. default: kubernetes.default
  5805. description: configures the Kubernetes server Address.
  5806. type: string
  5807. type: object
  5808. type: object
  5809. nebiusmysterybox:
  5810. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5811. properties:
  5812. apiDomain:
  5813. description: NebiusMysterybox API endpoint
  5814. type: string
  5815. auth:
  5816. description: Auth defines parameters to authenticate in MysteryBox
  5817. properties:
  5818. serviceAccountCredsSecretRef:
  5819. description: |-
  5820. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5821. document with service account credentials used to get an IAM token.
  5822. Expected JSON structure:
  5823. {
  5824. "subject-credentials": {
  5825. "alg": "RS256",
  5826. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5827. "kid": "<public-key-id>",
  5828. "iss": "<issuer-service-account-id>",
  5829. "sub": "<subject-service-account-id>"
  5830. }
  5831. }
  5832. properties:
  5833. key:
  5834. description: |-
  5835. A key in the referenced Secret.
  5836. Some instances of this field may be defaulted, in others it may be required.
  5837. maxLength: 253
  5838. minLength: 1
  5839. pattern: ^[-._a-zA-Z0-9]+$
  5840. type: string
  5841. name:
  5842. description: The name of the Secret resource being referred to.
  5843. maxLength: 253
  5844. minLength: 1
  5845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5846. type: string
  5847. namespace:
  5848. description: |-
  5849. The namespace of the Secret resource being referred to.
  5850. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5851. maxLength: 63
  5852. minLength: 1
  5853. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5854. type: string
  5855. type: object
  5856. tokenSecretRef:
  5857. description: Token authenticates with Nebius Mysterybox by presenting a token.
  5858. properties:
  5859. key:
  5860. description: |-
  5861. A key in the referenced Secret.
  5862. Some instances of this field may be defaulted, in others it may be required.
  5863. maxLength: 253
  5864. minLength: 1
  5865. pattern: ^[-._a-zA-Z0-9]+$
  5866. type: string
  5867. name:
  5868. description: The name of the Secret resource being referred to.
  5869. maxLength: 253
  5870. minLength: 1
  5871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5872. type: string
  5873. namespace:
  5874. description: |-
  5875. The namespace of the Secret resource being referred to.
  5876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5877. maxLength: 63
  5878. minLength: 1
  5879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5880. type: string
  5881. type: object
  5882. type: object
  5883. x-kubernetes-validations:
  5884. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5885. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5886. caProvider:
  5887. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5888. properties:
  5889. certSecretRef:
  5890. description: |-
  5891. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5892. In some instances, `key` is a required field.
  5893. properties:
  5894. key:
  5895. description: |-
  5896. A key in the referenced Secret.
  5897. Some instances of this field may be defaulted, in others it may be required.
  5898. maxLength: 253
  5899. minLength: 1
  5900. pattern: ^[-._a-zA-Z0-9]+$
  5901. type: string
  5902. name:
  5903. description: The name of the Secret resource being referred to.
  5904. maxLength: 253
  5905. minLength: 1
  5906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5907. type: string
  5908. namespace:
  5909. description: |-
  5910. The namespace of the Secret resource being referred to.
  5911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5912. maxLength: 63
  5913. minLength: 1
  5914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5915. type: string
  5916. type: object
  5917. type: object
  5918. required:
  5919. - apiDomain
  5920. - auth
  5921. type: object
  5922. ngrok:
  5923. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5924. properties:
  5925. apiUrl:
  5926. default: https://api.ngrok.com
  5927. description: APIURL is the URL of the ngrok API.
  5928. type: string
  5929. auth:
  5930. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5931. maxProperties: 1
  5932. minProperties: 1
  5933. properties:
  5934. apiKey:
  5935. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5936. properties:
  5937. secretRef:
  5938. description: SecretRef is a reference to a secret containing the ngrok API key.
  5939. properties:
  5940. key:
  5941. description: |-
  5942. A key in the referenced Secret.
  5943. Some instances of this field may be defaulted, in others it may be required.
  5944. maxLength: 253
  5945. minLength: 1
  5946. pattern: ^[-._a-zA-Z0-9]+$
  5947. type: string
  5948. name:
  5949. description: The name of the Secret resource being referred to.
  5950. maxLength: 253
  5951. minLength: 1
  5952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5953. type: string
  5954. namespace:
  5955. description: |-
  5956. The namespace of the Secret resource being referred to.
  5957. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5958. maxLength: 63
  5959. minLength: 1
  5960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5961. type: string
  5962. type: object
  5963. type: object
  5964. type: object
  5965. vault:
  5966. description: Vault configures the ngrok vault to sync secrets with.
  5967. properties:
  5968. name:
  5969. description: Name is the name of the ngrok vault to sync secrets with.
  5970. type: string
  5971. required:
  5972. - name
  5973. type: object
  5974. required:
  5975. - auth
  5976. - vault
  5977. type: object
  5978. onboardbase:
  5979. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5980. properties:
  5981. apiHost:
  5982. default: https://public.onboardbase.com/api/v1/
  5983. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5984. type: string
  5985. auth:
  5986. description: Auth configures how the Operator authenticates with the Onboardbase API
  5987. properties:
  5988. apiKeyRef:
  5989. description: |-
  5990. OnboardbaseAPIKey is the APIKey generated by an admin account.
  5991. It is used to recognize and authorize access to a project and environment within onboardbase
  5992. properties:
  5993. key:
  5994. description: |-
  5995. A key in the referenced Secret.
  5996. Some instances of this field may be defaulted, in others it may be required.
  5997. maxLength: 253
  5998. minLength: 1
  5999. pattern: ^[-._a-zA-Z0-9]+$
  6000. type: string
  6001. name:
  6002. description: The name of the Secret resource being referred to.
  6003. maxLength: 253
  6004. minLength: 1
  6005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6006. type: string
  6007. namespace:
  6008. description: |-
  6009. The namespace of the Secret resource being referred to.
  6010. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6011. maxLength: 63
  6012. minLength: 1
  6013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6014. type: string
  6015. type: object
  6016. passcodeRef:
  6017. description: OnboardbasePasscode is the passcode attached to the API 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. required:
  6043. - apiKeyRef
  6044. - passcodeRef
  6045. type: object
  6046. environment:
  6047. default: development
  6048. description: Environment is the name of an environmnent within a project to pull the secrets from
  6049. type: string
  6050. project:
  6051. default: development
  6052. description: Project is an onboardbase project that the secrets should be pulled from
  6053. type: string
  6054. required:
  6055. - apiHost
  6056. - auth
  6057. - environment
  6058. - project
  6059. type: object
  6060. onepassword:
  6061. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  6062. properties:
  6063. auth:
  6064. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  6065. properties:
  6066. secretRef:
  6067. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  6068. properties:
  6069. connectTokenSecretRef:
  6070. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  6071. properties:
  6072. key:
  6073. description: |-
  6074. A key in the referenced Secret.
  6075. Some instances of this field may be defaulted, in others it may be required.
  6076. maxLength: 253
  6077. minLength: 1
  6078. pattern: ^[-._a-zA-Z0-9]+$
  6079. type: string
  6080. name:
  6081. description: The name of the Secret resource being referred to.
  6082. maxLength: 253
  6083. minLength: 1
  6084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6085. type: string
  6086. namespace:
  6087. description: |-
  6088. The namespace of the Secret resource being referred to.
  6089. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6090. maxLength: 63
  6091. minLength: 1
  6092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6093. type: string
  6094. type: object
  6095. required:
  6096. - connectTokenSecretRef
  6097. type: object
  6098. required:
  6099. - secretRef
  6100. type: object
  6101. connectHost:
  6102. description: ConnectHost defines the OnePassword Connect Server to connect to
  6103. type: string
  6104. vaults:
  6105. additionalProperties:
  6106. type: integer
  6107. description: Vaults defines which OnePassword vaults to search in which order
  6108. type: object
  6109. required:
  6110. - auth
  6111. - connectHost
  6112. - vaults
  6113. type: object
  6114. onepasswordSDK:
  6115. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  6116. properties:
  6117. auth:
  6118. description: Auth defines the information necessary to authenticate against OnePassword API.
  6119. properties:
  6120. serviceAccountSecretRef:
  6121. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  6122. properties:
  6123. key:
  6124. description: |-
  6125. A key in the referenced Secret.
  6126. Some instances of this field may be defaulted, in others it may be required.
  6127. maxLength: 253
  6128. minLength: 1
  6129. pattern: ^[-._a-zA-Z0-9]+$
  6130. type: string
  6131. name:
  6132. description: The name of the Secret resource being referred to.
  6133. maxLength: 253
  6134. minLength: 1
  6135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6136. type: string
  6137. namespace:
  6138. description: |-
  6139. The namespace of the Secret resource being referred to.
  6140. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6141. maxLength: 63
  6142. minLength: 1
  6143. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6144. type: string
  6145. type: object
  6146. required:
  6147. - serviceAccountSecretRef
  6148. type: object
  6149. cache:
  6150. description: |-
  6151. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  6152. When enabled, secrets are cached with the specified TTL.
  6153. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  6154. If omitted, caching is disabled (default).
  6155. cache: {} is a valid option to set.
  6156. properties:
  6157. maxSize:
  6158. default: 100
  6159. description: |-
  6160. MaxSize is the maximum number of secrets to cache.
  6161. When the cache is full, least-recently-used entries are evicted.
  6162. minimum: 1
  6163. type: integer
  6164. ttl:
  6165. default: 5m
  6166. description: |-
  6167. TTL is the time-to-live for cached secrets.
  6168. Format: duration string (e.g., "5m", "1h", "30s")
  6169. type: string
  6170. type: object
  6171. integrationInfo:
  6172. description: |-
  6173. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  6174. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  6175. properties:
  6176. name:
  6177. default: 1Password SDK
  6178. description: Name defaults to "1Password SDK".
  6179. type: string
  6180. version:
  6181. default: v1.0.0
  6182. description: Version defaults to "v1.0.0".
  6183. type: string
  6184. type: object
  6185. vault:
  6186. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  6187. type: string
  6188. required:
  6189. - auth
  6190. - vault
  6191. type: object
  6192. oracle:
  6193. description: Oracle configures this store to sync secrets using Oracle Vault provider
  6194. properties:
  6195. auth:
  6196. description: |-
  6197. Auth configures how secret-manager authenticates with the Oracle Vault.
  6198. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  6199. properties:
  6200. secretRef:
  6201. description: SecretRef to pass through sensitive information.
  6202. properties:
  6203. fingerprint:
  6204. description: Fingerprint is the fingerprint of the API private key.
  6205. properties:
  6206. key:
  6207. description: |-
  6208. A key in the referenced Secret.
  6209. Some instances of this field may be defaulted, in others it may be required.
  6210. maxLength: 253
  6211. minLength: 1
  6212. pattern: ^[-._a-zA-Z0-9]+$
  6213. type: string
  6214. name:
  6215. description: The name of the Secret resource being referred to.
  6216. maxLength: 253
  6217. minLength: 1
  6218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6219. type: string
  6220. namespace:
  6221. description: |-
  6222. The namespace of the Secret resource being referred to.
  6223. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6224. maxLength: 63
  6225. minLength: 1
  6226. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6227. type: string
  6228. type: object
  6229. privatekey:
  6230. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6231. properties:
  6232. key:
  6233. description: |-
  6234. A key in the referenced Secret.
  6235. Some instances of this field may be defaulted, in others it may be required.
  6236. maxLength: 253
  6237. minLength: 1
  6238. pattern: ^[-._a-zA-Z0-9]+$
  6239. type: string
  6240. name:
  6241. description: The name of the Secret resource being referred to.
  6242. maxLength: 253
  6243. minLength: 1
  6244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6245. type: string
  6246. namespace:
  6247. description: |-
  6248. The namespace of the Secret resource being referred to.
  6249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6250. maxLength: 63
  6251. minLength: 1
  6252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6253. type: string
  6254. type: object
  6255. required:
  6256. - fingerprint
  6257. - privatekey
  6258. type: object
  6259. tenancy:
  6260. description: Tenancy is the tenancy OCID where user is located.
  6261. type: string
  6262. user:
  6263. description: User is an access OCID specific to the account.
  6264. type: string
  6265. required:
  6266. - secretRef
  6267. - tenancy
  6268. - user
  6269. type: object
  6270. compartment:
  6271. description: |-
  6272. Compartment is the vault compartment OCID.
  6273. Required for PushSecret
  6274. type: string
  6275. encryptionKey:
  6276. description: |-
  6277. EncryptionKey is the OCID of the encryption key within the vault.
  6278. Required for PushSecret
  6279. type: string
  6280. principalType:
  6281. description: |-
  6282. The type of principal to use for authentication. If left blank, the Auth struct will
  6283. determine the principal type. This optional field must be specified if using
  6284. workload identity.
  6285. enum:
  6286. - ""
  6287. - UserPrincipal
  6288. - InstancePrincipal
  6289. - Workload
  6290. type: string
  6291. region:
  6292. description: Region is the region where vault is located.
  6293. type: string
  6294. serviceAccountRef:
  6295. description: |-
  6296. ServiceAccountRef specified the service account
  6297. that should be used when authenticating with WorkloadIdentity.
  6298. properties:
  6299. audiences:
  6300. description: |-
  6301. Audience specifies the `aud` claim for the service account token
  6302. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6303. then this audiences will be appended to the list
  6304. items:
  6305. type: string
  6306. type: array
  6307. name:
  6308. description: The name of the ServiceAccount resource being referred to.
  6309. maxLength: 253
  6310. minLength: 1
  6311. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6312. type: string
  6313. namespace:
  6314. description: |-
  6315. Namespace of the resource being referred to.
  6316. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6317. maxLength: 63
  6318. minLength: 1
  6319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6320. type: string
  6321. required:
  6322. - name
  6323. type: object
  6324. vault:
  6325. description: Vault is the vault's OCID of the specific vault where secret is located.
  6326. type: string
  6327. required:
  6328. - region
  6329. - vault
  6330. type: object
  6331. ovh:
  6332. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6333. properties:
  6334. auth:
  6335. description: Authentication method (mtls or token).
  6336. properties:
  6337. mtls:
  6338. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6339. properties:
  6340. caBundle:
  6341. format: byte
  6342. type: string
  6343. caProvider:
  6344. description: |-
  6345. CAProvider provides a custom certificate authority for accessing the provider's store.
  6346. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6347. properties:
  6348. key:
  6349. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6350. maxLength: 253
  6351. minLength: 1
  6352. pattern: ^[-._a-zA-Z0-9]+$
  6353. type: string
  6354. name:
  6355. description: The name of the object located at the provider type.
  6356. maxLength: 253
  6357. minLength: 1
  6358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6359. type: string
  6360. namespace:
  6361. description: |-
  6362. The namespace the Provider type is in.
  6363. Can only be defined when used in a ClusterSecretStore.
  6364. maxLength: 63
  6365. minLength: 1
  6366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6367. type: string
  6368. type:
  6369. description: The type of provider to use such as "Secret", or "ConfigMap".
  6370. enum:
  6371. - Secret
  6372. - ConfigMap
  6373. type: string
  6374. required:
  6375. - name
  6376. - type
  6377. type: object
  6378. certSecretRef:
  6379. description: |-
  6380. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6381. In some instances, `key` is a required field.
  6382. properties:
  6383. key:
  6384. description: |-
  6385. A key in the referenced Secret.
  6386. Some instances of this field may be defaulted, in others it may be required.
  6387. maxLength: 253
  6388. minLength: 1
  6389. pattern: ^[-._a-zA-Z0-9]+$
  6390. type: string
  6391. name:
  6392. description: The name of the Secret resource being referred to.
  6393. maxLength: 253
  6394. minLength: 1
  6395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6396. type: string
  6397. namespace:
  6398. description: |-
  6399. The namespace of the Secret resource being referred to.
  6400. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6401. maxLength: 63
  6402. minLength: 1
  6403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6404. type: string
  6405. type: object
  6406. keySecretRef:
  6407. description: |-
  6408. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6409. In some instances, `key` is a required field.
  6410. properties:
  6411. key:
  6412. description: |-
  6413. A key in the referenced Secret.
  6414. Some instances of this field may be defaulted, in others it may be required.
  6415. maxLength: 253
  6416. minLength: 1
  6417. pattern: ^[-._a-zA-Z0-9]+$
  6418. type: string
  6419. name:
  6420. description: The name of the Secret resource being referred to.
  6421. maxLength: 253
  6422. minLength: 1
  6423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6424. type: string
  6425. namespace:
  6426. description: |-
  6427. The namespace of the Secret resource being referred to.
  6428. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6429. maxLength: 63
  6430. minLength: 1
  6431. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6432. type: string
  6433. type: object
  6434. required:
  6435. - certSecretRef
  6436. - keySecretRef
  6437. type: object
  6438. token:
  6439. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6440. properties:
  6441. tokenSecretRef:
  6442. description: |-
  6443. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6444. In some instances, `key` is a required field.
  6445. properties:
  6446. key:
  6447. description: |-
  6448. A key in the referenced Secret.
  6449. Some instances of this field may be defaulted, in others it may be required.
  6450. maxLength: 253
  6451. minLength: 1
  6452. pattern: ^[-._a-zA-Z0-9]+$
  6453. type: string
  6454. name:
  6455. description: The name of the Secret resource being referred to.
  6456. maxLength: 253
  6457. minLength: 1
  6458. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6459. type: string
  6460. namespace:
  6461. description: |-
  6462. The namespace of the Secret resource being referred to.
  6463. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6464. maxLength: 63
  6465. minLength: 1
  6466. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6467. type: string
  6468. type: object
  6469. required:
  6470. - tokenSecretRef
  6471. type: object
  6472. type: object
  6473. casRequired:
  6474. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6475. type: boolean
  6476. okmsTimeout:
  6477. default: 30
  6478. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6479. format: int32
  6480. minimum: 1
  6481. type: integer
  6482. okmsid:
  6483. description: specifies the OKMS ID.
  6484. type: string
  6485. server:
  6486. description: specifies the OKMS server endpoint.
  6487. type: string
  6488. required:
  6489. - auth
  6490. - okmsid
  6491. - server
  6492. type: object
  6493. passbolt:
  6494. description: |-
  6495. PassboltProvider provides access to Passbolt secrets manager.
  6496. See: https://www.passbolt.com.
  6497. properties:
  6498. auth:
  6499. description: Auth defines the information necessary to authenticate against Passbolt Server
  6500. properties:
  6501. passwordSecretRef:
  6502. description: |-
  6503. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6504. In some instances, `key` is a required field.
  6505. properties:
  6506. key:
  6507. description: |-
  6508. A key in the referenced Secret.
  6509. Some instances of this field may be defaulted, in others it may be required.
  6510. maxLength: 253
  6511. minLength: 1
  6512. pattern: ^[-._a-zA-Z0-9]+$
  6513. type: string
  6514. name:
  6515. description: The name of the Secret resource being referred to.
  6516. maxLength: 253
  6517. minLength: 1
  6518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6519. type: string
  6520. namespace:
  6521. description: |-
  6522. The namespace of the Secret resource being referred to.
  6523. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6524. maxLength: 63
  6525. minLength: 1
  6526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6527. type: string
  6528. type: object
  6529. privateKeySecretRef:
  6530. description: |-
  6531. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6532. In some instances, `key` is a required field.
  6533. properties:
  6534. key:
  6535. description: |-
  6536. A key in the referenced Secret.
  6537. Some instances of this field may be defaulted, in others it may be required.
  6538. maxLength: 253
  6539. minLength: 1
  6540. pattern: ^[-._a-zA-Z0-9]+$
  6541. type: string
  6542. name:
  6543. description: The name of the Secret resource being referred to.
  6544. maxLength: 253
  6545. minLength: 1
  6546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6547. type: string
  6548. namespace:
  6549. description: |-
  6550. The namespace of the Secret resource being referred to.
  6551. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6552. maxLength: 63
  6553. minLength: 1
  6554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6555. type: string
  6556. type: object
  6557. required:
  6558. - passwordSecretRef
  6559. - privateKeySecretRef
  6560. type: object
  6561. host:
  6562. description: Host defines the Passbolt Server to connect to
  6563. type: string
  6564. required:
  6565. - auth
  6566. - host
  6567. type: object
  6568. passworddepot:
  6569. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6570. properties:
  6571. auth:
  6572. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6573. properties:
  6574. secretRef:
  6575. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6576. properties:
  6577. credentials:
  6578. description: Username / Password is used for authentication.
  6579. properties:
  6580. key:
  6581. description: |-
  6582. A key in the referenced Secret.
  6583. Some instances of this field may be defaulted, in others it may be required.
  6584. maxLength: 253
  6585. minLength: 1
  6586. pattern: ^[-._a-zA-Z0-9]+$
  6587. type: string
  6588. name:
  6589. description: The name of the Secret resource being referred to.
  6590. maxLength: 253
  6591. minLength: 1
  6592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6593. type: string
  6594. namespace:
  6595. description: |-
  6596. The namespace of the Secret resource being referred to.
  6597. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6598. maxLength: 63
  6599. minLength: 1
  6600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6601. type: string
  6602. type: object
  6603. type: object
  6604. required:
  6605. - secretRef
  6606. type: object
  6607. database:
  6608. description: Database to use as source
  6609. type: string
  6610. host:
  6611. description: URL configures the Password Depot instance URL.
  6612. type: string
  6613. required:
  6614. - auth
  6615. - database
  6616. - host
  6617. type: object
  6618. previder:
  6619. description: Previder configures this store to sync secrets using the Previder provider
  6620. properties:
  6621. auth:
  6622. description: PreviderAuth contains a secretRef for credentials.
  6623. properties:
  6624. secretRef:
  6625. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6626. properties:
  6627. accessToken:
  6628. description: The AccessToken is used for authentication
  6629. properties:
  6630. key:
  6631. description: |-
  6632. A key in the referenced Secret.
  6633. Some instances of this field may be defaulted, in others it may be required.
  6634. maxLength: 253
  6635. minLength: 1
  6636. pattern: ^[-._a-zA-Z0-9]+$
  6637. type: string
  6638. name:
  6639. description: The name of the Secret resource being referred to.
  6640. maxLength: 253
  6641. minLength: 1
  6642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6643. type: string
  6644. namespace:
  6645. description: |-
  6646. The namespace of the Secret resource being referred to.
  6647. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6648. maxLength: 63
  6649. minLength: 1
  6650. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6651. type: string
  6652. type: object
  6653. required:
  6654. - accessToken
  6655. type: object
  6656. type: object
  6657. baseUri:
  6658. type: string
  6659. required:
  6660. - auth
  6661. type: object
  6662. pulumi:
  6663. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6664. properties:
  6665. accessToken:
  6666. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6667. properties:
  6668. secretRef:
  6669. description: SecretRef is a reference to a secret containing the Pulumi API token.
  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. type: object
  6695. apiUrl:
  6696. default: https://api.pulumi.com/api/esc
  6697. description: APIURL is the URL of the Pulumi API.
  6698. type: string
  6699. environment:
  6700. description: |-
  6701. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  6702. dynamically retrieved values from supported providers including all major clouds,
  6703. and other Pulumi ESC environments.
  6704. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  6705. type: string
  6706. organization:
  6707. description: |-
  6708. Organization are a space to collaborate on shared projects and stacks.
  6709. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  6710. type: string
  6711. project:
  6712. description: Project is the name of the Pulumi ESC project the environment belongs to.
  6713. type: string
  6714. required:
  6715. - accessToken
  6716. - environment
  6717. - organization
  6718. - project
  6719. type: object
  6720. scaleway:
  6721. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  6722. properties:
  6723. accessKey:
  6724. description: AccessKey is the non-secret part of the api key.
  6725. properties:
  6726. secretRef:
  6727. description: SecretRef references a key in a secret that will be used as value.
  6728. properties:
  6729. key:
  6730. description: |-
  6731. A key in the referenced Secret.
  6732. Some instances of this field may be defaulted, in others it may be required.
  6733. maxLength: 253
  6734. minLength: 1
  6735. pattern: ^[-._a-zA-Z0-9]+$
  6736. type: string
  6737. name:
  6738. description: The name of the Secret resource being referred to.
  6739. maxLength: 253
  6740. minLength: 1
  6741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6742. type: string
  6743. namespace:
  6744. description: |-
  6745. The namespace of the Secret resource being referred to.
  6746. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6747. maxLength: 63
  6748. minLength: 1
  6749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6750. type: string
  6751. type: object
  6752. value:
  6753. description: Value can be specified directly to set a value without using a secret.
  6754. type: string
  6755. type: object
  6756. apiUrl:
  6757. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  6758. type: string
  6759. projectId:
  6760. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  6761. type: string
  6762. region:
  6763. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  6764. type: string
  6765. secretKey:
  6766. description: SecretKey is the non-secret part of the api key.
  6767. properties:
  6768. secretRef:
  6769. description: SecretRef references a key in a secret that will be used as value.
  6770. properties:
  6771. key:
  6772. description: |-
  6773. A key in the referenced Secret.
  6774. Some instances of this field may be defaulted, in others it may be required.
  6775. maxLength: 253
  6776. minLength: 1
  6777. pattern: ^[-._a-zA-Z0-9]+$
  6778. type: string
  6779. name:
  6780. description: The name of the Secret resource being referred to.
  6781. maxLength: 253
  6782. minLength: 1
  6783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6784. type: string
  6785. namespace:
  6786. description: |-
  6787. The namespace of the Secret resource being referred to.
  6788. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6789. maxLength: 63
  6790. minLength: 1
  6791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6792. type: string
  6793. type: object
  6794. value:
  6795. description: Value can be specified directly to set a value without using a secret.
  6796. type: string
  6797. type: object
  6798. required:
  6799. - accessKey
  6800. - projectId
  6801. - region
  6802. - secretKey
  6803. type: object
  6804. secretserver:
  6805. description: |-
  6806. SecretServer configures this store to sync secrets using SecretServer provider
  6807. https://docs.delinea.com/online-help/secret-server/start.htm
  6808. properties:
  6809. caBundle:
  6810. description: |-
  6811. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  6812. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  6813. are used to validate the TLS connection.
  6814. format: byte
  6815. type: string
  6816. caProvider:
  6817. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  6818. properties:
  6819. key:
  6820. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6821. maxLength: 253
  6822. minLength: 1
  6823. pattern: ^[-._a-zA-Z0-9]+$
  6824. type: string
  6825. name:
  6826. description: The name of the object located at the provider type.
  6827. maxLength: 253
  6828. minLength: 1
  6829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6830. type: string
  6831. namespace:
  6832. description: |-
  6833. The namespace the Provider type is in.
  6834. Can only be defined when used in a ClusterSecretStore.
  6835. maxLength: 63
  6836. minLength: 1
  6837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6838. type: string
  6839. type:
  6840. description: The type of provider to use such as "Secret", or "ConfigMap".
  6841. enum:
  6842. - Secret
  6843. - ConfigMap
  6844. type: string
  6845. required:
  6846. - name
  6847. - type
  6848. type: object
  6849. domain:
  6850. description: Domain is the secret server domain.
  6851. type: string
  6852. password:
  6853. description: Password is the secret server account password.
  6854. properties:
  6855. secretRef:
  6856. description: SecretRef references a key in a secret that will be used as value.
  6857. properties:
  6858. key:
  6859. description: |-
  6860. A key in the referenced Secret.
  6861. Some instances of this field may be defaulted, in others it may be required.
  6862. maxLength: 253
  6863. minLength: 1
  6864. pattern: ^[-._a-zA-Z0-9]+$
  6865. type: string
  6866. name:
  6867. description: The name of the Secret resource being referred to.
  6868. maxLength: 253
  6869. minLength: 1
  6870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6871. type: string
  6872. namespace:
  6873. description: |-
  6874. The namespace of the Secret resource being referred to.
  6875. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6876. maxLength: 63
  6877. minLength: 1
  6878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6879. type: string
  6880. type: object
  6881. value:
  6882. description: Value can be specified directly to set a value without using a secret.
  6883. type: string
  6884. type: object
  6885. serverURL:
  6886. description: |-
  6887. ServerURL
  6888. URL to your secret server installation
  6889. type: string
  6890. username:
  6891. description: Username is the secret server account username.
  6892. properties:
  6893. secretRef:
  6894. description: SecretRef references a key in a secret that will be used as value.
  6895. properties:
  6896. key:
  6897. description: |-
  6898. A key in the referenced Secret.
  6899. Some instances of this field may be defaulted, in others it may be required.
  6900. maxLength: 253
  6901. minLength: 1
  6902. pattern: ^[-._a-zA-Z0-9]+$
  6903. type: string
  6904. name:
  6905. description: The name of the Secret resource being referred to.
  6906. maxLength: 253
  6907. minLength: 1
  6908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6909. type: string
  6910. namespace:
  6911. description: |-
  6912. The namespace of the Secret resource being referred to.
  6913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6914. maxLength: 63
  6915. minLength: 1
  6916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6917. type: string
  6918. type: object
  6919. value:
  6920. description: Value can be specified directly to set a value without using a secret.
  6921. type: string
  6922. type: object
  6923. required:
  6924. - password
  6925. - serverURL
  6926. - username
  6927. type: object
  6928. senhasegura:
  6929. description: Senhasegura configures this store to sync secrets using senhasegura provider
  6930. properties:
  6931. auth:
  6932. description: Auth defines parameters to authenticate in senhasegura
  6933. properties:
  6934. clientId:
  6935. type: string
  6936. clientSecretSecretRef:
  6937. description: |-
  6938. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6939. In some instances, `key` is a required field.
  6940. properties:
  6941. key:
  6942. description: |-
  6943. A key in the referenced Secret.
  6944. Some instances of this field may be defaulted, in others it may be required.
  6945. maxLength: 253
  6946. minLength: 1
  6947. pattern: ^[-._a-zA-Z0-9]+$
  6948. type: string
  6949. name:
  6950. description: The name of the Secret resource being referred to.
  6951. maxLength: 253
  6952. minLength: 1
  6953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6954. type: string
  6955. namespace:
  6956. description: |-
  6957. The namespace of the Secret resource being referred to.
  6958. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6959. maxLength: 63
  6960. minLength: 1
  6961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6962. type: string
  6963. type: object
  6964. required:
  6965. - clientId
  6966. - clientSecretSecretRef
  6967. type: object
  6968. ignoreSslCertificate:
  6969. default: false
  6970. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  6971. type: boolean
  6972. module:
  6973. description: Module defines which senhasegura module should be used to get secrets
  6974. type: string
  6975. url:
  6976. description: URL of senhasegura
  6977. type: string
  6978. required:
  6979. - auth
  6980. - module
  6981. - url
  6982. type: object
  6983. vault:
  6984. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  6985. properties:
  6986. auth:
  6987. description: Auth configures how secret-manager authenticates with the Vault server.
  6988. properties:
  6989. appRole:
  6990. description: |-
  6991. AppRole authenticates with Vault using the App Role auth mechanism,
  6992. with the role and secret stored in a Kubernetes Secret resource.
  6993. properties:
  6994. path:
  6995. default: approle
  6996. description: |-
  6997. Path where the App Role authentication backend is mounted
  6998. in Vault, e.g: "approle"
  6999. type: string
  7000. roleId:
  7001. description: |-
  7002. RoleID configured in the App Role authentication backend when setting
  7003. up the authentication backend in Vault.
  7004. type: string
  7005. roleRef:
  7006. description: |-
  7007. Reference to a key in a Secret that contains the App Role ID used
  7008. to authenticate with Vault.
  7009. The `key` field must be specified and denotes which entry within the Secret
  7010. resource is used as the app role id.
  7011. properties:
  7012. key:
  7013. description: |-
  7014. A key in the referenced Secret.
  7015. Some instances of this field may be defaulted, in others it may be required.
  7016. maxLength: 253
  7017. minLength: 1
  7018. pattern: ^[-._a-zA-Z0-9]+$
  7019. type: string
  7020. name:
  7021. description: The name of the Secret resource being referred to.
  7022. maxLength: 253
  7023. minLength: 1
  7024. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7025. type: string
  7026. namespace:
  7027. description: |-
  7028. The namespace of the Secret resource being referred to.
  7029. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7030. maxLength: 63
  7031. minLength: 1
  7032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7033. type: string
  7034. type: object
  7035. secretRef:
  7036. description: |-
  7037. Reference to a key in a Secret that contains the App Role secret used
  7038. to authenticate with Vault.
  7039. The `key` field must be specified and denotes which entry within the Secret
  7040. resource is used as the app role secret.
  7041. properties:
  7042. key:
  7043. description: |-
  7044. A key in the referenced Secret.
  7045. Some instances of this field may be defaulted, in others it may be required.
  7046. maxLength: 253
  7047. minLength: 1
  7048. pattern: ^[-._a-zA-Z0-9]+$
  7049. type: string
  7050. name:
  7051. description: The name of the Secret resource being referred to.
  7052. maxLength: 253
  7053. minLength: 1
  7054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7055. type: string
  7056. namespace:
  7057. description: |-
  7058. The namespace of the Secret resource being referred to.
  7059. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7060. maxLength: 63
  7061. minLength: 1
  7062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7063. type: string
  7064. type: object
  7065. required:
  7066. - path
  7067. - secretRef
  7068. type: object
  7069. cert:
  7070. description: |-
  7071. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7072. Cert authentication method
  7073. properties:
  7074. clientCert:
  7075. description: |-
  7076. ClientCert is a certificate to authenticate using the Cert Vault
  7077. authentication method
  7078. properties:
  7079. key:
  7080. description: |-
  7081. A key in the referenced Secret.
  7082. Some instances of this field may be defaulted, in others it may be required.
  7083. maxLength: 253
  7084. minLength: 1
  7085. pattern: ^[-._a-zA-Z0-9]+$
  7086. type: string
  7087. name:
  7088. description: The name of the Secret resource being referred to.
  7089. maxLength: 253
  7090. minLength: 1
  7091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7092. type: string
  7093. namespace:
  7094. description: |-
  7095. The namespace of the Secret resource being referred to.
  7096. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7097. maxLength: 63
  7098. minLength: 1
  7099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7100. type: string
  7101. type: object
  7102. path:
  7103. default: cert
  7104. description: |-
  7105. Path where the Certificate authentication backend is mounted
  7106. in Vault, e.g: "cert"
  7107. type: string
  7108. secretRef:
  7109. description: |-
  7110. SecretRef to a key in a Secret resource containing client private key to
  7111. authenticate with Vault using the Cert authentication method
  7112. properties:
  7113. key:
  7114. description: |-
  7115. A key in the referenced Secret.
  7116. Some instances of this field may be defaulted, in others it may be required.
  7117. maxLength: 253
  7118. minLength: 1
  7119. pattern: ^[-._a-zA-Z0-9]+$
  7120. type: string
  7121. name:
  7122. description: The name of the Secret resource being referred to.
  7123. maxLength: 253
  7124. minLength: 1
  7125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7126. type: string
  7127. namespace:
  7128. description: |-
  7129. The namespace of the Secret resource being referred to.
  7130. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7131. maxLength: 63
  7132. minLength: 1
  7133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7134. type: string
  7135. type: object
  7136. vaultRole:
  7137. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  7138. type: string
  7139. type: object
  7140. gcp:
  7141. description: |-
  7142. Gcp authenticates with Vault using Google Cloud Platform authentication method
  7143. GCP authentication method
  7144. properties:
  7145. location:
  7146. description: Location optionally defines a location/region for the secret
  7147. type: string
  7148. path:
  7149. default: gcp
  7150. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  7151. type: string
  7152. projectID:
  7153. description: Project ID of the Google Cloud Platform project
  7154. type: string
  7155. role:
  7156. 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.
  7157. type: string
  7158. secretRef:
  7159. description: Specify credentials in a Secret object
  7160. properties:
  7161. secretAccessKeySecretRef:
  7162. description: The SecretAccessKey is used for authentication
  7163. properties:
  7164. key:
  7165. description: |-
  7166. A key in the referenced Secret.
  7167. Some instances of this field may be defaulted, in others it may be required.
  7168. maxLength: 253
  7169. minLength: 1
  7170. pattern: ^[-._a-zA-Z0-9]+$
  7171. type: string
  7172. name:
  7173. description: The name of the Secret resource being referred to.
  7174. maxLength: 253
  7175. minLength: 1
  7176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7177. type: string
  7178. namespace:
  7179. description: |-
  7180. The namespace of the Secret resource being referred to.
  7181. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7182. maxLength: 63
  7183. minLength: 1
  7184. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7185. type: string
  7186. type: object
  7187. type: object
  7188. serviceAccountRef:
  7189. description: ServiceAccountRef to a service account for impersonation
  7190. properties:
  7191. audiences:
  7192. description: |-
  7193. Audience specifies the `aud` claim for the service account token
  7194. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7195. then this audiences will be appended to the list
  7196. items:
  7197. type: string
  7198. type: array
  7199. name:
  7200. description: The name of the ServiceAccount resource being referred to.
  7201. maxLength: 253
  7202. minLength: 1
  7203. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7204. type: string
  7205. namespace:
  7206. description: |-
  7207. Namespace of the resource being referred to.
  7208. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7209. maxLength: 63
  7210. minLength: 1
  7211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7212. type: string
  7213. required:
  7214. - name
  7215. type: object
  7216. workloadIdentity:
  7217. description: Specify a service account with Workload Identity
  7218. properties:
  7219. clusterLocation:
  7220. description: |-
  7221. ClusterLocation is the location of the cluster
  7222. If not specified, it fetches information from the metadata server
  7223. type: string
  7224. clusterName:
  7225. description: |-
  7226. ClusterName is the name of the cluster
  7227. If not specified, it fetches information from the metadata server
  7228. type: string
  7229. clusterProjectID:
  7230. description: |-
  7231. ClusterProjectID is the project ID of the cluster
  7232. If not specified, it fetches information from the metadata server
  7233. type: string
  7234. serviceAccountRef:
  7235. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7236. properties:
  7237. audiences:
  7238. description: |-
  7239. Audience specifies the `aud` claim for the service account token
  7240. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7241. then this audiences will be appended to the list
  7242. items:
  7243. type: string
  7244. type: array
  7245. name:
  7246. description: The name of the ServiceAccount resource being referred to.
  7247. maxLength: 253
  7248. minLength: 1
  7249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7250. type: string
  7251. namespace:
  7252. description: |-
  7253. Namespace of the resource being referred to.
  7254. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7255. maxLength: 63
  7256. minLength: 1
  7257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7258. type: string
  7259. required:
  7260. - name
  7261. type: object
  7262. required:
  7263. - serviceAccountRef
  7264. type: object
  7265. required:
  7266. - role
  7267. type: object
  7268. iam:
  7269. description: |-
  7270. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7271. AWS IAM authentication method
  7272. properties:
  7273. externalID:
  7274. description: AWS External ID set on assumed IAM roles
  7275. type: string
  7276. jwt:
  7277. description: Specify a service account with IRSA enabled
  7278. properties:
  7279. serviceAccountRef:
  7280. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7281. properties:
  7282. audiences:
  7283. description: |-
  7284. Audience specifies the `aud` claim for the service account token
  7285. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7286. then this audiences will be appended to the list
  7287. items:
  7288. type: string
  7289. type: array
  7290. name:
  7291. description: The name of the ServiceAccount resource being referred to.
  7292. maxLength: 253
  7293. minLength: 1
  7294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7295. type: string
  7296. namespace:
  7297. description: |-
  7298. Namespace of the resource being referred to.
  7299. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7300. maxLength: 63
  7301. minLength: 1
  7302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7303. type: string
  7304. required:
  7305. - name
  7306. type: object
  7307. type: object
  7308. path:
  7309. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7310. type: string
  7311. region:
  7312. description: AWS region
  7313. type: string
  7314. role:
  7315. description: This is the AWS role to be assumed before talking to vault
  7316. type: string
  7317. secretRef:
  7318. description: Specify credentials in a Secret object
  7319. properties:
  7320. accessKeyIDSecretRef:
  7321. description: The AccessKeyID is used for authentication
  7322. properties:
  7323. key:
  7324. description: |-
  7325. A key in the referenced Secret.
  7326. Some instances of this field may be defaulted, in others it may be required.
  7327. maxLength: 253
  7328. minLength: 1
  7329. pattern: ^[-._a-zA-Z0-9]+$
  7330. type: string
  7331. name:
  7332. description: The name of the Secret resource being referred to.
  7333. maxLength: 253
  7334. minLength: 1
  7335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7336. type: string
  7337. namespace:
  7338. description: |-
  7339. The namespace of the Secret resource being referred to.
  7340. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7341. maxLength: 63
  7342. minLength: 1
  7343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7344. type: string
  7345. type: object
  7346. secretAccessKeySecretRef:
  7347. description: The SecretAccessKey is used for authentication
  7348. properties:
  7349. key:
  7350. description: |-
  7351. A key in the referenced Secret.
  7352. Some instances of this field may be defaulted, in others it may be required.
  7353. maxLength: 253
  7354. minLength: 1
  7355. pattern: ^[-._a-zA-Z0-9]+$
  7356. type: string
  7357. name:
  7358. description: The name of the Secret resource being referred to.
  7359. maxLength: 253
  7360. minLength: 1
  7361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7362. type: string
  7363. namespace:
  7364. description: |-
  7365. The namespace of the Secret resource being referred to.
  7366. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7367. maxLength: 63
  7368. minLength: 1
  7369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7370. type: string
  7371. type: object
  7372. sessionTokenSecretRef:
  7373. description: |-
  7374. The SessionToken used for authentication
  7375. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7376. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7377. properties:
  7378. key:
  7379. description: |-
  7380. A key in the referenced Secret.
  7381. Some instances of this field may be defaulted, in others it may be required.
  7382. maxLength: 253
  7383. minLength: 1
  7384. pattern: ^[-._a-zA-Z0-9]+$
  7385. type: string
  7386. name:
  7387. description: The name of the Secret resource being referred to.
  7388. maxLength: 253
  7389. minLength: 1
  7390. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7391. type: string
  7392. namespace:
  7393. description: |-
  7394. The namespace of the Secret resource being referred to.
  7395. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7396. maxLength: 63
  7397. minLength: 1
  7398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7399. type: string
  7400. type: object
  7401. type: object
  7402. vaultAwsIamServerID:
  7403. 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'
  7404. type: string
  7405. vaultRole:
  7406. 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
  7407. type: string
  7408. required:
  7409. - vaultRole
  7410. type: object
  7411. jwt:
  7412. description: |-
  7413. Jwt authenticates with Vault by passing role and JWT token using the
  7414. JWT/OIDC authentication method
  7415. properties:
  7416. kubernetesServiceAccountToken:
  7417. description: |-
  7418. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7419. a token for with the `TokenRequest` API.
  7420. properties:
  7421. audiences:
  7422. description: |-
  7423. Optional audiences field that will be used to request a temporary Kubernetes service
  7424. account token for the service account referenced by `serviceAccountRef`.
  7425. Defaults to a single audience `vault` it not specified.
  7426. Deprecated: use serviceAccountRef.Audiences instead
  7427. items:
  7428. type: string
  7429. type: array
  7430. expirationSeconds:
  7431. description: |-
  7432. Optional expiration time in seconds that will be used to request a temporary
  7433. Kubernetes service account token for the service account referenced by
  7434. `serviceAccountRef`.
  7435. Deprecated: this will be removed in the future.
  7436. Defaults to 10 minutes.
  7437. type: integer
  7438. serviceAccountRef:
  7439. description: Service account field containing the name of a kubernetes ServiceAccount.
  7440. properties:
  7441. audiences:
  7442. description: |-
  7443. Audience specifies the `aud` claim for the service account token
  7444. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7445. then this audiences will be appended to the list
  7446. items:
  7447. type: string
  7448. type: array
  7449. name:
  7450. description: The name of the ServiceAccount resource being referred to.
  7451. maxLength: 253
  7452. minLength: 1
  7453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7454. type: string
  7455. namespace:
  7456. description: |-
  7457. Namespace of the resource being referred to.
  7458. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7459. maxLength: 63
  7460. minLength: 1
  7461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7462. type: string
  7463. required:
  7464. - name
  7465. type: object
  7466. required:
  7467. - serviceAccountRef
  7468. type: object
  7469. path:
  7470. default: jwt
  7471. description: |-
  7472. Path where the JWT authentication backend is mounted
  7473. in Vault, e.g: "jwt"
  7474. type: string
  7475. role:
  7476. description: |-
  7477. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7478. authentication method
  7479. type: string
  7480. secretRef:
  7481. description: |-
  7482. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7483. authenticate with Vault using the JWT/OIDC authentication method.
  7484. properties:
  7485. key:
  7486. description: |-
  7487. A key in the referenced Secret.
  7488. Some instances of this field may be defaulted, in others it may be required.
  7489. maxLength: 253
  7490. minLength: 1
  7491. pattern: ^[-._a-zA-Z0-9]+$
  7492. type: string
  7493. name:
  7494. description: The name of the Secret resource being referred to.
  7495. maxLength: 253
  7496. minLength: 1
  7497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7498. type: string
  7499. namespace:
  7500. description: |-
  7501. The namespace of the Secret resource being referred to.
  7502. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7503. maxLength: 63
  7504. minLength: 1
  7505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7506. type: string
  7507. type: object
  7508. required:
  7509. - path
  7510. type: object
  7511. kubernetes:
  7512. description: |-
  7513. Kubernetes authenticates with Vault by passing the ServiceAccount
  7514. token stored in the named Secret resource to the Vault server.
  7515. properties:
  7516. mountPath:
  7517. default: kubernetes
  7518. description: |-
  7519. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7520. "kubernetes"
  7521. type: string
  7522. role:
  7523. description: |-
  7524. A required field containing the Vault Role to assume. A Role binds a
  7525. Kubernetes ServiceAccount with a set of Vault policies.
  7526. type: string
  7527. secretRef:
  7528. description: |-
  7529. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7530. for authenticating with Vault. If a name is specified without a key,
  7531. `token` is the default. If one is not specified, the one bound to
  7532. the controller will be used.
  7533. properties:
  7534. key:
  7535. description: |-
  7536. A key in the referenced Secret.
  7537. Some instances of this field may be defaulted, in others it may be required.
  7538. maxLength: 253
  7539. minLength: 1
  7540. pattern: ^[-._a-zA-Z0-9]+$
  7541. type: string
  7542. name:
  7543. description: The name of the Secret resource being referred to.
  7544. maxLength: 253
  7545. minLength: 1
  7546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7547. type: string
  7548. namespace:
  7549. description: |-
  7550. The namespace of the Secret resource being referred to.
  7551. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7552. maxLength: 63
  7553. minLength: 1
  7554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7555. type: string
  7556. type: object
  7557. serviceAccountRef:
  7558. description: |-
  7559. Optional service account field containing the name of a kubernetes ServiceAccount.
  7560. If the service account is specified, the service account secret token JWT will be used
  7561. for authenticating with Vault. If the service account selector is not supplied,
  7562. the secretRef will be used instead.
  7563. properties:
  7564. audiences:
  7565. description: |-
  7566. Audience specifies the `aud` claim for the service account token
  7567. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7568. then this audiences will be appended to the list
  7569. items:
  7570. type: string
  7571. type: array
  7572. name:
  7573. description: The name of the ServiceAccount resource being referred to.
  7574. maxLength: 253
  7575. minLength: 1
  7576. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7577. type: string
  7578. namespace:
  7579. description: |-
  7580. Namespace of the resource being referred to.
  7581. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7582. maxLength: 63
  7583. minLength: 1
  7584. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7585. type: string
  7586. required:
  7587. - name
  7588. type: object
  7589. required:
  7590. - mountPath
  7591. - role
  7592. type: object
  7593. ldap:
  7594. description: |-
  7595. Ldap authenticates with Vault by passing username/password pair using
  7596. the LDAP authentication method
  7597. properties:
  7598. path:
  7599. default: ldap
  7600. description: |-
  7601. Path where the LDAP authentication backend is mounted
  7602. in Vault, e.g: "ldap"
  7603. type: string
  7604. secretRef:
  7605. description: |-
  7606. SecretRef to a key in a Secret resource containing password for the LDAP
  7607. user used to authenticate with Vault using the LDAP authentication
  7608. method
  7609. properties:
  7610. key:
  7611. description: |-
  7612. A key in the referenced Secret.
  7613. Some instances of this field may be defaulted, in others it may be required.
  7614. maxLength: 253
  7615. minLength: 1
  7616. pattern: ^[-._a-zA-Z0-9]+$
  7617. type: string
  7618. name:
  7619. description: The name of the Secret resource being referred to.
  7620. maxLength: 253
  7621. minLength: 1
  7622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7623. type: string
  7624. namespace:
  7625. description: |-
  7626. The namespace of the Secret resource being referred to.
  7627. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7628. maxLength: 63
  7629. minLength: 1
  7630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7631. type: string
  7632. type: object
  7633. username:
  7634. description: |-
  7635. Username is an LDAP username used to authenticate using the LDAP Vault
  7636. authentication method
  7637. type: string
  7638. required:
  7639. - path
  7640. - username
  7641. type: object
  7642. namespace:
  7643. description: |-
  7644. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  7645. Namespaces is a set of features within Vault Enterprise that allows
  7646. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7647. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7648. This will default to Vault.Namespace field if set, or empty otherwise
  7649. type: string
  7650. tokenSecretRef:
  7651. description: TokenSecretRef authenticates with Vault by presenting a token.
  7652. properties:
  7653. key:
  7654. description: |-
  7655. A key in the referenced Secret.
  7656. Some instances of this field may be defaulted, in others it may be required.
  7657. maxLength: 253
  7658. minLength: 1
  7659. pattern: ^[-._a-zA-Z0-9]+$
  7660. type: string
  7661. name:
  7662. description: The name of the Secret resource being referred to.
  7663. maxLength: 253
  7664. minLength: 1
  7665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7666. type: string
  7667. namespace:
  7668. description: |-
  7669. The namespace of the Secret resource being referred to.
  7670. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7671. maxLength: 63
  7672. minLength: 1
  7673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7674. type: string
  7675. type: object
  7676. userPass:
  7677. description: UserPass authenticates with Vault by passing username/password pair
  7678. properties:
  7679. path:
  7680. default: userpass
  7681. description: |-
  7682. Path where the UserPassword authentication backend is mounted
  7683. in Vault, e.g: "userpass"
  7684. type: string
  7685. secretRef:
  7686. description: |-
  7687. SecretRef to a key in a Secret resource containing password for the
  7688. user used to authenticate with Vault using the UserPass authentication
  7689. method
  7690. properties:
  7691. key:
  7692. description: |-
  7693. A key in the referenced Secret.
  7694. Some instances of this field may be defaulted, in others it may be required.
  7695. maxLength: 253
  7696. minLength: 1
  7697. pattern: ^[-._a-zA-Z0-9]+$
  7698. type: string
  7699. name:
  7700. description: The name of the Secret resource being referred to.
  7701. maxLength: 253
  7702. minLength: 1
  7703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7704. type: string
  7705. namespace:
  7706. description: |-
  7707. The namespace of the Secret resource being referred to.
  7708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7709. maxLength: 63
  7710. minLength: 1
  7711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7712. type: string
  7713. type: object
  7714. username:
  7715. description: |-
  7716. Username is a username used to authenticate using the UserPass Vault
  7717. authentication method
  7718. type: string
  7719. required:
  7720. - path
  7721. - username
  7722. type: object
  7723. type: object
  7724. caBundle:
  7725. description: |-
  7726. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7727. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7728. plain HTTP protocol connection. If not set the system root certificates
  7729. are used to validate the TLS connection.
  7730. format: byte
  7731. type: string
  7732. caProvider:
  7733. description: The provider for the CA bundle to use to validate Vault server certificate.
  7734. properties:
  7735. key:
  7736. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7737. maxLength: 253
  7738. minLength: 1
  7739. pattern: ^[-._a-zA-Z0-9]+$
  7740. type: string
  7741. name:
  7742. description: The name of the object located at the provider type.
  7743. maxLength: 253
  7744. minLength: 1
  7745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7746. type: string
  7747. namespace:
  7748. description: |-
  7749. The namespace the Provider type is in.
  7750. Can only be defined when used in a ClusterSecretStore.
  7751. maxLength: 63
  7752. minLength: 1
  7753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7754. type: string
  7755. type:
  7756. description: The type of provider to use such as "Secret", or "ConfigMap".
  7757. enum:
  7758. - Secret
  7759. - ConfigMap
  7760. type: string
  7761. required:
  7762. - name
  7763. - type
  7764. type: object
  7765. checkAndSet:
  7766. description: |-
  7767. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  7768. Only applies to Vault KV v2 stores. When enabled, write operations must include
  7769. the current version of the secret to prevent unintentional overwrites.
  7770. properties:
  7771. required:
  7772. description: |-
  7773. Required when true, all write operations must include a check-and-set parameter.
  7774. This helps prevent unintentional overwrites of secrets.
  7775. type: boolean
  7776. type: object
  7777. forwardInconsistent:
  7778. description: |-
  7779. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7780. leader instead of simply retrying within a loop. This can increase performance if
  7781. the option is enabled serverside.
  7782. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7783. type: boolean
  7784. headers:
  7785. additionalProperties:
  7786. type: string
  7787. description: Headers to be added in Vault request
  7788. type: object
  7789. namespace:
  7790. description: |-
  7791. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7792. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7793. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7794. type: string
  7795. path:
  7796. description: |-
  7797. Path is the mount path of the Vault KV backend endpoint, e.g:
  7798. "secret". The v2 KV secret engine version specific "/data" path suffix
  7799. for fetching secrets from Vault is optional and will be appended
  7800. if not present in specified path.
  7801. type: string
  7802. readYourWrites:
  7803. description: |-
  7804. ReadYourWrites ensures isolated read-after-write semantics by
  7805. providing discovered cluster replication states in each request.
  7806. More information about eventual consistency in Vault can be found here
  7807. https://www.vaultproject.io/docs/enterprise/consistency
  7808. type: boolean
  7809. server:
  7810. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7811. type: string
  7812. tls:
  7813. description: |-
  7814. The configuration used for client side related TLS communication, when the Vault server
  7815. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  7816. This parameter is ignored for plain HTTP protocol connection.
  7817. It's worth noting this configuration is different from the "TLS certificates auth method",
  7818. which is available under the `auth.cert` section.
  7819. properties:
  7820. certSecretRef:
  7821. description: |-
  7822. CertSecretRef is a certificate added to the transport layer
  7823. when communicating with the Vault server.
  7824. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  7825. properties:
  7826. key:
  7827. description: |-
  7828. A key in the referenced Secret.
  7829. Some instances of this field may be defaulted, in others it may be required.
  7830. maxLength: 253
  7831. minLength: 1
  7832. pattern: ^[-._a-zA-Z0-9]+$
  7833. type: string
  7834. name:
  7835. description: The name of the Secret resource being referred to.
  7836. maxLength: 253
  7837. minLength: 1
  7838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7839. type: string
  7840. namespace:
  7841. description: |-
  7842. The namespace of the Secret resource being referred to.
  7843. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7844. maxLength: 63
  7845. minLength: 1
  7846. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7847. type: string
  7848. type: object
  7849. keySecretRef:
  7850. description: |-
  7851. KeySecretRef to a key in a Secret resource containing client private key
  7852. added to the transport layer when communicating with the Vault server.
  7853. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  7854. properties:
  7855. key:
  7856. description: |-
  7857. A key in the referenced Secret.
  7858. Some instances of this field may be defaulted, in others it may be required.
  7859. maxLength: 253
  7860. minLength: 1
  7861. pattern: ^[-._a-zA-Z0-9]+$
  7862. type: string
  7863. name:
  7864. description: The name of the Secret resource being referred to.
  7865. maxLength: 253
  7866. minLength: 1
  7867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7868. type: string
  7869. namespace:
  7870. description: |-
  7871. The namespace of the Secret resource being referred to.
  7872. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7873. maxLength: 63
  7874. minLength: 1
  7875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7876. type: string
  7877. type: object
  7878. type: object
  7879. version:
  7880. default: v2
  7881. description: |-
  7882. Version is the Vault KV secret engine version. This can be either "v1" or
  7883. "v2". Version defaults to "v2".
  7884. enum:
  7885. - v1
  7886. - v2
  7887. type: string
  7888. required:
  7889. - server
  7890. type: object
  7891. volcengine:
  7892. description: Volcengine configures this store to sync secrets using the Volcengine provider
  7893. properties:
  7894. auth:
  7895. description: |-
  7896. Auth defines the authentication method to use.
  7897. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  7898. properties:
  7899. secretRef:
  7900. description: |-
  7901. SecretRef defines the static credentials to use for authentication.
  7902. If not set, IRSA is used.
  7903. properties:
  7904. accessKeyID:
  7905. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  7906. properties:
  7907. key:
  7908. description: |-
  7909. A key in the referenced Secret.
  7910. Some instances of this field may be defaulted, in others it may be required.
  7911. maxLength: 253
  7912. minLength: 1
  7913. pattern: ^[-._a-zA-Z0-9]+$
  7914. type: string
  7915. name:
  7916. description: The name of the Secret resource being referred to.
  7917. maxLength: 253
  7918. minLength: 1
  7919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7920. type: string
  7921. namespace:
  7922. description: |-
  7923. The namespace of the Secret resource being referred to.
  7924. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7925. maxLength: 63
  7926. minLength: 1
  7927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7928. type: string
  7929. type: object
  7930. secretAccessKey:
  7931. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  7932. properties:
  7933. key:
  7934. description: |-
  7935. A key in the referenced Secret.
  7936. Some instances of this field may be defaulted, in others it may be required.
  7937. maxLength: 253
  7938. minLength: 1
  7939. pattern: ^[-._a-zA-Z0-9]+$
  7940. type: string
  7941. name:
  7942. description: The name of the Secret resource being referred to.
  7943. maxLength: 253
  7944. minLength: 1
  7945. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7946. type: string
  7947. namespace:
  7948. description: |-
  7949. The namespace of the Secret resource being referred to.
  7950. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7951. maxLength: 63
  7952. minLength: 1
  7953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7954. type: string
  7955. type: object
  7956. token:
  7957. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  7958. properties:
  7959. key:
  7960. description: |-
  7961. A key in the referenced Secret.
  7962. Some instances of this field may be defaulted, in others it may be required.
  7963. maxLength: 253
  7964. minLength: 1
  7965. pattern: ^[-._a-zA-Z0-9]+$
  7966. type: string
  7967. name:
  7968. description: The name of the Secret resource being referred to.
  7969. maxLength: 253
  7970. minLength: 1
  7971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7972. type: string
  7973. namespace:
  7974. description: |-
  7975. The namespace of the Secret resource being referred to.
  7976. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7977. maxLength: 63
  7978. minLength: 1
  7979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7980. type: string
  7981. type: object
  7982. required:
  7983. - accessKeyID
  7984. - secretAccessKey
  7985. type: object
  7986. type: object
  7987. region:
  7988. description: Region specifies the Volcengine region to connect to.
  7989. type: string
  7990. required:
  7991. - region
  7992. type: object
  7993. webhook:
  7994. description: Webhook configures this store to sync secrets using a generic templated webhook
  7995. properties:
  7996. auth:
  7997. description: Auth specifies a authorization protocol. Only one protocol may be set.
  7998. maxProperties: 1
  7999. minProperties: 1
  8000. properties:
  8001. ntlm:
  8002. description: NTLMProtocol configures the store to use NTLM for auth
  8003. properties:
  8004. passwordSecret:
  8005. description: |-
  8006. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8007. In some instances, `key` is a required field.
  8008. properties:
  8009. key:
  8010. description: |-
  8011. A key in the referenced Secret.
  8012. Some instances of this field may be defaulted, in others it may be required.
  8013. maxLength: 253
  8014. minLength: 1
  8015. pattern: ^[-._a-zA-Z0-9]+$
  8016. type: string
  8017. name:
  8018. description: The name of the Secret resource being referred to.
  8019. maxLength: 253
  8020. minLength: 1
  8021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8022. type: string
  8023. namespace:
  8024. description: |-
  8025. The namespace of the Secret resource being referred to.
  8026. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8027. maxLength: 63
  8028. minLength: 1
  8029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8030. type: string
  8031. type: object
  8032. usernameSecret:
  8033. description: |-
  8034. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8035. In some instances, `key` is a required field.
  8036. properties:
  8037. key:
  8038. description: |-
  8039. A key in the referenced Secret.
  8040. Some instances of this field may be defaulted, in others it may be required.
  8041. maxLength: 253
  8042. minLength: 1
  8043. pattern: ^[-._a-zA-Z0-9]+$
  8044. type: string
  8045. name:
  8046. description: The name of the Secret resource being referred to.
  8047. maxLength: 253
  8048. minLength: 1
  8049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8050. type: string
  8051. namespace:
  8052. description: |-
  8053. The namespace of the Secret resource being referred to.
  8054. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8055. maxLength: 63
  8056. minLength: 1
  8057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8058. type: string
  8059. type: object
  8060. required:
  8061. - passwordSecret
  8062. - usernameSecret
  8063. type: object
  8064. type: object
  8065. body:
  8066. description: Body
  8067. type: string
  8068. caBundle:
  8069. description: |-
  8070. PEM encoded CA bundle used to validate webhook server certificate. Only used
  8071. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8072. plain HTTP protocol connection. If not set the system root certificates
  8073. are used to validate the TLS connection.
  8074. format: byte
  8075. type: string
  8076. caProvider:
  8077. description: The provider for the CA bundle to use to validate webhook server certificate.
  8078. properties:
  8079. key:
  8080. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8081. maxLength: 253
  8082. minLength: 1
  8083. pattern: ^[-._a-zA-Z0-9]+$
  8084. type: string
  8085. name:
  8086. description: The name of the object located at the provider type.
  8087. maxLength: 253
  8088. minLength: 1
  8089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8090. type: string
  8091. namespace:
  8092. description: The namespace the Provider type is in.
  8093. maxLength: 63
  8094. minLength: 1
  8095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8096. type: string
  8097. type:
  8098. description: The type of provider to use such as "Secret", or "ConfigMap".
  8099. enum:
  8100. - Secret
  8101. - ConfigMap
  8102. type: string
  8103. required:
  8104. - name
  8105. - type
  8106. type: object
  8107. headers:
  8108. additionalProperties:
  8109. type: string
  8110. description: Headers
  8111. type: object
  8112. method:
  8113. description: Webhook Method
  8114. type: string
  8115. result:
  8116. description: Result formatting
  8117. properties:
  8118. jsonPath:
  8119. description: Json path of return value
  8120. type: string
  8121. type: object
  8122. secrets:
  8123. description: |-
  8124. Secrets to fill in templates
  8125. These secrets will be passed to the templating function as key value pairs under the given name
  8126. items:
  8127. description: WebhookSecret defines a secret that will be passed to the webhook request.
  8128. properties:
  8129. name:
  8130. description: Name of this secret in templates
  8131. type: string
  8132. secretRef:
  8133. description: Secret ref to fill in credentials
  8134. properties:
  8135. key:
  8136. description: |-
  8137. A key in the referenced Secret.
  8138. Some instances of this field may be defaulted, in others it may be required.
  8139. maxLength: 253
  8140. minLength: 1
  8141. pattern: ^[-._a-zA-Z0-9]+$
  8142. type: string
  8143. name:
  8144. description: The name of the Secret resource being referred to.
  8145. maxLength: 253
  8146. minLength: 1
  8147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8148. type: string
  8149. namespace:
  8150. description: |-
  8151. The namespace of the Secret resource being referred to.
  8152. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8153. maxLength: 63
  8154. minLength: 1
  8155. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8156. type: string
  8157. type: object
  8158. required:
  8159. - name
  8160. - secretRef
  8161. type: object
  8162. type: array
  8163. timeout:
  8164. description: Timeout
  8165. type: string
  8166. url:
  8167. description: Webhook url to call
  8168. type: string
  8169. required:
  8170. - url
  8171. type: object
  8172. yandexcertificatemanager:
  8173. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8174. properties:
  8175. apiEndpoint:
  8176. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8177. type: string
  8178. auth:
  8179. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8180. properties:
  8181. authorizedKeySecretRef:
  8182. description: The authorized key used for authentication
  8183. properties:
  8184. key:
  8185. description: |-
  8186. A key in the referenced Secret.
  8187. Some instances of this field may be defaulted, in others it may be required.
  8188. maxLength: 253
  8189. minLength: 1
  8190. pattern: ^[-._a-zA-Z0-9]+$
  8191. type: string
  8192. name:
  8193. description: The name of the Secret resource being referred to.
  8194. maxLength: 253
  8195. minLength: 1
  8196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8197. type: string
  8198. namespace:
  8199. description: |-
  8200. The namespace of the Secret resource being referred to.
  8201. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8202. maxLength: 63
  8203. minLength: 1
  8204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8205. type: string
  8206. type: object
  8207. type: object
  8208. caProvider:
  8209. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8210. properties:
  8211. certSecretRef:
  8212. description: |-
  8213. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8214. In some instances, `key` is a required field.
  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. fetching:
  8241. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  8242. maxProperties: 1
  8243. minProperties: 1
  8244. properties:
  8245. byID:
  8246. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8247. type: object
  8248. byName:
  8249. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8250. properties:
  8251. folderID:
  8252. description: The folder to fetch secrets from
  8253. type: string
  8254. required:
  8255. - folderID
  8256. type: object
  8257. type: object
  8258. required:
  8259. - auth
  8260. type: object
  8261. yandexlockbox:
  8262. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8263. properties:
  8264. apiEndpoint:
  8265. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8266. type: string
  8267. auth:
  8268. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8269. properties:
  8270. authorizedKeySecretRef:
  8271. description: The authorized key used for authentication
  8272. properties:
  8273. key:
  8274. description: |-
  8275. A key in the referenced Secret.
  8276. Some instances of this field may be defaulted, in others it may be required.
  8277. maxLength: 253
  8278. minLength: 1
  8279. pattern: ^[-._a-zA-Z0-9]+$
  8280. type: string
  8281. name:
  8282. description: The name of the Secret resource being referred to.
  8283. maxLength: 253
  8284. minLength: 1
  8285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8286. type: string
  8287. namespace:
  8288. description: |-
  8289. The namespace of the Secret resource being referred to.
  8290. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8291. maxLength: 63
  8292. minLength: 1
  8293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8294. type: string
  8295. type: object
  8296. type: object
  8297. caProvider:
  8298. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8299. properties:
  8300. certSecretRef:
  8301. description: |-
  8302. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8303. In some instances, `key` is a required field.
  8304. properties:
  8305. key:
  8306. description: |-
  8307. A key in the referenced Secret.
  8308. Some instances of this field may be defaulted, in others it may be required.
  8309. maxLength: 253
  8310. minLength: 1
  8311. pattern: ^[-._a-zA-Z0-9]+$
  8312. type: string
  8313. name:
  8314. description: The name of the Secret resource being referred to.
  8315. maxLength: 253
  8316. minLength: 1
  8317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8318. type: string
  8319. namespace:
  8320. description: |-
  8321. The namespace of the Secret resource being referred to.
  8322. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8323. maxLength: 63
  8324. minLength: 1
  8325. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8326. type: string
  8327. type: object
  8328. type: object
  8329. fetching:
  8330. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8331. maxProperties: 1
  8332. minProperties: 1
  8333. properties:
  8334. byID:
  8335. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8336. type: object
  8337. byName:
  8338. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8339. properties:
  8340. folderID:
  8341. description: The folder to fetch secrets from
  8342. type: string
  8343. required:
  8344. - folderID
  8345. type: object
  8346. type: object
  8347. required:
  8348. - auth
  8349. type: object
  8350. type: object
  8351. refreshInterval:
  8352. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8353. type: integer
  8354. retrySettings:
  8355. description: Used to configure HTTP retries on failures.
  8356. properties:
  8357. maxRetries:
  8358. type: integer
  8359. retryInterval:
  8360. type: string
  8361. type: object
  8362. required:
  8363. - provider
  8364. type: object
  8365. status:
  8366. description: SecretStoreStatus defines the observed state of the SecretStore.
  8367. properties:
  8368. capabilities:
  8369. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8370. type: string
  8371. conditions:
  8372. items:
  8373. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8374. properties:
  8375. lastTransitionTime:
  8376. format: date-time
  8377. type: string
  8378. message:
  8379. type: string
  8380. reason:
  8381. type: string
  8382. status:
  8383. type: string
  8384. type:
  8385. description: SecretStoreConditionType represents the condition of the SecretStore.
  8386. type: string
  8387. required:
  8388. - status
  8389. - type
  8390. type: object
  8391. type: array
  8392. type: object
  8393. type: object
  8394. served: true
  8395. storage: true
  8396. subresources:
  8397. status: {}
  8398. - additionalPrinterColumns:
  8399. - jsonPath: .metadata.creationTimestamp
  8400. name: AGE
  8401. type: date
  8402. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8403. name: Status
  8404. type: string
  8405. - jsonPath: .status.capabilities
  8406. name: Capabilities
  8407. type: string
  8408. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8409. name: Ready
  8410. type: string
  8411. deprecated: true
  8412. name: v1beta1
  8413. schema:
  8414. openAPIV3Schema:
  8415. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8416. properties:
  8417. apiVersion:
  8418. description: |-
  8419. APIVersion defines the versioned schema of this representation of an object.
  8420. Servers should convert recognized schemas to the latest internal value, and
  8421. may reject unrecognized values.
  8422. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8423. type: string
  8424. kind:
  8425. description: |-
  8426. Kind is a string value representing the REST resource this object represents.
  8427. Servers may infer this from the endpoint the client submits requests to.
  8428. Cannot be updated.
  8429. In CamelCase.
  8430. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8431. type: string
  8432. metadata:
  8433. type: object
  8434. spec:
  8435. description: SecretStoreSpec defines the desired state of SecretStore.
  8436. properties:
  8437. conditions:
  8438. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8439. items:
  8440. description: |-
  8441. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8442. for a ClusterSecretStore instance.
  8443. properties:
  8444. namespaceRegexes:
  8445. description: Choose namespaces by using regex matching
  8446. items:
  8447. type: string
  8448. type: array
  8449. namespaceSelector:
  8450. description: Choose namespace using a labelSelector
  8451. properties:
  8452. matchExpressions:
  8453. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8454. items:
  8455. description: |-
  8456. A label selector requirement is a selector that contains values, a key, and an operator that
  8457. relates the key and values.
  8458. properties:
  8459. key:
  8460. description: key is the label key that the selector applies to.
  8461. type: string
  8462. operator:
  8463. description: |-
  8464. operator represents a key's relationship to a set of values.
  8465. Valid operators are In, NotIn, Exists and DoesNotExist.
  8466. type: string
  8467. values:
  8468. description: |-
  8469. values is an array of string values. If the operator is In or NotIn,
  8470. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8471. the values array must be empty. This array is replaced during a strategic
  8472. merge patch.
  8473. items:
  8474. type: string
  8475. type: array
  8476. x-kubernetes-list-type: atomic
  8477. required:
  8478. - key
  8479. - operator
  8480. type: object
  8481. type: array
  8482. x-kubernetes-list-type: atomic
  8483. matchLabels:
  8484. additionalProperties:
  8485. type: string
  8486. description: |-
  8487. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8488. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8489. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8490. type: object
  8491. type: object
  8492. x-kubernetes-map-type: atomic
  8493. namespaces:
  8494. description: Choose namespaces by name
  8495. items:
  8496. maxLength: 63
  8497. minLength: 1
  8498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8499. type: string
  8500. type: array
  8501. type: object
  8502. type: array
  8503. controller:
  8504. description: |-
  8505. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8506. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8507. type: string
  8508. provider:
  8509. description: Used to configure the provider. Only one provider may be set
  8510. maxProperties: 1
  8511. minProperties: 1
  8512. properties:
  8513. akeyless:
  8514. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8515. properties:
  8516. akeylessGWApiURL:
  8517. description: Akeyless GW API Url from which the secrets to be fetched from.
  8518. type: string
  8519. authSecretRef:
  8520. description: Auth configures how the operator authenticates with Akeyless.
  8521. properties:
  8522. kubernetesAuth:
  8523. description: |-
  8524. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8525. token stored in the named Secret resource.
  8526. properties:
  8527. accessID:
  8528. description: the Akeyless Kubernetes auth-method access-id
  8529. type: string
  8530. k8sConfName:
  8531. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8532. type: string
  8533. secretRef:
  8534. description: |-
  8535. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8536. for authenticating with Akeyless. If a name is specified without a key,
  8537. `token` is the default. If one is not specified, the one bound to
  8538. the controller will be used.
  8539. properties:
  8540. key:
  8541. description: |-
  8542. A key in the referenced Secret.
  8543. Some instances of this field may be defaulted, in others it may be required.
  8544. maxLength: 253
  8545. minLength: 1
  8546. pattern: ^[-._a-zA-Z0-9]+$
  8547. type: string
  8548. name:
  8549. description: The name of the Secret resource being referred to.
  8550. maxLength: 253
  8551. minLength: 1
  8552. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8553. type: string
  8554. namespace:
  8555. description: |-
  8556. The namespace of the Secret resource being referred to.
  8557. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8558. maxLength: 63
  8559. minLength: 1
  8560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8561. type: string
  8562. type: object
  8563. serviceAccountRef:
  8564. description: |-
  8565. Optional service account field containing the name of a kubernetes ServiceAccount.
  8566. If the service account is specified, the service account secret token JWT will be used
  8567. for authenticating with Akeyless. If the service account selector is not supplied,
  8568. the secretRef will be used instead.
  8569. properties:
  8570. audiences:
  8571. description: |-
  8572. Audience specifies the `aud` claim for the service account token
  8573. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8574. then this audiences will be appended to the list
  8575. items:
  8576. type: string
  8577. type: array
  8578. name:
  8579. description: The name of the ServiceAccount resource being referred to.
  8580. maxLength: 253
  8581. minLength: 1
  8582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8583. type: string
  8584. namespace:
  8585. description: |-
  8586. Namespace of the resource being referred to.
  8587. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8588. maxLength: 63
  8589. minLength: 1
  8590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8591. type: string
  8592. required:
  8593. - name
  8594. type: object
  8595. required:
  8596. - accessID
  8597. - k8sConfName
  8598. type: object
  8599. secretRef:
  8600. description: |-
  8601. Reference to a Secret that contains the details
  8602. to authenticate with Akeyless.
  8603. properties:
  8604. accessID:
  8605. description: The SecretAccessID is used for authentication
  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. accessType:
  8631. description: |-
  8632. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8633. In some instances, `key` is a required field.
  8634. properties:
  8635. key:
  8636. description: |-
  8637. A key in the referenced Secret.
  8638. Some instances of this field may be defaulted, in others it may be required.
  8639. maxLength: 253
  8640. minLength: 1
  8641. pattern: ^[-._a-zA-Z0-9]+$
  8642. type: string
  8643. name:
  8644. description: The name of the Secret resource being referred to.
  8645. maxLength: 253
  8646. minLength: 1
  8647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8648. type: string
  8649. namespace:
  8650. description: |-
  8651. The namespace of the Secret resource being referred to.
  8652. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8653. maxLength: 63
  8654. minLength: 1
  8655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8656. type: string
  8657. type: object
  8658. accessTypeParam:
  8659. description: |-
  8660. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8661. In some instances, `key` is a required field.
  8662. properties:
  8663. key:
  8664. description: |-
  8665. A key in the referenced Secret.
  8666. Some instances of this field may be defaulted, in others it may be required.
  8667. maxLength: 253
  8668. minLength: 1
  8669. pattern: ^[-._a-zA-Z0-9]+$
  8670. type: string
  8671. name:
  8672. description: The name of the Secret resource being referred to.
  8673. maxLength: 253
  8674. minLength: 1
  8675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8676. type: string
  8677. namespace:
  8678. description: |-
  8679. The namespace of the Secret resource being referred to.
  8680. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8681. maxLength: 63
  8682. minLength: 1
  8683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8684. type: string
  8685. type: object
  8686. type: object
  8687. type: object
  8688. caBundle:
  8689. description: |-
  8690. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8691. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8692. are used to validate the TLS connection.
  8693. format: byte
  8694. type: string
  8695. caProvider:
  8696. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8697. properties:
  8698. key:
  8699. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8700. maxLength: 253
  8701. minLength: 1
  8702. pattern: ^[-._a-zA-Z0-9]+$
  8703. type: string
  8704. name:
  8705. description: The name of the object located at the provider type.
  8706. maxLength: 253
  8707. minLength: 1
  8708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8709. type: string
  8710. namespace:
  8711. description: |-
  8712. The namespace the Provider type is in.
  8713. Can only be defined when used in a ClusterSecretStore.
  8714. maxLength: 63
  8715. minLength: 1
  8716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8717. type: string
  8718. type:
  8719. description: The type of provider to use such as "Secret", or "ConfigMap".
  8720. enum:
  8721. - Secret
  8722. - ConfigMap
  8723. type: string
  8724. required:
  8725. - name
  8726. - type
  8727. type: object
  8728. required:
  8729. - akeylessGWApiURL
  8730. - authSecretRef
  8731. type: object
  8732. alibaba:
  8733. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8734. properties:
  8735. auth:
  8736. description: AlibabaAuth contains a secretRef for credentials.
  8737. properties:
  8738. rrsa:
  8739. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  8740. properties:
  8741. oidcProviderArn:
  8742. type: string
  8743. oidcTokenFilePath:
  8744. type: string
  8745. roleArn:
  8746. type: string
  8747. sessionName:
  8748. type: string
  8749. required:
  8750. - oidcProviderArn
  8751. - oidcTokenFilePath
  8752. - roleArn
  8753. - sessionName
  8754. type: object
  8755. secretRef:
  8756. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  8757. properties:
  8758. accessKeyIDSecretRef:
  8759. description: The AccessKeyID is used for authentication
  8760. properties:
  8761. key:
  8762. description: |-
  8763. A key in the referenced Secret.
  8764. Some instances of this field may be defaulted, in others it may be required.
  8765. maxLength: 253
  8766. minLength: 1
  8767. pattern: ^[-._a-zA-Z0-9]+$
  8768. type: string
  8769. name:
  8770. description: The name of the Secret resource being referred to.
  8771. maxLength: 253
  8772. minLength: 1
  8773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8774. type: string
  8775. namespace:
  8776. description: |-
  8777. The namespace of the Secret resource being referred to.
  8778. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8779. maxLength: 63
  8780. minLength: 1
  8781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8782. type: string
  8783. type: object
  8784. accessKeySecretSecretRef:
  8785. description: The AccessKeySecret is used for authentication
  8786. properties:
  8787. key:
  8788. description: |-
  8789. A key in the referenced Secret.
  8790. Some instances of this field may be defaulted, in others it may be required.
  8791. maxLength: 253
  8792. minLength: 1
  8793. pattern: ^[-._a-zA-Z0-9]+$
  8794. type: string
  8795. name:
  8796. description: The name of the Secret resource being referred to.
  8797. maxLength: 253
  8798. minLength: 1
  8799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8800. type: string
  8801. namespace:
  8802. description: |-
  8803. The namespace of the Secret resource being referred to.
  8804. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8805. maxLength: 63
  8806. minLength: 1
  8807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8808. type: string
  8809. type: object
  8810. required:
  8811. - accessKeyIDSecretRef
  8812. - accessKeySecretSecretRef
  8813. type: object
  8814. type: object
  8815. regionID:
  8816. description: Alibaba Region to be used for the provider
  8817. type: string
  8818. required:
  8819. - auth
  8820. - regionID
  8821. type: object
  8822. aws:
  8823. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  8824. properties:
  8825. additionalRoles:
  8826. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  8827. items:
  8828. type: string
  8829. type: array
  8830. auth:
  8831. description: |-
  8832. Auth defines the information necessary to authenticate against AWS
  8833. if not set aws sdk will infer credentials from your environment
  8834. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  8835. properties:
  8836. jwt:
  8837. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  8838. properties:
  8839. serviceAccountRef:
  8840. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  8841. properties:
  8842. audiences:
  8843. description: |-
  8844. Audience specifies the `aud` claim for the service account token
  8845. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8846. then this audiences will be appended to the list
  8847. items:
  8848. type: string
  8849. type: array
  8850. name:
  8851. description: The name of the ServiceAccount resource being referred to.
  8852. maxLength: 253
  8853. minLength: 1
  8854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8855. type: string
  8856. namespace:
  8857. description: |-
  8858. Namespace of the resource being referred to.
  8859. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8860. maxLength: 63
  8861. minLength: 1
  8862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8863. type: string
  8864. required:
  8865. - name
  8866. type: object
  8867. type: object
  8868. secretRef:
  8869. description: |-
  8870. AWSAuthSecretRef holds secret references for AWS credentials
  8871. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8872. properties:
  8873. accessKeyIDSecretRef:
  8874. description: The AccessKeyID is used for authentication
  8875. properties:
  8876. key:
  8877. description: |-
  8878. A key in the referenced Secret.
  8879. Some instances of this field may be defaulted, in others it may be required.
  8880. maxLength: 253
  8881. minLength: 1
  8882. pattern: ^[-._a-zA-Z0-9]+$
  8883. type: string
  8884. name:
  8885. description: The name of the Secret resource being referred to.
  8886. maxLength: 253
  8887. minLength: 1
  8888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8889. type: string
  8890. namespace:
  8891. description: |-
  8892. The namespace of the Secret resource being referred to.
  8893. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8894. maxLength: 63
  8895. minLength: 1
  8896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8897. type: string
  8898. type: object
  8899. secretAccessKeySecretRef:
  8900. description: The SecretAccessKey is used for authentication
  8901. properties:
  8902. key:
  8903. description: |-
  8904. A key in the referenced Secret.
  8905. Some instances of this field may be defaulted, in others it may be required.
  8906. maxLength: 253
  8907. minLength: 1
  8908. pattern: ^[-._a-zA-Z0-9]+$
  8909. type: string
  8910. name:
  8911. description: The name of the Secret resource being referred to.
  8912. maxLength: 253
  8913. minLength: 1
  8914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8915. type: string
  8916. namespace:
  8917. description: |-
  8918. The namespace of the Secret resource being referred to.
  8919. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8920. maxLength: 63
  8921. minLength: 1
  8922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8923. type: string
  8924. type: object
  8925. sessionTokenSecretRef:
  8926. description: |-
  8927. The SessionToken used for authentication
  8928. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8929. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8930. properties:
  8931. key:
  8932. description: |-
  8933. A key in the referenced Secret.
  8934. Some instances of this field may be defaulted, in others it may be required.
  8935. maxLength: 253
  8936. minLength: 1
  8937. pattern: ^[-._a-zA-Z0-9]+$
  8938. type: string
  8939. name:
  8940. description: The name of the Secret resource being referred to.
  8941. maxLength: 253
  8942. minLength: 1
  8943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8944. type: string
  8945. namespace:
  8946. description: |-
  8947. The namespace of the Secret resource being referred to.
  8948. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8949. maxLength: 63
  8950. minLength: 1
  8951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8952. type: string
  8953. type: object
  8954. type: object
  8955. type: object
  8956. externalID:
  8957. description: AWS External ID set on assumed IAM roles
  8958. type: string
  8959. prefix:
  8960. description: Prefix adds a prefix to all retrieved values.
  8961. type: string
  8962. region:
  8963. description: AWS Region to be used for the provider
  8964. type: string
  8965. role:
  8966. description: Role is a Role ARN which the provider will assume
  8967. type: string
  8968. secretsManager:
  8969. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  8970. properties:
  8971. forceDeleteWithoutRecovery:
  8972. description: |-
  8973. Specifies whether to delete the secret without any recovery window. You
  8974. can't use both this parameter and RecoveryWindowInDays in the same call.
  8975. If you don't use either, then by default Secrets Manager uses a 30 day
  8976. recovery window.
  8977. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  8978. type: boolean
  8979. recoveryWindowInDays:
  8980. description: |-
  8981. The number of days from 7 to 30 that Secrets Manager waits before
  8982. permanently deleting the secret. You can't use both this parameter and
  8983. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  8984. then by default Secrets Manager uses a 30 day recovery window.
  8985. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  8986. type: integer
  8987. type: object
  8988. service:
  8989. description: Service defines which service should be used to fetch the secrets
  8990. enum:
  8991. - SecretsManager
  8992. - ParameterStore
  8993. type: string
  8994. sessionTags:
  8995. description: AWS STS assume role session tags
  8996. items:
  8997. description: Tag defines a tag key and value for AWS resources.
  8998. properties:
  8999. key:
  9000. type: string
  9001. value:
  9002. type: string
  9003. required:
  9004. - key
  9005. - value
  9006. type: object
  9007. type: array
  9008. transitiveTagKeys:
  9009. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  9010. items:
  9011. type: string
  9012. type: array
  9013. required:
  9014. - region
  9015. - service
  9016. type: object
  9017. azurekv:
  9018. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  9019. properties:
  9020. authSecretRef:
  9021. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9022. properties:
  9023. clientCertificate:
  9024. description: The Azure ClientCertificate of the service principle used for authentication.
  9025. properties:
  9026. key:
  9027. description: |-
  9028. A key in the referenced Secret.
  9029. Some instances of this field may be defaulted, in others it may be required.
  9030. maxLength: 253
  9031. minLength: 1
  9032. pattern: ^[-._a-zA-Z0-9]+$
  9033. type: string
  9034. name:
  9035. description: The name of the Secret resource being referred to.
  9036. maxLength: 253
  9037. minLength: 1
  9038. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9039. type: string
  9040. namespace:
  9041. description: |-
  9042. The namespace of the Secret resource being referred to.
  9043. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9044. maxLength: 63
  9045. minLength: 1
  9046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9047. type: string
  9048. type: object
  9049. clientId:
  9050. description: The Azure clientId of the service principle or managed identity used for authentication.
  9051. properties:
  9052. key:
  9053. description: |-
  9054. A key in the referenced Secret.
  9055. Some instances of this field may be defaulted, in others it may be required.
  9056. maxLength: 253
  9057. minLength: 1
  9058. pattern: ^[-._a-zA-Z0-9]+$
  9059. type: string
  9060. name:
  9061. description: The name of the Secret resource being referred to.
  9062. maxLength: 253
  9063. minLength: 1
  9064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9065. type: string
  9066. namespace:
  9067. description: |-
  9068. The namespace of the Secret resource being referred to.
  9069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9070. maxLength: 63
  9071. minLength: 1
  9072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9073. type: string
  9074. type: object
  9075. clientSecret:
  9076. description: The Azure ClientSecret of the service principle used for authentication.
  9077. properties:
  9078. key:
  9079. description: |-
  9080. A key in the referenced Secret.
  9081. Some instances of this field may be defaulted, in others it may be required.
  9082. maxLength: 253
  9083. minLength: 1
  9084. pattern: ^[-._a-zA-Z0-9]+$
  9085. type: string
  9086. name:
  9087. description: The name of the Secret resource being referred to.
  9088. maxLength: 253
  9089. minLength: 1
  9090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9091. type: string
  9092. namespace:
  9093. description: |-
  9094. The namespace of the Secret resource being referred to.
  9095. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9096. maxLength: 63
  9097. minLength: 1
  9098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9099. type: string
  9100. type: object
  9101. tenantId:
  9102. description: The Azure tenantId of the managed identity used for authentication.
  9103. properties:
  9104. key:
  9105. description: |-
  9106. A key in the referenced Secret.
  9107. Some instances of this field may be defaulted, in others it may be required.
  9108. maxLength: 253
  9109. minLength: 1
  9110. pattern: ^[-._a-zA-Z0-9]+$
  9111. type: string
  9112. name:
  9113. description: The name of the Secret resource being referred to.
  9114. maxLength: 253
  9115. minLength: 1
  9116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9117. type: string
  9118. namespace:
  9119. description: |-
  9120. The namespace of the Secret resource being referred to.
  9121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9122. maxLength: 63
  9123. minLength: 1
  9124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9125. type: string
  9126. type: object
  9127. type: object
  9128. authType:
  9129. default: ServicePrincipal
  9130. description: |-
  9131. Auth type defines how to authenticate to the keyvault service.
  9132. Valid values are:
  9133. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  9134. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  9135. enum:
  9136. - ServicePrincipal
  9137. - ManagedIdentity
  9138. - WorkloadIdentity
  9139. type: string
  9140. environmentType:
  9141. default: PublicCloud
  9142. description: |-
  9143. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9144. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9145. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9146. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9147. enum:
  9148. - PublicCloud
  9149. - USGovernmentCloud
  9150. - ChinaCloud
  9151. - GermanCloud
  9152. type: string
  9153. identityId:
  9154. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9155. type: string
  9156. serviceAccountRef:
  9157. description: |-
  9158. ServiceAccountRef specified the service account
  9159. that should be used when authenticating with WorkloadIdentity.
  9160. properties:
  9161. audiences:
  9162. description: |-
  9163. Audience specifies the `aud` claim for the service account token
  9164. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9165. then this audiences will be appended to the list
  9166. items:
  9167. type: string
  9168. type: array
  9169. name:
  9170. description: The name of the ServiceAccount resource being referred to.
  9171. maxLength: 253
  9172. minLength: 1
  9173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9174. type: string
  9175. namespace:
  9176. description: |-
  9177. Namespace of the resource being referred to.
  9178. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9179. maxLength: 63
  9180. minLength: 1
  9181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9182. type: string
  9183. required:
  9184. - name
  9185. type: object
  9186. tenantId:
  9187. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9188. type: string
  9189. vaultUrl:
  9190. description: Vault Url from which the secrets to be fetched from.
  9191. type: string
  9192. required:
  9193. - vaultUrl
  9194. type: object
  9195. beyondtrust:
  9196. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  9197. properties:
  9198. auth:
  9199. description: Auth configures how the operator authenticates with Beyondtrust.
  9200. properties:
  9201. apiKey:
  9202. description: APIKey If not provided then ClientID/ClientSecret become required.
  9203. properties:
  9204. secretRef:
  9205. description: SecretRef references a key in a secret that will be used as value.
  9206. properties:
  9207. key:
  9208. description: |-
  9209. A key in the referenced Secret.
  9210. Some instances of this field may be defaulted, in others it may be required.
  9211. maxLength: 253
  9212. minLength: 1
  9213. pattern: ^[-._a-zA-Z0-9]+$
  9214. type: string
  9215. name:
  9216. description: The name of the Secret resource being referred to.
  9217. maxLength: 253
  9218. minLength: 1
  9219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9220. type: string
  9221. namespace:
  9222. description: |-
  9223. The namespace of the Secret resource being referred to.
  9224. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9225. maxLength: 63
  9226. minLength: 1
  9227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9228. type: string
  9229. type: object
  9230. value:
  9231. description: Value can be specified directly to set a value without using a secret.
  9232. type: string
  9233. type: object
  9234. certificate:
  9235. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  9236. properties:
  9237. secretRef:
  9238. description: SecretRef references a key in a secret that will be used as value.
  9239. properties:
  9240. key:
  9241. description: |-
  9242. A key in the referenced Secret.
  9243. Some instances of this field may be defaulted, in others it may be required.
  9244. maxLength: 253
  9245. minLength: 1
  9246. pattern: ^[-._a-zA-Z0-9]+$
  9247. type: string
  9248. name:
  9249. description: The name of the Secret resource being referred to.
  9250. maxLength: 253
  9251. minLength: 1
  9252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9253. type: string
  9254. namespace:
  9255. description: |-
  9256. The namespace of the Secret resource being referred to.
  9257. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9258. maxLength: 63
  9259. minLength: 1
  9260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9261. type: string
  9262. type: object
  9263. value:
  9264. description: Value can be specified directly to set a value without using a secret.
  9265. type: string
  9266. type: object
  9267. certificateKey:
  9268. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9269. properties:
  9270. secretRef:
  9271. description: SecretRef references a key in a secret that will be used as value.
  9272. properties:
  9273. key:
  9274. description: |-
  9275. A key in the referenced Secret.
  9276. Some instances of this field may be defaulted, in others it may be required.
  9277. maxLength: 253
  9278. minLength: 1
  9279. pattern: ^[-._a-zA-Z0-9]+$
  9280. type: string
  9281. name:
  9282. description: The name of the Secret resource being referred to.
  9283. maxLength: 253
  9284. minLength: 1
  9285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9286. type: string
  9287. namespace:
  9288. description: |-
  9289. The namespace of the Secret resource being referred to.
  9290. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9291. maxLength: 63
  9292. minLength: 1
  9293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9294. type: string
  9295. type: object
  9296. value:
  9297. description: Value can be specified directly to set a value without using a secret.
  9298. type: string
  9299. type: object
  9300. clientId:
  9301. description: ClientID is the API OAuth Client ID.
  9302. properties:
  9303. secretRef:
  9304. description: SecretRef references a key in a secret that will be used as value.
  9305. properties:
  9306. key:
  9307. description: |-
  9308. A key in the referenced Secret.
  9309. Some instances of this field may be defaulted, in others it may be required.
  9310. maxLength: 253
  9311. minLength: 1
  9312. pattern: ^[-._a-zA-Z0-9]+$
  9313. type: string
  9314. name:
  9315. description: The name of the Secret resource being referred to.
  9316. maxLength: 253
  9317. minLength: 1
  9318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9319. type: string
  9320. namespace:
  9321. description: |-
  9322. The namespace of the Secret resource being referred to.
  9323. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9324. maxLength: 63
  9325. minLength: 1
  9326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9327. type: string
  9328. type: object
  9329. value:
  9330. description: Value can be specified directly to set a value without using a secret.
  9331. type: string
  9332. type: object
  9333. clientSecret:
  9334. description: ClientSecret is the API OAuth Client Secret.
  9335. properties:
  9336. secretRef:
  9337. description: SecretRef references a key in a secret that will be used as value.
  9338. properties:
  9339. key:
  9340. description: |-
  9341. A key in the referenced Secret.
  9342. Some instances of this field may be defaulted, in others it may be required.
  9343. maxLength: 253
  9344. minLength: 1
  9345. pattern: ^[-._a-zA-Z0-9]+$
  9346. type: string
  9347. name:
  9348. description: The name of the Secret resource being referred to.
  9349. maxLength: 253
  9350. minLength: 1
  9351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9352. type: string
  9353. namespace:
  9354. description: |-
  9355. The namespace of the Secret resource being referred to.
  9356. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9357. maxLength: 63
  9358. minLength: 1
  9359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9360. type: string
  9361. type: object
  9362. value:
  9363. description: Value can be specified directly to set a value without using a secret.
  9364. type: string
  9365. type: object
  9366. type: object
  9367. server:
  9368. description: Auth configures how API server works.
  9369. properties:
  9370. apiUrl:
  9371. type: string
  9372. apiVersion:
  9373. type: string
  9374. clientTimeOutSeconds:
  9375. 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.
  9376. type: integer
  9377. decrypt:
  9378. default: true
  9379. 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.'
  9380. type: boolean
  9381. retrievalType:
  9382. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9383. type: string
  9384. separator:
  9385. description: A character that separates the folder names.
  9386. type: string
  9387. verifyCA:
  9388. type: boolean
  9389. required:
  9390. - apiUrl
  9391. - verifyCA
  9392. type: object
  9393. required:
  9394. - auth
  9395. - server
  9396. type: object
  9397. bitwardensecretsmanager:
  9398. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9399. properties:
  9400. apiURL:
  9401. type: string
  9402. auth:
  9403. description: |-
  9404. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9405. Make sure that the token being used has permissions on the given secret.
  9406. properties:
  9407. secretRef:
  9408. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9409. properties:
  9410. credentials:
  9411. description: AccessToken used for the bitwarden instance.
  9412. properties:
  9413. key:
  9414. description: |-
  9415. A key in the referenced Secret.
  9416. Some instances of this field may be defaulted, in others it may be required.
  9417. maxLength: 253
  9418. minLength: 1
  9419. pattern: ^[-._a-zA-Z0-9]+$
  9420. type: string
  9421. name:
  9422. description: The name of the Secret resource being referred to.
  9423. maxLength: 253
  9424. minLength: 1
  9425. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9426. type: string
  9427. namespace:
  9428. description: |-
  9429. The namespace of the Secret resource being referred to.
  9430. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9431. maxLength: 63
  9432. minLength: 1
  9433. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9434. type: string
  9435. type: object
  9436. required:
  9437. - credentials
  9438. type: object
  9439. required:
  9440. - secretRef
  9441. type: object
  9442. bitwardenServerSDKURL:
  9443. type: string
  9444. caBundle:
  9445. description: |-
  9446. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9447. can be performed.
  9448. type: string
  9449. caProvider:
  9450. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9451. properties:
  9452. key:
  9453. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9454. maxLength: 253
  9455. minLength: 1
  9456. pattern: ^[-._a-zA-Z0-9]+$
  9457. type: string
  9458. name:
  9459. description: The name of the object located at the provider type.
  9460. maxLength: 253
  9461. minLength: 1
  9462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9463. type: string
  9464. namespace:
  9465. description: |-
  9466. The namespace the Provider type is in.
  9467. Can only be defined when used in a ClusterSecretStore.
  9468. maxLength: 63
  9469. minLength: 1
  9470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9471. type: string
  9472. type:
  9473. description: The type of provider to use such as "Secret", or "ConfigMap".
  9474. enum:
  9475. - Secret
  9476. - ConfigMap
  9477. type: string
  9478. required:
  9479. - name
  9480. - type
  9481. type: object
  9482. identityURL:
  9483. type: string
  9484. organizationID:
  9485. description: OrganizationID determines which organization this secret store manages.
  9486. type: string
  9487. projectID:
  9488. description: ProjectID determines which project this secret store manages.
  9489. type: string
  9490. required:
  9491. - auth
  9492. - organizationID
  9493. - projectID
  9494. type: object
  9495. chef:
  9496. description: Chef configures this store to sync secrets with chef server
  9497. properties:
  9498. auth:
  9499. description: Auth defines the information necessary to authenticate against chef Server
  9500. properties:
  9501. secretRef:
  9502. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9503. properties:
  9504. privateKeySecretRef:
  9505. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9506. properties:
  9507. key:
  9508. description: |-
  9509. A key in the referenced Secret.
  9510. Some instances of this field may be defaulted, in others it may be required.
  9511. maxLength: 253
  9512. minLength: 1
  9513. pattern: ^[-._a-zA-Z0-9]+$
  9514. type: string
  9515. name:
  9516. description: The name of the Secret resource being referred to.
  9517. maxLength: 253
  9518. minLength: 1
  9519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9520. type: string
  9521. namespace:
  9522. description: |-
  9523. The namespace of the Secret resource being referred to.
  9524. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9525. maxLength: 63
  9526. minLength: 1
  9527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9528. type: string
  9529. type: object
  9530. required:
  9531. - privateKeySecretRef
  9532. type: object
  9533. required:
  9534. - secretRef
  9535. type: object
  9536. serverUrl:
  9537. 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 "/"
  9538. type: string
  9539. username:
  9540. description: UserName should be the user ID on the chef server
  9541. type: string
  9542. required:
  9543. - auth
  9544. - serverUrl
  9545. - username
  9546. type: object
  9547. cloudrusm:
  9548. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9549. properties:
  9550. auth:
  9551. description: CSMAuth contains a secretRef for credentials.
  9552. properties:
  9553. secretRef:
  9554. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9555. properties:
  9556. accessKeyIDSecretRef:
  9557. description: The AccessKeyID is used for authentication
  9558. properties:
  9559. key:
  9560. description: |-
  9561. A key in the referenced Secret.
  9562. Some instances of this field may be defaulted, in others it may be required.
  9563. maxLength: 253
  9564. minLength: 1
  9565. pattern: ^[-._a-zA-Z0-9]+$
  9566. type: string
  9567. name:
  9568. description: The name of the Secret resource being referred to.
  9569. maxLength: 253
  9570. minLength: 1
  9571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9572. type: string
  9573. namespace:
  9574. description: |-
  9575. The namespace of the Secret resource being referred to.
  9576. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9577. maxLength: 63
  9578. minLength: 1
  9579. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9580. type: string
  9581. type: object
  9582. accessKeySecretSecretRef:
  9583. description: The AccessKeySecret is used for authentication
  9584. properties:
  9585. key:
  9586. description: |-
  9587. A key in the referenced Secret.
  9588. Some instances of this field may be defaulted, in others it may be required.
  9589. maxLength: 253
  9590. minLength: 1
  9591. pattern: ^[-._a-zA-Z0-9]+$
  9592. type: string
  9593. name:
  9594. description: The name of the Secret resource being referred to.
  9595. maxLength: 253
  9596. minLength: 1
  9597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9598. type: string
  9599. namespace:
  9600. description: |-
  9601. The namespace of the Secret resource being referred to.
  9602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9603. maxLength: 63
  9604. minLength: 1
  9605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9606. type: string
  9607. type: object
  9608. required:
  9609. - accessKeyIDSecretRef
  9610. - accessKeySecretSecretRef
  9611. type: object
  9612. type: object
  9613. projectID:
  9614. description: ProjectID is the project, which the secrets are stored in.
  9615. type: string
  9616. required:
  9617. - auth
  9618. type: object
  9619. conjur:
  9620. description: Conjur configures this store to sync secrets using conjur provider
  9621. properties:
  9622. auth:
  9623. description: Defines authentication settings for connecting to Conjur.
  9624. properties:
  9625. apikey:
  9626. description: Authenticates with Conjur using an API key.
  9627. properties:
  9628. account:
  9629. description: Account is the Conjur organization account name.
  9630. type: string
  9631. apiKeyRef:
  9632. description: |-
  9633. A reference to a specific 'key' containing the Conjur API key
  9634. within a Secret resource. In some instances, `key` is a required field.
  9635. properties:
  9636. key:
  9637. description: |-
  9638. A key in the referenced Secret.
  9639. Some instances of this field may be defaulted, in others it may be required.
  9640. maxLength: 253
  9641. minLength: 1
  9642. pattern: ^[-._a-zA-Z0-9]+$
  9643. type: string
  9644. name:
  9645. description: The name of the Secret resource being referred to.
  9646. maxLength: 253
  9647. minLength: 1
  9648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9649. type: string
  9650. namespace:
  9651. description: |-
  9652. The namespace of the Secret resource being referred to.
  9653. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9654. maxLength: 63
  9655. minLength: 1
  9656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9657. type: string
  9658. type: object
  9659. userRef:
  9660. description: |-
  9661. A reference to a specific 'key' containing the Conjur username
  9662. within a Secret resource. In some instances, `key` is a required field.
  9663. properties:
  9664. key:
  9665. description: |-
  9666. A key in the referenced Secret.
  9667. Some instances of this field may be defaulted, in others it may be required.
  9668. maxLength: 253
  9669. minLength: 1
  9670. pattern: ^[-._a-zA-Z0-9]+$
  9671. type: string
  9672. name:
  9673. description: The name of the Secret resource being referred to.
  9674. maxLength: 253
  9675. minLength: 1
  9676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9677. type: string
  9678. namespace:
  9679. description: |-
  9680. The namespace of the Secret resource being referred to.
  9681. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9682. maxLength: 63
  9683. minLength: 1
  9684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9685. type: string
  9686. type: object
  9687. required:
  9688. - account
  9689. - apiKeyRef
  9690. - userRef
  9691. type: object
  9692. jwt:
  9693. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  9694. properties:
  9695. account:
  9696. description: Account is the Conjur organization account name.
  9697. type: string
  9698. hostId:
  9699. description: |-
  9700. Optional HostID for JWT authentication. This may be used depending
  9701. on how the Conjur JWT authenticator policy is configured.
  9702. type: string
  9703. secretRef:
  9704. description: |-
  9705. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9706. authenticate with Conjur using the JWT authentication method.
  9707. properties:
  9708. key:
  9709. description: |-
  9710. A key in the referenced Secret.
  9711. Some instances of this field may be defaulted, in others it may be required.
  9712. maxLength: 253
  9713. minLength: 1
  9714. pattern: ^[-._a-zA-Z0-9]+$
  9715. type: string
  9716. name:
  9717. description: The name of the Secret resource being referred to.
  9718. maxLength: 253
  9719. minLength: 1
  9720. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9721. type: string
  9722. namespace:
  9723. description: |-
  9724. The namespace of the Secret resource being referred to.
  9725. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9726. maxLength: 63
  9727. minLength: 1
  9728. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9729. type: string
  9730. type: object
  9731. serviceAccountRef:
  9732. description: |-
  9733. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  9734. a token for with the `TokenRequest` API.
  9735. properties:
  9736. audiences:
  9737. description: |-
  9738. Audience specifies the `aud` claim for the service account token
  9739. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9740. then this audiences will be appended to the list
  9741. items:
  9742. type: string
  9743. type: array
  9744. name:
  9745. description: The name of the ServiceAccount resource being referred to.
  9746. maxLength: 253
  9747. minLength: 1
  9748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9749. type: string
  9750. namespace:
  9751. description: |-
  9752. Namespace of the resource being referred to.
  9753. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9754. maxLength: 63
  9755. minLength: 1
  9756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9757. type: string
  9758. required:
  9759. - name
  9760. type: object
  9761. serviceID:
  9762. description: The conjur authn jwt webservice id
  9763. type: string
  9764. required:
  9765. - account
  9766. - serviceID
  9767. type: object
  9768. type: object
  9769. caBundle:
  9770. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  9771. type: string
  9772. caProvider:
  9773. description: |-
  9774. Used to provide custom certificate authority (CA) certificates
  9775. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  9776. that contains a PEM-encoded certificate.
  9777. properties:
  9778. key:
  9779. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9780. maxLength: 253
  9781. minLength: 1
  9782. pattern: ^[-._a-zA-Z0-9]+$
  9783. type: string
  9784. name:
  9785. description: The name of the object located at the provider type.
  9786. maxLength: 253
  9787. minLength: 1
  9788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9789. type: string
  9790. namespace:
  9791. description: |-
  9792. The namespace the Provider type is in.
  9793. Can only be defined when used in a ClusterSecretStore.
  9794. maxLength: 63
  9795. minLength: 1
  9796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9797. type: string
  9798. type:
  9799. description: The type of provider to use such as "Secret", or "ConfigMap".
  9800. enum:
  9801. - Secret
  9802. - ConfigMap
  9803. type: string
  9804. required:
  9805. - name
  9806. - type
  9807. type: object
  9808. url:
  9809. description: URL is the endpoint of the Conjur instance.
  9810. type: string
  9811. required:
  9812. - auth
  9813. - url
  9814. type: object
  9815. delinea:
  9816. description: |-
  9817. Delinea DevOps Secrets Vault
  9818. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  9819. properties:
  9820. clientId:
  9821. description: ClientID is the non-secret part of the credential.
  9822. properties:
  9823. secretRef:
  9824. description: SecretRef references a key in a secret that will be used as value.
  9825. properties:
  9826. key:
  9827. description: |-
  9828. A key in the referenced Secret.
  9829. Some instances of this field may be defaulted, in others it may be required.
  9830. maxLength: 253
  9831. minLength: 1
  9832. pattern: ^[-._a-zA-Z0-9]+$
  9833. type: string
  9834. name:
  9835. description: The name of the Secret resource being referred to.
  9836. maxLength: 253
  9837. minLength: 1
  9838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9839. type: string
  9840. namespace:
  9841. description: |-
  9842. The namespace of the Secret resource being referred to.
  9843. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9844. maxLength: 63
  9845. minLength: 1
  9846. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9847. type: string
  9848. type: object
  9849. value:
  9850. description: Value can be specified directly to set a value without using a secret.
  9851. type: string
  9852. type: object
  9853. clientSecret:
  9854. description: ClientSecret is the secret part of the credential.
  9855. properties:
  9856. secretRef:
  9857. description: SecretRef references a key in a secret that will be used as value.
  9858. properties:
  9859. key:
  9860. description: |-
  9861. A key in the referenced Secret.
  9862. Some instances of this field may be defaulted, in others it may be required.
  9863. maxLength: 253
  9864. minLength: 1
  9865. pattern: ^[-._a-zA-Z0-9]+$
  9866. type: string
  9867. name:
  9868. description: The name of the Secret resource being referred to.
  9869. maxLength: 253
  9870. minLength: 1
  9871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9872. type: string
  9873. namespace:
  9874. description: |-
  9875. The namespace of the Secret resource being referred to.
  9876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9877. maxLength: 63
  9878. minLength: 1
  9879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9880. type: string
  9881. type: object
  9882. value:
  9883. description: Value can be specified directly to set a value without using a secret.
  9884. type: string
  9885. type: object
  9886. tenant:
  9887. description: Tenant is the chosen hostname / site name.
  9888. type: string
  9889. tld:
  9890. description: |-
  9891. TLD is based on the server location that was chosen during provisioning.
  9892. If unset, defaults to "com".
  9893. type: string
  9894. urlTemplate:
  9895. description: |-
  9896. URLTemplate
  9897. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  9898. type: string
  9899. required:
  9900. - clientId
  9901. - clientSecret
  9902. - tenant
  9903. type: object
  9904. device42:
  9905. description: Device42 configures this store to sync secrets using the Device42 provider
  9906. properties:
  9907. auth:
  9908. description: Auth configures how secret-manager authenticates with a Device42 instance.
  9909. properties:
  9910. secretRef:
  9911. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  9912. properties:
  9913. credentials:
  9914. description: Username / Password is used for authentication.
  9915. properties:
  9916. key:
  9917. description: |-
  9918. A key in the referenced Secret.
  9919. Some instances of this field may be defaulted, in others it may be required.
  9920. maxLength: 253
  9921. minLength: 1
  9922. pattern: ^[-._a-zA-Z0-9]+$
  9923. type: string
  9924. name:
  9925. description: The name of the Secret resource being referred to.
  9926. maxLength: 253
  9927. minLength: 1
  9928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9929. type: string
  9930. namespace:
  9931. description: |-
  9932. The namespace of the Secret resource being referred to.
  9933. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9934. maxLength: 63
  9935. minLength: 1
  9936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9937. type: string
  9938. type: object
  9939. type: object
  9940. required:
  9941. - secretRef
  9942. type: object
  9943. host:
  9944. description: URL configures the Device42 instance URL.
  9945. type: string
  9946. required:
  9947. - auth
  9948. - host
  9949. type: object
  9950. doppler:
  9951. description: Doppler configures this store to sync secrets using the Doppler provider
  9952. properties:
  9953. auth:
  9954. description: Auth configures how the Operator authenticates with the Doppler API
  9955. properties:
  9956. secretRef:
  9957. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  9958. properties:
  9959. dopplerToken:
  9960. description: |-
  9961. The DopplerToken is used for authentication.
  9962. See https://docs.doppler.com/reference/api#authentication for auth token types.
  9963. The Key attribute defaults to dopplerToken if not specified.
  9964. properties:
  9965. key:
  9966. description: |-
  9967. A key in the referenced Secret.
  9968. Some instances of this field may be defaulted, in others it may be required.
  9969. maxLength: 253
  9970. minLength: 1
  9971. pattern: ^[-._a-zA-Z0-9]+$
  9972. type: string
  9973. name:
  9974. description: The name of the Secret resource being referred to.
  9975. maxLength: 253
  9976. minLength: 1
  9977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9978. type: string
  9979. namespace:
  9980. description: |-
  9981. The namespace of the Secret resource being referred to.
  9982. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9983. maxLength: 63
  9984. minLength: 1
  9985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9986. type: string
  9987. type: object
  9988. required:
  9989. - dopplerToken
  9990. type: object
  9991. required:
  9992. - secretRef
  9993. type: object
  9994. config:
  9995. description: Doppler config (required if not using a Service Token)
  9996. type: string
  9997. format:
  9998. description: Format enables the downloading of secrets as a file (string)
  9999. enum:
  10000. - json
  10001. - dotnet-json
  10002. - env
  10003. - yaml
  10004. - docker
  10005. type: string
  10006. nameTransformer:
  10007. description: Environment variable compatible name transforms that change secret names to a different format
  10008. enum:
  10009. - upper-camel
  10010. - camel
  10011. - lower-snake
  10012. - tf-var
  10013. - dotnet-env
  10014. - lower-kebab
  10015. type: string
  10016. project:
  10017. description: Doppler project (required if not using a Service Token)
  10018. type: string
  10019. required:
  10020. - auth
  10021. type: object
  10022. fake:
  10023. description: Fake configures a store with static key/value pairs
  10024. properties:
  10025. data:
  10026. items:
  10027. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  10028. properties:
  10029. key:
  10030. type: string
  10031. value:
  10032. type: string
  10033. version:
  10034. type: string
  10035. required:
  10036. - key
  10037. - value
  10038. type: object
  10039. type: array
  10040. required:
  10041. - data
  10042. type: object
  10043. fortanix:
  10044. description: Fortanix configures this store to sync secrets using the Fortanix provider
  10045. properties:
  10046. apiKey:
  10047. description: APIKey is the API token to access SDKMS Applications.
  10048. properties:
  10049. secretRef:
  10050. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  10051. properties:
  10052. key:
  10053. description: |-
  10054. A key in the referenced Secret.
  10055. Some instances of this field may be defaulted, in others it may be required.
  10056. maxLength: 253
  10057. minLength: 1
  10058. pattern: ^[-._a-zA-Z0-9]+$
  10059. type: string
  10060. name:
  10061. description: The name of the Secret resource being referred to.
  10062. maxLength: 253
  10063. minLength: 1
  10064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10065. type: string
  10066. namespace:
  10067. description: |-
  10068. The namespace of the Secret resource being referred to.
  10069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10070. maxLength: 63
  10071. minLength: 1
  10072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10073. type: string
  10074. type: object
  10075. type: object
  10076. apiUrl:
  10077. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  10078. type: string
  10079. type: object
  10080. gcpsm:
  10081. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  10082. properties:
  10083. auth:
  10084. description: Auth defines the information necessary to authenticate against GCP
  10085. properties:
  10086. secretRef:
  10087. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  10088. properties:
  10089. secretAccessKeySecretRef:
  10090. description: The SecretAccessKey is used for authentication
  10091. properties:
  10092. key:
  10093. description: |-
  10094. A key in the referenced Secret.
  10095. Some instances of this field may be defaulted, in others it may be required.
  10096. maxLength: 253
  10097. minLength: 1
  10098. pattern: ^[-._a-zA-Z0-9]+$
  10099. type: string
  10100. name:
  10101. description: The name of the Secret resource being referred to.
  10102. maxLength: 253
  10103. minLength: 1
  10104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10105. type: string
  10106. namespace:
  10107. description: |-
  10108. The namespace of the Secret resource being referred to.
  10109. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10110. maxLength: 63
  10111. minLength: 1
  10112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10113. type: string
  10114. type: object
  10115. type: object
  10116. workloadIdentity:
  10117. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  10118. properties:
  10119. clusterLocation:
  10120. description: |-
  10121. ClusterLocation is the location of the cluster
  10122. If not specified, it fetches information from the metadata server
  10123. type: string
  10124. clusterName:
  10125. description: |-
  10126. ClusterName is the name of the cluster
  10127. If not specified, it fetches information from the metadata server
  10128. type: string
  10129. clusterProjectID:
  10130. description: |-
  10131. ClusterProjectID is the project ID of the cluster
  10132. If not specified, it fetches information from the metadata server
  10133. type: string
  10134. serviceAccountRef:
  10135. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  10136. properties:
  10137. audiences:
  10138. description: |-
  10139. Audience specifies the `aud` claim for the service account token
  10140. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10141. then this audiences will be appended to the list
  10142. items:
  10143. type: string
  10144. type: array
  10145. name:
  10146. description: The name of the ServiceAccount resource being referred to.
  10147. maxLength: 253
  10148. minLength: 1
  10149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10150. type: string
  10151. namespace:
  10152. description: |-
  10153. Namespace of the resource being referred to.
  10154. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10155. maxLength: 63
  10156. minLength: 1
  10157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10158. type: string
  10159. required:
  10160. - name
  10161. type: object
  10162. required:
  10163. - serviceAccountRef
  10164. type: object
  10165. type: object
  10166. location:
  10167. description: Location optionally defines a location for a secret
  10168. type: string
  10169. projectID:
  10170. description: ProjectID project where secret is located
  10171. type: string
  10172. type: object
  10173. github:
  10174. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  10175. properties:
  10176. appID:
  10177. description: appID specifies the Github APP that will be used to authenticate the client
  10178. type: integer
  10179. auth:
  10180. description: auth configures how secret-manager authenticates with a Github instance.
  10181. properties:
  10182. privateKey:
  10183. description: |-
  10184. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10185. In some instances, `key` is a required field.
  10186. properties:
  10187. key:
  10188. description: |-
  10189. A key in the referenced Secret.
  10190. Some instances of this field may be defaulted, in others it may be required.
  10191. maxLength: 253
  10192. minLength: 1
  10193. pattern: ^[-._a-zA-Z0-9]+$
  10194. type: string
  10195. name:
  10196. description: The name of the Secret resource being referred to.
  10197. maxLength: 253
  10198. minLength: 1
  10199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10200. type: string
  10201. namespace:
  10202. description: |-
  10203. The namespace of the Secret resource being referred to.
  10204. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10205. maxLength: 63
  10206. minLength: 1
  10207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10208. type: string
  10209. type: object
  10210. required:
  10211. - privateKey
  10212. type: object
  10213. environment:
  10214. description: environment will be used to fetch secrets from a particular environment within a github repository
  10215. type: string
  10216. installationID:
  10217. description: installationID specifies the Github APP installation that will be used to authenticate the client
  10218. type: integer
  10219. organization:
  10220. description: organization will be used to fetch secrets from the Github organization
  10221. type: string
  10222. repository:
  10223. description: repository will be used to fetch secrets from the Github repository within an organization
  10224. type: string
  10225. uploadURL:
  10226. description: Upload URL for enterprise instances. Default to URL.
  10227. type: string
  10228. url:
  10229. default: https://github.com/
  10230. description: URL configures the Github instance URL. Defaults to https://github.com/.
  10231. type: string
  10232. required:
  10233. - appID
  10234. - auth
  10235. - installationID
  10236. - organization
  10237. type: object
  10238. gitlab:
  10239. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10240. properties:
  10241. auth:
  10242. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10243. properties:
  10244. SecretRef:
  10245. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10246. properties:
  10247. accessToken:
  10248. description: AccessToken is used for authentication.
  10249. properties:
  10250. key:
  10251. description: |-
  10252. A key in the referenced Secret.
  10253. Some instances of this field may be defaulted, in others it may be required.
  10254. maxLength: 253
  10255. minLength: 1
  10256. pattern: ^[-._a-zA-Z0-9]+$
  10257. type: string
  10258. name:
  10259. description: The name of the Secret resource being referred to.
  10260. maxLength: 253
  10261. minLength: 1
  10262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10263. type: string
  10264. namespace:
  10265. description: |-
  10266. The namespace of the Secret resource being referred to.
  10267. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10268. maxLength: 63
  10269. minLength: 1
  10270. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10271. type: string
  10272. type: object
  10273. type: object
  10274. required:
  10275. - SecretRef
  10276. type: object
  10277. caBundle:
  10278. description: |-
  10279. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10280. can be performed.
  10281. format: byte
  10282. type: string
  10283. caProvider:
  10284. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10285. properties:
  10286. key:
  10287. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10288. maxLength: 253
  10289. minLength: 1
  10290. pattern: ^[-._a-zA-Z0-9]+$
  10291. type: string
  10292. name:
  10293. description: The name of the object located at the provider type.
  10294. maxLength: 253
  10295. minLength: 1
  10296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10297. type: string
  10298. namespace:
  10299. description: |-
  10300. The namespace the Provider type is in.
  10301. Can only be defined when used in a ClusterSecretStore.
  10302. maxLength: 63
  10303. minLength: 1
  10304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10305. type: string
  10306. type:
  10307. description: The type of provider to use such as "Secret", or "ConfigMap".
  10308. enum:
  10309. - Secret
  10310. - ConfigMap
  10311. type: string
  10312. required:
  10313. - name
  10314. - type
  10315. type: object
  10316. environment:
  10317. 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)
  10318. type: string
  10319. groupIDs:
  10320. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10321. items:
  10322. type: string
  10323. type: array
  10324. inheritFromGroups:
  10325. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10326. type: boolean
  10327. projectID:
  10328. description: ProjectID specifies a project where secrets are located.
  10329. type: string
  10330. url:
  10331. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10332. type: string
  10333. required:
  10334. - auth
  10335. type: object
  10336. ibm:
  10337. description: IBM configures this store to sync secrets using IBM Cloud provider
  10338. properties:
  10339. auth:
  10340. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10341. maxProperties: 1
  10342. minProperties: 1
  10343. properties:
  10344. containerAuth:
  10345. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10346. properties:
  10347. iamEndpoint:
  10348. type: string
  10349. profile:
  10350. description: the IBM Trusted Profile
  10351. type: string
  10352. tokenLocation:
  10353. description: Location the token is mounted on the pod
  10354. type: string
  10355. required:
  10356. - profile
  10357. type: object
  10358. secretRef:
  10359. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10360. properties:
  10361. secretApiKeySecretRef:
  10362. description: The SecretAccessKey is used for authentication
  10363. properties:
  10364. key:
  10365. description: |-
  10366. A key in the referenced Secret.
  10367. Some instances of this field may be defaulted, in others it may be required.
  10368. maxLength: 253
  10369. minLength: 1
  10370. pattern: ^[-._a-zA-Z0-9]+$
  10371. type: string
  10372. name:
  10373. description: The name of the Secret resource being referred to.
  10374. maxLength: 253
  10375. minLength: 1
  10376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10377. type: string
  10378. namespace:
  10379. description: |-
  10380. The namespace of the Secret resource being referred to.
  10381. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10382. maxLength: 63
  10383. minLength: 1
  10384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10385. type: string
  10386. type: object
  10387. type: object
  10388. type: object
  10389. serviceUrl:
  10390. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10391. type: string
  10392. required:
  10393. - auth
  10394. type: object
  10395. infisical:
  10396. description: Infisical configures this store to sync secrets using the Infisical provider
  10397. properties:
  10398. auth:
  10399. description: Auth configures how the Operator authenticates with the Infisical API
  10400. properties:
  10401. universalAuthCredentials:
  10402. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10403. properties:
  10404. clientId:
  10405. description: |-
  10406. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10407. In some instances, `key` is a required field.
  10408. properties:
  10409. key:
  10410. description: |-
  10411. A key in the referenced Secret.
  10412. Some instances of this field may be defaulted, in others it may be required.
  10413. maxLength: 253
  10414. minLength: 1
  10415. pattern: ^[-._a-zA-Z0-9]+$
  10416. type: string
  10417. name:
  10418. description: The name of the Secret resource being referred to.
  10419. maxLength: 253
  10420. minLength: 1
  10421. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10422. type: string
  10423. namespace:
  10424. description: |-
  10425. The namespace of the Secret resource being referred to.
  10426. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10427. maxLength: 63
  10428. minLength: 1
  10429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10430. type: string
  10431. type: object
  10432. clientSecret:
  10433. description: |-
  10434. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10435. In some instances, `key` is a required field.
  10436. properties:
  10437. key:
  10438. description: |-
  10439. A key in the referenced Secret.
  10440. Some instances of this field may be defaulted, in others it may be required.
  10441. maxLength: 253
  10442. minLength: 1
  10443. pattern: ^[-._a-zA-Z0-9]+$
  10444. type: string
  10445. name:
  10446. description: The name of the Secret resource being referred to.
  10447. maxLength: 253
  10448. minLength: 1
  10449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10450. type: string
  10451. namespace:
  10452. description: |-
  10453. The namespace of the Secret resource being referred to.
  10454. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10455. maxLength: 63
  10456. minLength: 1
  10457. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10458. type: string
  10459. type: object
  10460. required:
  10461. - clientId
  10462. - clientSecret
  10463. type: object
  10464. type: object
  10465. hostAPI:
  10466. default: https://app.infisical.com/api
  10467. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10468. type: string
  10469. secretsScope:
  10470. description: SecretsScope defines the scope of the secrets within the workspace
  10471. properties:
  10472. environmentSlug:
  10473. description: EnvironmentSlug is the required slug identifier for the environment.
  10474. type: string
  10475. expandSecretReferences:
  10476. default: true
  10477. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10478. type: boolean
  10479. projectSlug:
  10480. description: ProjectSlug is the required slug identifier for the project.
  10481. type: string
  10482. recursive:
  10483. default: false
  10484. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10485. type: boolean
  10486. secretsPath:
  10487. default: /
  10488. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10489. type: string
  10490. required:
  10491. - environmentSlug
  10492. - projectSlug
  10493. type: object
  10494. required:
  10495. - auth
  10496. - secretsScope
  10497. type: object
  10498. keepersecurity:
  10499. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10500. properties:
  10501. authRef:
  10502. description: |-
  10503. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10504. In some instances, `key` is a required field.
  10505. properties:
  10506. key:
  10507. description: |-
  10508. A key in the referenced Secret.
  10509. Some instances of this field may be defaulted, in others it may be required.
  10510. maxLength: 253
  10511. minLength: 1
  10512. pattern: ^[-._a-zA-Z0-9]+$
  10513. type: string
  10514. name:
  10515. description: The name of the Secret resource being referred to.
  10516. maxLength: 253
  10517. minLength: 1
  10518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10519. type: string
  10520. namespace:
  10521. description: |-
  10522. The namespace of the Secret resource being referred to.
  10523. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10524. maxLength: 63
  10525. minLength: 1
  10526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10527. type: string
  10528. type: object
  10529. folderID:
  10530. type: string
  10531. required:
  10532. - authRef
  10533. - folderID
  10534. type: object
  10535. kubernetes:
  10536. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10537. properties:
  10538. auth:
  10539. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10540. maxProperties: 1
  10541. minProperties: 1
  10542. properties:
  10543. cert:
  10544. description: has both clientCert and clientKey as secretKeySelector
  10545. properties:
  10546. clientCert:
  10547. description: |-
  10548. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10549. In some instances, `key` is a required field.
  10550. properties:
  10551. key:
  10552. description: |-
  10553. A key in the referenced Secret.
  10554. Some instances of this field may be defaulted, in others it may be required.
  10555. maxLength: 253
  10556. minLength: 1
  10557. pattern: ^[-._a-zA-Z0-9]+$
  10558. type: string
  10559. name:
  10560. description: The name of the Secret resource being referred to.
  10561. maxLength: 253
  10562. minLength: 1
  10563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10564. type: string
  10565. namespace:
  10566. description: |-
  10567. The namespace of the Secret resource being referred to.
  10568. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10569. maxLength: 63
  10570. minLength: 1
  10571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10572. type: string
  10573. type: object
  10574. clientKey:
  10575. description: |-
  10576. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10577. In some instances, `key` is a required field.
  10578. properties:
  10579. key:
  10580. description: |-
  10581. A key in the referenced Secret.
  10582. Some instances of this field may be defaulted, in others it may be required.
  10583. maxLength: 253
  10584. minLength: 1
  10585. pattern: ^[-._a-zA-Z0-9]+$
  10586. type: string
  10587. name:
  10588. description: The name of the Secret resource being referred to.
  10589. maxLength: 253
  10590. minLength: 1
  10591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10592. type: string
  10593. namespace:
  10594. description: |-
  10595. The namespace of the Secret resource being referred to.
  10596. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10597. maxLength: 63
  10598. minLength: 1
  10599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10600. type: string
  10601. type: object
  10602. type: object
  10603. serviceAccount:
  10604. description: points to a service account that should be used for authentication
  10605. properties:
  10606. audiences:
  10607. description: |-
  10608. Audience specifies the `aud` claim for the service account token
  10609. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10610. then this audiences will be appended to the list
  10611. items:
  10612. type: string
  10613. type: array
  10614. name:
  10615. description: The name of the ServiceAccount resource being referred to.
  10616. maxLength: 253
  10617. minLength: 1
  10618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10619. type: string
  10620. namespace:
  10621. description: |-
  10622. Namespace of the resource being referred to.
  10623. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10624. maxLength: 63
  10625. minLength: 1
  10626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10627. type: string
  10628. required:
  10629. - name
  10630. type: object
  10631. token:
  10632. description: use static token to authenticate with
  10633. properties:
  10634. bearerToken:
  10635. description: |-
  10636. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10637. In some instances, `key` is a required field.
  10638. properties:
  10639. key:
  10640. description: |-
  10641. A key in the referenced Secret.
  10642. Some instances of this field may be defaulted, in others it may be required.
  10643. maxLength: 253
  10644. minLength: 1
  10645. pattern: ^[-._a-zA-Z0-9]+$
  10646. type: string
  10647. name:
  10648. description: The name of the Secret resource being referred to.
  10649. maxLength: 253
  10650. minLength: 1
  10651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10652. type: string
  10653. namespace:
  10654. description: |-
  10655. The namespace of the Secret resource being referred to.
  10656. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10657. maxLength: 63
  10658. minLength: 1
  10659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10660. type: string
  10661. type: object
  10662. type: object
  10663. type: object
  10664. authRef:
  10665. description: A reference to a secret that contains the auth information.
  10666. properties:
  10667. key:
  10668. description: |-
  10669. A key in the referenced Secret.
  10670. Some instances of this field may be defaulted, in others it may be required.
  10671. maxLength: 253
  10672. minLength: 1
  10673. pattern: ^[-._a-zA-Z0-9]+$
  10674. type: string
  10675. name:
  10676. description: The name of the Secret resource being referred to.
  10677. maxLength: 253
  10678. minLength: 1
  10679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10680. type: string
  10681. namespace:
  10682. description: |-
  10683. The namespace of the Secret resource being referred to.
  10684. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10685. maxLength: 63
  10686. minLength: 1
  10687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10688. type: string
  10689. type: object
  10690. remoteNamespace:
  10691. default: default
  10692. description: Remote namespace to fetch the secrets from
  10693. maxLength: 63
  10694. minLength: 1
  10695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10696. type: string
  10697. server:
  10698. description: configures the Kubernetes server Address.
  10699. properties:
  10700. caBundle:
  10701. description: CABundle is a base64-encoded CA certificate
  10702. format: byte
  10703. type: string
  10704. caProvider:
  10705. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  10706. properties:
  10707. key:
  10708. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10709. maxLength: 253
  10710. minLength: 1
  10711. pattern: ^[-._a-zA-Z0-9]+$
  10712. type: string
  10713. name:
  10714. description: The name of the object located at the provider type.
  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 the Provider type is in.
  10722. Can only be defined when used in a ClusterSecretStore.
  10723. maxLength: 63
  10724. minLength: 1
  10725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10726. type: string
  10727. type:
  10728. description: The type of provider to use such as "Secret", or "ConfigMap".
  10729. enum:
  10730. - Secret
  10731. - ConfigMap
  10732. type: string
  10733. required:
  10734. - name
  10735. - type
  10736. type: object
  10737. url:
  10738. default: kubernetes.default
  10739. description: configures the Kubernetes server Address.
  10740. type: string
  10741. type: object
  10742. type: object
  10743. onboardbase:
  10744. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  10745. properties:
  10746. apiHost:
  10747. default: https://public.onboardbase.com/api/v1/
  10748. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  10749. type: string
  10750. auth:
  10751. description: Auth configures how the Operator authenticates with the Onboardbase API
  10752. properties:
  10753. apiKeyRef:
  10754. description: |-
  10755. OnboardbaseAPIKey is the APIKey generated by an admin account.
  10756. It is used to recognize and authorize access to a project and environment within onboardbase
  10757. properties:
  10758. key:
  10759. description: |-
  10760. A key in the referenced Secret.
  10761. Some instances of this field may be defaulted, in others it may be required.
  10762. maxLength: 253
  10763. minLength: 1
  10764. pattern: ^[-._a-zA-Z0-9]+$
  10765. type: string
  10766. name:
  10767. description: The name of the Secret resource being referred to.
  10768. maxLength: 253
  10769. minLength: 1
  10770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10771. type: string
  10772. namespace:
  10773. description: |-
  10774. The namespace of the Secret resource being referred to.
  10775. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10776. maxLength: 63
  10777. minLength: 1
  10778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10779. type: string
  10780. type: object
  10781. passcodeRef:
  10782. description: OnboardbasePasscode is the passcode attached to the API Key
  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. - apiKeyRef
  10809. - passcodeRef
  10810. type: object
  10811. environment:
  10812. default: development
  10813. description: Environment is the name of an environmnent within a project to pull the secrets from
  10814. type: string
  10815. project:
  10816. default: development
  10817. description: Project is an onboardbase project that the secrets should be pulled from
  10818. type: string
  10819. required:
  10820. - apiHost
  10821. - auth
  10822. - environment
  10823. - project
  10824. type: object
  10825. onepassword:
  10826. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  10827. properties:
  10828. auth:
  10829. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  10830. properties:
  10831. secretRef:
  10832. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  10833. properties:
  10834. connectTokenSecretRef:
  10835. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  10836. properties:
  10837. key:
  10838. description: |-
  10839. A key in the referenced Secret.
  10840. Some instances of this field may be defaulted, in others it may be required.
  10841. maxLength: 253
  10842. minLength: 1
  10843. pattern: ^[-._a-zA-Z0-9]+$
  10844. type: string
  10845. name:
  10846. description: The name of the Secret resource being referred to.
  10847. maxLength: 253
  10848. minLength: 1
  10849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10850. type: string
  10851. namespace:
  10852. description: |-
  10853. The namespace of the Secret resource being referred to.
  10854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10855. maxLength: 63
  10856. minLength: 1
  10857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10858. type: string
  10859. type: object
  10860. required:
  10861. - connectTokenSecretRef
  10862. type: object
  10863. required:
  10864. - secretRef
  10865. type: object
  10866. connectHost:
  10867. description: ConnectHost defines the OnePassword Connect Server to connect to
  10868. type: string
  10869. vaults:
  10870. additionalProperties:
  10871. type: integer
  10872. description: Vaults defines which OnePassword vaults to search in which order
  10873. type: object
  10874. required:
  10875. - auth
  10876. - connectHost
  10877. - vaults
  10878. type: object
  10879. oracle:
  10880. description: Oracle configures this store to sync secrets using Oracle Vault provider
  10881. properties:
  10882. auth:
  10883. description: |-
  10884. Auth configures how secret-manager authenticates with the Oracle Vault.
  10885. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  10886. properties:
  10887. secretRef:
  10888. description: SecretRef to pass through sensitive information.
  10889. properties:
  10890. fingerprint:
  10891. description: Fingerprint is the fingerprint of the API private key.
  10892. properties:
  10893. key:
  10894. description: |-
  10895. A key in the referenced Secret.
  10896. Some instances of this field may be defaulted, in others it may be required.
  10897. maxLength: 253
  10898. minLength: 1
  10899. pattern: ^[-._a-zA-Z0-9]+$
  10900. type: string
  10901. name:
  10902. description: The name of the Secret resource being referred to.
  10903. maxLength: 253
  10904. minLength: 1
  10905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10906. type: string
  10907. namespace:
  10908. description: |-
  10909. The namespace of the Secret resource being referred to.
  10910. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10911. maxLength: 63
  10912. minLength: 1
  10913. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10914. type: string
  10915. type: object
  10916. privatekey:
  10917. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  10918. properties:
  10919. key:
  10920. description: |-
  10921. A key in the referenced Secret.
  10922. Some instances of this field may be defaulted, in others it may be required.
  10923. maxLength: 253
  10924. minLength: 1
  10925. pattern: ^[-._a-zA-Z0-9]+$
  10926. type: string
  10927. name:
  10928. description: The name of the Secret resource being referred to.
  10929. maxLength: 253
  10930. minLength: 1
  10931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10932. type: string
  10933. namespace:
  10934. description: |-
  10935. The namespace of the Secret resource being referred to.
  10936. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10937. maxLength: 63
  10938. minLength: 1
  10939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10940. type: string
  10941. type: object
  10942. required:
  10943. - fingerprint
  10944. - privatekey
  10945. type: object
  10946. tenancy:
  10947. description: Tenancy is the tenancy OCID where user is located.
  10948. type: string
  10949. user:
  10950. description: User is an access OCID specific to the account.
  10951. type: string
  10952. required:
  10953. - secretRef
  10954. - tenancy
  10955. - user
  10956. type: object
  10957. compartment:
  10958. description: |-
  10959. Compartment is the vault compartment OCID.
  10960. Required for PushSecret
  10961. type: string
  10962. encryptionKey:
  10963. description: |-
  10964. EncryptionKey is the OCID of the encryption key within the vault.
  10965. Required for PushSecret
  10966. type: string
  10967. principalType:
  10968. description: |-
  10969. The type of principal to use for authentication. If left blank, the Auth struct will
  10970. determine the principal type. This optional field must be specified if using
  10971. workload identity.
  10972. enum:
  10973. - ""
  10974. - UserPrincipal
  10975. - InstancePrincipal
  10976. - Workload
  10977. type: string
  10978. region:
  10979. description: Region is the region where vault is located.
  10980. type: string
  10981. serviceAccountRef:
  10982. description: |-
  10983. ServiceAccountRef specified the service account
  10984. that should be used when authenticating with WorkloadIdentity.
  10985. properties:
  10986. audiences:
  10987. description: |-
  10988. Audience specifies the `aud` claim for the service account token
  10989. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10990. then this audiences will be appended to the list
  10991. items:
  10992. type: string
  10993. type: array
  10994. name:
  10995. description: The name of the ServiceAccount resource being referred to.
  10996. maxLength: 253
  10997. minLength: 1
  10998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10999. type: string
  11000. namespace:
  11001. description: |-
  11002. Namespace of the resource being referred to.
  11003. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11004. maxLength: 63
  11005. minLength: 1
  11006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11007. type: string
  11008. required:
  11009. - name
  11010. type: object
  11011. vault:
  11012. description: Vault is the vault's OCID of the specific vault where secret is located.
  11013. type: string
  11014. required:
  11015. - region
  11016. - vault
  11017. type: object
  11018. passbolt:
  11019. description: PassboltProvider defines configuration for the Passbolt provider.
  11020. properties:
  11021. auth:
  11022. description: Auth defines the information necessary to authenticate against Passbolt Server
  11023. properties:
  11024. passwordSecretRef:
  11025. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  11026. properties:
  11027. key:
  11028. description: |-
  11029. A key in the referenced Secret.
  11030. Some instances of this field may be defaulted, in others it may be required.
  11031. maxLength: 253
  11032. minLength: 1
  11033. pattern: ^[-._a-zA-Z0-9]+$
  11034. type: string
  11035. name:
  11036. description: The name of the Secret resource being referred to.
  11037. maxLength: 253
  11038. minLength: 1
  11039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11040. type: string
  11041. namespace:
  11042. description: |-
  11043. The namespace of the Secret resource being referred to.
  11044. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11045. maxLength: 63
  11046. minLength: 1
  11047. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11048. type: string
  11049. type: object
  11050. privateKeySecretRef:
  11051. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  11052. properties:
  11053. key:
  11054. description: |-
  11055. A key in the referenced Secret.
  11056. Some instances of this field may be defaulted, in others it may be required.
  11057. maxLength: 253
  11058. minLength: 1
  11059. pattern: ^[-._a-zA-Z0-9]+$
  11060. type: string
  11061. name:
  11062. description: The name of the Secret resource being referred to.
  11063. maxLength: 253
  11064. minLength: 1
  11065. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11066. type: string
  11067. namespace:
  11068. description: |-
  11069. The namespace of the Secret resource being referred to.
  11070. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11071. maxLength: 63
  11072. minLength: 1
  11073. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11074. type: string
  11075. type: object
  11076. required:
  11077. - passwordSecretRef
  11078. - privateKeySecretRef
  11079. type: object
  11080. host:
  11081. description: Host defines the Passbolt Server to connect to
  11082. type: string
  11083. required:
  11084. - auth
  11085. - host
  11086. type: object
  11087. passworddepot:
  11088. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  11089. properties:
  11090. auth:
  11091. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  11092. properties:
  11093. secretRef:
  11094. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  11095. properties:
  11096. credentials:
  11097. description: Username / Password is used for authentication.
  11098. properties:
  11099. key:
  11100. description: |-
  11101. A key in the referenced Secret.
  11102. Some instances of this field may be defaulted, in others it may be required.
  11103. maxLength: 253
  11104. minLength: 1
  11105. pattern: ^[-._a-zA-Z0-9]+$
  11106. type: string
  11107. name:
  11108. description: The name of the Secret resource being referred to.
  11109. maxLength: 253
  11110. minLength: 1
  11111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11112. type: string
  11113. namespace:
  11114. description: |-
  11115. The namespace of the Secret resource being referred to.
  11116. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11117. maxLength: 63
  11118. minLength: 1
  11119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11120. type: string
  11121. type: object
  11122. type: object
  11123. required:
  11124. - secretRef
  11125. type: object
  11126. database:
  11127. description: Database to use as source
  11128. type: string
  11129. host:
  11130. description: URL configures the Password Depot instance URL.
  11131. type: string
  11132. required:
  11133. - auth
  11134. - database
  11135. - host
  11136. type: object
  11137. previder:
  11138. description: Previder configures this store to sync secrets using the Previder provider
  11139. properties:
  11140. auth:
  11141. description: PreviderAuth contains a secretRef for credentials.
  11142. properties:
  11143. secretRef:
  11144. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  11145. properties:
  11146. accessToken:
  11147. description: The AccessToken is used for authentication
  11148. properties:
  11149. key:
  11150. description: |-
  11151. A key in the referenced Secret.
  11152. Some instances of this field may be defaulted, in others it may be required.
  11153. maxLength: 253
  11154. minLength: 1
  11155. pattern: ^[-._a-zA-Z0-9]+$
  11156. type: string
  11157. name:
  11158. description: The name of the Secret resource being referred to.
  11159. maxLength: 253
  11160. minLength: 1
  11161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11162. type: string
  11163. namespace:
  11164. description: |-
  11165. The namespace of the Secret resource being referred to.
  11166. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11167. maxLength: 63
  11168. minLength: 1
  11169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11170. type: string
  11171. type: object
  11172. required:
  11173. - accessToken
  11174. type: object
  11175. type: object
  11176. baseUri:
  11177. type: string
  11178. required:
  11179. - auth
  11180. type: object
  11181. pulumi:
  11182. description: Pulumi configures this store to sync secrets using the Pulumi provider
  11183. properties:
  11184. accessToken:
  11185. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  11186. properties:
  11187. secretRef:
  11188. description: SecretRef is a reference to a secret containing the Pulumi API token.
  11189. properties:
  11190. key:
  11191. description: |-
  11192. A key in the referenced Secret.
  11193. Some instances of this field may be defaulted, in others it may be required.
  11194. maxLength: 253
  11195. minLength: 1
  11196. pattern: ^[-._a-zA-Z0-9]+$
  11197. type: string
  11198. name:
  11199. description: The name of the Secret resource being referred to.
  11200. maxLength: 253
  11201. minLength: 1
  11202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11203. type: string
  11204. namespace:
  11205. description: |-
  11206. The namespace of the Secret resource being referred to.
  11207. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11208. maxLength: 63
  11209. minLength: 1
  11210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11211. type: string
  11212. type: object
  11213. type: object
  11214. apiUrl:
  11215. default: https://api.pulumi.com/api/esc
  11216. description: APIURL is the URL of the Pulumi API.
  11217. type: string
  11218. environment:
  11219. description: |-
  11220. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  11221. dynamically retrieved values from supported providers including all major clouds,
  11222. and other Pulumi ESC environments.
  11223. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  11224. type: string
  11225. organization:
  11226. description: |-
  11227. Organization are a space to collaborate on shared projects and stacks.
  11228. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  11229. type: string
  11230. project:
  11231. description: Project is the name of the Pulumi ESC project the environment belongs to.
  11232. type: string
  11233. required:
  11234. - accessToken
  11235. - environment
  11236. - organization
  11237. - project
  11238. type: object
  11239. scaleway:
  11240. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11241. properties:
  11242. accessKey:
  11243. description: AccessKey is the non-secret part of the api key.
  11244. properties:
  11245. secretRef:
  11246. description: SecretRef references a key in a secret that will be used as value.
  11247. properties:
  11248. key:
  11249. description: |-
  11250. A key in the referenced Secret.
  11251. Some instances of this field may be defaulted, in others it may be required.
  11252. maxLength: 253
  11253. minLength: 1
  11254. pattern: ^[-._a-zA-Z0-9]+$
  11255. type: string
  11256. name:
  11257. description: The name of the Secret resource being referred to.
  11258. maxLength: 253
  11259. minLength: 1
  11260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11261. type: string
  11262. namespace:
  11263. description: |-
  11264. The namespace of the Secret resource being referred to.
  11265. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11266. maxLength: 63
  11267. minLength: 1
  11268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11269. type: string
  11270. type: object
  11271. value:
  11272. description: Value can be specified directly to set a value without using a secret.
  11273. type: string
  11274. type: object
  11275. apiUrl:
  11276. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11277. type: string
  11278. projectId:
  11279. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11280. type: string
  11281. region:
  11282. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11283. type: string
  11284. secretKey:
  11285. description: SecretKey is the non-secret part of the api key.
  11286. properties:
  11287. secretRef:
  11288. description: SecretRef references a key in a secret that will be used as value.
  11289. properties:
  11290. key:
  11291. description: |-
  11292. A key in the referenced Secret.
  11293. Some instances of this field may be defaulted, in others it may be required.
  11294. maxLength: 253
  11295. minLength: 1
  11296. pattern: ^[-._a-zA-Z0-9]+$
  11297. type: string
  11298. name:
  11299. description: The name of the Secret resource being referred to.
  11300. maxLength: 253
  11301. minLength: 1
  11302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11303. type: string
  11304. namespace:
  11305. description: |-
  11306. The namespace of the Secret resource being referred to.
  11307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11308. maxLength: 63
  11309. minLength: 1
  11310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11311. type: string
  11312. type: object
  11313. value:
  11314. description: Value can be specified directly to set a value without using a secret.
  11315. type: string
  11316. type: object
  11317. required:
  11318. - accessKey
  11319. - projectId
  11320. - region
  11321. - secretKey
  11322. type: object
  11323. secretserver:
  11324. description: |-
  11325. SecretServer configures this store to sync secrets using SecretServer provider
  11326. https://docs.delinea.com/online-help/secret-server/start.htm
  11327. properties:
  11328. password:
  11329. description: Password is the secret server account password.
  11330. properties:
  11331. secretRef:
  11332. description: SecretRef references a key in a secret that will be used as value.
  11333. properties:
  11334. key:
  11335. description: |-
  11336. A key in the referenced Secret.
  11337. Some instances of this field may be defaulted, in others it may be required.
  11338. maxLength: 253
  11339. minLength: 1
  11340. pattern: ^[-._a-zA-Z0-9]+$
  11341. type: string
  11342. name:
  11343. description: The name of the Secret resource being referred to.
  11344. maxLength: 253
  11345. minLength: 1
  11346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11347. type: string
  11348. namespace:
  11349. description: |-
  11350. The namespace of the Secret resource being referred to.
  11351. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11352. maxLength: 63
  11353. minLength: 1
  11354. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11355. type: string
  11356. type: object
  11357. value:
  11358. description: Value can be specified directly to set a value without using a secret.
  11359. type: string
  11360. type: object
  11361. serverURL:
  11362. description: |-
  11363. ServerURL
  11364. URL to your secret server installation
  11365. type: string
  11366. username:
  11367. description: Username is the secret server account username.
  11368. properties:
  11369. secretRef:
  11370. description: SecretRef references a key in a secret that will be used as value.
  11371. properties:
  11372. key:
  11373. description: |-
  11374. A key in the referenced Secret.
  11375. Some instances of this field may be defaulted, in others it may be required.
  11376. maxLength: 253
  11377. minLength: 1
  11378. pattern: ^[-._a-zA-Z0-9]+$
  11379. type: string
  11380. name:
  11381. description: The name of the Secret resource being referred to.
  11382. maxLength: 253
  11383. minLength: 1
  11384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11385. type: string
  11386. namespace:
  11387. description: |-
  11388. The namespace of the Secret resource being referred to.
  11389. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11390. maxLength: 63
  11391. minLength: 1
  11392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11393. type: string
  11394. type: object
  11395. value:
  11396. description: Value can be specified directly to set a value without using a secret.
  11397. type: string
  11398. type: object
  11399. required:
  11400. - password
  11401. - serverURL
  11402. - username
  11403. type: object
  11404. senhasegura:
  11405. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11406. properties:
  11407. auth:
  11408. description: Auth defines parameters to authenticate in senhasegura
  11409. properties:
  11410. clientId:
  11411. type: string
  11412. clientSecretSecretRef:
  11413. description: |-
  11414. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11415. In some instances, `key` is a required field.
  11416. properties:
  11417. key:
  11418. description: |-
  11419. A key in the referenced Secret.
  11420. Some instances of this field may be defaulted, in others it may be required.
  11421. maxLength: 253
  11422. minLength: 1
  11423. pattern: ^[-._a-zA-Z0-9]+$
  11424. type: string
  11425. name:
  11426. description: The name of the Secret resource being referred to.
  11427. maxLength: 253
  11428. minLength: 1
  11429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11430. type: string
  11431. namespace:
  11432. description: |-
  11433. The namespace of the Secret resource being referred to.
  11434. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11435. maxLength: 63
  11436. minLength: 1
  11437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11438. type: string
  11439. type: object
  11440. required:
  11441. - clientId
  11442. - clientSecretSecretRef
  11443. type: object
  11444. ignoreSslCertificate:
  11445. default: false
  11446. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11447. type: boolean
  11448. module:
  11449. description: Module defines which senhasegura module should be used to get secrets
  11450. type: string
  11451. url:
  11452. description: URL of senhasegura
  11453. type: string
  11454. required:
  11455. - auth
  11456. - module
  11457. - url
  11458. type: object
  11459. vault:
  11460. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11461. properties:
  11462. auth:
  11463. description: Auth configures how secret-manager authenticates with the Vault server.
  11464. properties:
  11465. appRole:
  11466. description: |-
  11467. AppRole authenticates with Vault using the App Role auth mechanism,
  11468. with the role and secret stored in a Kubernetes Secret resource.
  11469. properties:
  11470. path:
  11471. default: approle
  11472. description: |-
  11473. Path where the App Role authentication backend is mounted
  11474. in Vault, e.g: "approle"
  11475. type: string
  11476. roleId:
  11477. description: |-
  11478. RoleID configured in the App Role authentication backend when setting
  11479. up the authentication backend in Vault.
  11480. type: string
  11481. roleRef:
  11482. description: |-
  11483. Reference to a key in a Secret that contains the App Role ID used
  11484. to authenticate with Vault.
  11485. The `key` field must be specified and denotes which entry within the Secret
  11486. resource is used as the app role id.
  11487. properties:
  11488. key:
  11489. description: |-
  11490. A key in the referenced Secret.
  11491. Some instances of this field may be defaulted, in others it may be required.
  11492. maxLength: 253
  11493. minLength: 1
  11494. pattern: ^[-._a-zA-Z0-9]+$
  11495. type: string
  11496. name:
  11497. description: The name of the Secret resource being referred to.
  11498. maxLength: 253
  11499. minLength: 1
  11500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11501. type: string
  11502. namespace:
  11503. description: |-
  11504. The namespace of the Secret resource being referred to.
  11505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11506. maxLength: 63
  11507. minLength: 1
  11508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11509. type: string
  11510. type: object
  11511. secretRef:
  11512. description: |-
  11513. Reference to a key in a Secret that contains the App Role secret used
  11514. to authenticate with Vault.
  11515. The `key` field must be specified and denotes which entry within the Secret
  11516. resource is used as the app role secret.
  11517. properties:
  11518. key:
  11519. description: |-
  11520. A key in the referenced Secret.
  11521. Some instances of this field may be defaulted, in others it may be required.
  11522. maxLength: 253
  11523. minLength: 1
  11524. pattern: ^[-._a-zA-Z0-9]+$
  11525. type: string
  11526. name:
  11527. description: The name of the Secret resource being referred to.
  11528. maxLength: 253
  11529. minLength: 1
  11530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11531. type: string
  11532. namespace:
  11533. description: |-
  11534. The namespace of the Secret resource being referred to.
  11535. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11536. maxLength: 63
  11537. minLength: 1
  11538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11539. type: string
  11540. type: object
  11541. required:
  11542. - path
  11543. - secretRef
  11544. type: object
  11545. cert:
  11546. description: |-
  11547. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11548. Cert authentication method
  11549. properties:
  11550. clientCert:
  11551. description: |-
  11552. ClientCert is a certificate to authenticate using the Cert Vault
  11553. authentication method
  11554. properties:
  11555. key:
  11556. description: |-
  11557. A key in the referenced Secret.
  11558. Some instances of this field may be defaulted, in others it may be required.
  11559. maxLength: 253
  11560. minLength: 1
  11561. pattern: ^[-._a-zA-Z0-9]+$
  11562. type: string
  11563. name:
  11564. description: The name of the Secret resource being referred to.
  11565. maxLength: 253
  11566. minLength: 1
  11567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11568. type: string
  11569. namespace:
  11570. description: |-
  11571. The namespace of the Secret resource being referred to.
  11572. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11573. maxLength: 63
  11574. minLength: 1
  11575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11576. type: string
  11577. type: object
  11578. secretRef:
  11579. description: |-
  11580. SecretRef to a key in a Secret resource containing client private key to
  11581. authenticate with Vault using the Cert authentication method
  11582. properties:
  11583. key:
  11584. description: |-
  11585. A key in the referenced Secret.
  11586. Some instances of this field may be defaulted, in others it may be required.
  11587. maxLength: 253
  11588. minLength: 1
  11589. pattern: ^[-._a-zA-Z0-9]+$
  11590. type: string
  11591. name:
  11592. description: The name of the Secret resource being referred to.
  11593. maxLength: 253
  11594. minLength: 1
  11595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11596. type: string
  11597. namespace:
  11598. description: |-
  11599. The namespace of the Secret resource being referred to.
  11600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11601. maxLength: 63
  11602. minLength: 1
  11603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11604. type: string
  11605. type: object
  11606. type: object
  11607. iam:
  11608. description: |-
  11609. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11610. AWS IAM authentication method
  11611. properties:
  11612. externalID:
  11613. description: AWS External ID set on assumed IAM roles
  11614. type: string
  11615. jwt:
  11616. description: Specify a service account with IRSA enabled
  11617. properties:
  11618. serviceAccountRef:
  11619. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  11620. properties:
  11621. audiences:
  11622. description: |-
  11623. Audience specifies the `aud` claim for the service account token
  11624. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11625. then this audiences will be appended to the list
  11626. items:
  11627. type: string
  11628. type: array
  11629. name:
  11630. description: The name of the ServiceAccount resource being referred to.
  11631. maxLength: 253
  11632. minLength: 1
  11633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11634. type: string
  11635. namespace:
  11636. description: |-
  11637. Namespace of the resource being referred to.
  11638. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11639. maxLength: 63
  11640. minLength: 1
  11641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11642. type: string
  11643. required:
  11644. - name
  11645. type: object
  11646. type: object
  11647. path:
  11648. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11649. type: string
  11650. region:
  11651. description: AWS region
  11652. type: string
  11653. role:
  11654. description: This is the AWS role to be assumed before talking to vault
  11655. type: string
  11656. secretRef:
  11657. description: Specify credentials in a Secret object
  11658. properties:
  11659. accessKeyIDSecretRef:
  11660. description: The AccessKeyID is used for authentication
  11661. properties:
  11662. key:
  11663. description: |-
  11664. A key in the referenced Secret.
  11665. Some instances of this field may be defaulted, in others it may be required.
  11666. maxLength: 253
  11667. minLength: 1
  11668. pattern: ^[-._a-zA-Z0-9]+$
  11669. type: string
  11670. name:
  11671. description: The name of the Secret resource being referred to.
  11672. maxLength: 253
  11673. minLength: 1
  11674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11675. type: string
  11676. namespace:
  11677. description: |-
  11678. The namespace of the Secret resource being referred to.
  11679. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11680. maxLength: 63
  11681. minLength: 1
  11682. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11683. type: string
  11684. type: object
  11685. secretAccessKeySecretRef:
  11686. description: The SecretAccessKey is used for authentication
  11687. properties:
  11688. key:
  11689. description: |-
  11690. A key in the referenced Secret.
  11691. Some instances of this field may be defaulted, in others it may be required.
  11692. maxLength: 253
  11693. minLength: 1
  11694. pattern: ^[-._a-zA-Z0-9]+$
  11695. type: string
  11696. name:
  11697. description: The name of the Secret resource being referred to.
  11698. maxLength: 253
  11699. minLength: 1
  11700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11701. type: string
  11702. namespace:
  11703. description: |-
  11704. The namespace of the Secret resource being referred to.
  11705. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11706. maxLength: 63
  11707. minLength: 1
  11708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11709. type: string
  11710. type: object
  11711. sessionTokenSecretRef:
  11712. description: |-
  11713. The SessionToken used for authentication
  11714. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11715. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11716. properties:
  11717. key:
  11718. description: |-
  11719. A key in the referenced Secret.
  11720. Some instances of this field may be defaulted, in others it may be required.
  11721. maxLength: 253
  11722. minLength: 1
  11723. pattern: ^[-._a-zA-Z0-9]+$
  11724. type: string
  11725. name:
  11726. description: The name of the Secret resource being referred to.
  11727. maxLength: 253
  11728. minLength: 1
  11729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11730. type: string
  11731. namespace:
  11732. description: |-
  11733. The namespace of the Secret resource being referred to.
  11734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11735. maxLength: 63
  11736. minLength: 1
  11737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11738. type: string
  11739. type: object
  11740. type: object
  11741. vaultAwsIamServerID:
  11742. 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'
  11743. type: string
  11744. vaultRole:
  11745. 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
  11746. type: string
  11747. required:
  11748. - vaultRole
  11749. type: object
  11750. jwt:
  11751. description: |-
  11752. Jwt authenticates with Vault by passing role and JWT token using the
  11753. JWT/OIDC authentication method
  11754. properties:
  11755. kubernetesServiceAccountToken:
  11756. description: |-
  11757. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  11758. a token for with the `TokenRequest` API.
  11759. properties:
  11760. audiences:
  11761. description: |-
  11762. Optional audiences field that will be used to request a temporary Kubernetes service
  11763. account token for the service account referenced by `serviceAccountRef`.
  11764. Defaults to a single audience `vault` it not specified.
  11765. Deprecated: use serviceAccountRef.Audiences instead
  11766. items:
  11767. type: string
  11768. type: array
  11769. expirationSeconds:
  11770. description: |-
  11771. Optional expiration time in seconds that will be used to request a temporary
  11772. Kubernetes service account token for the service account referenced by
  11773. `serviceAccountRef`.
  11774. Deprecated: this will be removed in the future.
  11775. Defaults to 10 minutes.
  11776. type: integer
  11777. serviceAccountRef:
  11778. description: Service account field containing the name of a kubernetes ServiceAccount.
  11779. properties:
  11780. audiences:
  11781. description: |-
  11782. Audience specifies the `aud` claim for the service account token
  11783. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11784. then this audiences will be appended to the list
  11785. items:
  11786. type: string
  11787. type: array
  11788. name:
  11789. description: The name of the ServiceAccount resource being referred to.
  11790. maxLength: 253
  11791. minLength: 1
  11792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11793. type: string
  11794. namespace:
  11795. description: |-
  11796. Namespace of the resource being referred to.
  11797. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11798. maxLength: 63
  11799. minLength: 1
  11800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11801. type: string
  11802. required:
  11803. - name
  11804. type: object
  11805. required:
  11806. - serviceAccountRef
  11807. type: object
  11808. path:
  11809. default: jwt
  11810. description: |-
  11811. Path where the JWT authentication backend is mounted
  11812. in Vault, e.g: "jwt"
  11813. type: string
  11814. role:
  11815. description: |-
  11816. Role is a JWT role to authenticate using the JWT/OIDC Vault
  11817. authentication method
  11818. type: string
  11819. secretRef:
  11820. description: |-
  11821. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  11822. authenticate with Vault using the JWT/OIDC authentication method.
  11823. properties:
  11824. key:
  11825. description: |-
  11826. A key in the referenced Secret.
  11827. Some instances of this field may be defaulted, in others it may be required.
  11828. maxLength: 253
  11829. minLength: 1
  11830. pattern: ^[-._a-zA-Z0-9]+$
  11831. type: string
  11832. name:
  11833. description: The name of the Secret resource being referred to.
  11834. maxLength: 253
  11835. minLength: 1
  11836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11837. type: string
  11838. namespace:
  11839. description: |-
  11840. The namespace of the Secret resource being referred to.
  11841. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11842. maxLength: 63
  11843. minLength: 1
  11844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11845. type: string
  11846. type: object
  11847. required:
  11848. - path
  11849. type: object
  11850. kubernetes:
  11851. description: |-
  11852. Kubernetes authenticates with Vault by passing the ServiceAccount
  11853. token stored in the named Secret resource to the Vault server.
  11854. properties:
  11855. mountPath:
  11856. default: kubernetes
  11857. description: |-
  11858. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  11859. "kubernetes"
  11860. type: string
  11861. role:
  11862. description: |-
  11863. A required field containing the Vault Role to assume. A Role binds a
  11864. Kubernetes ServiceAccount with a set of Vault policies.
  11865. type: string
  11866. secretRef:
  11867. description: |-
  11868. Optional secret field containing a Kubernetes ServiceAccount JWT used
  11869. for authenticating with Vault. If a name is specified without a key,
  11870. `token` is the default. If one is not specified, the one bound to
  11871. the controller will be used.
  11872. properties:
  11873. key:
  11874. description: |-
  11875. A key in the referenced Secret.
  11876. Some instances of this field may be defaulted, in others it may be required.
  11877. maxLength: 253
  11878. minLength: 1
  11879. pattern: ^[-._a-zA-Z0-9]+$
  11880. type: string
  11881. name:
  11882. description: The name of the Secret resource being referred to.
  11883. maxLength: 253
  11884. minLength: 1
  11885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11886. type: string
  11887. namespace:
  11888. description: |-
  11889. The namespace of the Secret resource being referred to.
  11890. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11891. maxLength: 63
  11892. minLength: 1
  11893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11894. type: string
  11895. type: object
  11896. serviceAccountRef:
  11897. description: |-
  11898. Optional service account field containing the name of a kubernetes ServiceAccount.
  11899. If the service account is specified, the service account secret token JWT will be used
  11900. for authenticating with Vault. If the service account selector is not supplied,
  11901. the secretRef will be used instead.
  11902. properties:
  11903. audiences:
  11904. description: |-
  11905. Audience specifies the `aud` claim for the service account token
  11906. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11907. then this audiences will be appended to the list
  11908. items:
  11909. type: string
  11910. type: array
  11911. name:
  11912. description: The name of the ServiceAccount resource being referred to.
  11913. maxLength: 253
  11914. minLength: 1
  11915. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11916. type: string
  11917. namespace:
  11918. description: |-
  11919. Namespace of the resource being referred to.
  11920. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11921. maxLength: 63
  11922. minLength: 1
  11923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11924. type: string
  11925. required:
  11926. - name
  11927. type: object
  11928. required:
  11929. - mountPath
  11930. - role
  11931. type: object
  11932. ldap:
  11933. description: |-
  11934. Ldap authenticates with Vault by passing username/password pair using
  11935. the LDAP authentication method
  11936. properties:
  11937. path:
  11938. default: ldap
  11939. description: |-
  11940. Path where the LDAP authentication backend is mounted
  11941. in Vault, e.g: "ldap"
  11942. type: string
  11943. secretRef:
  11944. description: |-
  11945. SecretRef to a key in a Secret resource containing password for the LDAP
  11946. user used to authenticate with Vault using the LDAP authentication
  11947. method
  11948. properties:
  11949. key:
  11950. description: |-
  11951. A key in the referenced Secret.
  11952. Some instances of this field may be defaulted, in others it may be required.
  11953. maxLength: 253
  11954. minLength: 1
  11955. pattern: ^[-._a-zA-Z0-9]+$
  11956. type: string
  11957. name:
  11958. description: The name of the Secret resource being referred to.
  11959. maxLength: 253
  11960. minLength: 1
  11961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11962. type: string
  11963. namespace:
  11964. description: |-
  11965. The namespace of the Secret resource being referred to.
  11966. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11967. maxLength: 63
  11968. minLength: 1
  11969. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11970. type: string
  11971. type: object
  11972. username:
  11973. description: |-
  11974. Username is an LDAP username used to authenticate using the LDAP Vault
  11975. authentication method
  11976. type: string
  11977. required:
  11978. - path
  11979. - username
  11980. type: object
  11981. namespace:
  11982. description: |-
  11983. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  11984. Namespaces is a set of features within Vault Enterprise that allows
  11985. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11986. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11987. This will default to Vault.Namespace field if set, or empty otherwise
  11988. type: string
  11989. tokenSecretRef:
  11990. description: TokenSecretRef authenticates with Vault by presenting a token.
  11991. properties:
  11992. key:
  11993. description: |-
  11994. A key in the referenced Secret.
  11995. Some instances of this field may be defaulted, in others it may be required.
  11996. maxLength: 253
  11997. minLength: 1
  11998. pattern: ^[-._a-zA-Z0-9]+$
  11999. type: string
  12000. name:
  12001. description: The name of the Secret resource being referred to.
  12002. maxLength: 253
  12003. minLength: 1
  12004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12005. type: string
  12006. namespace:
  12007. description: |-
  12008. The namespace of the Secret resource being referred to.
  12009. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12010. maxLength: 63
  12011. minLength: 1
  12012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12013. type: string
  12014. type: object
  12015. userPass:
  12016. description: UserPass authenticates with Vault by passing username/password pair
  12017. properties:
  12018. path:
  12019. default: userpass
  12020. description: |-
  12021. Path where the UserPassword authentication backend is mounted
  12022. in Vault, e.g: "userpass"
  12023. type: string
  12024. secretRef:
  12025. description: |-
  12026. SecretRef to a key in a Secret resource containing password for the
  12027. user used to authenticate with Vault using the UserPass authentication
  12028. method
  12029. properties:
  12030. key:
  12031. description: |-
  12032. A key in the referenced Secret.
  12033. Some instances of this field may be defaulted, in others it may be required.
  12034. maxLength: 253
  12035. minLength: 1
  12036. pattern: ^[-._a-zA-Z0-9]+$
  12037. type: string
  12038. name:
  12039. description: The name of the Secret resource being referred to.
  12040. maxLength: 253
  12041. minLength: 1
  12042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12043. type: string
  12044. namespace:
  12045. description: |-
  12046. The namespace of the Secret resource being referred to.
  12047. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12048. maxLength: 63
  12049. minLength: 1
  12050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12051. type: string
  12052. type: object
  12053. username:
  12054. description: |-
  12055. Username is a username used to authenticate using the UserPass Vault
  12056. authentication method
  12057. type: string
  12058. required:
  12059. - path
  12060. - username
  12061. type: object
  12062. type: object
  12063. caBundle:
  12064. description: |-
  12065. PEM encoded CA bundle used to validate Vault server certificate. Only used
  12066. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12067. plain HTTP protocol connection. If not set the system root certificates
  12068. are used to validate the TLS connection.
  12069. format: byte
  12070. type: string
  12071. caProvider:
  12072. description: The provider for the CA bundle to use to validate Vault server certificate.
  12073. properties:
  12074. key:
  12075. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12076. maxLength: 253
  12077. minLength: 1
  12078. pattern: ^[-._a-zA-Z0-9]+$
  12079. type: string
  12080. name:
  12081. description: The name of the object located at the provider type.
  12082. maxLength: 253
  12083. minLength: 1
  12084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12085. type: string
  12086. namespace:
  12087. description: |-
  12088. The namespace the Provider type is in.
  12089. Can only be defined when used in a ClusterSecretStore.
  12090. maxLength: 63
  12091. minLength: 1
  12092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12093. type: string
  12094. type:
  12095. description: The type of provider to use such as "Secret", or "ConfigMap".
  12096. enum:
  12097. - Secret
  12098. - ConfigMap
  12099. type: string
  12100. required:
  12101. - name
  12102. - type
  12103. type: object
  12104. forwardInconsistent:
  12105. description: |-
  12106. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12107. leader instead of simply retrying within a loop. This can increase performance if
  12108. the option is enabled serverside.
  12109. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12110. type: boolean
  12111. headers:
  12112. additionalProperties:
  12113. type: string
  12114. description: Headers to be added in Vault request
  12115. type: object
  12116. namespace:
  12117. description: |-
  12118. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12119. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12120. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12121. type: string
  12122. path:
  12123. description: |-
  12124. Path is the mount path of the Vault KV backend endpoint, e.g:
  12125. "secret". The v2 KV secret engine version specific "/data" path suffix
  12126. for fetching secrets from Vault is optional and will be appended
  12127. if not present in specified path.
  12128. type: string
  12129. readYourWrites:
  12130. description: |-
  12131. ReadYourWrites ensures isolated read-after-write semantics by
  12132. providing discovered cluster replication states in each request.
  12133. More information about eventual consistency in Vault can be found here
  12134. https://www.vaultproject.io/docs/enterprise/consistency
  12135. type: boolean
  12136. server:
  12137. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12138. type: string
  12139. tls:
  12140. description: |-
  12141. The configuration used for client side related TLS communication, when the Vault server
  12142. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12143. This parameter is ignored for plain HTTP protocol connection.
  12144. It's worth noting this configuration is different from the "TLS certificates auth method",
  12145. which is available under the `auth.cert` section.
  12146. properties:
  12147. certSecretRef:
  12148. description: |-
  12149. CertSecretRef is a certificate added to the transport layer
  12150. when communicating with the Vault server.
  12151. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12152. properties:
  12153. key:
  12154. description: |-
  12155. A key in the referenced Secret.
  12156. Some instances of this field may be defaulted, in others it may be required.
  12157. maxLength: 253
  12158. minLength: 1
  12159. pattern: ^[-._a-zA-Z0-9]+$
  12160. type: string
  12161. name:
  12162. description: The name of the Secret resource being referred to.
  12163. maxLength: 253
  12164. minLength: 1
  12165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12166. type: string
  12167. namespace:
  12168. description: |-
  12169. The namespace of the Secret resource being referred to.
  12170. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12171. maxLength: 63
  12172. minLength: 1
  12173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12174. type: string
  12175. type: object
  12176. keySecretRef:
  12177. description: |-
  12178. KeySecretRef to a key in a Secret resource containing client private key
  12179. added to the transport layer when communicating with the Vault server.
  12180. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  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. type: object
  12206. version:
  12207. default: v2
  12208. description: |-
  12209. Version is the Vault KV secret engine version. This can be either "v1" or
  12210. "v2". Version defaults to "v2".
  12211. enum:
  12212. - v1
  12213. - v2
  12214. type: string
  12215. required:
  12216. - server
  12217. type: object
  12218. webhook:
  12219. description: Webhook configures this store to sync secrets using a generic templated webhook
  12220. properties:
  12221. auth:
  12222. description: Auth specifies a authorization protocol. Only one protocol may be set.
  12223. maxProperties: 1
  12224. minProperties: 1
  12225. properties:
  12226. ntlm:
  12227. description: NTLMProtocol configures the store to use NTLM for auth
  12228. properties:
  12229. passwordSecret:
  12230. description: |-
  12231. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12232. In some instances, `key` is a required field.
  12233. properties:
  12234. key:
  12235. description: |-
  12236. A key in the referenced Secret.
  12237. Some instances of this field may be defaulted, in others it may be required.
  12238. maxLength: 253
  12239. minLength: 1
  12240. pattern: ^[-._a-zA-Z0-9]+$
  12241. type: string
  12242. name:
  12243. description: The name of the Secret resource being referred to.
  12244. maxLength: 253
  12245. minLength: 1
  12246. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12247. type: string
  12248. namespace:
  12249. description: |-
  12250. The namespace of the Secret resource being referred to.
  12251. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12252. maxLength: 63
  12253. minLength: 1
  12254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12255. type: string
  12256. type: object
  12257. usernameSecret:
  12258. description: |-
  12259. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12260. In some instances, `key` is a required field.
  12261. properties:
  12262. key:
  12263. description: |-
  12264. A key in the referenced Secret.
  12265. Some instances of this field may be defaulted, in others it may be required.
  12266. maxLength: 253
  12267. minLength: 1
  12268. pattern: ^[-._a-zA-Z0-9]+$
  12269. type: string
  12270. name:
  12271. description: The name of the Secret resource being referred to.
  12272. maxLength: 253
  12273. minLength: 1
  12274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12275. type: string
  12276. namespace:
  12277. description: |-
  12278. The namespace of the Secret resource being referred to.
  12279. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12280. maxLength: 63
  12281. minLength: 1
  12282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12283. type: string
  12284. type: object
  12285. required:
  12286. - passwordSecret
  12287. - usernameSecret
  12288. type: object
  12289. type: object
  12290. body:
  12291. description: Body
  12292. type: string
  12293. caBundle:
  12294. description: |-
  12295. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12296. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12297. plain HTTP protocol connection. If not set the system root certificates
  12298. are used to validate the TLS connection.
  12299. format: byte
  12300. type: string
  12301. caProvider:
  12302. description: The provider for the CA bundle to use to validate webhook server certificate.
  12303. properties:
  12304. key:
  12305. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12306. maxLength: 253
  12307. minLength: 1
  12308. pattern: ^[-._a-zA-Z0-9]+$
  12309. type: string
  12310. name:
  12311. description: The name of the object located at the provider type.
  12312. maxLength: 253
  12313. minLength: 1
  12314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12315. type: string
  12316. namespace:
  12317. description: The namespace the Provider type is in.
  12318. maxLength: 63
  12319. minLength: 1
  12320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12321. type: string
  12322. type:
  12323. description: The type of provider to use such as "Secret", or "ConfigMap".
  12324. enum:
  12325. - Secret
  12326. - ConfigMap
  12327. type: string
  12328. required:
  12329. - name
  12330. - type
  12331. type: object
  12332. headers:
  12333. additionalProperties:
  12334. type: string
  12335. description: Headers
  12336. type: object
  12337. method:
  12338. description: Webhook Method
  12339. type: string
  12340. result:
  12341. description: Result formatting
  12342. properties:
  12343. jsonPath:
  12344. description: Json path of return value
  12345. type: string
  12346. type: object
  12347. secrets:
  12348. description: |-
  12349. Secrets to fill in templates
  12350. These secrets will be passed to the templating function as key value pairs under the given name
  12351. items:
  12352. description: WebhookSecret defines a secret to be used in webhook templates.
  12353. properties:
  12354. name:
  12355. description: Name of this secret in templates
  12356. type: string
  12357. secretRef:
  12358. description: Secret ref to fill in credentials
  12359. properties:
  12360. key:
  12361. description: |-
  12362. A key in the referenced Secret.
  12363. Some instances of this field may be defaulted, in others it may be required.
  12364. maxLength: 253
  12365. minLength: 1
  12366. pattern: ^[-._a-zA-Z0-9]+$
  12367. type: string
  12368. name:
  12369. description: The name of the Secret resource being referred to.
  12370. maxLength: 253
  12371. minLength: 1
  12372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12373. type: string
  12374. namespace:
  12375. description: |-
  12376. The namespace of the Secret resource being referred to.
  12377. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12378. maxLength: 63
  12379. minLength: 1
  12380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12381. type: string
  12382. type: object
  12383. required:
  12384. - name
  12385. - secretRef
  12386. type: object
  12387. type: array
  12388. timeout:
  12389. description: Timeout
  12390. type: string
  12391. url:
  12392. description: Webhook url to call
  12393. type: string
  12394. required:
  12395. - result
  12396. - url
  12397. type: object
  12398. yandexcertificatemanager:
  12399. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12400. properties:
  12401. apiEndpoint:
  12402. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12403. type: string
  12404. auth:
  12405. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12406. properties:
  12407. authorizedKeySecretRef:
  12408. description: The authorized key used for authentication
  12409. properties:
  12410. key:
  12411. description: |-
  12412. A key in the referenced Secret.
  12413. Some instances of this field may be defaulted, in others it may be required.
  12414. maxLength: 253
  12415. minLength: 1
  12416. pattern: ^[-._a-zA-Z0-9]+$
  12417. type: string
  12418. name:
  12419. description: The name of the Secret resource being referred to.
  12420. maxLength: 253
  12421. minLength: 1
  12422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12423. type: string
  12424. namespace:
  12425. description: |-
  12426. The namespace of the Secret resource being referred to.
  12427. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12428. maxLength: 63
  12429. minLength: 1
  12430. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12431. type: string
  12432. type: object
  12433. type: object
  12434. caProvider:
  12435. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12436. properties:
  12437. certSecretRef:
  12438. description: |-
  12439. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12440. In some instances, `key` is a required field.
  12441. properties:
  12442. key:
  12443. description: |-
  12444. A key in the referenced Secret.
  12445. Some instances of this field may be defaulted, in others it may be required.
  12446. maxLength: 253
  12447. minLength: 1
  12448. pattern: ^[-._a-zA-Z0-9]+$
  12449. type: string
  12450. name:
  12451. description: The name of the Secret resource being referred to.
  12452. maxLength: 253
  12453. minLength: 1
  12454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12455. type: string
  12456. namespace:
  12457. description: |-
  12458. The namespace of the Secret resource being referred to.
  12459. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12460. maxLength: 63
  12461. minLength: 1
  12462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12463. type: string
  12464. type: object
  12465. type: object
  12466. required:
  12467. - auth
  12468. type: object
  12469. yandexlockbox:
  12470. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12471. properties:
  12472. apiEndpoint:
  12473. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12474. type: string
  12475. auth:
  12476. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12477. properties:
  12478. authorizedKeySecretRef:
  12479. description: The authorized key used for authentication
  12480. properties:
  12481. key:
  12482. description: |-
  12483. A key in the referenced Secret.
  12484. Some instances of this field may be defaulted, in others it may be required.
  12485. maxLength: 253
  12486. minLength: 1
  12487. pattern: ^[-._a-zA-Z0-9]+$
  12488. type: string
  12489. name:
  12490. description: The name of the Secret resource being referred to.
  12491. maxLength: 253
  12492. minLength: 1
  12493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12494. type: string
  12495. namespace:
  12496. description: |-
  12497. The namespace of the Secret resource being referred to.
  12498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12499. maxLength: 63
  12500. minLength: 1
  12501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12502. type: string
  12503. type: object
  12504. type: object
  12505. caProvider:
  12506. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12507. properties:
  12508. certSecretRef:
  12509. description: |-
  12510. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12511. In some instances, `key` is a required field.
  12512. properties:
  12513. key:
  12514. description: |-
  12515. A key in the referenced Secret.
  12516. Some instances of this field may be defaulted, in others it may be required.
  12517. maxLength: 253
  12518. minLength: 1
  12519. pattern: ^[-._a-zA-Z0-9]+$
  12520. type: string
  12521. name:
  12522. description: The name of the Secret resource being referred to.
  12523. maxLength: 253
  12524. minLength: 1
  12525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12526. type: string
  12527. namespace:
  12528. description: |-
  12529. The namespace of the Secret resource being referred to.
  12530. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12531. maxLength: 63
  12532. minLength: 1
  12533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12534. type: string
  12535. type: object
  12536. type: object
  12537. required:
  12538. - auth
  12539. type: object
  12540. type: object
  12541. refreshInterval:
  12542. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12543. type: integer
  12544. retrySettings:
  12545. description: Used to configure HTTP retries on failures.
  12546. properties:
  12547. maxRetries:
  12548. description: MaxRetries is the maximum number of retry attempts.
  12549. format: int32
  12550. type: integer
  12551. retryInterval:
  12552. description: RetryInterval is the interval between retry attempts.
  12553. type: string
  12554. type: object
  12555. required:
  12556. - provider
  12557. type: object
  12558. status:
  12559. description: SecretStoreStatus defines the observed state of the SecretStore.
  12560. properties:
  12561. capabilities:
  12562. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12563. type: string
  12564. conditions:
  12565. items:
  12566. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12567. properties:
  12568. lastTransitionTime:
  12569. format: date-time
  12570. type: string
  12571. message:
  12572. type: string
  12573. reason:
  12574. type: string
  12575. status:
  12576. type: string
  12577. type:
  12578. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12579. type: string
  12580. required:
  12581. - status
  12582. - type
  12583. type: object
  12584. type: array
  12585. type: object
  12586. type: object
  12587. served: false
  12588. storage: false
  12589. subresources:
  12590. status: {}
  12591. ---
  12592. apiVersion: apiextensions.k8s.io/v1
  12593. kind: CustomResourceDefinition
  12594. metadata:
  12595. annotations:
  12596. controller-gen.kubebuilder.io/version: v0.19.0
  12597. labels:
  12598. external-secrets.io/component: controller
  12599. name: externalsecrets.external-secrets.io
  12600. spec:
  12601. group: external-secrets.io
  12602. names:
  12603. categories:
  12604. - external-secrets
  12605. kind: ExternalSecret
  12606. listKind: ExternalSecretList
  12607. plural: externalsecrets
  12608. shortNames:
  12609. - es
  12610. singular: externalsecret
  12611. scope: Namespaced
  12612. versions:
  12613. - additionalPrinterColumns:
  12614. - jsonPath: .spec.secretStoreRef.kind
  12615. name: StoreType
  12616. type: string
  12617. - jsonPath: .spec.secretStoreRef.name
  12618. name: Store
  12619. type: string
  12620. - jsonPath: .spec.refreshInterval
  12621. name: Refresh Interval
  12622. type: string
  12623. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  12624. name: Status
  12625. type: string
  12626. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12627. name: Ready
  12628. type: string
  12629. - jsonPath: .status.refreshTime
  12630. name: Last Sync
  12631. type: date
  12632. name: v1
  12633. schema:
  12634. openAPIV3Schema:
  12635. description: |-
  12636. ExternalSecret is the Schema for the external-secrets API.
  12637. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  12638. properties:
  12639. apiVersion:
  12640. description: |-
  12641. APIVersion defines the versioned schema of this representation of an object.
  12642. Servers should convert recognized schemas to the latest internal value, and
  12643. may reject unrecognized values.
  12644. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12645. type: string
  12646. kind:
  12647. description: |-
  12648. Kind is a string value representing the REST resource this object represents.
  12649. Servers may infer this from the endpoint the client submits requests to.
  12650. Cannot be updated.
  12651. In CamelCase.
  12652. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12653. type: string
  12654. metadata:
  12655. type: object
  12656. spec:
  12657. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  12658. properties:
  12659. data:
  12660. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  12661. items:
  12662. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  12663. properties:
  12664. remoteRef:
  12665. description: |-
  12666. RemoteRef points to the remote secret and defines
  12667. which secret (version/property/..) to fetch.
  12668. properties:
  12669. conversionStrategy:
  12670. default: Default
  12671. description: Used to define a conversion Strategy
  12672. enum:
  12673. - Default
  12674. - Unicode
  12675. type: string
  12676. decodingStrategy:
  12677. default: None
  12678. description: Used to define a decoding Strategy
  12679. enum:
  12680. - Auto
  12681. - Base64
  12682. - Base64URL
  12683. - None
  12684. type: string
  12685. key:
  12686. description: Key is the key used in the Provider, mandatory
  12687. type: string
  12688. metadataPolicy:
  12689. default: None
  12690. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12691. enum:
  12692. - None
  12693. - Fetch
  12694. type: string
  12695. nullBytePolicy:
  12696. default: Ignore
  12697. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12698. enum:
  12699. - Ignore
  12700. - Fail
  12701. type: string
  12702. property:
  12703. description: Used to select a specific property of the Provider value (if a map), if supported
  12704. type: string
  12705. version:
  12706. description: Used to select a specific version of the Provider value, if supported
  12707. type: string
  12708. required:
  12709. - key
  12710. type: object
  12711. secretKey:
  12712. description: The key in the Kubernetes Secret to store the value.
  12713. maxLength: 253
  12714. minLength: 1
  12715. pattern: ^[-._a-zA-Z0-9]+$
  12716. type: string
  12717. sourceRef:
  12718. description: |-
  12719. SourceRef allows you to override the source
  12720. from which the value will be pulled.
  12721. maxProperties: 1
  12722. minProperties: 1
  12723. properties:
  12724. generatorRef:
  12725. description: |-
  12726. GeneratorRef points to a generator custom resource.
  12727. Deprecated: The generatorRef is not implemented in .data[].
  12728. this will be removed with v1.
  12729. properties:
  12730. apiVersion:
  12731. default: generators.external-secrets.io/v1alpha1
  12732. description: Specify the apiVersion of the generator resource
  12733. type: string
  12734. kind:
  12735. description: Specify the Kind of the generator resource
  12736. enum:
  12737. - ACRAccessToken
  12738. - ClusterGenerator
  12739. - CloudsmithAccessToken
  12740. - ECRAuthorizationToken
  12741. - Fake
  12742. - GCRAccessToken
  12743. - GithubAccessToken
  12744. - QuayAccessToken
  12745. - Password
  12746. - SSHKey
  12747. - STSSessionToken
  12748. - UUID
  12749. - VaultDynamicSecret
  12750. - Webhook
  12751. - Grafana
  12752. - MFA
  12753. type: string
  12754. name:
  12755. description: Specify the name of the generator resource
  12756. maxLength: 253
  12757. minLength: 1
  12758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12759. type: string
  12760. required:
  12761. - kind
  12762. - name
  12763. type: object
  12764. storeRef:
  12765. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12766. properties:
  12767. kind:
  12768. description: |-
  12769. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12770. Defaults to `SecretStore`
  12771. enum:
  12772. - SecretStore
  12773. - ClusterSecretStore
  12774. - Provider
  12775. - ClusterProvider
  12776. type: string
  12777. name:
  12778. description: Name of the SecretStore resource
  12779. maxLength: 253
  12780. minLength: 1
  12781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12782. type: string
  12783. type: object
  12784. type: object
  12785. required:
  12786. - remoteRef
  12787. - secretKey
  12788. type: object
  12789. type: array
  12790. dataFrom:
  12791. description: |-
  12792. DataFrom is used to fetch all properties from a specific Provider data
  12793. If multiple entries are specified, the Secret keys are merged in the specified order
  12794. items:
  12795. description: |-
  12796. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  12797. when using DataFrom to fetch multiple values from a Provider.
  12798. properties:
  12799. extract:
  12800. description: |-
  12801. Used to extract multiple key/value pairs from one secret
  12802. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12803. properties:
  12804. conversionStrategy:
  12805. default: Default
  12806. description: Used to define a conversion Strategy
  12807. enum:
  12808. - Default
  12809. - Unicode
  12810. type: string
  12811. decodingStrategy:
  12812. default: None
  12813. description: Used to define a decoding Strategy
  12814. enum:
  12815. - Auto
  12816. - Base64
  12817. - Base64URL
  12818. - None
  12819. type: string
  12820. key:
  12821. description: Key is the key used in the Provider, mandatory
  12822. type: string
  12823. metadataPolicy:
  12824. default: None
  12825. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12826. enum:
  12827. - None
  12828. - Fetch
  12829. type: string
  12830. nullBytePolicy:
  12831. default: Ignore
  12832. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12833. enum:
  12834. - Ignore
  12835. - Fail
  12836. type: string
  12837. property:
  12838. description: Used to select a specific property of the Provider value (if a map), if supported
  12839. type: string
  12840. version:
  12841. description: Used to select a specific version of the Provider value, if supported
  12842. type: string
  12843. required:
  12844. - key
  12845. type: object
  12846. find:
  12847. description: |-
  12848. Used to find secrets based on tags or regular expressions
  12849. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12850. properties:
  12851. conversionStrategy:
  12852. default: Default
  12853. description: Used to define a conversion Strategy
  12854. enum:
  12855. - Default
  12856. - Unicode
  12857. type: string
  12858. decodingStrategy:
  12859. default: None
  12860. description: Used to define a decoding Strategy
  12861. enum:
  12862. - Auto
  12863. - Base64
  12864. - Base64URL
  12865. - None
  12866. type: string
  12867. name:
  12868. description: Finds secrets based on the name.
  12869. properties:
  12870. regexp:
  12871. description: Finds secrets base
  12872. type: string
  12873. type: object
  12874. nullBytePolicy:
  12875. default: Ignore
  12876. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  12877. enum:
  12878. - Ignore
  12879. - Fail
  12880. type: string
  12881. path:
  12882. description: A root path to start the find operations.
  12883. type: string
  12884. tags:
  12885. additionalProperties:
  12886. type: string
  12887. description: Find secrets based on tags.
  12888. type: object
  12889. type: object
  12890. rewrite:
  12891. description: |-
  12892. Used to rewrite secret Keys after getting them from the secret Provider
  12893. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  12894. items:
  12895. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  12896. maxProperties: 1
  12897. minProperties: 1
  12898. properties:
  12899. merge:
  12900. description: |-
  12901. Used to merge key/values in one single Secret
  12902. The resulting key will contain all values from the specified secrets
  12903. properties:
  12904. conflictPolicy:
  12905. default: Error
  12906. description: Used to define the policy to use in conflict resolution.
  12907. enum:
  12908. - Ignore
  12909. - Error
  12910. type: string
  12911. into:
  12912. default: ""
  12913. description: |-
  12914. Used to define the target key of the merge operation.
  12915. Required if strategy is JSON. Ignored otherwise.
  12916. type: string
  12917. priority:
  12918. description: Used to define key priority in conflict resolution.
  12919. items:
  12920. type: string
  12921. type: array
  12922. priorityPolicy:
  12923. default: Strict
  12924. description: Used to define the policy when a key in the priority list does not exist in the input.
  12925. enum:
  12926. - IgnoreNotFound
  12927. - Strict
  12928. type: string
  12929. strategy:
  12930. default: Extract
  12931. description: Used to define the strategy to use in the merge operation.
  12932. enum:
  12933. - Extract
  12934. - JSON
  12935. type: string
  12936. type: object
  12937. regexp:
  12938. description: |-
  12939. Used to rewrite with regular expressions.
  12940. The resulting key will be the output of a regexp.ReplaceAll operation.
  12941. properties:
  12942. source:
  12943. description: Used to define the regular expression of a re.Compiler.
  12944. type: string
  12945. target:
  12946. description: Used to define the target pattern of a ReplaceAll operation.
  12947. type: string
  12948. required:
  12949. - source
  12950. - target
  12951. type: object
  12952. transform:
  12953. description: |-
  12954. Used to apply string transformation on the secrets.
  12955. The resulting key will be the output of the template applied by the operation.
  12956. properties:
  12957. template:
  12958. description: |-
  12959. Used to define the template to apply on the secret name.
  12960. `.value ` will specify the secret name in the template.
  12961. type: string
  12962. required:
  12963. - template
  12964. type: object
  12965. type: object
  12966. type: array
  12967. sourceRef:
  12968. description: |-
  12969. SourceRef points to a store or generator
  12970. which contains secret values ready to use.
  12971. Use this in combination with Extract or Find pull values out of
  12972. a specific SecretStore.
  12973. When sourceRef points to a generator Extract or Find is not supported.
  12974. The generator returns a static map of values
  12975. maxProperties: 1
  12976. minProperties: 1
  12977. properties:
  12978. generatorRef:
  12979. description: GeneratorRef points to a generator custom resource.
  12980. properties:
  12981. apiVersion:
  12982. default: generators.external-secrets.io/v1alpha1
  12983. description: Specify the apiVersion of the generator resource
  12984. type: string
  12985. kind:
  12986. description: Specify the Kind of the generator resource
  12987. enum:
  12988. - ACRAccessToken
  12989. - ClusterGenerator
  12990. - CloudsmithAccessToken
  12991. - ECRAuthorizationToken
  12992. - Fake
  12993. - GCRAccessToken
  12994. - GithubAccessToken
  12995. - QuayAccessToken
  12996. - Password
  12997. - SSHKey
  12998. - STSSessionToken
  12999. - UUID
  13000. - VaultDynamicSecret
  13001. - Webhook
  13002. - Grafana
  13003. - MFA
  13004. type: string
  13005. name:
  13006. description: Specify the name of the generator resource
  13007. maxLength: 253
  13008. minLength: 1
  13009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13010. type: string
  13011. required:
  13012. - kind
  13013. - name
  13014. type: object
  13015. storeRef:
  13016. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13017. properties:
  13018. kind:
  13019. description: |-
  13020. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13021. Defaults to `SecretStore`
  13022. enum:
  13023. - SecretStore
  13024. - ClusterSecretStore
  13025. - Provider
  13026. - ClusterProvider
  13027. type: string
  13028. name:
  13029. description: Name of the SecretStore resource
  13030. maxLength: 253
  13031. minLength: 1
  13032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13033. type: string
  13034. type: object
  13035. type: object
  13036. type: object
  13037. type: array
  13038. refreshInterval:
  13039. default: 1h0m0s
  13040. description: |-
  13041. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13042. specified as Golang Duration strings.
  13043. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13044. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13045. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13046. type: string
  13047. refreshPolicy:
  13048. description: |-
  13049. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13050. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13051. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13052. No periodic updates occur if refreshInterval is 0.
  13053. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13054. enum:
  13055. - CreatedOnce
  13056. - Periodic
  13057. - OnChange
  13058. type: string
  13059. secretStoreRef:
  13060. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13061. properties:
  13062. kind:
  13063. description: |-
  13064. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13065. Defaults to `SecretStore`
  13066. enum:
  13067. - SecretStore
  13068. - ClusterSecretStore
  13069. - Provider
  13070. - ClusterProvider
  13071. type: string
  13072. name:
  13073. description: Name of the SecretStore resource
  13074. maxLength: 253
  13075. minLength: 1
  13076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13077. type: string
  13078. type: object
  13079. target:
  13080. default:
  13081. creationPolicy: Owner
  13082. deletionPolicy: Retain
  13083. description: |-
  13084. ExternalSecretTarget defines the Kubernetes Secret to be created,
  13085. there can be only one target per ExternalSecret.
  13086. properties:
  13087. creationPolicy:
  13088. default: Owner
  13089. description: |-
  13090. CreationPolicy defines rules on how to create the resulting Secret.
  13091. Defaults to "Owner"
  13092. enum:
  13093. - Owner
  13094. - Orphan
  13095. - Merge
  13096. - None
  13097. type: string
  13098. deletionPolicy:
  13099. default: Retain
  13100. description: |-
  13101. DeletionPolicy defines rules on how to delete the resulting Secret.
  13102. Defaults to "Retain"
  13103. enum:
  13104. - Delete
  13105. - Merge
  13106. - Retain
  13107. type: string
  13108. immutable:
  13109. description: Immutable defines if the final secret will be immutable
  13110. type: boolean
  13111. manifest:
  13112. description: |-
  13113. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  13114. When specified, ExternalSecret will create the resource type defined here
  13115. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  13116. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  13117. properties:
  13118. apiVersion:
  13119. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  13120. minLength: 1
  13121. type: string
  13122. kind:
  13123. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  13124. minLength: 1
  13125. type: string
  13126. required:
  13127. - apiVersion
  13128. - kind
  13129. type: object
  13130. name:
  13131. description: |-
  13132. The name of the Secret resource to be managed.
  13133. Defaults to the .metadata.name of the ExternalSecret resource
  13134. maxLength: 253
  13135. minLength: 1
  13136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13137. type: string
  13138. template:
  13139. description: Template defines a blueprint for the created Secret resource.
  13140. properties:
  13141. data:
  13142. additionalProperties:
  13143. type: string
  13144. type: object
  13145. engineVersion:
  13146. default: v2
  13147. description: |-
  13148. EngineVersion specifies the template engine version
  13149. that should be used to compile/execute the
  13150. template specified in .data and .templateFrom[].
  13151. enum:
  13152. - v2
  13153. type: string
  13154. mergePolicy:
  13155. default: Replace
  13156. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  13157. enum:
  13158. - Replace
  13159. - Merge
  13160. type: string
  13161. metadata:
  13162. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13163. properties:
  13164. annotations:
  13165. additionalProperties:
  13166. type: string
  13167. type: object
  13168. finalizers:
  13169. items:
  13170. type: string
  13171. type: array
  13172. labels:
  13173. additionalProperties:
  13174. type: string
  13175. type: object
  13176. type: object
  13177. templateFrom:
  13178. items:
  13179. description: |-
  13180. TemplateFrom specifies a source for templates.
  13181. Each item in the list can either reference a ConfigMap or a Secret resource.
  13182. properties:
  13183. configMap:
  13184. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13185. properties:
  13186. items:
  13187. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13188. items:
  13189. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13190. properties:
  13191. key:
  13192. description: A key in the ConfigMap/Secret
  13193. maxLength: 253
  13194. minLength: 1
  13195. pattern: ^[-._a-zA-Z0-9]+$
  13196. type: string
  13197. templateAs:
  13198. default: Values
  13199. description: TemplateScope specifies how the template keys should be interpreted.
  13200. enum:
  13201. - Values
  13202. - KeysAndValues
  13203. type: string
  13204. required:
  13205. - key
  13206. type: object
  13207. type: array
  13208. name:
  13209. description: The name of the ConfigMap/Secret resource
  13210. maxLength: 253
  13211. minLength: 1
  13212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13213. type: string
  13214. required:
  13215. - items
  13216. - name
  13217. type: object
  13218. literal:
  13219. type: string
  13220. secret:
  13221. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13222. properties:
  13223. items:
  13224. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13225. items:
  13226. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13227. properties:
  13228. key:
  13229. description: A key in the ConfigMap/Secret
  13230. maxLength: 253
  13231. minLength: 1
  13232. pattern: ^[-._a-zA-Z0-9]+$
  13233. type: string
  13234. templateAs:
  13235. default: Values
  13236. description: TemplateScope specifies how the template keys should be interpreted.
  13237. enum:
  13238. - Values
  13239. - KeysAndValues
  13240. type: string
  13241. required:
  13242. - key
  13243. type: object
  13244. type: array
  13245. name:
  13246. description: The name of the ConfigMap/Secret resource
  13247. maxLength: 253
  13248. minLength: 1
  13249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13250. type: string
  13251. required:
  13252. - items
  13253. - name
  13254. type: object
  13255. target:
  13256. default: Data
  13257. description: |-
  13258. Target specifies where to place the template result.
  13259. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13260. For custom resources (when spec.target.manifest is set), this supports
  13261. nested paths like "spec.database.config" or "data".
  13262. type: string
  13263. type: object
  13264. type: array
  13265. type:
  13266. type: string
  13267. type: object
  13268. type: object
  13269. type: object
  13270. status:
  13271. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13272. properties:
  13273. binding:
  13274. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13275. properties:
  13276. name:
  13277. default: ""
  13278. description: |-
  13279. Name of the referent.
  13280. This field is effectively required, but due to backwards compatibility is
  13281. allowed to be empty. Instances of this type with an empty value here are
  13282. almost certainly wrong.
  13283. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13284. type: string
  13285. type: object
  13286. x-kubernetes-map-type: atomic
  13287. conditions:
  13288. items:
  13289. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13290. properties:
  13291. lastTransitionTime:
  13292. format: date-time
  13293. type: string
  13294. message:
  13295. type: string
  13296. reason:
  13297. type: string
  13298. status:
  13299. type: string
  13300. type:
  13301. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13302. enum:
  13303. - Ready
  13304. - Deleted
  13305. type: string
  13306. required:
  13307. - status
  13308. - type
  13309. type: object
  13310. type: array
  13311. refreshTime:
  13312. description: |-
  13313. refreshTime is the time and date the external secret was fetched and
  13314. the target secret updated
  13315. format: date-time
  13316. nullable: true
  13317. type: string
  13318. syncedResourceVersion:
  13319. description: SyncedResourceVersion keeps track of the last synced version
  13320. type: string
  13321. type: object
  13322. type: object
  13323. selectableFields:
  13324. - jsonPath: .spec.secretStoreRef.name
  13325. - jsonPath: .spec.secretStoreRef.kind
  13326. - jsonPath: .spec.target.name
  13327. - jsonPath: .spec.refreshInterval
  13328. served: true
  13329. storage: true
  13330. subresources:
  13331. status: {}
  13332. - additionalPrinterColumns:
  13333. - jsonPath: .spec.secretStoreRef.kind
  13334. name: StoreType
  13335. type: string
  13336. - jsonPath: .spec.secretStoreRef.name
  13337. name: Store
  13338. type: string
  13339. - jsonPath: .spec.refreshInterval
  13340. name: Refresh Interval
  13341. type: string
  13342. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13343. name: Status
  13344. type: string
  13345. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13346. name: Ready
  13347. type: string
  13348. - jsonPath: .status.refreshTime
  13349. name: Last Sync
  13350. type: date
  13351. deprecated: true
  13352. name: v1beta1
  13353. schema:
  13354. openAPIV3Schema:
  13355. description: ExternalSecret is the schema for the external-secrets API.
  13356. properties:
  13357. apiVersion:
  13358. description: |-
  13359. APIVersion defines the versioned schema of this representation of an object.
  13360. Servers should convert recognized schemas to the latest internal value, and
  13361. may reject unrecognized values.
  13362. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13363. type: string
  13364. kind:
  13365. description: |-
  13366. Kind is a string value representing the REST resource this object represents.
  13367. Servers may infer this from the endpoint the client submits requests to.
  13368. Cannot be updated.
  13369. In CamelCase.
  13370. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13371. type: string
  13372. metadata:
  13373. type: object
  13374. spec:
  13375. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13376. properties:
  13377. data:
  13378. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13379. items:
  13380. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13381. properties:
  13382. remoteRef:
  13383. description: |-
  13384. RemoteRef points to the remote secret and defines
  13385. which secret (version/property/..) to fetch.
  13386. properties:
  13387. conversionStrategy:
  13388. default: Default
  13389. description: Used to define a conversion Strategy
  13390. enum:
  13391. - Default
  13392. - Unicode
  13393. type: string
  13394. decodingStrategy:
  13395. default: None
  13396. description: Used to define a decoding Strategy
  13397. enum:
  13398. - Auto
  13399. - Base64
  13400. - Base64URL
  13401. - None
  13402. type: string
  13403. key:
  13404. description: Key is the key used in the Provider, mandatory
  13405. type: string
  13406. metadataPolicy:
  13407. default: None
  13408. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13409. enum:
  13410. - None
  13411. - Fetch
  13412. type: string
  13413. property:
  13414. description: Used to select a specific property of the Provider value (if a map), if supported
  13415. type: string
  13416. version:
  13417. description: Used to select a specific version of the Provider value, if supported
  13418. type: string
  13419. required:
  13420. - key
  13421. type: object
  13422. secretKey:
  13423. description: The key in the Kubernetes Secret to store the value.
  13424. maxLength: 253
  13425. minLength: 1
  13426. pattern: ^[-._a-zA-Z0-9]+$
  13427. type: string
  13428. sourceRef:
  13429. description: |-
  13430. SourceRef allows you to override the source
  13431. from which the value will be pulled.
  13432. maxProperties: 1
  13433. minProperties: 1
  13434. properties:
  13435. generatorRef:
  13436. description: |-
  13437. GeneratorRef points to a generator custom resource.
  13438. Deprecated: The generatorRef is not implemented in .data[].
  13439. this will be removed with v1.
  13440. properties:
  13441. apiVersion:
  13442. default: generators.external-secrets.io/v1alpha1
  13443. description: Specify the apiVersion of the generator resource
  13444. type: string
  13445. kind:
  13446. description: Specify the Kind of the generator resource
  13447. enum:
  13448. - ACRAccessToken
  13449. - ClusterGenerator
  13450. - ECRAuthorizationToken
  13451. - Fake
  13452. - GCRAccessToken
  13453. - GithubAccessToken
  13454. - QuayAccessToken
  13455. - Password
  13456. - SSHKey
  13457. - STSSessionToken
  13458. - UUID
  13459. - VaultDynamicSecret
  13460. - Webhook
  13461. - Grafana
  13462. type: string
  13463. name:
  13464. description: Specify the name of the generator resource
  13465. maxLength: 253
  13466. minLength: 1
  13467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13468. type: string
  13469. required:
  13470. - kind
  13471. - name
  13472. type: object
  13473. storeRef:
  13474. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13475. properties:
  13476. kind:
  13477. description: |-
  13478. Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider or ClusterProvider)
  13479. Defaults to `SecretStore`
  13480. enum:
  13481. - SecretStore
  13482. - ClusterSecretStore
  13483. - Provider
  13484. - ClusterProvider
  13485. type: string
  13486. name:
  13487. description: Name of the SecretStore resource
  13488. maxLength: 253
  13489. minLength: 1
  13490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13491. type: string
  13492. type: object
  13493. type: object
  13494. required:
  13495. - remoteRef
  13496. - secretKey
  13497. type: object
  13498. type: array
  13499. dataFrom:
  13500. description: |-
  13501. DataFrom is used to fetch all properties from a specific Provider data
  13502. If multiple entries are specified, the Secret keys are merged in the specified order
  13503. items:
  13504. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13505. properties:
  13506. extract:
  13507. description: |-
  13508. Used to extract multiple key/value pairs from one secret
  13509. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13510. properties:
  13511. conversionStrategy:
  13512. default: Default
  13513. description: Used to define a conversion Strategy
  13514. enum:
  13515. - Default
  13516. - Unicode
  13517. type: string
  13518. decodingStrategy:
  13519. default: None
  13520. description: Used to define a decoding Strategy
  13521. enum:
  13522. - Auto
  13523. - Base64
  13524. - Base64URL
  13525. - None
  13526. type: string
  13527. key:
  13528. description: Key is the key used in the Provider, mandatory
  13529. type: string
  13530. metadataPolicy:
  13531. default: None
  13532. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13533. enum:
  13534. - None
  13535. - Fetch
  13536. type: string
  13537. property:
  13538. description: Used to select a specific property of the Provider value (if a map), if supported
  13539. type: string
  13540. version:
  13541. description: Used to select a specific version of the Provider value, if supported
  13542. type: string
  13543. required:
  13544. - key
  13545. type: object
  13546. find:
  13547. description: |-
  13548. Used to find secrets based on tags or regular expressions
  13549. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13550. properties:
  13551. conversionStrategy:
  13552. default: Default
  13553. description: Used to define a conversion Strategy
  13554. enum:
  13555. - Default
  13556. - Unicode
  13557. type: string
  13558. decodingStrategy:
  13559. default: None
  13560. description: Used to define a decoding Strategy
  13561. enum:
  13562. - Auto
  13563. - Base64
  13564. - Base64URL
  13565. - None
  13566. type: string
  13567. name:
  13568. description: Finds secrets based on the name.
  13569. properties:
  13570. regexp:
  13571. description: Finds secrets base
  13572. type: string
  13573. type: object
  13574. path:
  13575. description: A root path to start the find operations.
  13576. type: string
  13577. tags:
  13578. additionalProperties:
  13579. type: string
  13580. description: Find secrets based on tags.
  13581. type: object
  13582. type: object
  13583. rewrite:
  13584. description: |-
  13585. Used to rewrite secret Keys after getting them from the secret Provider
  13586. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13587. items:
  13588. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  13589. maxProperties: 1
  13590. minProperties: 1
  13591. properties:
  13592. regexp:
  13593. description: |-
  13594. Used to rewrite with regular expressions.
  13595. The resulting key will be the output of a regexp.ReplaceAll operation.
  13596. properties:
  13597. source:
  13598. description: Used to define the regular expression of a re.Compiler.
  13599. type: string
  13600. target:
  13601. description: Used to define the target pattern of a ReplaceAll operation.
  13602. type: string
  13603. required:
  13604. - source
  13605. - target
  13606. type: object
  13607. transform:
  13608. description: |-
  13609. Used to apply string transformation on the secrets.
  13610. The resulting key will be the output of the template applied by the operation.
  13611. properties:
  13612. template:
  13613. description: |-
  13614. Used to define the template to apply on the secret name.
  13615. `.value ` will specify the secret name in the template.
  13616. type: string
  13617. required:
  13618. - template
  13619. type: object
  13620. type: object
  13621. type: array
  13622. sourceRef:
  13623. description: |-
  13624. SourceRef points to a store or generator
  13625. which contains secret values ready to use.
  13626. Use this in combination with Extract or Find pull values out of
  13627. a specific SecretStore.
  13628. When sourceRef points to a generator Extract or Find is not supported.
  13629. The generator returns a static map of values
  13630. maxProperties: 1
  13631. minProperties: 1
  13632. properties:
  13633. generatorRef:
  13634. description: GeneratorRef points to a generator custom resource.
  13635. properties:
  13636. apiVersion:
  13637. default: generators.external-secrets.io/v1alpha1
  13638. description: Specify the apiVersion of the generator resource
  13639. type: string
  13640. kind:
  13641. description: Specify the Kind of the generator resource
  13642. enum:
  13643. - ACRAccessToken
  13644. - ClusterGenerator
  13645. - ECRAuthorizationToken
  13646. - Fake
  13647. - GCRAccessToken
  13648. - GithubAccessToken
  13649. - QuayAccessToken
  13650. - Password
  13651. - SSHKey
  13652. - STSSessionToken
  13653. - UUID
  13654. - VaultDynamicSecret
  13655. - Webhook
  13656. - Grafana
  13657. type: string
  13658. name:
  13659. description: Specify the name of the generator resource
  13660. maxLength: 253
  13661. minLength: 1
  13662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13663. type: string
  13664. required:
  13665. - kind
  13666. - name
  13667. type: object
  13668. storeRef:
  13669. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13670. properties:
  13671. kind:
  13672. description: |-
  13673. Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider or ClusterProvider)
  13674. Defaults to `SecretStore`
  13675. enum:
  13676. - SecretStore
  13677. - ClusterSecretStore
  13678. - Provider
  13679. - ClusterProvider
  13680. type: string
  13681. name:
  13682. description: Name of the SecretStore resource
  13683. maxLength: 253
  13684. minLength: 1
  13685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13686. type: string
  13687. type: object
  13688. type: object
  13689. type: object
  13690. type: array
  13691. refreshInterval:
  13692. default: 1h0m0s
  13693. description: |-
  13694. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13695. specified as Golang Duration strings.
  13696. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13697. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13698. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13699. type: string
  13700. refreshPolicy:
  13701. description: |-
  13702. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13703. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13704. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13705. No periodic updates occur if refreshInterval is 0.
  13706. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13707. enum:
  13708. - CreatedOnce
  13709. - Periodic
  13710. - OnChange
  13711. type: string
  13712. secretStoreRef:
  13713. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13714. properties:
  13715. kind:
  13716. description: |-
  13717. Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider or ClusterProvider)
  13718. Defaults to `SecretStore`
  13719. enum:
  13720. - SecretStore
  13721. - ClusterSecretStore
  13722. - Provider
  13723. - ClusterProvider
  13724. type: string
  13725. name:
  13726. description: Name of the SecretStore resource
  13727. maxLength: 253
  13728. minLength: 1
  13729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13730. type: string
  13731. type: object
  13732. target:
  13733. default:
  13734. creationPolicy: Owner
  13735. deletionPolicy: Retain
  13736. description: |-
  13737. ExternalSecretTarget defines the Kubernetes Secret to be created
  13738. There can be only one target per ExternalSecret.
  13739. properties:
  13740. creationPolicy:
  13741. default: Owner
  13742. description: |-
  13743. CreationPolicy defines rules on how to create the resulting Secret.
  13744. Defaults to "Owner"
  13745. enum:
  13746. - Owner
  13747. - Orphan
  13748. - Merge
  13749. - None
  13750. type: string
  13751. deletionPolicy:
  13752. default: Retain
  13753. description: |-
  13754. DeletionPolicy defines rules on how to delete the resulting Secret.
  13755. Defaults to "Retain"
  13756. enum:
  13757. - Delete
  13758. - Merge
  13759. - Retain
  13760. type: string
  13761. immutable:
  13762. description: Immutable defines if the final secret will be immutable
  13763. type: boolean
  13764. name:
  13765. description: |-
  13766. The name of the Secret resource to be managed.
  13767. Defaults to the .metadata.name of the ExternalSecret resource
  13768. maxLength: 253
  13769. minLength: 1
  13770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13771. type: string
  13772. template:
  13773. description: Template defines a blueprint for the created Secret resource.
  13774. properties:
  13775. data:
  13776. additionalProperties:
  13777. type: string
  13778. type: object
  13779. engineVersion:
  13780. default: v2
  13781. description: |-
  13782. EngineVersion specifies the template engine version
  13783. that should be used to compile/execute the
  13784. template specified in .data and .templateFrom[].
  13785. enum:
  13786. - v2
  13787. type: string
  13788. mergePolicy:
  13789. default: Replace
  13790. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  13791. enum:
  13792. - Replace
  13793. - Merge
  13794. type: string
  13795. metadata:
  13796. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13797. properties:
  13798. annotations:
  13799. additionalProperties:
  13800. type: string
  13801. type: object
  13802. labels:
  13803. additionalProperties:
  13804. type: string
  13805. type: object
  13806. type: object
  13807. templateFrom:
  13808. items:
  13809. description: TemplateFrom defines a source for template data.
  13810. properties:
  13811. configMap:
  13812. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13813. properties:
  13814. items:
  13815. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13816. items:
  13817. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13818. properties:
  13819. key:
  13820. description: A key in the ConfigMap/Secret
  13821. maxLength: 253
  13822. minLength: 1
  13823. pattern: ^[-._a-zA-Z0-9]+$
  13824. type: string
  13825. templateAs:
  13826. default: Values
  13827. description: TemplateScope defines the scope of the template when processing template data.
  13828. enum:
  13829. - Values
  13830. - KeysAndValues
  13831. type: string
  13832. required:
  13833. - key
  13834. type: object
  13835. type: array
  13836. name:
  13837. description: The name of the ConfigMap/Secret resource
  13838. maxLength: 253
  13839. minLength: 1
  13840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13841. type: string
  13842. required:
  13843. - items
  13844. - name
  13845. type: object
  13846. literal:
  13847. type: string
  13848. secret:
  13849. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13850. properties:
  13851. items:
  13852. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13853. items:
  13854. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13855. properties:
  13856. key:
  13857. description: A key in the ConfigMap/Secret
  13858. maxLength: 253
  13859. minLength: 1
  13860. pattern: ^[-._a-zA-Z0-9]+$
  13861. type: string
  13862. templateAs:
  13863. default: Values
  13864. description: TemplateScope defines the scope of the template when processing template data.
  13865. enum:
  13866. - Values
  13867. - KeysAndValues
  13868. type: string
  13869. required:
  13870. - key
  13871. type: object
  13872. type: array
  13873. name:
  13874. description: The name of the ConfigMap/Secret resource
  13875. maxLength: 253
  13876. minLength: 1
  13877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13878. type: string
  13879. required:
  13880. - items
  13881. - name
  13882. type: object
  13883. target:
  13884. default: Data
  13885. description: TemplateTarget defines the target field where the template result will be stored.
  13886. enum:
  13887. - Data
  13888. - Annotations
  13889. - Labels
  13890. type: string
  13891. type: object
  13892. type: array
  13893. type:
  13894. type: string
  13895. type: object
  13896. type: object
  13897. type: object
  13898. status:
  13899. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13900. properties:
  13901. binding:
  13902. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13903. properties:
  13904. name:
  13905. default: ""
  13906. description: |-
  13907. Name of the referent.
  13908. This field is effectively required, but due to backwards compatibility is
  13909. allowed to be empty. Instances of this type with an empty value here are
  13910. almost certainly wrong.
  13911. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13912. type: string
  13913. type: object
  13914. x-kubernetes-map-type: atomic
  13915. conditions:
  13916. items:
  13917. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  13918. properties:
  13919. lastTransitionTime:
  13920. format: date-time
  13921. type: string
  13922. message:
  13923. type: string
  13924. reason:
  13925. type: string
  13926. status:
  13927. type: string
  13928. type:
  13929. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  13930. type: string
  13931. required:
  13932. - status
  13933. - type
  13934. type: object
  13935. type: array
  13936. refreshTime:
  13937. description: |-
  13938. refreshTime is the time and date the external secret was fetched and
  13939. the target secret updated
  13940. format: date-time
  13941. nullable: true
  13942. type: string
  13943. syncedResourceVersion:
  13944. description: SyncedResourceVersion keeps track of the last synced version
  13945. type: string
  13946. type: object
  13947. type: object
  13948. served: false
  13949. storage: false
  13950. subresources:
  13951. status: {}
  13952. ---
  13953. apiVersion: apiextensions.k8s.io/v1
  13954. kind: CustomResourceDefinition
  13955. metadata:
  13956. annotations:
  13957. controller-gen.kubebuilder.io/version: v0.19.0
  13958. name: providers.external-secrets.io
  13959. spec:
  13960. group: external-secrets.io
  13961. names:
  13962. categories:
  13963. - externalsecrets
  13964. kind: Provider
  13965. listKind: ProviderList
  13966. plural: providers
  13967. shortNames:
  13968. - prov
  13969. singular: provider
  13970. scope: Namespaced
  13971. versions:
  13972. - additionalPrinterColumns:
  13973. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13974. name: Ready
  13975. type: string
  13976. - jsonPath: .spec.config.address
  13977. name: Address
  13978. type: string
  13979. - jsonPath: .metadata.creationTimestamp
  13980. name: Age
  13981. type: date
  13982. name: v1
  13983. schema:
  13984. openAPIV3Schema:
  13985. description: Provider is the Schema for the providers API.
  13986. properties:
  13987. apiVersion:
  13988. description: |-
  13989. APIVersion defines the versioned schema of this representation of an object.
  13990. Servers should convert recognized schemas to the latest internal value, and
  13991. may reject unrecognized values.
  13992. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13993. type: string
  13994. kind:
  13995. description: |-
  13996. Kind is a string value representing the REST resource this object represents.
  13997. Servers may infer this from the endpoint the client submits requests to.
  13998. Cannot be updated.
  13999. In CamelCase.
  14000. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14001. type: string
  14002. metadata:
  14003. type: object
  14004. spec:
  14005. description: ProviderSpec defines the desired state of Provider.
  14006. properties:
  14007. config:
  14008. description: Config contains configuration for connecting to the provider.
  14009. properties:
  14010. address:
  14011. description: |-
  14012. Address is the gRPC address of the provider service.
  14013. Format: "hostname:port" (e.g., "aws-provider:8080")
  14014. type: string
  14015. providerRef:
  14016. description: ProviderRef references the provider-specific configuration resource.
  14017. properties:
  14018. apiVersion:
  14019. description: |-
  14020. APIVersion of the referenced resource.
  14021. Example: "provider.aws.external-secrets.io/v2alpha1"
  14022. type: string
  14023. kind:
  14024. description: |-
  14025. Kind of the referenced resource.
  14026. Example: "AWSSecretsManager"
  14027. type: string
  14028. name:
  14029. description: Name of the referenced resource.
  14030. type: string
  14031. namespace:
  14032. description: |-
  14033. Namespace of the referenced resource.
  14034. If empty, assumes the same namespace as the Provider.
  14035. type: string
  14036. required:
  14037. - apiVersion
  14038. - kind
  14039. - name
  14040. type: object
  14041. required:
  14042. - address
  14043. - providerRef
  14044. type: object
  14045. required:
  14046. - config
  14047. type: object
  14048. status:
  14049. description: ProviderStatus defines the observed state of Provider.
  14050. properties:
  14051. capabilities:
  14052. description: Capabilities indicates what operations this Provider supports.
  14053. type: string
  14054. conditions:
  14055. description: Conditions represent the latest available observations of the Provider's state.
  14056. items:
  14057. description: ProviderCondition describes the state of a Provider at a certain point.
  14058. properties:
  14059. lastTransitionTime:
  14060. description: LastTransitionTime is the last time the condition transitioned.
  14061. format: date-time
  14062. type: string
  14063. message:
  14064. description: Message is a human-readable message indicating details about the transition.
  14065. type: string
  14066. reason:
  14067. description: Reason contains a programmatic identifier indicating the reason for the condition's last transition.
  14068. type: string
  14069. status:
  14070. description: Status of the condition, one of True, False, Unknown.
  14071. type: string
  14072. type:
  14073. description: Type of the condition.
  14074. type: string
  14075. required:
  14076. - status
  14077. - type
  14078. type: object
  14079. type: array
  14080. type: object
  14081. type: object
  14082. served: true
  14083. storage: true
  14084. subresources:
  14085. status: {}
  14086. ---
  14087. apiVersion: apiextensions.k8s.io/v1
  14088. kind: CustomResourceDefinition
  14089. metadata:
  14090. annotations:
  14091. controller-gen.kubebuilder.io/version: v0.19.0
  14092. labels:
  14093. external-secrets.io/component: controller
  14094. name: pushsecrets.external-secrets.io
  14095. spec:
  14096. group: external-secrets.io
  14097. names:
  14098. categories:
  14099. - external-secrets
  14100. kind: PushSecret
  14101. listKind: PushSecretList
  14102. plural: pushsecrets
  14103. shortNames:
  14104. - ps
  14105. singular: pushsecret
  14106. scope: Namespaced
  14107. versions:
  14108. - additionalPrinterColumns:
  14109. - jsonPath: .metadata.creationTimestamp
  14110. name: AGE
  14111. type: date
  14112. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14113. name: Status
  14114. type: string
  14115. - jsonPath: .status.refreshTime
  14116. name: Last Sync
  14117. type: date
  14118. name: v1alpha1
  14119. schema:
  14120. openAPIV3Schema:
  14121. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  14122. properties:
  14123. apiVersion:
  14124. description: |-
  14125. APIVersion defines the versioned schema of this representation of an object.
  14126. Servers should convert recognized schemas to the latest internal value, and
  14127. may reject unrecognized values.
  14128. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14129. type: string
  14130. kind:
  14131. description: |-
  14132. Kind is a string value representing the REST resource this object represents.
  14133. Servers may infer this from the endpoint the client submits requests to.
  14134. Cannot be updated.
  14135. In CamelCase.
  14136. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14137. type: string
  14138. metadata:
  14139. type: object
  14140. spec:
  14141. description: PushSecretSpec configures the behavior of the PushSecret.
  14142. properties:
  14143. data:
  14144. description: Secret Data that should be pushed to providers
  14145. items:
  14146. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14147. properties:
  14148. conversionStrategy:
  14149. default: None
  14150. description: Used to define a conversion Strategy for the secret keys
  14151. enum:
  14152. - None
  14153. - ReverseUnicode
  14154. type: string
  14155. match:
  14156. description: Match a given Secret Key to be pushed to the provider.
  14157. properties:
  14158. remoteRef:
  14159. description: Remote Refs to push to providers.
  14160. properties:
  14161. property:
  14162. description: Name of the property in the resulting secret
  14163. type: string
  14164. remoteKey:
  14165. description: Name of the resulting provider secret.
  14166. type: string
  14167. required:
  14168. - remoteKey
  14169. type: object
  14170. secretKey:
  14171. description: Secret Key to be pushed
  14172. type: string
  14173. required:
  14174. - remoteRef
  14175. type: object
  14176. metadata:
  14177. description: |-
  14178. Metadata is metadata attached to the secret.
  14179. The structure of metadata is provider specific, please look it up in the provider documentation.
  14180. x-kubernetes-preserve-unknown-fields: true
  14181. required:
  14182. - match
  14183. type: object
  14184. type: array
  14185. dataTo:
  14186. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  14187. items:
  14188. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  14189. properties:
  14190. conversionStrategy:
  14191. default: None
  14192. description: Used to define a conversion Strategy for the secret keys
  14193. enum:
  14194. - None
  14195. - ReverseUnicode
  14196. type: string
  14197. match:
  14198. description: |-
  14199. Match pattern for selecting keys from the source Secret.
  14200. If not specified, all keys are selected.
  14201. properties:
  14202. regexp:
  14203. description: |-
  14204. Regexp matches keys by regular expression.
  14205. If not specified, all keys are matched.
  14206. type: string
  14207. type: object
  14208. metadata:
  14209. description: |-
  14210. Metadata is metadata attached to the secret.
  14211. The structure of metadata is provider specific, please look it up in the provider documentation.
  14212. x-kubernetes-preserve-unknown-fields: true
  14213. remoteKey:
  14214. description: |-
  14215. RemoteKey is the name of the single provider secret that will receive ALL
  14216. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  14217. When set, per-key expansion is skipped and a single push is performed.
  14218. The provider's store prefix (if any) is still prepended to this value.
  14219. When not set, each matched key is pushed as its own individual provider secret.
  14220. type: string
  14221. rewrite:
  14222. description: |-
  14223. Rewrite operations to transform keys before pushing to the provider.
  14224. Operations are applied sequentially.
  14225. items:
  14226. description: PushSecretRewrite defines how to transform secret keys before pushing.
  14227. properties:
  14228. regexp:
  14229. description: Used to rewrite with regular expressions.
  14230. properties:
  14231. source:
  14232. description: Used to define the regular expression of a re.Compiler.
  14233. type: string
  14234. target:
  14235. description: Used to define the target pattern of a ReplaceAll operation.
  14236. type: string
  14237. required:
  14238. - source
  14239. - target
  14240. type: object
  14241. transform:
  14242. description: Used to apply string transformation on the secrets.
  14243. properties:
  14244. template:
  14245. description: |-
  14246. Used to define the template to apply on the secret name.
  14247. `.value ` will specify the secret name in the template.
  14248. type: string
  14249. required:
  14250. - template
  14251. type: object
  14252. type: object
  14253. x-kubernetes-validations:
  14254. - message: exactly one of regexp or transform must be set
  14255. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  14256. type: array
  14257. storeRef:
  14258. description: StoreRef specifies which SecretStore to push to. Required.
  14259. properties:
  14260. kind:
  14261. default: SecretStore
  14262. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14263. enum:
  14264. - SecretStore
  14265. - ClusterSecretStore
  14266. type: string
  14267. labelSelector:
  14268. description: Optionally, sync to secret stores with label selector
  14269. properties:
  14270. matchExpressions:
  14271. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14272. items:
  14273. description: |-
  14274. A label selector requirement is a selector that contains values, a key, and an operator that
  14275. relates the key and values.
  14276. properties:
  14277. key:
  14278. description: key is the label key that the selector applies to.
  14279. type: string
  14280. operator:
  14281. description: |-
  14282. operator represents a key's relationship to a set of values.
  14283. Valid operators are In, NotIn, Exists and DoesNotExist.
  14284. type: string
  14285. values:
  14286. description: |-
  14287. values is an array of string values. If the operator is In or NotIn,
  14288. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14289. the values array must be empty. This array is replaced during a strategic
  14290. merge patch.
  14291. items:
  14292. type: string
  14293. type: array
  14294. x-kubernetes-list-type: atomic
  14295. required:
  14296. - key
  14297. - operator
  14298. type: object
  14299. type: array
  14300. x-kubernetes-list-type: atomic
  14301. matchLabels:
  14302. additionalProperties:
  14303. type: string
  14304. description: |-
  14305. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14306. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14307. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14308. type: object
  14309. type: object
  14310. x-kubernetes-map-type: atomic
  14311. name:
  14312. description: Optionally, sync to the SecretStore of the given name
  14313. maxLength: 253
  14314. minLength: 1
  14315. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14316. type: string
  14317. type: object
  14318. type: object
  14319. x-kubernetes-validations:
  14320. - message: storeRef must specify either name or labelSelector
  14321. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  14322. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  14323. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  14324. type: array
  14325. deletionPolicy:
  14326. default: None
  14327. description: Deletion Policy to handle Secrets in the provider.
  14328. enum:
  14329. - Delete
  14330. - None
  14331. type: string
  14332. refreshInterval:
  14333. default: 1h0m0s
  14334. description: The Interval to which External Secrets will try to push a secret definition
  14335. type: string
  14336. secretStoreRefs:
  14337. items:
  14338. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  14339. properties:
  14340. apiVersion:
  14341. default: external-secrets.io/v1
  14342. description: APIVersion of the SecretStore resource (external-secrets.io/v1 or secretstore.external-secrets.io/v2alpha1)
  14343. type: string
  14344. kind:
  14345. default: SecretStore
  14346. description: Kind of the SecretStore resource (SecretStore, ClusterSecretStore, Provider, or ClusterProvider)
  14347. enum:
  14348. - SecretStore
  14349. - ClusterSecretStore
  14350. - Provider
  14351. - ClusterProvider
  14352. type: string
  14353. labelSelector:
  14354. description: Optionally, sync to secret stores with label selector
  14355. properties:
  14356. matchExpressions:
  14357. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14358. items:
  14359. description: |-
  14360. A label selector requirement is a selector that contains values, a key, and an operator that
  14361. relates the key and values.
  14362. properties:
  14363. key:
  14364. description: key is the label key that the selector applies to.
  14365. type: string
  14366. operator:
  14367. description: |-
  14368. operator represents a key's relationship to a set of values.
  14369. Valid operators are In, NotIn, Exists and DoesNotExist.
  14370. type: string
  14371. values:
  14372. description: |-
  14373. values is an array of string values. If the operator is In or NotIn,
  14374. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14375. the values array must be empty. This array is replaced during a strategic
  14376. merge patch.
  14377. items:
  14378. type: string
  14379. type: array
  14380. x-kubernetes-list-type: atomic
  14381. required:
  14382. - key
  14383. - operator
  14384. type: object
  14385. type: array
  14386. x-kubernetes-list-type: atomic
  14387. matchLabels:
  14388. additionalProperties:
  14389. type: string
  14390. description: |-
  14391. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14392. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14393. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14394. type: object
  14395. type: object
  14396. x-kubernetes-map-type: atomic
  14397. name:
  14398. description: Optionally, sync to the SecretStore of the given name
  14399. maxLength: 253
  14400. minLength: 1
  14401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14402. type: string
  14403. type: object
  14404. type: array
  14405. selector:
  14406. description: The Secret Selector (k8s source) for the Push Secret
  14407. maxProperties: 1
  14408. minProperties: 1
  14409. properties:
  14410. generatorRef:
  14411. description: Point to a generator to create a Secret.
  14412. properties:
  14413. apiVersion:
  14414. default: generators.external-secrets.io/v1alpha1
  14415. description: Specify the apiVersion of the generator resource
  14416. type: string
  14417. kind:
  14418. description: Specify the Kind of the generator resource
  14419. enum:
  14420. - ACRAccessToken
  14421. - ClusterGenerator
  14422. - CloudsmithAccessToken
  14423. - ECRAuthorizationToken
  14424. - Fake
  14425. - GCRAccessToken
  14426. - GithubAccessToken
  14427. - QuayAccessToken
  14428. - Password
  14429. - SSHKey
  14430. - STSSessionToken
  14431. - UUID
  14432. - VaultDynamicSecret
  14433. - Webhook
  14434. - Grafana
  14435. - MFA
  14436. type: string
  14437. name:
  14438. description: Specify the name of the generator resource
  14439. maxLength: 253
  14440. minLength: 1
  14441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14442. type: string
  14443. required:
  14444. - kind
  14445. - name
  14446. type: object
  14447. secret:
  14448. description: Select a Secret to Push.
  14449. properties:
  14450. name:
  14451. description: |-
  14452. Name of the Secret.
  14453. The Secret must exist in the same namespace as the PushSecret manifest.
  14454. maxLength: 253
  14455. minLength: 1
  14456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14457. type: string
  14458. selector:
  14459. description: Selector chooses secrets using a labelSelector.
  14460. properties:
  14461. matchExpressions:
  14462. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14463. items:
  14464. description: |-
  14465. A label selector requirement is a selector that contains values, a key, and an operator that
  14466. relates the key and values.
  14467. properties:
  14468. key:
  14469. description: key is the label key that the selector applies to.
  14470. type: string
  14471. operator:
  14472. description: |-
  14473. operator represents a key's relationship to a set of values.
  14474. Valid operators are In, NotIn, Exists and DoesNotExist.
  14475. type: string
  14476. values:
  14477. description: |-
  14478. values is an array of string values. If the operator is In or NotIn,
  14479. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14480. the values array must be empty. This array is replaced during a strategic
  14481. merge patch.
  14482. items:
  14483. type: string
  14484. type: array
  14485. x-kubernetes-list-type: atomic
  14486. required:
  14487. - key
  14488. - operator
  14489. type: object
  14490. type: array
  14491. x-kubernetes-list-type: atomic
  14492. matchLabels:
  14493. additionalProperties:
  14494. type: string
  14495. description: |-
  14496. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14497. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14498. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14499. type: object
  14500. type: object
  14501. x-kubernetes-map-type: atomic
  14502. type: object
  14503. type: object
  14504. template:
  14505. description: Template defines a blueprint for the created Secret resource.
  14506. properties:
  14507. data:
  14508. additionalProperties:
  14509. type: string
  14510. type: object
  14511. engineVersion:
  14512. default: v2
  14513. description: |-
  14514. EngineVersion specifies the template engine version
  14515. that should be used to compile/execute the
  14516. template specified in .data and .templateFrom[].
  14517. enum:
  14518. - v2
  14519. type: string
  14520. mergePolicy:
  14521. default: Replace
  14522. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14523. enum:
  14524. - Replace
  14525. - Merge
  14526. type: string
  14527. metadata:
  14528. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14529. properties:
  14530. annotations:
  14531. additionalProperties:
  14532. type: string
  14533. type: object
  14534. finalizers:
  14535. items:
  14536. type: string
  14537. type: array
  14538. labels:
  14539. additionalProperties:
  14540. type: string
  14541. type: object
  14542. type: object
  14543. templateFrom:
  14544. items:
  14545. description: |-
  14546. TemplateFrom specifies a source for templates.
  14547. Each item in the list can either reference a ConfigMap or a Secret resource.
  14548. properties:
  14549. configMap:
  14550. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14551. properties:
  14552. items:
  14553. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14554. items:
  14555. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14556. properties:
  14557. key:
  14558. description: A key in the ConfigMap/Secret
  14559. maxLength: 253
  14560. minLength: 1
  14561. pattern: ^[-._a-zA-Z0-9]+$
  14562. type: string
  14563. templateAs:
  14564. default: Values
  14565. description: TemplateScope specifies how the template keys should be interpreted.
  14566. enum:
  14567. - Values
  14568. - KeysAndValues
  14569. type: string
  14570. required:
  14571. - key
  14572. type: object
  14573. type: array
  14574. name:
  14575. description: The name of the ConfigMap/Secret resource
  14576. maxLength: 253
  14577. minLength: 1
  14578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14579. type: string
  14580. required:
  14581. - items
  14582. - name
  14583. type: object
  14584. literal:
  14585. type: string
  14586. secret:
  14587. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14588. properties:
  14589. items:
  14590. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14591. items:
  14592. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14593. properties:
  14594. key:
  14595. description: A key in the ConfigMap/Secret
  14596. maxLength: 253
  14597. minLength: 1
  14598. pattern: ^[-._a-zA-Z0-9]+$
  14599. type: string
  14600. templateAs:
  14601. default: Values
  14602. description: TemplateScope specifies how the template keys should be interpreted.
  14603. enum:
  14604. - Values
  14605. - KeysAndValues
  14606. type: string
  14607. required:
  14608. - key
  14609. type: object
  14610. type: array
  14611. name:
  14612. description: The name of the ConfigMap/Secret resource
  14613. maxLength: 253
  14614. minLength: 1
  14615. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14616. type: string
  14617. required:
  14618. - items
  14619. - name
  14620. type: object
  14621. target:
  14622. default: Data
  14623. description: |-
  14624. Target specifies where to place the template result.
  14625. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14626. For custom resources (when spec.target.manifest is set), this supports
  14627. nested paths like "spec.database.config" or "data".
  14628. type: string
  14629. type: object
  14630. type: array
  14631. type:
  14632. type: string
  14633. type: object
  14634. updatePolicy:
  14635. default: Replace
  14636. description: UpdatePolicy to handle Secrets in the provider.
  14637. enum:
  14638. - Replace
  14639. - IfNotExists
  14640. type: string
  14641. required:
  14642. - secretStoreRefs
  14643. - selector
  14644. type: object
  14645. status:
  14646. description: PushSecretStatus indicates the history of the status of PushSecret.
  14647. properties:
  14648. conditions:
  14649. items:
  14650. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14651. properties:
  14652. lastTransitionTime:
  14653. format: date-time
  14654. type: string
  14655. message:
  14656. type: string
  14657. reason:
  14658. type: string
  14659. status:
  14660. type: string
  14661. type:
  14662. description: PushSecretConditionType indicates the condition of the PushSecret.
  14663. type: string
  14664. required:
  14665. - status
  14666. - type
  14667. type: object
  14668. type: array
  14669. refreshTime:
  14670. description: |-
  14671. refreshTime is the time and date the external secret was fetched and
  14672. the target secret updated
  14673. format: date-time
  14674. nullable: true
  14675. type: string
  14676. syncedPushSecrets:
  14677. additionalProperties:
  14678. additionalProperties:
  14679. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14680. properties:
  14681. conversionStrategy:
  14682. default: None
  14683. description: Used to define a conversion Strategy for the secret keys
  14684. enum:
  14685. - None
  14686. - ReverseUnicode
  14687. type: string
  14688. match:
  14689. description: Match a given Secret Key to be pushed to the provider.
  14690. properties:
  14691. remoteRef:
  14692. description: Remote Refs to push to providers.
  14693. properties:
  14694. property:
  14695. description: Name of the property in the resulting secret
  14696. type: string
  14697. remoteKey:
  14698. description: Name of the resulting provider secret.
  14699. type: string
  14700. required:
  14701. - remoteKey
  14702. type: object
  14703. secretKey:
  14704. description: Secret Key to be pushed
  14705. type: string
  14706. required:
  14707. - remoteRef
  14708. type: object
  14709. metadata:
  14710. description: |-
  14711. Metadata is metadata attached to the secret.
  14712. The structure of metadata is provider specific, please look it up in the provider documentation.
  14713. x-kubernetes-preserve-unknown-fields: true
  14714. required:
  14715. - match
  14716. type: object
  14717. type: object
  14718. description: |-
  14719. Synced PushSecrets, including secrets that already exist in provider.
  14720. Matches secret stores to PushSecretData that was stored to that secret store.
  14721. type: object
  14722. syncedResourceVersion:
  14723. description: SyncedResourceVersion keeps track of the last synced version.
  14724. type: string
  14725. type: object
  14726. type: object
  14727. served: true
  14728. storage: true
  14729. subresources:
  14730. status: {}
  14731. ---
  14732. apiVersion: apiextensions.k8s.io/v1
  14733. kind: CustomResourceDefinition
  14734. metadata:
  14735. annotations:
  14736. controller-gen.kubebuilder.io/version: v0.19.0
  14737. labels:
  14738. external-secrets.io/component: controller
  14739. name: secretstores.external-secrets.io
  14740. spec:
  14741. group: external-secrets.io
  14742. names:
  14743. categories:
  14744. - external-secrets
  14745. kind: SecretStore
  14746. listKind: SecretStoreList
  14747. plural: secretstores
  14748. shortNames:
  14749. - ss
  14750. singular: secretstore
  14751. scope: Namespaced
  14752. versions:
  14753. - additionalPrinterColumns:
  14754. - jsonPath: .metadata.creationTimestamp
  14755. name: AGE
  14756. type: date
  14757. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14758. name: Status
  14759. type: string
  14760. - jsonPath: .status.capabilities
  14761. name: Capabilities
  14762. type: string
  14763. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14764. name: Ready
  14765. type: string
  14766. name: v1
  14767. schema:
  14768. openAPIV3Schema:
  14769. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  14770. properties:
  14771. apiVersion:
  14772. description: |-
  14773. APIVersion defines the versioned schema of this representation of an object.
  14774. Servers should convert recognized schemas to the latest internal value, and
  14775. may reject unrecognized values.
  14776. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14777. type: string
  14778. kind:
  14779. description: |-
  14780. Kind is a string value representing the REST resource this object represents.
  14781. Servers may infer this from the endpoint the client submits requests to.
  14782. Cannot be updated.
  14783. In CamelCase.
  14784. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14785. type: string
  14786. metadata:
  14787. type: object
  14788. spec:
  14789. description: SecretStoreSpec defines the desired state of SecretStore.
  14790. properties:
  14791. conditions:
  14792. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  14793. items:
  14794. description: |-
  14795. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  14796. for a ClusterSecretStore instance.
  14797. properties:
  14798. namespaceRegexes:
  14799. description: Choose namespaces by using regex matching
  14800. items:
  14801. type: string
  14802. type: array
  14803. namespaceSelector:
  14804. description: Choose namespace using a labelSelector
  14805. properties:
  14806. matchExpressions:
  14807. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14808. items:
  14809. description: |-
  14810. A label selector requirement is a selector that contains values, a key, and an operator that
  14811. relates the key and values.
  14812. properties:
  14813. key:
  14814. description: key is the label key that the selector applies to.
  14815. type: string
  14816. operator:
  14817. description: |-
  14818. operator represents a key's relationship to a set of values.
  14819. Valid operators are In, NotIn, Exists and DoesNotExist.
  14820. type: string
  14821. values:
  14822. description: |-
  14823. values is an array of string values. If the operator is In or NotIn,
  14824. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14825. the values array must be empty. This array is replaced during a strategic
  14826. merge patch.
  14827. items:
  14828. type: string
  14829. type: array
  14830. x-kubernetes-list-type: atomic
  14831. required:
  14832. - key
  14833. - operator
  14834. type: object
  14835. type: array
  14836. x-kubernetes-list-type: atomic
  14837. matchLabels:
  14838. additionalProperties:
  14839. type: string
  14840. description: |-
  14841. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14842. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14843. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14844. type: object
  14845. type: object
  14846. x-kubernetes-map-type: atomic
  14847. namespaces:
  14848. description: Choose namespaces by name
  14849. items:
  14850. maxLength: 63
  14851. minLength: 1
  14852. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14853. type: string
  14854. type: array
  14855. type: object
  14856. type: array
  14857. controller:
  14858. description: |-
  14859. Used to select the correct ESO controller (think: ingress.ingressClassName)
  14860. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  14861. type: string
  14862. provider:
  14863. description: Used to configure the provider. Only one provider may be set
  14864. maxProperties: 1
  14865. minProperties: 1
  14866. properties:
  14867. akeyless:
  14868. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  14869. properties:
  14870. akeylessGWApiURL:
  14871. description: Akeyless GW API Url from which the secrets to be fetched from.
  14872. type: string
  14873. authSecretRef:
  14874. description: Auth configures how the operator authenticates with Akeyless.
  14875. properties:
  14876. kubernetesAuth:
  14877. description: |-
  14878. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  14879. token stored in the named Secret resource.
  14880. properties:
  14881. accessID:
  14882. description: the Akeyless Kubernetes auth-method access-id
  14883. type: string
  14884. k8sConfName:
  14885. description: Kubernetes-auth configuration name in Akeyless-Gateway
  14886. type: string
  14887. secretRef:
  14888. description: |-
  14889. Optional secret field containing a Kubernetes ServiceAccount JWT used
  14890. for authenticating with Akeyless. If a name is specified without a key,
  14891. `token` is the default. If one is not specified, the one bound to
  14892. the controller will be used.
  14893. properties:
  14894. key:
  14895. description: |-
  14896. A key in the referenced Secret.
  14897. Some instances of this field may be defaulted, in others it may be required.
  14898. maxLength: 253
  14899. minLength: 1
  14900. pattern: ^[-._a-zA-Z0-9]+$
  14901. type: string
  14902. name:
  14903. description: The name of the Secret resource being referred to.
  14904. maxLength: 253
  14905. minLength: 1
  14906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14907. type: string
  14908. namespace:
  14909. description: |-
  14910. The namespace of the Secret resource being referred to.
  14911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14912. maxLength: 63
  14913. minLength: 1
  14914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14915. type: string
  14916. type: object
  14917. serviceAccountRef:
  14918. description: |-
  14919. Optional service account field containing the name of a kubernetes ServiceAccount.
  14920. If the service account is specified, the service account secret token JWT will be used
  14921. for authenticating with Akeyless. If the service account selector is not supplied,
  14922. the secretRef will be used instead.
  14923. properties:
  14924. audiences:
  14925. description: |-
  14926. Audience specifies the `aud` claim for the service account token
  14927. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14928. then this audiences will be appended to the list
  14929. items:
  14930. type: string
  14931. type: array
  14932. name:
  14933. description: The name of the ServiceAccount resource being referred to.
  14934. maxLength: 253
  14935. minLength: 1
  14936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14937. type: string
  14938. namespace:
  14939. description: |-
  14940. Namespace of the resource being referred to.
  14941. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14942. maxLength: 63
  14943. minLength: 1
  14944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14945. type: string
  14946. required:
  14947. - name
  14948. type: object
  14949. required:
  14950. - accessID
  14951. - k8sConfName
  14952. type: object
  14953. secretRef:
  14954. description: |-
  14955. Reference to a Secret that contains the details
  14956. to authenticate with Akeyless.
  14957. properties:
  14958. accessID:
  14959. description: The SecretAccessID is used for authentication
  14960. properties:
  14961. key:
  14962. description: |-
  14963. A key in the referenced Secret.
  14964. Some instances of this field may be defaulted, in others it may be required.
  14965. maxLength: 253
  14966. minLength: 1
  14967. pattern: ^[-._a-zA-Z0-9]+$
  14968. type: string
  14969. name:
  14970. description: The name of the Secret resource being referred to.
  14971. maxLength: 253
  14972. minLength: 1
  14973. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14974. type: string
  14975. namespace:
  14976. description: |-
  14977. The namespace of the Secret resource being referred to.
  14978. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14979. maxLength: 63
  14980. minLength: 1
  14981. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14982. type: string
  14983. type: object
  14984. accessType:
  14985. description: |-
  14986. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14987. In some instances, `key` is a required field.
  14988. properties:
  14989. key:
  14990. description: |-
  14991. A key in the referenced Secret.
  14992. Some instances of this field may be defaulted, in others it may be required.
  14993. maxLength: 253
  14994. minLength: 1
  14995. pattern: ^[-._a-zA-Z0-9]+$
  14996. type: string
  14997. name:
  14998. description: The name of the Secret resource being referred to.
  14999. maxLength: 253
  15000. minLength: 1
  15001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15002. type: string
  15003. namespace:
  15004. description: |-
  15005. The namespace of the Secret resource being referred to.
  15006. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15007. maxLength: 63
  15008. minLength: 1
  15009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15010. type: string
  15011. type: object
  15012. accessTypeParam:
  15013. description: |-
  15014. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15015. In some instances, `key` is a required field.
  15016. properties:
  15017. key:
  15018. description: |-
  15019. A key in the referenced Secret.
  15020. Some instances of this field may be defaulted, in others it may be required.
  15021. maxLength: 253
  15022. minLength: 1
  15023. pattern: ^[-._a-zA-Z0-9]+$
  15024. type: string
  15025. name:
  15026. description: The name of the Secret resource being referred to.
  15027. maxLength: 253
  15028. minLength: 1
  15029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15030. type: string
  15031. namespace:
  15032. description: |-
  15033. The namespace of the Secret resource being referred to.
  15034. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15035. maxLength: 63
  15036. minLength: 1
  15037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15038. type: string
  15039. type: object
  15040. type: object
  15041. type: object
  15042. caBundle:
  15043. description: |-
  15044. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  15045. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  15046. are used to validate the TLS connection.
  15047. format: byte
  15048. type: string
  15049. caProvider:
  15050. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  15051. properties:
  15052. key:
  15053. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15054. maxLength: 253
  15055. minLength: 1
  15056. pattern: ^[-._a-zA-Z0-9]+$
  15057. type: string
  15058. name:
  15059. description: The name of the object located at the provider type.
  15060. maxLength: 253
  15061. minLength: 1
  15062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15063. type: string
  15064. namespace:
  15065. description: |-
  15066. The namespace the Provider type is in.
  15067. Can only be defined when used in a ClusterSecretStore.
  15068. maxLength: 63
  15069. minLength: 1
  15070. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15071. type: string
  15072. type:
  15073. description: The type of provider to use such as "Secret", or "ConfigMap".
  15074. enum:
  15075. - Secret
  15076. - ConfigMap
  15077. type: string
  15078. required:
  15079. - name
  15080. - type
  15081. type: object
  15082. required:
  15083. - akeylessGWApiURL
  15084. - authSecretRef
  15085. type: object
  15086. aws:
  15087. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  15088. properties:
  15089. additionalRoles:
  15090. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  15091. items:
  15092. type: string
  15093. type: array
  15094. auth:
  15095. description: |-
  15096. Auth defines the information necessary to authenticate against AWS
  15097. if not set aws sdk will infer credentials from your environment
  15098. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  15099. properties:
  15100. jwt:
  15101. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  15102. properties:
  15103. serviceAccountRef:
  15104. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  15105. properties:
  15106. audiences:
  15107. description: |-
  15108. Audience specifies the `aud` claim for the service account token
  15109. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15110. then this audiences will be appended to the list
  15111. items:
  15112. type: string
  15113. type: array
  15114. name:
  15115. description: The name of the ServiceAccount resource being referred to.
  15116. maxLength: 253
  15117. minLength: 1
  15118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15119. type: string
  15120. namespace:
  15121. description: |-
  15122. Namespace of the resource being referred to.
  15123. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15124. maxLength: 63
  15125. minLength: 1
  15126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15127. type: string
  15128. required:
  15129. - name
  15130. type: object
  15131. type: object
  15132. secretRef:
  15133. description: |-
  15134. AWSAuthSecretRef holds secret references for AWS credentials
  15135. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  15136. properties:
  15137. accessKeyIDSecretRef:
  15138. description: The AccessKeyID is used for authentication
  15139. properties:
  15140. key:
  15141. description: |-
  15142. A key in the referenced Secret.
  15143. Some instances of this field may be defaulted, in others it may be required.
  15144. maxLength: 253
  15145. minLength: 1
  15146. pattern: ^[-._a-zA-Z0-9]+$
  15147. type: string
  15148. name:
  15149. description: The name of the Secret resource being referred to.
  15150. maxLength: 253
  15151. minLength: 1
  15152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15153. type: string
  15154. namespace:
  15155. description: |-
  15156. The namespace of the Secret resource being referred to.
  15157. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15158. maxLength: 63
  15159. minLength: 1
  15160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15161. type: string
  15162. type: object
  15163. secretAccessKeySecretRef:
  15164. description: The SecretAccessKey is used for authentication
  15165. properties:
  15166. key:
  15167. description: |-
  15168. A key in the referenced Secret.
  15169. Some instances of this field may be defaulted, in others it may be required.
  15170. maxLength: 253
  15171. minLength: 1
  15172. pattern: ^[-._a-zA-Z0-9]+$
  15173. type: string
  15174. name:
  15175. description: The name of the Secret resource being referred to.
  15176. maxLength: 253
  15177. minLength: 1
  15178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15179. type: string
  15180. namespace:
  15181. description: |-
  15182. The namespace of the Secret resource being referred to.
  15183. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15184. maxLength: 63
  15185. minLength: 1
  15186. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15187. type: string
  15188. type: object
  15189. sessionTokenSecretRef:
  15190. description: |-
  15191. The SessionToken used for authentication
  15192. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  15193. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  15194. properties:
  15195. key:
  15196. description: |-
  15197. A key in the referenced Secret.
  15198. Some instances of this field may be defaulted, in others it may be required.
  15199. maxLength: 253
  15200. minLength: 1
  15201. pattern: ^[-._a-zA-Z0-9]+$
  15202. type: string
  15203. name:
  15204. description: The name of the Secret resource being referred to.
  15205. maxLength: 253
  15206. minLength: 1
  15207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15208. type: string
  15209. namespace:
  15210. description: |-
  15211. The namespace of the Secret resource being referred to.
  15212. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15213. maxLength: 63
  15214. minLength: 1
  15215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15216. type: string
  15217. type: object
  15218. type: object
  15219. type: object
  15220. externalID:
  15221. description: AWS External ID set on assumed IAM roles
  15222. type: string
  15223. prefix:
  15224. description: Prefix adds a prefix to all retrieved values.
  15225. type: string
  15226. region:
  15227. description: AWS Region to be used for the provider
  15228. type: string
  15229. role:
  15230. description: Role is a Role ARN which the provider will assume
  15231. type: string
  15232. secretsManager:
  15233. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  15234. properties:
  15235. forceDeleteWithoutRecovery:
  15236. description: |-
  15237. Specifies whether to delete the secret without any recovery window. You
  15238. can't use both this parameter and RecoveryWindowInDays in the same call.
  15239. If you don't use either, then by default Secrets Manager uses a 30 day
  15240. recovery window.
  15241. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  15242. type: boolean
  15243. recoveryWindowInDays:
  15244. description: |-
  15245. The number of days from 7 to 30 that Secrets Manager waits before
  15246. permanently deleting the secret. You can't use both this parameter and
  15247. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  15248. then by default Secrets Manager uses a 30-day recovery window.
  15249. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  15250. type: integer
  15251. type: object
  15252. service:
  15253. description: Service defines which service should be used to fetch the secrets
  15254. enum:
  15255. - SecretsManager
  15256. - ParameterStore
  15257. type: string
  15258. sessionTags:
  15259. description: AWS STS assume role session tags
  15260. items:
  15261. description: |-
  15262. Tag is a key-value pair that can be attached to an AWS resource.
  15263. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  15264. properties:
  15265. key:
  15266. type: string
  15267. value:
  15268. type: string
  15269. required:
  15270. - key
  15271. - value
  15272. type: object
  15273. type: array
  15274. transitiveTagKeys:
  15275. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  15276. items:
  15277. type: string
  15278. type: array
  15279. required:
  15280. - region
  15281. - service
  15282. type: object
  15283. azurekv:
  15284. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  15285. properties:
  15286. authSecretRef:
  15287. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15288. properties:
  15289. clientCertificate:
  15290. description: The Azure ClientCertificate of the service principle used for authentication.
  15291. properties:
  15292. key:
  15293. description: |-
  15294. A key in the referenced Secret.
  15295. Some instances of this field may be defaulted, in others it may be required.
  15296. maxLength: 253
  15297. minLength: 1
  15298. pattern: ^[-._a-zA-Z0-9]+$
  15299. type: string
  15300. name:
  15301. description: The name of the Secret resource being referred to.
  15302. maxLength: 253
  15303. minLength: 1
  15304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15305. type: string
  15306. namespace:
  15307. description: |-
  15308. The namespace of the Secret resource being referred to.
  15309. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15310. maxLength: 63
  15311. minLength: 1
  15312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15313. type: string
  15314. type: object
  15315. clientId:
  15316. description: The Azure clientId of the service principle or managed identity used for authentication.
  15317. properties:
  15318. key:
  15319. description: |-
  15320. A key in the referenced Secret.
  15321. Some instances of this field may be defaulted, in others it may be required.
  15322. maxLength: 253
  15323. minLength: 1
  15324. pattern: ^[-._a-zA-Z0-9]+$
  15325. type: string
  15326. name:
  15327. description: The name of the Secret resource being referred to.
  15328. maxLength: 253
  15329. minLength: 1
  15330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15331. type: string
  15332. namespace:
  15333. description: |-
  15334. The namespace of the Secret resource being referred to.
  15335. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15336. maxLength: 63
  15337. minLength: 1
  15338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15339. type: string
  15340. type: object
  15341. clientSecret:
  15342. description: The Azure ClientSecret of the service principle used for authentication.
  15343. properties:
  15344. key:
  15345. description: |-
  15346. A key in the referenced Secret.
  15347. Some instances of this field may be defaulted, in others it may be required.
  15348. maxLength: 253
  15349. minLength: 1
  15350. pattern: ^[-._a-zA-Z0-9]+$
  15351. type: string
  15352. name:
  15353. description: The name of the Secret resource being referred to.
  15354. maxLength: 253
  15355. minLength: 1
  15356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15357. type: string
  15358. namespace:
  15359. description: |-
  15360. The namespace of the Secret resource being referred to.
  15361. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15362. maxLength: 63
  15363. minLength: 1
  15364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15365. type: string
  15366. type: object
  15367. tenantId:
  15368. description: The Azure tenantId of the managed identity used for authentication.
  15369. properties:
  15370. key:
  15371. description: |-
  15372. A key in the referenced Secret.
  15373. Some instances of this field may be defaulted, in others it may be required.
  15374. maxLength: 253
  15375. minLength: 1
  15376. pattern: ^[-._a-zA-Z0-9]+$
  15377. type: string
  15378. name:
  15379. description: The name of the Secret resource being referred to.
  15380. maxLength: 253
  15381. minLength: 1
  15382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15383. type: string
  15384. namespace:
  15385. description: |-
  15386. The namespace of the Secret resource being referred to.
  15387. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15388. maxLength: 63
  15389. minLength: 1
  15390. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15391. type: string
  15392. type: object
  15393. type: object
  15394. authType:
  15395. default: ServicePrincipal
  15396. description: |-
  15397. Auth type defines how to authenticate to the keyvault service.
  15398. Valid values are:
  15399. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15400. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15401. enum:
  15402. - ServicePrincipal
  15403. - ManagedIdentity
  15404. - WorkloadIdentity
  15405. type: string
  15406. customCloudConfig:
  15407. description: |-
  15408. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15409. Required when EnvironmentType is AzureStackCloud.
  15410. Optional for other environment types - useful for Azure China when using Workload Identity
  15411. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15412. standard China Cloud endpoint (login.chinacloudapi.cn).
  15413. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15414. configuration is not supported with the legacy go-autorest SDK.
  15415. properties:
  15416. activeDirectoryEndpoint:
  15417. description: |-
  15418. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15419. Required when using custom cloud configuration
  15420. type: string
  15421. keyVaultDNSSuffix:
  15422. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15423. type: string
  15424. keyVaultEndpoint:
  15425. description: KeyVaultEndpoint is the Key Vault service endpoint
  15426. type: string
  15427. resourceManagerEndpoint:
  15428. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15429. type: string
  15430. required:
  15431. - activeDirectoryEndpoint
  15432. type: object
  15433. environmentType:
  15434. default: PublicCloud
  15435. description: |-
  15436. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15437. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15438. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15439. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15440. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15441. enum:
  15442. - PublicCloud
  15443. - USGovernmentCloud
  15444. - ChinaCloud
  15445. - GermanCloud
  15446. - AzureStackCloud
  15447. type: string
  15448. identityId:
  15449. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15450. type: string
  15451. serviceAccountRef:
  15452. description: |-
  15453. ServiceAccountRef specified the service account
  15454. that should be used when authenticating with WorkloadIdentity.
  15455. properties:
  15456. audiences:
  15457. description: |-
  15458. Audience specifies the `aud` claim for the service account token
  15459. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15460. then this audiences will be appended to the list
  15461. items:
  15462. type: string
  15463. type: array
  15464. name:
  15465. description: The name of the ServiceAccount resource being referred to.
  15466. maxLength: 253
  15467. minLength: 1
  15468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15469. type: string
  15470. namespace:
  15471. description: |-
  15472. Namespace of the resource being referred to.
  15473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15474. maxLength: 63
  15475. minLength: 1
  15476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15477. type: string
  15478. required:
  15479. - name
  15480. type: object
  15481. tenantId:
  15482. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15483. type: string
  15484. useAzureSDK:
  15485. default: false
  15486. description: |-
  15487. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15488. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15489. type: boolean
  15490. vaultUrl:
  15491. description: Vault Url from which the secrets to be fetched from.
  15492. type: string
  15493. required:
  15494. - vaultUrl
  15495. type: object
  15496. barbican:
  15497. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15498. properties:
  15499. auth:
  15500. description: BarbicanAuth contains the authentication information for Barbican.
  15501. properties:
  15502. password:
  15503. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15504. properties:
  15505. secretRef:
  15506. description: |-
  15507. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15508. In some instances, `key` is a required field.
  15509. properties:
  15510. key:
  15511. description: |-
  15512. A key in the referenced Secret.
  15513. Some instances of this field may be defaulted, in others it may be required.
  15514. maxLength: 253
  15515. minLength: 1
  15516. pattern: ^[-._a-zA-Z0-9]+$
  15517. type: string
  15518. name:
  15519. description: The name of the Secret resource being referred to.
  15520. maxLength: 253
  15521. minLength: 1
  15522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15523. type: string
  15524. namespace:
  15525. description: |-
  15526. The namespace of the Secret resource being referred to.
  15527. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15528. maxLength: 63
  15529. minLength: 1
  15530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15531. type: string
  15532. type: object
  15533. required:
  15534. - secretRef
  15535. type: object
  15536. username:
  15537. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15538. maxProperties: 1
  15539. minProperties: 1
  15540. properties:
  15541. secretRef:
  15542. description: |-
  15543. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15544. In some instances, `key` is a required field.
  15545. properties:
  15546. key:
  15547. description: |-
  15548. A key in the referenced Secret.
  15549. Some instances of this field may be defaulted, in others it may be required.
  15550. maxLength: 253
  15551. minLength: 1
  15552. pattern: ^[-._a-zA-Z0-9]+$
  15553. type: string
  15554. name:
  15555. description: The name of the Secret resource being referred to.
  15556. maxLength: 253
  15557. minLength: 1
  15558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15559. type: string
  15560. namespace:
  15561. description: |-
  15562. The namespace of the Secret resource being referred to.
  15563. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15564. maxLength: 63
  15565. minLength: 1
  15566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15567. type: string
  15568. type: object
  15569. value:
  15570. type: string
  15571. type: object
  15572. required:
  15573. - password
  15574. - username
  15575. type: object
  15576. authURL:
  15577. type: string
  15578. domainName:
  15579. type: string
  15580. region:
  15581. type: string
  15582. tenantName:
  15583. type: string
  15584. required:
  15585. - auth
  15586. type: object
  15587. beyondtrust:
  15588. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15589. properties:
  15590. auth:
  15591. description: Auth configures how the operator authenticates with Beyondtrust.
  15592. properties:
  15593. apiKey:
  15594. description: APIKey If not provided then ClientID/ClientSecret become required.
  15595. properties:
  15596. secretRef:
  15597. description: SecretRef references a key in a secret that will be used as value.
  15598. properties:
  15599. key:
  15600. description: |-
  15601. A key in the referenced Secret.
  15602. Some instances of this field may be defaulted, in others it may be required.
  15603. maxLength: 253
  15604. minLength: 1
  15605. pattern: ^[-._a-zA-Z0-9]+$
  15606. type: string
  15607. name:
  15608. description: The name of the Secret resource being referred to.
  15609. maxLength: 253
  15610. minLength: 1
  15611. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15612. type: string
  15613. namespace:
  15614. description: |-
  15615. The namespace of the Secret resource being referred to.
  15616. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15617. maxLength: 63
  15618. minLength: 1
  15619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15620. type: string
  15621. type: object
  15622. value:
  15623. description: Value can be specified directly to set a value without using a secret.
  15624. type: string
  15625. type: object
  15626. certificate:
  15627. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15628. properties:
  15629. secretRef:
  15630. description: SecretRef references a key in a secret that will be used as value.
  15631. properties:
  15632. key:
  15633. description: |-
  15634. A key in the referenced Secret.
  15635. Some instances of this field may be defaulted, in others it may be required.
  15636. maxLength: 253
  15637. minLength: 1
  15638. pattern: ^[-._a-zA-Z0-9]+$
  15639. type: string
  15640. name:
  15641. description: The name of the Secret resource being referred to.
  15642. maxLength: 253
  15643. minLength: 1
  15644. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15645. type: string
  15646. namespace:
  15647. description: |-
  15648. The namespace of the Secret resource being referred to.
  15649. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15650. maxLength: 63
  15651. minLength: 1
  15652. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15653. type: string
  15654. type: object
  15655. value:
  15656. description: Value can be specified directly to set a value without using a secret.
  15657. type: string
  15658. type: object
  15659. certificateKey:
  15660. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15661. properties:
  15662. secretRef:
  15663. description: SecretRef references a key in a secret that will be used as value.
  15664. properties:
  15665. key:
  15666. description: |-
  15667. A key in the referenced Secret.
  15668. Some instances of this field may be defaulted, in others it may be required.
  15669. maxLength: 253
  15670. minLength: 1
  15671. pattern: ^[-._a-zA-Z0-9]+$
  15672. type: string
  15673. name:
  15674. description: The name of the Secret resource being referred to.
  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 of the Secret resource being referred to.
  15682. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15683. maxLength: 63
  15684. minLength: 1
  15685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15686. type: string
  15687. type: object
  15688. value:
  15689. description: Value can be specified directly to set a value without using a secret.
  15690. type: string
  15691. type: object
  15692. clientId:
  15693. description: ClientID is the API OAuth Client ID.
  15694. properties:
  15695. secretRef:
  15696. description: SecretRef references a key in a secret that will be used as value.
  15697. properties:
  15698. key:
  15699. description: |-
  15700. A key in the referenced Secret.
  15701. Some instances of this field may be defaulted, in others it may be required.
  15702. maxLength: 253
  15703. minLength: 1
  15704. pattern: ^[-._a-zA-Z0-9]+$
  15705. type: string
  15706. name:
  15707. description: The name of the Secret resource being referred to.
  15708. maxLength: 253
  15709. minLength: 1
  15710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15711. type: string
  15712. namespace:
  15713. description: |-
  15714. The namespace of the Secret resource being referred to.
  15715. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15716. maxLength: 63
  15717. minLength: 1
  15718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15719. type: string
  15720. type: object
  15721. value:
  15722. description: Value can be specified directly to set a value without using a secret.
  15723. type: string
  15724. type: object
  15725. clientSecret:
  15726. description: ClientSecret is the API OAuth Client Secret.
  15727. properties:
  15728. secretRef:
  15729. description: SecretRef references a key in a secret that will be used as value.
  15730. properties:
  15731. key:
  15732. description: |-
  15733. A key in the referenced Secret.
  15734. Some instances of this field may be defaulted, in others it may be required.
  15735. maxLength: 253
  15736. minLength: 1
  15737. pattern: ^[-._a-zA-Z0-9]+$
  15738. type: string
  15739. name:
  15740. description: The name of the Secret resource being referred to.
  15741. maxLength: 253
  15742. minLength: 1
  15743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15744. type: string
  15745. namespace:
  15746. description: |-
  15747. The namespace of the Secret resource being referred to.
  15748. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15749. maxLength: 63
  15750. minLength: 1
  15751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15752. type: string
  15753. type: object
  15754. value:
  15755. description: Value can be specified directly to set a value without using a secret.
  15756. type: string
  15757. type: object
  15758. type: object
  15759. server:
  15760. description: Auth configures how API server works.
  15761. properties:
  15762. apiUrl:
  15763. type: string
  15764. apiVersion:
  15765. type: string
  15766. clientTimeOutSeconds:
  15767. 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.
  15768. type: integer
  15769. decrypt:
  15770. default: true
  15771. 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.'
  15772. type: boolean
  15773. retrievalType:
  15774. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  15775. type: string
  15776. separator:
  15777. description: A character that separates the folder names.
  15778. type: string
  15779. verifyCA:
  15780. type: boolean
  15781. required:
  15782. - apiUrl
  15783. - verifyCA
  15784. type: object
  15785. required:
  15786. - auth
  15787. - server
  15788. type: object
  15789. bitwardensecretsmanager:
  15790. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  15791. properties:
  15792. apiURL:
  15793. type: string
  15794. auth:
  15795. description: |-
  15796. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  15797. Make sure that the token being used has permissions on the given secret.
  15798. properties:
  15799. secretRef:
  15800. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  15801. properties:
  15802. credentials:
  15803. description: AccessToken used for the bitwarden instance.
  15804. properties:
  15805. key:
  15806. description: |-
  15807. A key in the referenced Secret.
  15808. Some instances of this field may be defaulted, in others it may be required.
  15809. maxLength: 253
  15810. minLength: 1
  15811. pattern: ^[-._a-zA-Z0-9]+$
  15812. type: string
  15813. name:
  15814. description: The name of the Secret resource being referred to.
  15815. maxLength: 253
  15816. minLength: 1
  15817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15818. type: string
  15819. namespace:
  15820. description: |-
  15821. The namespace of the Secret resource being referred to.
  15822. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15823. maxLength: 63
  15824. minLength: 1
  15825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15826. type: string
  15827. type: object
  15828. required:
  15829. - credentials
  15830. type: object
  15831. required:
  15832. - secretRef
  15833. type: object
  15834. bitwardenServerSDKURL:
  15835. type: string
  15836. caBundle:
  15837. description: |-
  15838. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  15839. can be performed.
  15840. type: string
  15841. caProvider:
  15842. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  15843. properties:
  15844. key:
  15845. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15846. maxLength: 253
  15847. minLength: 1
  15848. pattern: ^[-._a-zA-Z0-9]+$
  15849. type: string
  15850. name:
  15851. description: The name of the object located at the provider type.
  15852. maxLength: 253
  15853. minLength: 1
  15854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15855. type: string
  15856. namespace:
  15857. description: |-
  15858. The namespace the Provider type is in.
  15859. Can only be defined when used in a ClusterSecretStore.
  15860. maxLength: 63
  15861. minLength: 1
  15862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15863. type: string
  15864. type:
  15865. description: The type of provider to use such as "Secret", or "ConfigMap".
  15866. enum:
  15867. - Secret
  15868. - ConfigMap
  15869. type: string
  15870. required:
  15871. - name
  15872. - type
  15873. type: object
  15874. identityURL:
  15875. type: string
  15876. organizationID:
  15877. description: OrganizationID determines which organization this secret store manages.
  15878. type: string
  15879. projectID:
  15880. description: ProjectID determines which project this secret store manages.
  15881. type: string
  15882. required:
  15883. - auth
  15884. - organizationID
  15885. - projectID
  15886. type: object
  15887. chef:
  15888. description: Chef configures this store to sync secrets with chef server
  15889. properties:
  15890. auth:
  15891. description: Auth defines the information necessary to authenticate against chef Server
  15892. properties:
  15893. secretRef:
  15894. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  15895. properties:
  15896. privateKeySecretRef:
  15897. description: SecretKey is the Signing Key in PEM format, used for authentication.
  15898. properties:
  15899. key:
  15900. description: |-
  15901. A key in the referenced Secret.
  15902. Some instances of this field may be defaulted, in others it may be required.
  15903. maxLength: 253
  15904. minLength: 1
  15905. pattern: ^[-._a-zA-Z0-9]+$
  15906. type: string
  15907. name:
  15908. description: The name of the Secret resource being referred to.
  15909. maxLength: 253
  15910. minLength: 1
  15911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15912. type: string
  15913. namespace:
  15914. description: |-
  15915. The namespace of the Secret resource being referred to.
  15916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15917. maxLength: 63
  15918. minLength: 1
  15919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15920. type: string
  15921. type: object
  15922. required:
  15923. - privateKeySecretRef
  15924. type: object
  15925. required:
  15926. - secretRef
  15927. type: object
  15928. serverUrl:
  15929. 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 "/"
  15930. type: string
  15931. username:
  15932. description: UserName should be the user ID on the chef server
  15933. type: string
  15934. required:
  15935. - auth
  15936. - serverUrl
  15937. - username
  15938. type: object
  15939. cloudrusm:
  15940. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  15941. properties:
  15942. auth:
  15943. description: CSMAuth contains a secretRef for credentials.
  15944. properties:
  15945. secretRef:
  15946. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  15947. properties:
  15948. accessKeyIDSecretRef:
  15949. description: The AccessKeyID is used for authentication
  15950. properties:
  15951. key:
  15952. description: |-
  15953. A key in the referenced Secret.
  15954. Some instances of this field may be defaulted, in others it may be required.
  15955. maxLength: 253
  15956. minLength: 1
  15957. pattern: ^[-._a-zA-Z0-9]+$
  15958. type: string
  15959. name:
  15960. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  15974. accessKeySecretSecretRef:
  15975. description: The AccessKeySecret is used for authentication
  15976. properties:
  15977. key:
  15978. description: |-
  15979. A key in the referenced Secret.
  15980. Some instances of this field may be defaulted, in others it may be required.
  15981. maxLength: 253
  15982. minLength: 1
  15983. pattern: ^[-._a-zA-Z0-9]+$
  15984. type: string
  15985. name:
  15986. description: The name of the Secret resource being referred to.
  15987. maxLength: 253
  15988. minLength: 1
  15989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15990. type: string
  15991. namespace:
  15992. description: |-
  15993. The namespace of the Secret resource being referred to.
  15994. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15995. maxLength: 63
  15996. minLength: 1
  15997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15998. type: string
  15999. type: object
  16000. required:
  16001. - accessKeyIDSecretRef
  16002. - accessKeySecretSecretRef
  16003. type: object
  16004. type: object
  16005. projectID:
  16006. description: ProjectID is the project, which the secrets are stored in.
  16007. type: string
  16008. required:
  16009. - auth
  16010. type: object
  16011. conjur:
  16012. description: Conjur configures this store to sync secrets using conjur provider
  16013. properties:
  16014. auth:
  16015. description: Defines authentication settings for connecting to Conjur.
  16016. properties:
  16017. apikey:
  16018. description: Authenticates with Conjur using an API key.
  16019. properties:
  16020. account:
  16021. description: Account is the Conjur organization account name.
  16022. type: string
  16023. apiKeyRef:
  16024. description: |-
  16025. A reference to a specific 'key' containing the Conjur API key
  16026. within a Secret resource. In some instances, `key` is a required field.
  16027. properties:
  16028. key:
  16029. description: |-
  16030. A key in the referenced Secret.
  16031. Some instances of this field may be defaulted, in others it may be required.
  16032. maxLength: 253
  16033. minLength: 1
  16034. pattern: ^[-._a-zA-Z0-9]+$
  16035. type: string
  16036. name:
  16037. description: The name of the Secret resource being referred to.
  16038. maxLength: 253
  16039. minLength: 1
  16040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16041. type: string
  16042. namespace:
  16043. description: |-
  16044. The namespace of the Secret resource being referred to.
  16045. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16046. maxLength: 63
  16047. minLength: 1
  16048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16049. type: string
  16050. type: object
  16051. userRef:
  16052. description: |-
  16053. A reference to a specific 'key' containing the Conjur username
  16054. within a Secret resource. In some instances, `key` is a required field.
  16055. properties:
  16056. key:
  16057. description: |-
  16058. A key in the referenced Secret.
  16059. Some instances of this field may be defaulted, in others it may be required.
  16060. maxLength: 253
  16061. minLength: 1
  16062. pattern: ^[-._a-zA-Z0-9]+$
  16063. type: string
  16064. name:
  16065. description: The name of the Secret resource being referred to.
  16066. maxLength: 253
  16067. minLength: 1
  16068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16069. type: string
  16070. namespace:
  16071. description: |-
  16072. The namespace of the Secret resource being referred to.
  16073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16074. maxLength: 63
  16075. minLength: 1
  16076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16077. type: string
  16078. type: object
  16079. required:
  16080. - account
  16081. - apiKeyRef
  16082. - userRef
  16083. type: object
  16084. jwt:
  16085. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  16086. properties:
  16087. account:
  16088. description: Account is the Conjur organization account name.
  16089. type: string
  16090. hostId:
  16091. description: |-
  16092. Optional HostID for JWT authentication. This may be used depending
  16093. on how the Conjur JWT authenticator policy is configured.
  16094. type: string
  16095. secretRef:
  16096. description: |-
  16097. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  16098. authenticate with Conjur using the JWT authentication method.
  16099. properties:
  16100. key:
  16101. description: |-
  16102. A key in the referenced Secret.
  16103. Some instances of this field may be defaulted, in others it may be required.
  16104. maxLength: 253
  16105. minLength: 1
  16106. pattern: ^[-._a-zA-Z0-9]+$
  16107. type: string
  16108. name:
  16109. description: The name of the Secret resource being referred to.
  16110. maxLength: 253
  16111. minLength: 1
  16112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16113. type: string
  16114. namespace:
  16115. description: |-
  16116. The namespace of the Secret resource being referred to.
  16117. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16118. maxLength: 63
  16119. minLength: 1
  16120. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16121. type: string
  16122. type: object
  16123. serviceAccountRef:
  16124. description: |-
  16125. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  16126. a token for with the `TokenRequest` API.
  16127. properties:
  16128. audiences:
  16129. description: |-
  16130. Audience specifies the `aud` claim for the service account token
  16131. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16132. then this audiences will be appended to the list
  16133. items:
  16134. type: string
  16135. type: array
  16136. name:
  16137. description: The name of the ServiceAccount resource being referred to.
  16138. maxLength: 253
  16139. minLength: 1
  16140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16141. type: string
  16142. namespace:
  16143. description: |-
  16144. Namespace of the resource being referred to.
  16145. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16146. maxLength: 63
  16147. minLength: 1
  16148. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16149. type: string
  16150. required:
  16151. - name
  16152. type: object
  16153. serviceID:
  16154. description: The conjur authn jwt webservice id
  16155. type: string
  16156. required:
  16157. - account
  16158. - serviceID
  16159. type: object
  16160. type: object
  16161. caBundle:
  16162. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  16163. type: string
  16164. caProvider:
  16165. description: |-
  16166. Used to provide custom certificate authority (CA) certificates
  16167. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  16168. that contains a PEM-encoded certificate.
  16169. properties:
  16170. key:
  16171. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16172. maxLength: 253
  16173. minLength: 1
  16174. pattern: ^[-._a-zA-Z0-9]+$
  16175. type: string
  16176. name:
  16177. description: The name of the object located at the provider type.
  16178. maxLength: 253
  16179. minLength: 1
  16180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16181. type: string
  16182. namespace:
  16183. description: |-
  16184. The namespace the Provider type is in.
  16185. Can only be defined when used in a ClusterSecretStore.
  16186. maxLength: 63
  16187. minLength: 1
  16188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16189. type: string
  16190. type:
  16191. description: The type of provider to use such as "Secret", or "ConfigMap".
  16192. enum:
  16193. - Secret
  16194. - ConfigMap
  16195. type: string
  16196. required:
  16197. - name
  16198. - type
  16199. type: object
  16200. url:
  16201. description: URL is the endpoint of the Conjur instance.
  16202. type: string
  16203. required:
  16204. - auth
  16205. - url
  16206. type: object
  16207. delinea:
  16208. description: |-
  16209. Delinea DevOps Secrets Vault
  16210. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  16211. properties:
  16212. clientId:
  16213. description: ClientID is the non-secret part of the credential.
  16214. properties:
  16215. secretRef:
  16216. description: SecretRef references a key in a secret that will be used as value.
  16217. properties:
  16218. key:
  16219. description: |-
  16220. A key in the referenced Secret.
  16221. Some instances of this field may be defaulted, in others it may be required.
  16222. maxLength: 253
  16223. minLength: 1
  16224. pattern: ^[-._a-zA-Z0-9]+$
  16225. type: string
  16226. name:
  16227. description: The name of the Secret resource being referred to.
  16228. maxLength: 253
  16229. minLength: 1
  16230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16231. type: string
  16232. namespace:
  16233. description: |-
  16234. The namespace of the Secret resource being referred to.
  16235. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16236. maxLength: 63
  16237. minLength: 1
  16238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16239. type: string
  16240. type: object
  16241. value:
  16242. description: Value can be specified directly to set a value without using a secret.
  16243. type: string
  16244. type: object
  16245. clientSecret:
  16246. description: ClientSecret is the secret part of the credential.
  16247. properties:
  16248. secretRef:
  16249. description: SecretRef references a key in a secret that will be used as value.
  16250. properties:
  16251. key:
  16252. description: |-
  16253. A key in the referenced Secret.
  16254. Some instances of this field may be defaulted, in others it may be required.
  16255. maxLength: 253
  16256. minLength: 1
  16257. pattern: ^[-._a-zA-Z0-9]+$
  16258. type: string
  16259. name:
  16260. description: The name of the Secret resource being referred to.
  16261. maxLength: 253
  16262. minLength: 1
  16263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16264. type: string
  16265. namespace:
  16266. description: |-
  16267. The namespace of the Secret resource being referred to.
  16268. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16269. maxLength: 63
  16270. minLength: 1
  16271. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16272. type: string
  16273. type: object
  16274. value:
  16275. description: Value can be specified directly to set a value without using a secret.
  16276. type: string
  16277. type: object
  16278. tenant:
  16279. description: Tenant is the chosen hostname / site name.
  16280. type: string
  16281. tld:
  16282. description: |-
  16283. TLD is based on the server location that was chosen during provisioning.
  16284. If unset, defaults to "com".
  16285. type: string
  16286. urlTemplate:
  16287. description: |-
  16288. URLTemplate
  16289. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  16290. type: string
  16291. required:
  16292. - clientId
  16293. - clientSecret
  16294. - tenant
  16295. type: object
  16296. doppler:
  16297. description: Doppler configures this store to sync secrets using the Doppler provider
  16298. properties:
  16299. auth:
  16300. description: Auth configures how the Operator authenticates with the Doppler API
  16301. properties:
  16302. oidcConfig:
  16303. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  16304. properties:
  16305. expirationSeconds:
  16306. default: 600
  16307. description: |-
  16308. ExpirationSeconds sets the ServiceAccount token validity duration.
  16309. Defaults to 10 minutes.
  16310. format: int64
  16311. type: integer
  16312. identity:
  16313. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  16314. type: string
  16315. serviceAccountRef:
  16316. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  16317. properties:
  16318. audiences:
  16319. description: |-
  16320. Audience specifies the `aud` claim for the service account token
  16321. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16322. then this audiences will be appended to the list
  16323. items:
  16324. type: string
  16325. type: array
  16326. name:
  16327. description: The name of the ServiceAccount resource being referred to.
  16328. maxLength: 253
  16329. minLength: 1
  16330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16331. type: string
  16332. namespace:
  16333. description: |-
  16334. Namespace of the resource being referred to.
  16335. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16336. maxLength: 63
  16337. minLength: 1
  16338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16339. type: string
  16340. required:
  16341. - name
  16342. type: object
  16343. required:
  16344. - identity
  16345. - serviceAccountRef
  16346. type: object
  16347. secretRef:
  16348. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  16349. properties:
  16350. dopplerToken:
  16351. description: |-
  16352. The DopplerToken is used for authentication.
  16353. See https://docs.doppler.com/reference/api#authentication for auth token types.
  16354. The Key attribute defaults to dopplerToken if not specified.
  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. required:
  16380. - dopplerToken
  16381. type: object
  16382. type: object
  16383. x-kubernetes-validations:
  16384. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  16385. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  16386. config:
  16387. description: Doppler config (required if not using a Service Token)
  16388. type: string
  16389. format:
  16390. description: Format enables the downloading of secrets as a file (string)
  16391. enum:
  16392. - json
  16393. - dotnet-json
  16394. - env
  16395. - yaml
  16396. - docker
  16397. type: string
  16398. nameTransformer:
  16399. description: Environment variable compatible name transforms that change secret names to a different format
  16400. enum:
  16401. - upper-camel
  16402. - camel
  16403. - lower-snake
  16404. - tf-var
  16405. - dotnet-env
  16406. - lower-kebab
  16407. type: string
  16408. project:
  16409. description: Doppler project (required if not using a Service Token)
  16410. type: string
  16411. required:
  16412. - auth
  16413. type: object
  16414. dvls:
  16415. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16416. properties:
  16417. auth:
  16418. description: Auth defines the authentication method to use.
  16419. properties:
  16420. secretRef:
  16421. description: SecretRef contains the Application ID and Application Secret for authentication.
  16422. properties:
  16423. appId:
  16424. description: AppID is the reference to the secret containing the Application ID.
  16425. properties:
  16426. key:
  16427. description: |-
  16428. A key in the referenced Secret.
  16429. Some instances of this field may be defaulted, in others it may be required.
  16430. maxLength: 253
  16431. minLength: 1
  16432. pattern: ^[-._a-zA-Z0-9]+$
  16433. type: string
  16434. name:
  16435. description: The name of the Secret resource being referred to.
  16436. maxLength: 253
  16437. minLength: 1
  16438. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16439. type: string
  16440. namespace:
  16441. description: |-
  16442. The namespace of the Secret resource being referred to.
  16443. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16444. maxLength: 63
  16445. minLength: 1
  16446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16447. type: string
  16448. type: object
  16449. appSecret:
  16450. description: AppSecret is the reference to the secret containing the Application Secret.
  16451. properties:
  16452. key:
  16453. description: |-
  16454. A key in the referenced Secret.
  16455. Some instances of this field may be defaulted, in others it may be required.
  16456. maxLength: 253
  16457. minLength: 1
  16458. pattern: ^[-._a-zA-Z0-9]+$
  16459. type: string
  16460. name:
  16461. description: The name of the Secret resource being referred to.
  16462. maxLength: 253
  16463. minLength: 1
  16464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16465. type: string
  16466. namespace:
  16467. description: |-
  16468. The namespace of the Secret resource being referred to.
  16469. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16470. maxLength: 63
  16471. minLength: 1
  16472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16473. type: string
  16474. type: object
  16475. required:
  16476. - appId
  16477. - appSecret
  16478. type: object
  16479. required:
  16480. - secretRef
  16481. type: object
  16482. insecure:
  16483. description: |-
  16484. Insecure allows connecting to DVLS over plain HTTP.
  16485. This is NOT RECOMMENDED for production use.
  16486. Set to true only if you understand the security implications.
  16487. type: boolean
  16488. serverUrl:
  16489. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16490. type: string
  16491. required:
  16492. - auth
  16493. - serverUrl
  16494. type: object
  16495. fake:
  16496. description: Fake configures a store with static key/value pairs
  16497. properties:
  16498. data:
  16499. items:
  16500. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16501. properties:
  16502. key:
  16503. type: string
  16504. value:
  16505. type: string
  16506. version:
  16507. type: string
  16508. required:
  16509. - key
  16510. - value
  16511. type: object
  16512. type: array
  16513. validationResult:
  16514. description: ValidationResult is defined type for the number of validation results.
  16515. type: integer
  16516. required:
  16517. - data
  16518. type: object
  16519. fortanix:
  16520. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16521. properties:
  16522. apiKey:
  16523. description: APIKey is the API token to access SDKMS Applications.
  16524. properties:
  16525. secretRef:
  16526. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16527. properties:
  16528. key:
  16529. description: |-
  16530. A key in the referenced Secret.
  16531. Some instances of this field may be defaulted, in others it may be required.
  16532. maxLength: 253
  16533. minLength: 1
  16534. pattern: ^[-._a-zA-Z0-9]+$
  16535. type: string
  16536. name:
  16537. description: The name of the Secret resource being referred to.
  16538. maxLength: 253
  16539. minLength: 1
  16540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16541. type: string
  16542. namespace:
  16543. description: |-
  16544. The namespace of the Secret resource being referred to.
  16545. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16546. maxLength: 63
  16547. minLength: 1
  16548. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16549. type: string
  16550. type: object
  16551. type: object
  16552. apiUrl:
  16553. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  16554. type: string
  16555. type: object
  16556. gcpsm:
  16557. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  16558. properties:
  16559. auth:
  16560. description: Auth defines the information necessary to authenticate against GCP
  16561. properties:
  16562. secretRef:
  16563. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  16564. properties:
  16565. secretAccessKeySecretRef:
  16566. description: The SecretAccessKey is used for authentication
  16567. properties:
  16568. key:
  16569. description: |-
  16570. A key in the referenced Secret.
  16571. Some instances of this field may be defaulted, in others it may be required.
  16572. maxLength: 253
  16573. minLength: 1
  16574. pattern: ^[-._a-zA-Z0-9]+$
  16575. type: string
  16576. name:
  16577. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  16591. type: object
  16592. workloadIdentity:
  16593. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  16594. properties:
  16595. clusterLocation:
  16596. description: |-
  16597. ClusterLocation is the location of the cluster
  16598. If not specified, it fetches information from the metadata server
  16599. type: string
  16600. clusterName:
  16601. description: |-
  16602. ClusterName is the name of the cluster
  16603. If not specified, it fetches information from the metadata server
  16604. type: string
  16605. clusterProjectID:
  16606. description: |-
  16607. ClusterProjectID is the project ID of the cluster
  16608. If not specified, it fetches information from the metadata server
  16609. type: string
  16610. serviceAccountRef:
  16611. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  16612. properties:
  16613. audiences:
  16614. description: |-
  16615. Audience specifies the `aud` claim for the service account token
  16616. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16617. then this audiences will be appended to the list
  16618. items:
  16619. type: string
  16620. type: array
  16621. name:
  16622. description: The name of the ServiceAccount resource being referred to.
  16623. maxLength: 253
  16624. minLength: 1
  16625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16626. type: string
  16627. namespace:
  16628. description: |-
  16629. Namespace of the resource being referred to.
  16630. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16631. maxLength: 63
  16632. minLength: 1
  16633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16634. type: string
  16635. required:
  16636. - name
  16637. type: object
  16638. required:
  16639. - serviceAccountRef
  16640. type: object
  16641. workloadIdentityFederation:
  16642. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  16643. properties:
  16644. audience:
  16645. description: |-
  16646. 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.
  16647. If specified, Audience found in the external account credential config will be overridden with the configured value.
  16648. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  16649. type: string
  16650. awsSecurityCredentials:
  16651. description: |-
  16652. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  16653. when using the AWS metadata server is not an option.
  16654. properties:
  16655. awsCredentialsSecretRef:
  16656. description: |-
  16657. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  16658. Secret should be created with below names for keys
  16659. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  16660. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  16661. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  16662. properties:
  16663. name:
  16664. description: name of the secret.
  16665. maxLength: 253
  16666. minLength: 1
  16667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16668. type: string
  16669. namespace:
  16670. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  16671. maxLength: 63
  16672. minLength: 1
  16673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16674. type: string
  16675. required:
  16676. - name
  16677. type: object
  16678. region:
  16679. description: region is for configuring the AWS region to be used.
  16680. example: ap-south-1
  16681. maxLength: 50
  16682. minLength: 1
  16683. pattern: ^[a-z0-9-]+$
  16684. type: string
  16685. required:
  16686. - awsCredentialsSecretRef
  16687. - region
  16688. type: object
  16689. credConfig:
  16690. description: |-
  16691. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  16692. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  16693. serviceAccountRef must be used by providing operators service account details.
  16694. properties:
  16695. key:
  16696. description: key name holding the external account credential config.
  16697. maxLength: 253
  16698. minLength: 1
  16699. pattern: ^[-._a-zA-Z0-9]+$
  16700. type: string
  16701. name:
  16702. description: name of the configmap.
  16703. maxLength: 253
  16704. minLength: 1
  16705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16706. type: string
  16707. namespace:
  16708. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  16709. maxLength: 63
  16710. minLength: 1
  16711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16712. type: string
  16713. required:
  16714. - key
  16715. - name
  16716. type: object
  16717. externalTokenEndpoint:
  16718. description: |-
  16719. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  16720. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  16721. URL is having the expected value.
  16722. type: string
  16723. serviceAccountRef:
  16724. description: |-
  16725. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  16726. when Kubernetes is configured as provider in workload identity pool.
  16727. properties:
  16728. audiences:
  16729. description: |-
  16730. Audience specifies the `aud` claim for the service account token
  16731. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16732. then this audiences will be appended to the list
  16733. items:
  16734. type: string
  16735. type: array
  16736. name:
  16737. description: The name of the ServiceAccount resource being referred to.
  16738. maxLength: 253
  16739. minLength: 1
  16740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16741. type: string
  16742. namespace:
  16743. description: |-
  16744. Namespace of the resource being referred to.
  16745. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16746. maxLength: 63
  16747. minLength: 1
  16748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16749. type: string
  16750. required:
  16751. - name
  16752. type: object
  16753. type: object
  16754. type: object
  16755. location:
  16756. description: Location optionally defines a location for a secret
  16757. type: string
  16758. projectID:
  16759. description: ProjectID project where secret is located
  16760. type: string
  16761. secretVersionSelectionPolicy:
  16762. default: LatestOrFail
  16763. description: |-
  16764. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  16765. when "latest" is disabled or destroyed.
  16766. Possible values are:
  16767. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  16768. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  16769. type: string
  16770. type: object
  16771. github:
  16772. description: |-
  16773. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  16774. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  16775. properties:
  16776. appID:
  16777. description: appID specifies the Github APP that will be used to authenticate the client
  16778. type: integer
  16779. auth:
  16780. description: auth configures how secret-manager authenticates with a Github instance.
  16781. properties:
  16782. privateKey:
  16783. description: |-
  16784. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16785. In some instances, `key` is a required field.
  16786. properties:
  16787. key:
  16788. description: |-
  16789. A key in the referenced Secret.
  16790. Some instances of this field may be defaulted, in others it may be required.
  16791. maxLength: 253
  16792. minLength: 1
  16793. pattern: ^[-._a-zA-Z0-9]+$
  16794. type: string
  16795. name:
  16796. description: The name of the Secret resource being referred to.
  16797. maxLength: 253
  16798. minLength: 1
  16799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16800. type: string
  16801. namespace:
  16802. description: |-
  16803. The namespace of the Secret resource being referred to.
  16804. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16805. maxLength: 63
  16806. minLength: 1
  16807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16808. type: string
  16809. type: object
  16810. required:
  16811. - privateKey
  16812. type: object
  16813. environment:
  16814. description: environment will be used to fetch secrets from a particular environment within a github repository
  16815. type: string
  16816. installationID:
  16817. description: installationID specifies the Github APP installation that will be used to authenticate the client
  16818. type: integer
  16819. orgSecretVisibility:
  16820. description: |-
  16821. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  16822. Valid values are "all" or "private".
  16823. When unset, new secrets are created with visibility "all" and existing secrets preserve
  16824. whatever visibility they already have in GitHub.
  16825. enum:
  16826. - all
  16827. - private
  16828. type: string
  16829. organization:
  16830. description: organization will be used to fetch secrets from the Github organization
  16831. type: string
  16832. repository:
  16833. description: repository will be used to fetch secrets from the Github repository within an organization
  16834. type: string
  16835. uploadURL:
  16836. description: Upload URL for enterprise instances. Default to URL.
  16837. type: string
  16838. url:
  16839. default: https://github.com/
  16840. description: URL configures the Github instance URL. Defaults to https://github.com/.
  16841. type: string
  16842. required:
  16843. - appID
  16844. - auth
  16845. - installationID
  16846. - organization
  16847. type: object
  16848. gitlab:
  16849. description: GitLab configures this store to sync secrets using GitLab Variables provider
  16850. properties:
  16851. auth:
  16852. description: Auth configures how secret-manager authenticates with a GitLab instance.
  16853. properties:
  16854. SecretRef:
  16855. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  16856. properties:
  16857. accessToken:
  16858. description: AccessToken is used for authentication.
  16859. properties:
  16860. key:
  16861. description: |-
  16862. A key in the referenced Secret.
  16863. Some instances of this field may be defaulted, in others it may be required.
  16864. maxLength: 253
  16865. minLength: 1
  16866. pattern: ^[-._a-zA-Z0-9]+$
  16867. type: string
  16868. name:
  16869. description: The name of the Secret resource being referred to.
  16870. maxLength: 253
  16871. minLength: 1
  16872. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16873. type: string
  16874. namespace:
  16875. description: |-
  16876. The namespace of the Secret resource being referred to.
  16877. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16878. maxLength: 63
  16879. minLength: 1
  16880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16881. type: string
  16882. type: object
  16883. type: object
  16884. required:
  16885. - SecretRef
  16886. type: object
  16887. caBundle:
  16888. description: |-
  16889. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16890. can be performed.
  16891. format: byte
  16892. type: string
  16893. caProvider:
  16894. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16895. properties:
  16896. key:
  16897. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16898. maxLength: 253
  16899. minLength: 1
  16900. pattern: ^[-._a-zA-Z0-9]+$
  16901. type: string
  16902. name:
  16903. description: The name of the object located at the provider type.
  16904. maxLength: 253
  16905. minLength: 1
  16906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16907. type: string
  16908. namespace:
  16909. description: |-
  16910. The namespace the Provider type is in.
  16911. Can only be defined when used in a ClusterSecretStore.
  16912. maxLength: 63
  16913. minLength: 1
  16914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16915. type: string
  16916. type:
  16917. description: The type of provider to use such as "Secret", or "ConfigMap".
  16918. enum:
  16919. - Secret
  16920. - ConfigMap
  16921. type: string
  16922. required:
  16923. - name
  16924. - type
  16925. type: object
  16926. environment:
  16927. 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)
  16928. type: string
  16929. groupIDs:
  16930. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  16931. items:
  16932. type: string
  16933. type: array
  16934. inheritFromGroups:
  16935. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  16936. type: boolean
  16937. projectID:
  16938. description: ProjectID specifies a project where secrets are located.
  16939. type: string
  16940. url:
  16941. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  16942. type: string
  16943. required:
  16944. - auth
  16945. type: object
  16946. ibm:
  16947. description: IBM configures this store to sync secrets using IBM Cloud provider
  16948. properties:
  16949. auth:
  16950. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  16951. maxProperties: 1
  16952. minProperties: 1
  16953. properties:
  16954. containerAuth:
  16955. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  16956. properties:
  16957. iamEndpoint:
  16958. type: string
  16959. profile:
  16960. description: the IBM Trusted Profile
  16961. type: string
  16962. tokenLocation:
  16963. description: Location the token is mounted on the pod
  16964. type: string
  16965. required:
  16966. - profile
  16967. type: object
  16968. secretRef:
  16969. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  16970. properties:
  16971. iamEndpoint:
  16972. description: The IAM endpoint used to obain a token
  16973. type: string
  16974. secretApiKeySecretRef:
  16975. description: The SecretAccessKey is used for authentication
  16976. properties:
  16977. key:
  16978. description: |-
  16979. A key in the referenced Secret.
  16980. Some instances of this field may be defaulted, in others it may be required.
  16981. maxLength: 253
  16982. minLength: 1
  16983. pattern: ^[-._a-zA-Z0-9]+$
  16984. type: string
  16985. name:
  16986. description: The name of the Secret resource being referred to.
  16987. maxLength: 253
  16988. minLength: 1
  16989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16990. type: string
  16991. namespace:
  16992. description: |-
  16993. The namespace of the Secret resource being referred to.
  16994. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16995. maxLength: 63
  16996. minLength: 1
  16997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16998. type: string
  16999. type: object
  17000. type: object
  17001. type: object
  17002. serviceUrl:
  17003. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  17004. type: string
  17005. required:
  17006. - auth
  17007. type: object
  17008. infisical:
  17009. description: Infisical configures this store to sync secrets using the Infisical provider
  17010. properties:
  17011. auth:
  17012. description: Auth configures how the Operator authenticates with the Infisical API
  17013. properties:
  17014. awsAuthCredentials:
  17015. description: AwsAuthCredentials represents the credentials for AWS authentication.
  17016. properties:
  17017. identityId:
  17018. description: |-
  17019. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17020. In some instances, `key` is a required field.
  17021. properties:
  17022. key:
  17023. description: |-
  17024. A key in the referenced Secret.
  17025. Some instances of this field may be defaulted, in others it may be required.
  17026. maxLength: 253
  17027. minLength: 1
  17028. pattern: ^[-._a-zA-Z0-9]+$
  17029. type: string
  17030. name:
  17031. description: The name of the Secret resource being referred to.
  17032. maxLength: 253
  17033. minLength: 1
  17034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17035. type: string
  17036. namespace:
  17037. description: |-
  17038. The namespace of the Secret resource being referred to.
  17039. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17040. maxLength: 63
  17041. minLength: 1
  17042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17043. type: string
  17044. type: object
  17045. required:
  17046. - identityId
  17047. type: object
  17048. azureAuthCredentials:
  17049. description: AzureAuthCredentials represents the credentials for Azure authentication.
  17050. properties:
  17051. identityId:
  17052. description: |-
  17053. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17054. In some instances, `key` is a required field.
  17055. properties:
  17056. key:
  17057. description: |-
  17058. A key in the referenced Secret.
  17059. Some instances of this field may be defaulted, in others it may be required.
  17060. maxLength: 253
  17061. minLength: 1
  17062. pattern: ^[-._a-zA-Z0-9]+$
  17063. type: string
  17064. name:
  17065. description: The name of the Secret resource being referred to.
  17066. maxLength: 253
  17067. minLength: 1
  17068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17069. type: string
  17070. namespace:
  17071. description: |-
  17072. The namespace of the Secret resource being referred to.
  17073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17074. maxLength: 63
  17075. minLength: 1
  17076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17077. type: string
  17078. type: object
  17079. resource:
  17080. description: |-
  17081. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17082. In some instances, `key` is a required field.
  17083. properties:
  17084. key:
  17085. description: |-
  17086. A key in the referenced Secret.
  17087. Some instances of this field may be defaulted, in others it may be required.
  17088. maxLength: 253
  17089. minLength: 1
  17090. pattern: ^[-._a-zA-Z0-9]+$
  17091. type: string
  17092. name:
  17093. description: The name of the Secret resource being referred to.
  17094. maxLength: 253
  17095. minLength: 1
  17096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17097. type: string
  17098. namespace:
  17099. description: |-
  17100. The namespace of the Secret resource being referred to.
  17101. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17102. maxLength: 63
  17103. minLength: 1
  17104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17105. type: string
  17106. type: object
  17107. required:
  17108. - identityId
  17109. type: object
  17110. gcpIamAuthCredentials:
  17111. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  17112. properties:
  17113. identityId:
  17114. description: |-
  17115. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17116. In some instances, `key` is a required field.
  17117. properties:
  17118. key:
  17119. description: |-
  17120. A key in the referenced Secret.
  17121. Some instances of this field may be defaulted, in others it may be required.
  17122. maxLength: 253
  17123. minLength: 1
  17124. pattern: ^[-._a-zA-Z0-9]+$
  17125. type: string
  17126. name:
  17127. description: The name of the Secret resource being referred to.
  17128. maxLength: 253
  17129. minLength: 1
  17130. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17131. type: string
  17132. namespace:
  17133. description: |-
  17134. The namespace of the Secret resource being referred to.
  17135. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17136. maxLength: 63
  17137. minLength: 1
  17138. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17139. type: string
  17140. type: object
  17141. serviceAccountKeyFilePath:
  17142. description: |-
  17143. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17144. In some instances, `key` is a required field.
  17145. properties:
  17146. key:
  17147. description: |-
  17148. A key in the referenced Secret.
  17149. Some instances of this field may be defaulted, in others it may be required.
  17150. maxLength: 253
  17151. minLength: 1
  17152. pattern: ^[-._a-zA-Z0-9]+$
  17153. type: string
  17154. name:
  17155. description: The name of the Secret resource being referred to.
  17156. maxLength: 253
  17157. minLength: 1
  17158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17159. type: string
  17160. namespace:
  17161. description: |-
  17162. The namespace of the Secret resource being referred to.
  17163. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17164. maxLength: 63
  17165. minLength: 1
  17166. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17167. type: string
  17168. type: object
  17169. required:
  17170. - identityId
  17171. - serviceAccountKeyFilePath
  17172. type: object
  17173. gcpIdTokenAuthCredentials:
  17174. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  17175. properties:
  17176. identityId:
  17177. description: |-
  17178. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17179. In some instances, `key` is a required field.
  17180. properties:
  17181. key:
  17182. description: |-
  17183. A key in the referenced Secret.
  17184. Some instances of this field may be defaulted, in others it may be required.
  17185. maxLength: 253
  17186. minLength: 1
  17187. pattern: ^[-._a-zA-Z0-9]+$
  17188. type: string
  17189. name:
  17190. description: The name of the Secret resource being referred to.
  17191. maxLength: 253
  17192. minLength: 1
  17193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17194. type: string
  17195. namespace:
  17196. description: |-
  17197. The namespace of the Secret resource being referred to.
  17198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17199. maxLength: 63
  17200. minLength: 1
  17201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17202. type: string
  17203. type: object
  17204. required:
  17205. - identityId
  17206. type: object
  17207. jwtAuthCredentials:
  17208. description: JwtAuthCredentials represents the credentials for JWT authentication.
  17209. properties:
  17210. identityId:
  17211. description: |-
  17212. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17213. In some instances, `key` is a required field.
  17214. properties:
  17215. key:
  17216. description: |-
  17217. A key in the referenced Secret.
  17218. Some instances of this field may be defaulted, in others it may be required.
  17219. maxLength: 253
  17220. minLength: 1
  17221. pattern: ^[-._a-zA-Z0-9]+$
  17222. type: string
  17223. name:
  17224. description: The name of the Secret resource being referred to.
  17225. maxLength: 253
  17226. minLength: 1
  17227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17228. type: string
  17229. namespace:
  17230. description: |-
  17231. The namespace of the Secret resource being referred to.
  17232. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17233. maxLength: 63
  17234. minLength: 1
  17235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17236. type: string
  17237. type: object
  17238. jwt:
  17239. description: |-
  17240. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17241. In some instances, `key` is a required field.
  17242. properties:
  17243. key:
  17244. description: |-
  17245. A key in the referenced Secret.
  17246. Some instances of this field may be defaulted, in others it may be required.
  17247. maxLength: 253
  17248. minLength: 1
  17249. pattern: ^[-._a-zA-Z0-9]+$
  17250. type: string
  17251. name:
  17252. description: The name of the Secret resource being referred to.
  17253. maxLength: 253
  17254. minLength: 1
  17255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17256. type: string
  17257. namespace:
  17258. description: |-
  17259. The namespace of the Secret resource being referred to.
  17260. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17261. maxLength: 63
  17262. minLength: 1
  17263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17264. type: string
  17265. type: object
  17266. required:
  17267. - identityId
  17268. - jwt
  17269. type: object
  17270. kubernetesAuthCredentials:
  17271. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  17272. properties:
  17273. identityId:
  17274. description: |-
  17275. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17276. In some instances, `key` is a required field.
  17277. properties:
  17278. key:
  17279. description: |-
  17280. A key in the referenced Secret.
  17281. Some instances of this field may be defaulted, in others it may be required.
  17282. maxLength: 253
  17283. minLength: 1
  17284. pattern: ^[-._a-zA-Z0-9]+$
  17285. type: string
  17286. name:
  17287. description: The name of the Secret resource being referred to.
  17288. maxLength: 253
  17289. minLength: 1
  17290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17291. type: string
  17292. namespace:
  17293. description: |-
  17294. The namespace of the Secret resource being referred to.
  17295. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17296. maxLength: 63
  17297. minLength: 1
  17298. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17299. type: string
  17300. type: object
  17301. serviceAccountTokenPath:
  17302. description: |-
  17303. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17304. In some instances, `key` is a required field.
  17305. properties:
  17306. key:
  17307. description: |-
  17308. A key in the referenced Secret.
  17309. Some instances of this field may be defaulted, in others it may be required.
  17310. maxLength: 253
  17311. minLength: 1
  17312. pattern: ^[-._a-zA-Z0-9]+$
  17313. type: string
  17314. name:
  17315. description: The name of the Secret resource being referred to.
  17316. maxLength: 253
  17317. minLength: 1
  17318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17319. type: string
  17320. namespace:
  17321. description: |-
  17322. The namespace of the Secret resource being referred to.
  17323. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17324. maxLength: 63
  17325. minLength: 1
  17326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17327. type: string
  17328. type: object
  17329. required:
  17330. - identityId
  17331. type: object
  17332. ldapAuthCredentials:
  17333. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  17334. properties:
  17335. identityId:
  17336. description: |-
  17337. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17338. In some instances, `key` is a required field.
  17339. properties:
  17340. key:
  17341. description: |-
  17342. A key in the referenced Secret.
  17343. Some instances of this field may be defaulted, in others it may be required.
  17344. maxLength: 253
  17345. minLength: 1
  17346. pattern: ^[-._a-zA-Z0-9]+$
  17347. type: string
  17348. name:
  17349. description: The name of the Secret resource being referred to.
  17350. maxLength: 253
  17351. minLength: 1
  17352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17353. type: string
  17354. namespace:
  17355. description: |-
  17356. The namespace of the Secret resource being referred to.
  17357. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17358. maxLength: 63
  17359. minLength: 1
  17360. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17361. type: string
  17362. type: object
  17363. ldapPassword:
  17364. description: |-
  17365. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17366. In some instances, `key` is a required field.
  17367. properties:
  17368. key:
  17369. description: |-
  17370. A key in the referenced Secret.
  17371. Some instances of this field may be defaulted, in others it may be required.
  17372. maxLength: 253
  17373. minLength: 1
  17374. pattern: ^[-._a-zA-Z0-9]+$
  17375. type: string
  17376. name:
  17377. description: The name of the Secret resource being referred to.
  17378. maxLength: 253
  17379. minLength: 1
  17380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17381. type: string
  17382. namespace:
  17383. description: |-
  17384. The namespace of the Secret resource being referred to.
  17385. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17386. maxLength: 63
  17387. minLength: 1
  17388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17389. type: string
  17390. type: object
  17391. ldapUsername:
  17392. description: |-
  17393. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17394. In some instances, `key` is a required field.
  17395. properties:
  17396. key:
  17397. description: |-
  17398. A key in the referenced Secret.
  17399. Some instances of this field may be defaulted, in others it may be required.
  17400. maxLength: 253
  17401. minLength: 1
  17402. pattern: ^[-._a-zA-Z0-9]+$
  17403. type: string
  17404. name:
  17405. description: The name of the Secret resource being referred to.
  17406. maxLength: 253
  17407. minLength: 1
  17408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17409. type: string
  17410. namespace:
  17411. description: |-
  17412. The namespace of the Secret resource being referred to.
  17413. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17414. maxLength: 63
  17415. minLength: 1
  17416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17417. type: string
  17418. type: object
  17419. required:
  17420. - identityId
  17421. - ldapPassword
  17422. - ldapUsername
  17423. type: object
  17424. ociAuthCredentials:
  17425. description: OciAuthCredentials represents the credentials for OCI authentication.
  17426. properties:
  17427. fingerprint:
  17428. description: |-
  17429. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17430. In some instances, `key` is a required field.
  17431. properties:
  17432. key:
  17433. description: |-
  17434. A key in the referenced Secret.
  17435. Some instances of this field may be defaulted, in others it may be required.
  17436. maxLength: 253
  17437. minLength: 1
  17438. pattern: ^[-._a-zA-Z0-9]+$
  17439. type: string
  17440. name:
  17441. description: The name of the Secret resource being referred to.
  17442. maxLength: 253
  17443. minLength: 1
  17444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17445. type: string
  17446. namespace:
  17447. description: |-
  17448. The namespace of the Secret resource being referred to.
  17449. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17450. maxLength: 63
  17451. minLength: 1
  17452. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17453. type: string
  17454. type: object
  17455. identityId:
  17456. description: |-
  17457. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17458. In some instances, `key` is a required field.
  17459. properties:
  17460. key:
  17461. description: |-
  17462. A key in the referenced Secret.
  17463. Some instances of this field may be defaulted, in others it may be required.
  17464. maxLength: 253
  17465. minLength: 1
  17466. pattern: ^[-._a-zA-Z0-9]+$
  17467. type: string
  17468. name:
  17469. description: The name of the Secret resource being referred to.
  17470. maxLength: 253
  17471. minLength: 1
  17472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17473. type: string
  17474. namespace:
  17475. description: |-
  17476. The namespace of the Secret resource being referred to.
  17477. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17478. maxLength: 63
  17479. minLength: 1
  17480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17481. type: string
  17482. type: object
  17483. privateKey:
  17484. description: |-
  17485. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17486. In some instances, `key` is a required field.
  17487. properties:
  17488. key:
  17489. description: |-
  17490. A key in the referenced Secret.
  17491. Some instances of this field may be defaulted, in others it may be required.
  17492. maxLength: 253
  17493. minLength: 1
  17494. pattern: ^[-._a-zA-Z0-9]+$
  17495. type: string
  17496. name:
  17497. description: The name of the Secret resource being referred to.
  17498. maxLength: 253
  17499. minLength: 1
  17500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17501. type: string
  17502. namespace:
  17503. description: |-
  17504. The namespace of the Secret resource being referred to.
  17505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17506. maxLength: 63
  17507. minLength: 1
  17508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17509. type: string
  17510. type: object
  17511. privateKeyPassphrase:
  17512. description: |-
  17513. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17514. In some instances, `key` is a required field.
  17515. properties:
  17516. key:
  17517. description: |-
  17518. A key in the referenced Secret.
  17519. Some instances of this field may be defaulted, in others it may be required.
  17520. maxLength: 253
  17521. minLength: 1
  17522. pattern: ^[-._a-zA-Z0-9]+$
  17523. type: string
  17524. name:
  17525. description: The name of the Secret resource being referred to.
  17526. maxLength: 253
  17527. minLength: 1
  17528. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17529. type: string
  17530. namespace:
  17531. description: |-
  17532. The namespace of the Secret resource being referred to.
  17533. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17534. maxLength: 63
  17535. minLength: 1
  17536. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17537. type: string
  17538. type: object
  17539. region:
  17540. description: |-
  17541. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17542. In some instances, `key` is a required field.
  17543. properties:
  17544. key:
  17545. description: |-
  17546. A key in the referenced Secret.
  17547. Some instances of this field may be defaulted, in others it may be required.
  17548. maxLength: 253
  17549. minLength: 1
  17550. pattern: ^[-._a-zA-Z0-9]+$
  17551. type: string
  17552. name:
  17553. description: The name of the Secret resource being referred to.
  17554. maxLength: 253
  17555. minLength: 1
  17556. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17557. type: string
  17558. namespace:
  17559. description: |-
  17560. The namespace of the Secret resource being referred to.
  17561. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17562. maxLength: 63
  17563. minLength: 1
  17564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17565. type: string
  17566. type: object
  17567. tenancyId:
  17568. description: |-
  17569. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17570. In some instances, `key` is a required field.
  17571. properties:
  17572. key:
  17573. description: |-
  17574. A key in the referenced Secret.
  17575. Some instances of this field may be defaulted, in others it may be required.
  17576. maxLength: 253
  17577. minLength: 1
  17578. pattern: ^[-._a-zA-Z0-9]+$
  17579. type: string
  17580. name:
  17581. description: The name of the Secret resource being referred to.
  17582. maxLength: 253
  17583. minLength: 1
  17584. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17585. type: string
  17586. namespace:
  17587. description: |-
  17588. The namespace of the Secret resource being referred to.
  17589. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17590. maxLength: 63
  17591. minLength: 1
  17592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17593. type: string
  17594. type: object
  17595. userId:
  17596. description: |-
  17597. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17598. In some instances, `key` is a required field.
  17599. properties:
  17600. key:
  17601. description: |-
  17602. A key in the referenced Secret.
  17603. Some instances of this field may be defaulted, in others it may be required.
  17604. maxLength: 253
  17605. minLength: 1
  17606. pattern: ^[-._a-zA-Z0-9]+$
  17607. type: string
  17608. name:
  17609. description: The name of the Secret resource being referred to.
  17610. maxLength: 253
  17611. minLength: 1
  17612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17613. type: string
  17614. namespace:
  17615. description: |-
  17616. The namespace of the Secret resource being referred to.
  17617. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17618. maxLength: 63
  17619. minLength: 1
  17620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17621. type: string
  17622. type: object
  17623. required:
  17624. - fingerprint
  17625. - identityId
  17626. - privateKey
  17627. - region
  17628. - tenancyId
  17629. - userId
  17630. type: object
  17631. tokenAuthCredentials:
  17632. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  17633. properties:
  17634. accessToken:
  17635. description: |-
  17636. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17637. In some instances, `key` is a required field.
  17638. properties:
  17639. key:
  17640. description: |-
  17641. A key in the referenced Secret.
  17642. Some instances of this field may be defaulted, in others it may be required.
  17643. maxLength: 253
  17644. minLength: 1
  17645. pattern: ^[-._a-zA-Z0-9]+$
  17646. type: string
  17647. name:
  17648. description: The name of the Secret resource being referred to.
  17649. maxLength: 253
  17650. minLength: 1
  17651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17652. type: string
  17653. namespace:
  17654. description: |-
  17655. The namespace of the Secret resource being referred to.
  17656. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17657. maxLength: 63
  17658. minLength: 1
  17659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17660. type: string
  17661. type: object
  17662. required:
  17663. - accessToken
  17664. type: object
  17665. universalAuthCredentials:
  17666. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  17667. properties:
  17668. clientId:
  17669. description: |-
  17670. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17671. In some instances, `key` is a required field.
  17672. properties:
  17673. key:
  17674. description: |-
  17675. A key in the referenced Secret.
  17676. Some instances of this field may be defaulted, in others it may be required.
  17677. maxLength: 253
  17678. minLength: 1
  17679. pattern: ^[-._a-zA-Z0-9]+$
  17680. type: string
  17681. name:
  17682. description: The name of the Secret resource being referred to.
  17683. maxLength: 253
  17684. minLength: 1
  17685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17686. type: string
  17687. namespace:
  17688. description: |-
  17689. The namespace of the Secret resource being referred to.
  17690. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17691. maxLength: 63
  17692. minLength: 1
  17693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17694. type: string
  17695. type: object
  17696. clientSecret:
  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. required:
  17725. - clientId
  17726. - clientSecret
  17727. type: object
  17728. type: object
  17729. caBundle:
  17730. description: |-
  17731. CABundle is a PEM-encoded CA certificate bundle used to validate
  17732. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  17733. format: byte
  17734. type: string
  17735. caProvider:
  17736. description: |-
  17737. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  17738. The certificate is used to validate the Infisical server's TLS certificate.
  17739. Mutually exclusive with CABundle.
  17740. properties:
  17741. key:
  17742. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17743. maxLength: 253
  17744. minLength: 1
  17745. pattern: ^[-._a-zA-Z0-9]+$
  17746. type: string
  17747. name:
  17748. description: The name of the object located at the provider type.
  17749. maxLength: 253
  17750. minLength: 1
  17751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17752. type: string
  17753. namespace:
  17754. description: |-
  17755. The namespace the Provider type is in.
  17756. Can only be defined when used in a ClusterSecretStore.
  17757. maxLength: 63
  17758. minLength: 1
  17759. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17760. type: string
  17761. type:
  17762. description: The type of provider to use such as "Secret", or "ConfigMap".
  17763. enum:
  17764. - Secret
  17765. - ConfigMap
  17766. type: string
  17767. required:
  17768. - name
  17769. - type
  17770. type: object
  17771. hostAPI:
  17772. default: https://app.infisical.com/api
  17773. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  17774. type: string
  17775. secretsScope:
  17776. description: SecretsScope defines the scope of the secrets within the workspace
  17777. properties:
  17778. environmentSlug:
  17779. description: EnvironmentSlug is the required slug identifier for the environment.
  17780. type: string
  17781. expandSecretReferences:
  17782. default: true
  17783. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  17784. type: boolean
  17785. projectSlug:
  17786. description: ProjectSlug is the required slug identifier for the project.
  17787. type: string
  17788. recursive:
  17789. default: false
  17790. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  17791. type: boolean
  17792. secretsPath:
  17793. default: /
  17794. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  17795. type: string
  17796. required:
  17797. - environmentSlug
  17798. - projectSlug
  17799. type: object
  17800. required:
  17801. - auth
  17802. - secretsScope
  17803. type: object
  17804. keepersecurity:
  17805. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  17806. properties:
  17807. authRef:
  17808. description: |-
  17809. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17810. In some instances, `key` is a required field.
  17811. properties:
  17812. key:
  17813. description: |-
  17814. A key in the referenced Secret.
  17815. Some instances of this field may be defaulted, in others it may be required.
  17816. maxLength: 253
  17817. minLength: 1
  17818. pattern: ^[-._a-zA-Z0-9]+$
  17819. type: string
  17820. name:
  17821. description: The name of the Secret resource being referred to.
  17822. maxLength: 253
  17823. minLength: 1
  17824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17825. type: string
  17826. namespace:
  17827. description: |-
  17828. The namespace of the Secret resource being referred to.
  17829. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17830. maxLength: 63
  17831. minLength: 1
  17832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17833. type: string
  17834. type: object
  17835. folderID:
  17836. type: string
  17837. required:
  17838. - authRef
  17839. - folderID
  17840. type: object
  17841. kubernetes:
  17842. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  17843. properties:
  17844. auth:
  17845. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  17846. maxProperties: 1
  17847. minProperties: 1
  17848. properties:
  17849. cert:
  17850. description: has both clientCert and clientKey as secretKeySelector
  17851. properties:
  17852. clientCert:
  17853. description: |-
  17854. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17855. In some instances, `key` is a required field.
  17856. properties:
  17857. key:
  17858. description: |-
  17859. A key in the referenced Secret.
  17860. Some instances of this field may be defaulted, in others it may be required.
  17861. maxLength: 253
  17862. minLength: 1
  17863. pattern: ^[-._a-zA-Z0-9]+$
  17864. type: string
  17865. name:
  17866. description: The name of the Secret resource being referred to.
  17867. maxLength: 253
  17868. minLength: 1
  17869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17870. type: string
  17871. namespace:
  17872. description: |-
  17873. The namespace of the Secret resource being referred to.
  17874. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17875. maxLength: 63
  17876. minLength: 1
  17877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17878. type: string
  17879. type: object
  17880. clientKey:
  17881. description: |-
  17882. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17883. In some instances, `key` is a required field.
  17884. properties:
  17885. key:
  17886. description: |-
  17887. A key in the referenced Secret.
  17888. Some instances of this field may be defaulted, in others it may be required.
  17889. maxLength: 253
  17890. minLength: 1
  17891. pattern: ^[-._a-zA-Z0-9]+$
  17892. type: string
  17893. name:
  17894. description: The name of the Secret resource being referred to.
  17895. maxLength: 253
  17896. minLength: 1
  17897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17898. type: string
  17899. namespace:
  17900. description: |-
  17901. The namespace of the Secret resource being referred to.
  17902. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17903. maxLength: 63
  17904. minLength: 1
  17905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17906. type: string
  17907. type: object
  17908. type: object
  17909. serviceAccount:
  17910. description: points to a service account that should be used for authentication
  17911. properties:
  17912. audiences:
  17913. description: |-
  17914. Audience specifies the `aud` claim for the service account token
  17915. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17916. then this audiences will be appended to the list
  17917. items:
  17918. type: string
  17919. type: array
  17920. name:
  17921. description: The name of the ServiceAccount resource being referred to.
  17922. maxLength: 253
  17923. minLength: 1
  17924. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17925. type: string
  17926. namespace:
  17927. description: |-
  17928. Namespace of the resource being referred to.
  17929. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17930. maxLength: 63
  17931. minLength: 1
  17932. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17933. type: string
  17934. required:
  17935. - name
  17936. type: object
  17937. token:
  17938. description: use static token to authenticate with
  17939. properties:
  17940. bearerToken:
  17941. description: |-
  17942. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17943. In some instances, `key` is a required field.
  17944. properties:
  17945. key:
  17946. description: |-
  17947. A key in the referenced Secret.
  17948. Some instances of this field may be defaulted, in others it may be required.
  17949. maxLength: 253
  17950. minLength: 1
  17951. pattern: ^[-._a-zA-Z0-9]+$
  17952. type: string
  17953. name:
  17954. description: The name of the Secret resource being referred to.
  17955. maxLength: 253
  17956. minLength: 1
  17957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17958. type: string
  17959. namespace:
  17960. description: |-
  17961. The namespace of the Secret resource being referred to.
  17962. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17963. maxLength: 63
  17964. minLength: 1
  17965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17966. type: string
  17967. type: object
  17968. type: object
  17969. type: object
  17970. authRef:
  17971. description: A reference to a secret that contains the auth information.
  17972. properties:
  17973. key:
  17974. description: |-
  17975. A key in the referenced Secret.
  17976. Some instances of this field may be defaulted, in others it may be required.
  17977. maxLength: 253
  17978. minLength: 1
  17979. pattern: ^[-._a-zA-Z0-9]+$
  17980. type: string
  17981. name:
  17982. description: The name of the Secret resource being referred to.
  17983. maxLength: 253
  17984. minLength: 1
  17985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17986. type: string
  17987. namespace:
  17988. description: |-
  17989. The namespace of the Secret resource being referred to.
  17990. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17991. maxLength: 63
  17992. minLength: 1
  17993. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17994. type: string
  17995. type: object
  17996. remoteNamespace:
  17997. default: default
  17998. description: Remote namespace to fetch the secrets from
  17999. maxLength: 63
  18000. minLength: 1
  18001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18002. type: string
  18003. server:
  18004. description: configures the Kubernetes server Address.
  18005. properties:
  18006. caBundle:
  18007. description: CABundle is a base64-encoded CA certificate
  18008. format: byte
  18009. type: string
  18010. caProvider:
  18011. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  18012. properties:
  18013. key:
  18014. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18015. maxLength: 253
  18016. minLength: 1
  18017. pattern: ^[-._a-zA-Z0-9]+$
  18018. type: string
  18019. name:
  18020. description: The name of the object located at the provider type.
  18021. maxLength: 253
  18022. minLength: 1
  18023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18024. type: string
  18025. namespace:
  18026. description: |-
  18027. The namespace the Provider type is in.
  18028. Can only be defined when used in a ClusterSecretStore.
  18029. maxLength: 63
  18030. minLength: 1
  18031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18032. type: string
  18033. type:
  18034. description: The type of provider to use such as "Secret", or "ConfigMap".
  18035. enum:
  18036. - Secret
  18037. - ConfigMap
  18038. type: string
  18039. required:
  18040. - name
  18041. - type
  18042. type: object
  18043. url:
  18044. default: kubernetes.default
  18045. description: configures the Kubernetes server Address.
  18046. type: string
  18047. type: object
  18048. type: object
  18049. nebiusmysterybox:
  18050. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  18051. properties:
  18052. apiDomain:
  18053. description: NebiusMysterybox API endpoint
  18054. type: string
  18055. auth:
  18056. description: Auth defines parameters to authenticate in MysteryBox
  18057. properties:
  18058. serviceAccountCredsSecretRef:
  18059. description: |-
  18060. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  18061. document with service account credentials used to get an IAM token.
  18062. Expected JSON structure:
  18063. {
  18064. "subject-credentials": {
  18065. "alg": "RS256",
  18066. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  18067. "kid": "<public-key-id>",
  18068. "iss": "<issuer-service-account-id>",
  18069. "sub": "<subject-service-account-id>"
  18070. }
  18071. }
  18072. properties:
  18073. key:
  18074. description: |-
  18075. A key in the referenced Secret.
  18076. Some instances of this field may be defaulted, in others it may be required.
  18077. maxLength: 253
  18078. minLength: 1
  18079. pattern: ^[-._a-zA-Z0-9]+$
  18080. type: string
  18081. name:
  18082. description: The name of the Secret resource being referred to.
  18083. maxLength: 253
  18084. minLength: 1
  18085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18086. type: string
  18087. namespace:
  18088. description: |-
  18089. The namespace of the Secret resource being referred to.
  18090. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18091. maxLength: 63
  18092. minLength: 1
  18093. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18094. type: string
  18095. type: object
  18096. tokenSecretRef:
  18097. description: Token authenticates with Nebius Mysterybox by presenting a token.
  18098. properties:
  18099. key:
  18100. description: |-
  18101. A key in the referenced Secret.
  18102. Some instances of this field may be defaulted, in others it may be required.
  18103. maxLength: 253
  18104. minLength: 1
  18105. pattern: ^[-._a-zA-Z0-9]+$
  18106. type: string
  18107. name:
  18108. description: The name of the Secret resource being referred to.
  18109. maxLength: 253
  18110. minLength: 1
  18111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18112. type: string
  18113. namespace:
  18114. description: |-
  18115. The namespace of the Secret resource being referred to.
  18116. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18117. maxLength: 63
  18118. minLength: 1
  18119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18120. type: string
  18121. type: object
  18122. type: object
  18123. x-kubernetes-validations:
  18124. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  18125. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  18126. caProvider:
  18127. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  18128. properties:
  18129. certSecretRef:
  18130. description: |-
  18131. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18132. In some instances, `key` is a required field.
  18133. properties:
  18134. key:
  18135. description: |-
  18136. A key in the referenced Secret.
  18137. Some instances of this field may be defaulted, in others it may be required.
  18138. maxLength: 253
  18139. minLength: 1
  18140. pattern: ^[-._a-zA-Z0-9]+$
  18141. type: string
  18142. name:
  18143. description: The name of the Secret resource being referred to.
  18144. maxLength: 253
  18145. minLength: 1
  18146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18147. type: string
  18148. namespace:
  18149. description: |-
  18150. The namespace of the Secret resource being referred to.
  18151. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18152. maxLength: 63
  18153. minLength: 1
  18154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18155. type: string
  18156. type: object
  18157. type: object
  18158. required:
  18159. - apiDomain
  18160. - auth
  18161. type: object
  18162. ngrok:
  18163. description: Ngrok configures this store to sync secrets using the ngrok provider.
  18164. properties:
  18165. apiUrl:
  18166. default: https://api.ngrok.com
  18167. description: APIURL is the URL of the ngrok API.
  18168. type: string
  18169. auth:
  18170. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  18171. maxProperties: 1
  18172. minProperties: 1
  18173. properties:
  18174. apiKey:
  18175. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  18176. properties:
  18177. secretRef:
  18178. description: SecretRef is a reference to a secret containing the ngrok API key.
  18179. properties:
  18180. key:
  18181. description: |-
  18182. A key in the referenced Secret.
  18183. Some instances of this field may be defaulted, in others it may be required.
  18184. maxLength: 253
  18185. minLength: 1
  18186. pattern: ^[-._a-zA-Z0-9]+$
  18187. type: string
  18188. name:
  18189. description: The name of the Secret resource being referred to.
  18190. maxLength: 253
  18191. minLength: 1
  18192. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18193. type: string
  18194. namespace:
  18195. description: |-
  18196. The namespace of the Secret resource being referred to.
  18197. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18198. maxLength: 63
  18199. minLength: 1
  18200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18201. type: string
  18202. type: object
  18203. type: object
  18204. type: object
  18205. vault:
  18206. description: Vault configures the ngrok vault to sync secrets with.
  18207. properties:
  18208. name:
  18209. description: Name is the name of the ngrok vault to sync secrets with.
  18210. type: string
  18211. required:
  18212. - name
  18213. type: object
  18214. required:
  18215. - auth
  18216. - vault
  18217. type: object
  18218. onboardbase:
  18219. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  18220. properties:
  18221. apiHost:
  18222. default: https://public.onboardbase.com/api/v1/
  18223. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  18224. type: string
  18225. auth:
  18226. description: Auth configures how the Operator authenticates with the Onboardbase API
  18227. properties:
  18228. apiKeyRef:
  18229. description: |-
  18230. OnboardbaseAPIKey is the APIKey generated by an admin account.
  18231. It is used to recognize and authorize access to a project and environment within onboardbase
  18232. properties:
  18233. key:
  18234. description: |-
  18235. A key in the referenced Secret.
  18236. Some instances of this field may be defaulted, in others it may be required.
  18237. maxLength: 253
  18238. minLength: 1
  18239. pattern: ^[-._a-zA-Z0-9]+$
  18240. type: string
  18241. name:
  18242. description: The name of the Secret resource being referred to.
  18243. maxLength: 253
  18244. minLength: 1
  18245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18246. type: string
  18247. namespace:
  18248. description: |-
  18249. The namespace of the Secret resource being referred to.
  18250. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18251. maxLength: 63
  18252. minLength: 1
  18253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18254. type: string
  18255. type: object
  18256. passcodeRef:
  18257. description: OnboardbasePasscode is the passcode attached to the API Key
  18258. properties:
  18259. key:
  18260. description: |-
  18261. A key in the referenced Secret.
  18262. Some instances of this field may be defaulted, in others it may be required.
  18263. maxLength: 253
  18264. minLength: 1
  18265. pattern: ^[-._a-zA-Z0-9]+$
  18266. type: string
  18267. name:
  18268. description: The name of the Secret resource being referred to.
  18269. maxLength: 253
  18270. minLength: 1
  18271. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18272. type: string
  18273. namespace:
  18274. description: |-
  18275. The namespace of the Secret resource being referred to.
  18276. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18277. maxLength: 63
  18278. minLength: 1
  18279. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18280. type: string
  18281. type: object
  18282. required:
  18283. - apiKeyRef
  18284. - passcodeRef
  18285. type: object
  18286. environment:
  18287. default: development
  18288. description: Environment is the name of an environmnent within a project to pull the secrets from
  18289. type: string
  18290. project:
  18291. default: development
  18292. description: Project is an onboardbase project that the secrets should be pulled from
  18293. type: string
  18294. required:
  18295. - apiHost
  18296. - auth
  18297. - environment
  18298. - project
  18299. type: object
  18300. onepassword:
  18301. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  18302. properties:
  18303. auth:
  18304. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  18305. properties:
  18306. secretRef:
  18307. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  18308. properties:
  18309. connectTokenSecretRef:
  18310. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  18311. properties:
  18312. key:
  18313. description: |-
  18314. A key in the referenced Secret.
  18315. Some instances of this field may be defaulted, in others it may be required.
  18316. maxLength: 253
  18317. minLength: 1
  18318. pattern: ^[-._a-zA-Z0-9]+$
  18319. type: string
  18320. name:
  18321. description: The name of the Secret resource being referred to.
  18322. maxLength: 253
  18323. minLength: 1
  18324. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18325. type: string
  18326. namespace:
  18327. description: |-
  18328. The namespace of the Secret resource being referred to.
  18329. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18330. maxLength: 63
  18331. minLength: 1
  18332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18333. type: string
  18334. type: object
  18335. required:
  18336. - connectTokenSecretRef
  18337. type: object
  18338. required:
  18339. - secretRef
  18340. type: object
  18341. connectHost:
  18342. description: ConnectHost defines the OnePassword Connect Server to connect to
  18343. type: string
  18344. vaults:
  18345. additionalProperties:
  18346. type: integer
  18347. description: Vaults defines which OnePassword vaults to search in which order
  18348. type: object
  18349. required:
  18350. - auth
  18351. - connectHost
  18352. - vaults
  18353. type: object
  18354. onepasswordSDK:
  18355. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  18356. properties:
  18357. auth:
  18358. description: Auth defines the information necessary to authenticate against OnePassword API.
  18359. properties:
  18360. serviceAccountSecretRef:
  18361. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  18362. properties:
  18363. key:
  18364. description: |-
  18365. A key in the referenced Secret.
  18366. Some instances of this field may be defaulted, in others it may be required.
  18367. maxLength: 253
  18368. minLength: 1
  18369. pattern: ^[-._a-zA-Z0-9]+$
  18370. type: string
  18371. name:
  18372. description: The name of the Secret resource being referred to.
  18373. maxLength: 253
  18374. minLength: 1
  18375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18376. type: string
  18377. namespace:
  18378. description: |-
  18379. The namespace of the Secret resource being referred to.
  18380. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18381. maxLength: 63
  18382. minLength: 1
  18383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18384. type: string
  18385. type: object
  18386. required:
  18387. - serviceAccountSecretRef
  18388. type: object
  18389. cache:
  18390. description: |-
  18391. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  18392. When enabled, secrets are cached with the specified TTL.
  18393. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  18394. If omitted, caching is disabled (default).
  18395. cache: {} is a valid option to set.
  18396. properties:
  18397. maxSize:
  18398. default: 100
  18399. description: |-
  18400. MaxSize is the maximum number of secrets to cache.
  18401. When the cache is full, least-recently-used entries are evicted.
  18402. minimum: 1
  18403. type: integer
  18404. ttl:
  18405. default: 5m
  18406. description: |-
  18407. TTL is the time-to-live for cached secrets.
  18408. Format: duration string (e.g., "5m", "1h", "30s")
  18409. type: string
  18410. type: object
  18411. integrationInfo:
  18412. description: |-
  18413. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18414. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18415. properties:
  18416. name:
  18417. default: 1Password SDK
  18418. description: Name defaults to "1Password SDK".
  18419. type: string
  18420. version:
  18421. default: v1.0.0
  18422. description: Version defaults to "v1.0.0".
  18423. type: string
  18424. type: object
  18425. vault:
  18426. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18427. type: string
  18428. required:
  18429. - auth
  18430. - vault
  18431. type: object
  18432. oracle:
  18433. description: Oracle configures this store to sync secrets using Oracle Vault provider
  18434. properties:
  18435. auth:
  18436. description: |-
  18437. Auth configures how secret-manager authenticates with the Oracle Vault.
  18438. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  18439. properties:
  18440. secretRef:
  18441. description: SecretRef to pass through sensitive information.
  18442. properties:
  18443. fingerprint:
  18444. description: Fingerprint is the fingerprint of the API private key.
  18445. properties:
  18446. key:
  18447. description: |-
  18448. A key in the referenced Secret.
  18449. Some instances of this field may be defaulted, in others it may be required.
  18450. maxLength: 253
  18451. minLength: 1
  18452. pattern: ^[-._a-zA-Z0-9]+$
  18453. type: string
  18454. name:
  18455. description: The name of the Secret resource being referred to.
  18456. maxLength: 253
  18457. minLength: 1
  18458. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18459. type: string
  18460. namespace:
  18461. description: |-
  18462. The namespace of the Secret resource being referred to.
  18463. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18464. maxLength: 63
  18465. minLength: 1
  18466. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18467. type: string
  18468. type: object
  18469. privatekey:
  18470. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  18471. properties:
  18472. key:
  18473. description: |-
  18474. A key in the referenced Secret.
  18475. Some instances of this field may be defaulted, in others it may be required.
  18476. maxLength: 253
  18477. minLength: 1
  18478. pattern: ^[-._a-zA-Z0-9]+$
  18479. type: string
  18480. name:
  18481. description: The name of the Secret resource being referred to.
  18482. maxLength: 253
  18483. minLength: 1
  18484. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18485. type: string
  18486. namespace:
  18487. description: |-
  18488. The namespace of the Secret resource being referred to.
  18489. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18490. maxLength: 63
  18491. minLength: 1
  18492. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18493. type: string
  18494. type: object
  18495. required:
  18496. - fingerprint
  18497. - privatekey
  18498. type: object
  18499. tenancy:
  18500. description: Tenancy is the tenancy OCID where user is located.
  18501. type: string
  18502. user:
  18503. description: User is an access OCID specific to the account.
  18504. type: string
  18505. required:
  18506. - secretRef
  18507. - tenancy
  18508. - user
  18509. type: object
  18510. compartment:
  18511. description: |-
  18512. Compartment is the vault compartment OCID.
  18513. Required for PushSecret
  18514. type: string
  18515. encryptionKey:
  18516. description: |-
  18517. EncryptionKey is the OCID of the encryption key within the vault.
  18518. Required for PushSecret
  18519. type: string
  18520. principalType:
  18521. description: |-
  18522. The type of principal to use for authentication. If left blank, the Auth struct will
  18523. determine the principal type. This optional field must be specified if using
  18524. workload identity.
  18525. enum:
  18526. - ""
  18527. - UserPrincipal
  18528. - InstancePrincipal
  18529. - Workload
  18530. type: string
  18531. region:
  18532. description: Region is the region where vault is located.
  18533. type: string
  18534. serviceAccountRef:
  18535. description: |-
  18536. ServiceAccountRef specified the service account
  18537. that should be used when authenticating with WorkloadIdentity.
  18538. properties:
  18539. audiences:
  18540. description: |-
  18541. Audience specifies the `aud` claim for the service account token
  18542. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18543. then this audiences will be appended to the list
  18544. items:
  18545. type: string
  18546. type: array
  18547. name:
  18548. description: The name of the ServiceAccount resource being referred to.
  18549. maxLength: 253
  18550. minLength: 1
  18551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18552. type: string
  18553. namespace:
  18554. description: |-
  18555. Namespace of the resource being referred to.
  18556. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18557. maxLength: 63
  18558. minLength: 1
  18559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18560. type: string
  18561. required:
  18562. - name
  18563. type: object
  18564. vault:
  18565. description: Vault is the vault's OCID of the specific vault where secret is located.
  18566. type: string
  18567. required:
  18568. - region
  18569. - vault
  18570. type: object
  18571. ovh:
  18572. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  18573. properties:
  18574. auth:
  18575. description: Authentication method (mtls or token).
  18576. properties:
  18577. mtls:
  18578. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  18579. properties:
  18580. caBundle:
  18581. format: byte
  18582. type: string
  18583. caProvider:
  18584. description: |-
  18585. CAProvider provides a custom certificate authority for accessing the provider's store.
  18586. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  18587. properties:
  18588. key:
  18589. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18590. maxLength: 253
  18591. minLength: 1
  18592. pattern: ^[-._a-zA-Z0-9]+$
  18593. type: string
  18594. name:
  18595. description: The name of the object located at the provider type.
  18596. maxLength: 253
  18597. minLength: 1
  18598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18599. type: string
  18600. namespace:
  18601. description: |-
  18602. The namespace the Provider type is in.
  18603. Can only be defined when used in a ClusterSecretStore.
  18604. maxLength: 63
  18605. minLength: 1
  18606. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18607. type: string
  18608. type:
  18609. description: The type of provider to use such as "Secret", or "ConfigMap".
  18610. enum:
  18611. - Secret
  18612. - ConfigMap
  18613. type: string
  18614. required:
  18615. - name
  18616. - type
  18617. type: object
  18618. certSecretRef:
  18619. description: |-
  18620. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18621. In some instances, `key` is a required field.
  18622. properties:
  18623. key:
  18624. description: |-
  18625. A key in the referenced Secret.
  18626. Some instances of this field may be defaulted, in others it may be required.
  18627. maxLength: 253
  18628. minLength: 1
  18629. pattern: ^[-._a-zA-Z0-9]+$
  18630. type: string
  18631. name:
  18632. description: The name of the Secret resource being referred to.
  18633. maxLength: 253
  18634. minLength: 1
  18635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18636. type: string
  18637. namespace:
  18638. description: |-
  18639. The namespace of the Secret resource being referred to.
  18640. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18641. maxLength: 63
  18642. minLength: 1
  18643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18644. type: string
  18645. type: object
  18646. keySecretRef:
  18647. description: |-
  18648. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18649. In some instances, `key` is a required field.
  18650. properties:
  18651. key:
  18652. description: |-
  18653. A key in the referenced Secret.
  18654. Some instances of this field may be defaulted, in others it may be required.
  18655. maxLength: 253
  18656. minLength: 1
  18657. pattern: ^[-._a-zA-Z0-9]+$
  18658. type: string
  18659. name:
  18660. description: The name of the Secret resource being referred to.
  18661. maxLength: 253
  18662. minLength: 1
  18663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18664. type: string
  18665. namespace:
  18666. description: |-
  18667. The namespace of the Secret resource being referred to.
  18668. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18669. maxLength: 63
  18670. minLength: 1
  18671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18672. type: string
  18673. type: object
  18674. required:
  18675. - certSecretRef
  18676. - keySecretRef
  18677. type: object
  18678. token:
  18679. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  18680. properties:
  18681. tokenSecretRef:
  18682. description: |-
  18683. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18684. In some instances, `key` is a required field.
  18685. properties:
  18686. key:
  18687. description: |-
  18688. A key in the referenced Secret.
  18689. Some instances of this field may be defaulted, in others it may be required.
  18690. maxLength: 253
  18691. minLength: 1
  18692. pattern: ^[-._a-zA-Z0-9]+$
  18693. type: string
  18694. name:
  18695. description: The name of the Secret resource being referred to.
  18696. maxLength: 253
  18697. minLength: 1
  18698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18699. type: string
  18700. namespace:
  18701. description: |-
  18702. The namespace of the Secret resource being referred to.
  18703. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18704. maxLength: 63
  18705. minLength: 1
  18706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18707. type: string
  18708. type: object
  18709. required:
  18710. - tokenSecretRef
  18711. type: object
  18712. type: object
  18713. casRequired:
  18714. description: 'Enables or disables check-and-set (CAS) (default: false).'
  18715. type: boolean
  18716. okmsTimeout:
  18717. default: 30
  18718. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  18719. format: int32
  18720. minimum: 1
  18721. type: integer
  18722. okmsid:
  18723. description: specifies the OKMS ID.
  18724. type: string
  18725. server:
  18726. description: specifies the OKMS server endpoint.
  18727. type: string
  18728. required:
  18729. - auth
  18730. - okmsid
  18731. - server
  18732. type: object
  18733. passbolt:
  18734. description: |-
  18735. PassboltProvider provides access to Passbolt secrets manager.
  18736. See: https://www.passbolt.com.
  18737. properties:
  18738. auth:
  18739. description: Auth defines the information necessary to authenticate against Passbolt Server
  18740. properties:
  18741. passwordSecretRef:
  18742. description: |-
  18743. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18744. In some instances, `key` is a required field.
  18745. properties:
  18746. key:
  18747. description: |-
  18748. A key in the referenced Secret.
  18749. Some instances of this field may be defaulted, in others it may be required.
  18750. maxLength: 253
  18751. minLength: 1
  18752. pattern: ^[-._a-zA-Z0-9]+$
  18753. type: string
  18754. name:
  18755. description: The name of the Secret resource being referred to.
  18756. maxLength: 253
  18757. minLength: 1
  18758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18759. type: string
  18760. namespace:
  18761. description: |-
  18762. The namespace of the Secret resource being referred to.
  18763. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18764. maxLength: 63
  18765. minLength: 1
  18766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18767. type: string
  18768. type: object
  18769. privateKeySecretRef:
  18770. description: |-
  18771. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18772. In some instances, `key` is a required field.
  18773. properties:
  18774. key:
  18775. description: |-
  18776. A key in the referenced Secret.
  18777. Some instances of this field may be defaulted, in others it may be required.
  18778. maxLength: 253
  18779. minLength: 1
  18780. pattern: ^[-._a-zA-Z0-9]+$
  18781. type: string
  18782. name:
  18783. description: The name of the Secret resource being referred to.
  18784. maxLength: 253
  18785. minLength: 1
  18786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18787. type: string
  18788. namespace:
  18789. description: |-
  18790. The namespace of the Secret resource being referred to.
  18791. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18792. maxLength: 63
  18793. minLength: 1
  18794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18795. type: string
  18796. type: object
  18797. required:
  18798. - passwordSecretRef
  18799. - privateKeySecretRef
  18800. type: object
  18801. host:
  18802. description: Host defines the Passbolt Server to connect to
  18803. type: string
  18804. required:
  18805. - auth
  18806. - host
  18807. type: object
  18808. passworddepot:
  18809. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  18810. properties:
  18811. auth:
  18812. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  18813. properties:
  18814. secretRef:
  18815. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  18816. properties:
  18817. credentials:
  18818. description: Username / Password is used for authentication.
  18819. properties:
  18820. key:
  18821. description: |-
  18822. A key in the referenced Secret.
  18823. Some instances of this field may be defaulted, in others it may be required.
  18824. maxLength: 253
  18825. minLength: 1
  18826. pattern: ^[-._a-zA-Z0-9]+$
  18827. type: string
  18828. name:
  18829. description: The name of the Secret resource being referred to.
  18830. maxLength: 253
  18831. minLength: 1
  18832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18833. type: string
  18834. namespace:
  18835. description: |-
  18836. The namespace of the Secret resource being referred to.
  18837. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18838. maxLength: 63
  18839. minLength: 1
  18840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18841. type: string
  18842. type: object
  18843. type: object
  18844. required:
  18845. - secretRef
  18846. type: object
  18847. database:
  18848. description: Database to use as source
  18849. type: string
  18850. host:
  18851. description: URL configures the Password Depot instance URL.
  18852. type: string
  18853. required:
  18854. - auth
  18855. - database
  18856. - host
  18857. type: object
  18858. previder:
  18859. description: Previder configures this store to sync secrets using the Previder provider
  18860. properties:
  18861. auth:
  18862. description: PreviderAuth contains a secretRef for credentials.
  18863. properties:
  18864. secretRef:
  18865. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  18866. properties:
  18867. accessToken:
  18868. description: The AccessToken is used for authentication
  18869. properties:
  18870. key:
  18871. description: |-
  18872. A key in the referenced Secret.
  18873. Some instances of this field may be defaulted, in others it may be required.
  18874. maxLength: 253
  18875. minLength: 1
  18876. pattern: ^[-._a-zA-Z0-9]+$
  18877. type: string
  18878. name:
  18879. description: The name of the Secret resource being referred to.
  18880. maxLength: 253
  18881. minLength: 1
  18882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18883. type: string
  18884. namespace:
  18885. description: |-
  18886. The namespace of the Secret resource being referred to.
  18887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18888. maxLength: 63
  18889. minLength: 1
  18890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18891. type: string
  18892. type: object
  18893. required:
  18894. - accessToken
  18895. type: object
  18896. type: object
  18897. baseUri:
  18898. type: string
  18899. required:
  18900. - auth
  18901. type: object
  18902. pulumi:
  18903. description: Pulumi configures this store to sync secrets using the Pulumi provider
  18904. properties:
  18905. accessToken:
  18906. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  18907. properties:
  18908. secretRef:
  18909. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18910. properties:
  18911. key:
  18912. description: |-
  18913. A key in the referenced Secret.
  18914. Some instances of this field may be defaulted, in others it may be required.
  18915. maxLength: 253
  18916. minLength: 1
  18917. pattern: ^[-._a-zA-Z0-9]+$
  18918. type: string
  18919. name:
  18920. description: The name of the Secret resource being referred to.
  18921. maxLength: 253
  18922. minLength: 1
  18923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18924. type: string
  18925. namespace:
  18926. description: |-
  18927. The namespace of the Secret resource being referred to.
  18928. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18929. maxLength: 63
  18930. minLength: 1
  18931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18932. type: string
  18933. type: object
  18934. type: object
  18935. apiUrl:
  18936. default: https://api.pulumi.com/api/esc
  18937. description: APIURL is the URL of the Pulumi API.
  18938. type: string
  18939. environment:
  18940. description: |-
  18941. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  18942. dynamically retrieved values from supported providers including all major clouds,
  18943. and other Pulumi ESC environments.
  18944. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  18945. type: string
  18946. organization:
  18947. description: |-
  18948. Organization are a space to collaborate on shared projects and stacks.
  18949. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  18950. type: string
  18951. project:
  18952. description: Project is the name of the Pulumi ESC project the environment belongs to.
  18953. type: string
  18954. required:
  18955. - accessToken
  18956. - environment
  18957. - organization
  18958. - project
  18959. type: object
  18960. scaleway:
  18961. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  18962. properties:
  18963. accessKey:
  18964. description: AccessKey is the non-secret part of the api key.
  18965. properties:
  18966. secretRef:
  18967. description: SecretRef references a key in a secret that will be used as value.
  18968. properties:
  18969. key:
  18970. description: |-
  18971. A key in the referenced Secret.
  18972. Some instances of this field may be defaulted, in others it may be required.
  18973. maxLength: 253
  18974. minLength: 1
  18975. pattern: ^[-._a-zA-Z0-9]+$
  18976. type: string
  18977. name:
  18978. description: The name of the Secret resource being referred to.
  18979. maxLength: 253
  18980. minLength: 1
  18981. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18982. type: string
  18983. namespace:
  18984. description: |-
  18985. The namespace of the Secret resource being referred to.
  18986. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18987. maxLength: 63
  18988. minLength: 1
  18989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18990. type: string
  18991. type: object
  18992. value:
  18993. description: Value can be specified directly to set a value without using a secret.
  18994. type: string
  18995. type: object
  18996. apiUrl:
  18997. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  18998. type: string
  18999. projectId:
  19000. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  19001. type: string
  19002. region:
  19003. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  19004. type: string
  19005. secretKey:
  19006. description: SecretKey is the non-secret part of the api key.
  19007. properties:
  19008. secretRef:
  19009. description: SecretRef references a key in a secret that will be used as value.
  19010. properties:
  19011. key:
  19012. description: |-
  19013. A key in the referenced Secret.
  19014. Some instances of this field may be defaulted, in others it may be required.
  19015. maxLength: 253
  19016. minLength: 1
  19017. pattern: ^[-._a-zA-Z0-9]+$
  19018. type: string
  19019. name:
  19020. description: The name of the Secret resource being referred to.
  19021. maxLength: 253
  19022. minLength: 1
  19023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19024. type: string
  19025. namespace:
  19026. description: |-
  19027. The namespace of the Secret resource being referred to.
  19028. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19029. maxLength: 63
  19030. minLength: 1
  19031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19032. type: string
  19033. type: object
  19034. value:
  19035. description: Value can be specified directly to set a value without using a secret.
  19036. type: string
  19037. type: object
  19038. required:
  19039. - accessKey
  19040. - projectId
  19041. - region
  19042. - secretKey
  19043. type: object
  19044. secretserver:
  19045. description: |-
  19046. SecretServer configures this store to sync secrets using SecretServer provider
  19047. https://docs.delinea.com/online-help/secret-server/start.htm
  19048. properties:
  19049. caBundle:
  19050. description: |-
  19051. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  19052. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  19053. are used to validate the TLS connection.
  19054. format: byte
  19055. type: string
  19056. caProvider:
  19057. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  19058. properties:
  19059. key:
  19060. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19061. maxLength: 253
  19062. minLength: 1
  19063. pattern: ^[-._a-zA-Z0-9]+$
  19064. type: string
  19065. name:
  19066. description: The name of the object located at the provider type.
  19067. maxLength: 253
  19068. minLength: 1
  19069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19070. type: string
  19071. namespace:
  19072. description: |-
  19073. The namespace the Provider type is in.
  19074. Can only be defined when used in a ClusterSecretStore.
  19075. maxLength: 63
  19076. minLength: 1
  19077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19078. type: string
  19079. type:
  19080. description: The type of provider to use such as "Secret", or "ConfigMap".
  19081. enum:
  19082. - Secret
  19083. - ConfigMap
  19084. type: string
  19085. required:
  19086. - name
  19087. - type
  19088. type: object
  19089. domain:
  19090. description: Domain is the secret server domain.
  19091. type: string
  19092. password:
  19093. description: Password is the secret server account password.
  19094. properties:
  19095. secretRef:
  19096. description: SecretRef references a key in a secret that will be used as value.
  19097. properties:
  19098. key:
  19099. description: |-
  19100. A key in the referenced Secret.
  19101. Some instances of this field may be defaulted, in others it may be required.
  19102. maxLength: 253
  19103. minLength: 1
  19104. pattern: ^[-._a-zA-Z0-9]+$
  19105. type: string
  19106. name:
  19107. description: The name of the Secret resource being referred to.
  19108. maxLength: 253
  19109. minLength: 1
  19110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19111. type: string
  19112. namespace:
  19113. description: |-
  19114. The namespace of the Secret resource being referred to.
  19115. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19116. maxLength: 63
  19117. minLength: 1
  19118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19119. type: string
  19120. type: object
  19121. value:
  19122. description: Value can be specified directly to set a value without using a secret.
  19123. type: string
  19124. type: object
  19125. serverURL:
  19126. description: |-
  19127. ServerURL
  19128. URL to your secret server installation
  19129. type: string
  19130. username:
  19131. description: Username is the secret server account username.
  19132. properties:
  19133. secretRef:
  19134. description: SecretRef references a key in a secret that will be used as value.
  19135. properties:
  19136. key:
  19137. description: |-
  19138. A key in the referenced Secret.
  19139. Some instances of this field may be defaulted, in others it may be required.
  19140. maxLength: 253
  19141. minLength: 1
  19142. pattern: ^[-._a-zA-Z0-9]+$
  19143. type: string
  19144. name:
  19145. description: The name of the Secret resource being referred to.
  19146. maxLength: 253
  19147. minLength: 1
  19148. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19149. type: string
  19150. namespace:
  19151. description: |-
  19152. The namespace of the Secret resource being referred to.
  19153. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19154. maxLength: 63
  19155. minLength: 1
  19156. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19157. type: string
  19158. type: object
  19159. value:
  19160. description: Value can be specified directly to set a value without using a secret.
  19161. type: string
  19162. type: object
  19163. required:
  19164. - password
  19165. - serverURL
  19166. - username
  19167. type: object
  19168. senhasegura:
  19169. description: Senhasegura configures this store to sync secrets using senhasegura provider
  19170. properties:
  19171. auth:
  19172. description: Auth defines parameters to authenticate in senhasegura
  19173. properties:
  19174. clientId:
  19175. type: string
  19176. clientSecretSecretRef:
  19177. description: |-
  19178. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19179. In some instances, `key` is a required field.
  19180. properties:
  19181. key:
  19182. description: |-
  19183. A key in the referenced Secret.
  19184. Some instances of this field may be defaulted, in others it may be required.
  19185. maxLength: 253
  19186. minLength: 1
  19187. pattern: ^[-._a-zA-Z0-9]+$
  19188. type: string
  19189. name:
  19190. description: The name of the Secret resource being referred to.
  19191. maxLength: 253
  19192. minLength: 1
  19193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19194. type: string
  19195. namespace:
  19196. description: |-
  19197. The namespace of the Secret resource being referred to.
  19198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19199. maxLength: 63
  19200. minLength: 1
  19201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19202. type: string
  19203. type: object
  19204. required:
  19205. - clientId
  19206. - clientSecretSecretRef
  19207. type: object
  19208. ignoreSslCertificate:
  19209. default: false
  19210. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  19211. type: boolean
  19212. module:
  19213. description: Module defines which senhasegura module should be used to get secrets
  19214. type: string
  19215. url:
  19216. description: URL of senhasegura
  19217. type: string
  19218. required:
  19219. - auth
  19220. - module
  19221. - url
  19222. type: object
  19223. vault:
  19224. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  19225. properties:
  19226. auth:
  19227. description: Auth configures how secret-manager authenticates with the Vault server.
  19228. properties:
  19229. appRole:
  19230. description: |-
  19231. AppRole authenticates with Vault using the App Role auth mechanism,
  19232. with the role and secret stored in a Kubernetes Secret resource.
  19233. properties:
  19234. path:
  19235. default: approle
  19236. description: |-
  19237. Path where the App Role authentication backend is mounted
  19238. in Vault, e.g: "approle"
  19239. type: string
  19240. roleId:
  19241. description: |-
  19242. RoleID configured in the App Role authentication backend when setting
  19243. up the authentication backend in Vault.
  19244. type: string
  19245. roleRef:
  19246. description: |-
  19247. Reference to a key in a Secret that contains the App Role ID used
  19248. to authenticate with Vault.
  19249. The `key` field must be specified and denotes which entry within the Secret
  19250. resource is used as the app role id.
  19251. properties:
  19252. key:
  19253. description: |-
  19254. A key in the referenced Secret.
  19255. Some instances of this field may be defaulted, in others it may be required.
  19256. maxLength: 253
  19257. minLength: 1
  19258. pattern: ^[-._a-zA-Z0-9]+$
  19259. type: string
  19260. name:
  19261. description: The name of the Secret resource being referred to.
  19262. maxLength: 253
  19263. minLength: 1
  19264. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19265. type: string
  19266. namespace:
  19267. description: |-
  19268. The namespace of the Secret resource being referred to.
  19269. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19270. maxLength: 63
  19271. minLength: 1
  19272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19273. type: string
  19274. type: object
  19275. secretRef:
  19276. description: |-
  19277. Reference to a key in a Secret that contains the App Role secret used
  19278. to authenticate with Vault.
  19279. The `key` field must be specified and denotes which entry within the Secret
  19280. resource is used as the app role secret.
  19281. properties:
  19282. key:
  19283. description: |-
  19284. A key in the referenced Secret.
  19285. Some instances of this field may be defaulted, in others it may be required.
  19286. maxLength: 253
  19287. minLength: 1
  19288. pattern: ^[-._a-zA-Z0-9]+$
  19289. type: string
  19290. name:
  19291. description: The name of the Secret resource being referred to.
  19292. maxLength: 253
  19293. minLength: 1
  19294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19295. type: string
  19296. namespace:
  19297. description: |-
  19298. The namespace of the Secret resource being referred to.
  19299. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19300. maxLength: 63
  19301. minLength: 1
  19302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19303. type: string
  19304. type: object
  19305. required:
  19306. - path
  19307. - secretRef
  19308. type: object
  19309. cert:
  19310. description: |-
  19311. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  19312. Cert authentication method
  19313. properties:
  19314. clientCert:
  19315. description: |-
  19316. ClientCert is a certificate to authenticate using the Cert Vault
  19317. authentication method
  19318. properties:
  19319. key:
  19320. description: |-
  19321. A key in the referenced Secret.
  19322. Some instances of this field may be defaulted, in others it may be required.
  19323. maxLength: 253
  19324. minLength: 1
  19325. pattern: ^[-._a-zA-Z0-9]+$
  19326. type: string
  19327. name:
  19328. description: The name of the Secret resource being referred to.
  19329. maxLength: 253
  19330. minLength: 1
  19331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19332. type: string
  19333. namespace:
  19334. description: |-
  19335. The namespace of the Secret resource being referred to.
  19336. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19337. maxLength: 63
  19338. minLength: 1
  19339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19340. type: string
  19341. type: object
  19342. path:
  19343. default: cert
  19344. description: |-
  19345. Path where the Certificate authentication backend is mounted
  19346. in Vault, e.g: "cert"
  19347. type: string
  19348. secretRef:
  19349. description: |-
  19350. SecretRef to a key in a Secret resource containing client private key to
  19351. authenticate with Vault using the Cert authentication method
  19352. properties:
  19353. key:
  19354. description: |-
  19355. A key in the referenced Secret.
  19356. Some instances of this field may be defaulted, in others it may be required.
  19357. maxLength: 253
  19358. minLength: 1
  19359. pattern: ^[-._a-zA-Z0-9]+$
  19360. type: string
  19361. name:
  19362. description: The name of the Secret resource being referred to.
  19363. maxLength: 253
  19364. minLength: 1
  19365. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19366. type: string
  19367. namespace:
  19368. description: |-
  19369. The namespace of the Secret resource being referred to.
  19370. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19371. maxLength: 63
  19372. minLength: 1
  19373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19374. type: string
  19375. type: object
  19376. vaultRole:
  19377. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  19378. type: string
  19379. type: object
  19380. gcp:
  19381. description: |-
  19382. Gcp authenticates with Vault using Google Cloud Platform authentication method
  19383. GCP authentication method
  19384. properties:
  19385. location:
  19386. description: Location optionally defines a location/region for the secret
  19387. type: string
  19388. path:
  19389. default: gcp
  19390. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  19391. type: string
  19392. projectID:
  19393. description: Project ID of the Google Cloud Platform project
  19394. type: string
  19395. role:
  19396. 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.
  19397. type: string
  19398. secretRef:
  19399. description: Specify credentials in a Secret object
  19400. properties:
  19401. secretAccessKeySecretRef:
  19402. description: The SecretAccessKey is used for authentication
  19403. properties:
  19404. key:
  19405. description: |-
  19406. A key in the referenced Secret.
  19407. Some instances of this field may be defaulted, in others it may be required.
  19408. maxLength: 253
  19409. minLength: 1
  19410. pattern: ^[-._a-zA-Z0-9]+$
  19411. type: string
  19412. name:
  19413. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  19427. type: object
  19428. serviceAccountRef:
  19429. description: ServiceAccountRef to a service account for impersonation
  19430. properties:
  19431. audiences:
  19432. description: |-
  19433. Audience specifies the `aud` claim for the service account token
  19434. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19435. then this audiences will be appended to the list
  19436. items:
  19437. type: string
  19438. type: array
  19439. name:
  19440. description: The name of the ServiceAccount resource being referred to.
  19441. maxLength: 253
  19442. minLength: 1
  19443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19444. type: string
  19445. namespace:
  19446. description: |-
  19447. Namespace of the resource being referred to.
  19448. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19449. maxLength: 63
  19450. minLength: 1
  19451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19452. type: string
  19453. required:
  19454. - name
  19455. type: object
  19456. workloadIdentity:
  19457. description: Specify a service account with Workload Identity
  19458. properties:
  19459. clusterLocation:
  19460. description: |-
  19461. ClusterLocation is the location of the cluster
  19462. If not specified, it fetches information from the metadata server
  19463. type: string
  19464. clusterName:
  19465. description: |-
  19466. ClusterName is the name of the cluster
  19467. If not specified, it fetches information from the metadata server
  19468. type: string
  19469. clusterProjectID:
  19470. description: |-
  19471. ClusterProjectID is the project ID of the cluster
  19472. If not specified, it fetches information from the metadata server
  19473. type: string
  19474. serviceAccountRef:
  19475. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19476. properties:
  19477. audiences:
  19478. description: |-
  19479. Audience specifies the `aud` claim for the service account token
  19480. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19481. then this audiences will be appended to the list
  19482. items:
  19483. type: string
  19484. type: array
  19485. name:
  19486. description: The name of the ServiceAccount resource being referred to.
  19487. maxLength: 253
  19488. minLength: 1
  19489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19490. type: string
  19491. namespace:
  19492. description: |-
  19493. Namespace of the resource being referred to.
  19494. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19495. maxLength: 63
  19496. minLength: 1
  19497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19498. type: string
  19499. required:
  19500. - name
  19501. type: object
  19502. required:
  19503. - serviceAccountRef
  19504. type: object
  19505. required:
  19506. - role
  19507. type: object
  19508. iam:
  19509. description: |-
  19510. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  19511. AWS IAM authentication method
  19512. properties:
  19513. externalID:
  19514. description: AWS External ID set on assumed IAM roles
  19515. type: string
  19516. jwt:
  19517. description: Specify a service account with IRSA enabled
  19518. properties:
  19519. serviceAccountRef:
  19520. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19521. properties:
  19522. audiences:
  19523. description: |-
  19524. Audience specifies the `aud` claim for the service account token
  19525. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19526. then this audiences will be appended to the list
  19527. items:
  19528. type: string
  19529. type: array
  19530. name:
  19531. description: The name of the ServiceAccount resource being referred to.
  19532. maxLength: 253
  19533. minLength: 1
  19534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19535. type: string
  19536. namespace:
  19537. description: |-
  19538. Namespace of the resource being referred to.
  19539. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19540. maxLength: 63
  19541. minLength: 1
  19542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19543. type: string
  19544. required:
  19545. - name
  19546. type: object
  19547. type: object
  19548. path:
  19549. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  19550. type: string
  19551. region:
  19552. description: AWS region
  19553. type: string
  19554. role:
  19555. description: This is the AWS role to be assumed before talking to vault
  19556. type: string
  19557. secretRef:
  19558. description: Specify credentials in a Secret object
  19559. properties:
  19560. accessKeyIDSecretRef:
  19561. description: The AccessKeyID is used for authentication
  19562. properties:
  19563. key:
  19564. description: |-
  19565. A key in the referenced Secret.
  19566. Some instances of this field may be defaulted, in others it may be required.
  19567. maxLength: 253
  19568. minLength: 1
  19569. pattern: ^[-._a-zA-Z0-9]+$
  19570. type: string
  19571. name:
  19572. description: The name of the Secret resource being referred to.
  19573. maxLength: 253
  19574. minLength: 1
  19575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19576. type: string
  19577. namespace:
  19578. description: |-
  19579. The namespace of the Secret resource being referred to.
  19580. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19581. maxLength: 63
  19582. minLength: 1
  19583. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19584. type: string
  19585. type: object
  19586. secretAccessKeySecretRef:
  19587. description: The SecretAccessKey is used for authentication
  19588. properties:
  19589. key:
  19590. description: |-
  19591. A key in the referenced Secret.
  19592. Some instances of this field may be defaulted, in others it may be required.
  19593. maxLength: 253
  19594. minLength: 1
  19595. pattern: ^[-._a-zA-Z0-9]+$
  19596. type: string
  19597. name:
  19598. description: The name of the Secret resource being referred to.
  19599. maxLength: 253
  19600. minLength: 1
  19601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19602. type: string
  19603. namespace:
  19604. description: |-
  19605. The namespace of the Secret resource being referred to.
  19606. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19607. maxLength: 63
  19608. minLength: 1
  19609. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19610. type: string
  19611. type: object
  19612. sessionTokenSecretRef:
  19613. description: |-
  19614. The SessionToken used for authentication
  19615. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  19616. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  19617. properties:
  19618. key:
  19619. description: |-
  19620. A key in the referenced Secret.
  19621. Some instances of this field may be defaulted, in others it may be required.
  19622. maxLength: 253
  19623. minLength: 1
  19624. pattern: ^[-._a-zA-Z0-9]+$
  19625. type: string
  19626. name:
  19627. description: The name of the Secret resource being referred to.
  19628. maxLength: 253
  19629. minLength: 1
  19630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19631. type: string
  19632. namespace:
  19633. description: |-
  19634. The namespace of the Secret resource being referred to.
  19635. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19636. maxLength: 63
  19637. minLength: 1
  19638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19639. type: string
  19640. type: object
  19641. type: object
  19642. vaultAwsIamServerID:
  19643. 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'
  19644. type: string
  19645. vaultRole:
  19646. 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
  19647. type: string
  19648. required:
  19649. - vaultRole
  19650. type: object
  19651. jwt:
  19652. description: |-
  19653. Jwt authenticates with Vault by passing role and JWT token using the
  19654. JWT/OIDC authentication method
  19655. properties:
  19656. kubernetesServiceAccountToken:
  19657. description: |-
  19658. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  19659. a token for with the `TokenRequest` API.
  19660. properties:
  19661. audiences:
  19662. description: |-
  19663. Optional audiences field that will be used to request a temporary Kubernetes service
  19664. account token for the service account referenced by `serviceAccountRef`.
  19665. Defaults to a single audience `vault` it not specified.
  19666. Deprecated: use serviceAccountRef.Audiences instead
  19667. items:
  19668. type: string
  19669. type: array
  19670. expirationSeconds:
  19671. description: |-
  19672. Optional expiration time in seconds that will be used to request a temporary
  19673. Kubernetes service account token for the service account referenced by
  19674. `serviceAccountRef`.
  19675. Deprecated: this will be removed in the future.
  19676. Defaults to 10 minutes.
  19677. type: integer
  19678. serviceAccountRef:
  19679. description: Service account field containing the name of a kubernetes ServiceAccount.
  19680. properties:
  19681. audiences:
  19682. description: |-
  19683. Audience specifies the `aud` claim for the service account token
  19684. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19685. then this audiences will be appended to the list
  19686. items:
  19687. type: string
  19688. type: array
  19689. name:
  19690. description: The name of the ServiceAccount resource being referred to.
  19691. maxLength: 253
  19692. minLength: 1
  19693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19694. type: string
  19695. namespace:
  19696. description: |-
  19697. Namespace of the resource being referred to.
  19698. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19699. maxLength: 63
  19700. minLength: 1
  19701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19702. type: string
  19703. required:
  19704. - name
  19705. type: object
  19706. required:
  19707. - serviceAccountRef
  19708. type: object
  19709. path:
  19710. default: jwt
  19711. description: |-
  19712. Path where the JWT authentication backend is mounted
  19713. in Vault, e.g: "jwt"
  19714. type: string
  19715. role:
  19716. description: |-
  19717. Role is a JWT role to authenticate using the JWT/OIDC Vault
  19718. authentication method
  19719. type: string
  19720. secretRef:
  19721. description: |-
  19722. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  19723. authenticate with Vault using the JWT/OIDC authentication method.
  19724. properties:
  19725. key:
  19726. description: |-
  19727. A key in the referenced Secret.
  19728. Some instances of this field may be defaulted, in others it may be required.
  19729. maxLength: 253
  19730. minLength: 1
  19731. pattern: ^[-._a-zA-Z0-9]+$
  19732. type: string
  19733. name:
  19734. description: The name of the Secret resource being referred to.
  19735. maxLength: 253
  19736. minLength: 1
  19737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19738. type: string
  19739. namespace:
  19740. description: |-
  19741. The namespace of the Secret resource being referred to.
  19742. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19743. maxLength: 63
  19744. minLength: 1
  19745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19746. type: string
  19747. type: object
  19748. required:
  19749. - path
  19750. type: object
  19751. kubernetes:
  19752. description: |-
  19753. Kubernetes authenticates with Vault by passing the ServiceAccount
  19754. token stored in the named Secret resource to the Vault server.
  19755. properties:
  19756. mountPath:
  19757. default: kubernetes
  19758. description: |-
  19759. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  19760. "kubernetes"
  19761. type: string
  19762. role:
  19763. description: |-
  19764. A required field containing the Vault Role to assume. A Role binds a
  19765. Kubernetes ServiceAccount with a set of Vault policies.
  19766. type: string
  19767. secretRef:
  19768. description: |-
  19769. Optional secret field containing a Kubernetes ServiceAccount JWT used
  19770. for authenticating with Vault. If a name is specified without a key,
  19771. `token` is the default. If one is not specified, the one bound to
  19772. the controller will be used.
  19773. properties:
  19774. key:
  19775. description: |-
  19776. A key in the referenced Secret.
  19777. Some instances of this field may be defaulted, in others it may be required.
  19778. maxLength: 253
  19779. minLength: 1
  19780. pattern: ^[-._a-zA-Z0-9]+$
  19781. type: string
  19782. name:
  19783. description: The name of the Secret resource being referred to.
  19784. maxLength: 253
  19785. minLength: 1
  19786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19787. type: string
  19788. namespace:
  19789. description: |-
  19790. The namespace of the Secret resource being referred to.
  19791. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19792. maxLength: 63
  19793. minLength: 1
  19794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19795. type: string
  19796. type: object
  19797. serviceAccountRef:
  19798. description: |-
  19799. Optional service account field containing the name of a kubernetes ServiceAccount.
  19800. If the service account is specified, the service account secret token JWT will be used
  19801. for authenticating with Vault. If the service account selector is not supplied,
  19802. the secretRef will be used instead.
  19803. properties:
  19804. audiences:
  19805. description: |-
  19806. Audience specifies the `aud` claim for the service account token
  19807. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19808. then this audiences will be appended to the list
  19809. items:
  19810. type: string
  19811. type: array
  19812. name:
  19813. description: The name of the ServiceAccount resource being referred to.
  19814. maxLength: 253
  19815. minLength: 1
  19816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19817. type: string
  19818. namespace:
  19819. description: |-
  19820. Namespace of the resource being referred to.
  19821. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19822. maxLength: 63
  19823. minLength: 1
  19824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19825. type: string
  19826. required:
  19827. - name
  19828. type: object
  19829. required:
  19830. - mountPath
  19831. - role
  19832. type: object
  19833. ldap:
  19834. description: |-
  19835. Ldap authenticates with Vault by passing username/password pair using
  19836. the LDAP authentication method
  19837. properties:
  19838. path:
  19839. default: ldap
  19840. description: |-
  19841. Path where the LDAP authentication backend is mounted
  19842. in Vault, e.g: "ldap"
  19843. type: string
  19844. secretRef:
  19845. description: |-
  19846. SecretRef to a key in a Secret resource containing password for the LDAP
  19847. user used to authenticate with Vault using the LDAP authentication
  19848. method
  19849. properties:
  19850. key:
  19851. description: |-
  19852. A key in the referenced Secret.
  19853. Some instances of this field may be defaulted, in others it may be required.
  19854. maxLength: 253
  19855. minLength: 1
  19856. pattern: ^[-._a-zA-Z0-9]+$
  19857. type: string
  19858. name:
  19859. description: The name of the Secret resource being referred to.
  19860. maxLength: 253
  19861. minLength: 1
  19862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19863. type: string
  19864. namespace:
  19865. description: |-
  19866. The namespace of the Secret resource being referred to.
  19867. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19868. maxLength: 63
  19869. minLength: 1
  19870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19871. type: string
  19872. type: object
  19873. username:
  19874. description: |-
  19875. Username is an LDAP username used to authenticate using the LDAP Vault
  19876. authentication method
  19877. type: string
  19878. required:
  19879. - path
  19880. - username
  19881. type: object
  19882. namespace:
  19883. description: |-
  19884. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  19885. Namespaces is a set of features within Vault Enterprise that allows
  19886. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19887. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19888. This will default to Vault.Namespace field if set, or empty otherwise
  19889. type: string
  19890. tokenSecretRef:
  19891. description: TokenSecretRef authenticates with Vault by presenting a token.
  19892. properties:
  19893. key:
  19894. description: |-
  19895. A key in the referenced Secret.
  19896. Some instances of this field may be defaulted, in others it may be required.
  19897. maxLength: 253
  19898. minLength: 1
  19899. pattern: ^[-._a-zA-Z0-9]+$
  19900. type: string
  19901. name:
  19902. description: The name of the Secret resource being referred to.
  19903. maxLength: 253
  19904. minLength: 1
  19905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19906. type: string
  19907. namespace:
  19908. description: |-
  19909. The namespace of the Secret resource being referred to.
  19910. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19911. maxLength: 63
  19912. minLength: 1
  19913. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19914. type: string
  19915. type: object
  19916. userPass:
  19917. description: UserPass authenticates with Vault by passing username/password pair
  19918. properties:
  19919. path:
  19920. default: userpass
  19921. description: |-
  19922. Path where the UserPassword authentication backend is mounted
  19923. in Vault, e.g: "userpass"
  19924. type: string
  19925. secretRef:
  19926. description: |-
  19927. SecretRef to a key in a Secret resource containing password for the
  19928. user used to authenticate with Vault using the UserPass authentication
  19929. method
  19930. properties:
  19931. key:
  19932. description: |-
  19933. A key in the referenced Secret.
  19934. Some instances of this field may be defaulted, in others it may be required.
  19935. maxLength: 253
  19936. minLength: 1
  19937. pattern: ^[-._a-zA-Z0-9]+$
  19938. type: string
  19939. name:
  19940. description: The name of the Secret resource being referred to.
  19941. maxLength: 253
  19942. minLength: 1
  19943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19944. type: string
  19945. namespace:
  19946. description: |-
  19947. The namespace of the Secret resource being referred to.
  19948. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19949. maxLength: 63
  19950. minLength: 1
  19951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19952. type: string
  19953. type: object
  19954. username:
  19955. description: |-
  19956. Username is a username used to authenticate using the UserPass Vault
  19957. authentication method
  19958. type: string
  19959. required:
  19960. - path
  19961. - username
  19962. type: object
  19963. type: object
  19964. caBundle:
  19965. description: |-
  19966. PEM encoded CA bundle used to validate Vault server certificate. Only used
  19967. if the Server URL is using HTTPS protocol. This parameter is ignored for
  19968. plain HTTP protocol connection. If not set the system root certificates
  19969. are used to validate the TLS connection.
  19970. format: byte
  19971. type: string
  19972. caProvider:
  19973. description: The provider for the CA bundle to use to validate Vault server certificate.
  19974. properties:
  19975. key:
  19976. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19977. maxLength: 253
  19978. minLength: 1
  19979. pattern: ^[-._a-zA-Z0-9]+$
  19980. type: string
  19981. name:
  19982. description: The name of the object located at the provider type.
  19983. maxLength: 253
  19984. minLength: 1
  19985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19986. type: string
  19987. namespace:
  19988. description: |-
  19989. The namespace the Provider type is in.
  19990. Can only be defined when used in a ClusterSecretStore.
  19991. maxLength: 63
  19992. minLength: 1
  19993. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19994. type: string
  19995. type:
  19996. description: The type of provider to use such as "Secret", or "ConfigMap".
  19997. enum:
  19998. - Secret
  19999. - ConfigMap
  20000. type: string
  20001. required:
  20002. - name
  20003. - type
  20004. type: object
  20005. checkAndSet:
  20006. description: |-
  20007. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  20008. Only applies to Vault KV v2 stores. When enabled, write operations must include
  20009. the current version of the secret to prevent unintentional overwrites.
  20010. properties:
  20011. required:
  20012. description: |-
  20013. Required when true, all write operations must include a check-and-set parameter.
  20014. This helps prevent unintentional overwrites of secrets.
  20015. type: boolean
  20016. type: object
  20017. forwardInconsistent:
  20018. description: |-
  20019. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  20020. leader instead of simply retrying within a loop. This can increase performance if
  20021. the option is enabled serverside.
  20022. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  20023. type: boolean
  20024. headers:
  20025. additionalProperties:
  20026. type: string
  20027. description: Headers to be added in Vault request
  20028. type: object
  20029. namespace:
  20030. description: |-
  20031. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  20032. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20033. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20034. type: string
  20035. path:
  20036. description: |-
  20037. Path is the mount path of the Vault KV backend endpoint, e.g:
  20038. "secret". The v2 KV secret engine version specific "/data" path suffix
  20039. for fetching secrets from Vault is optional and will be appended
  20040. if not present in specified path.
  20041. type: string
  20042. readYourWrites:
  20043. description: |-
  20044. ReadYourWrites ensures isolated read-after-write semantics by
  20045. providing discovered cluster replication states in each request.
  20046. More information about eventual consistency in Vault can be found here
  20047. https://www.vaultproject.io/docs/enterprise/consistency
  20048. type: boolean
  20049. server:
  20050. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  20051. type: string
  20052. tls:
  20053. description: |-
  20054. The configuration used for client side related TLS communication, when the Vault server
  20055. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  20056. This parameter is ignored for plain HTTP protocol connection.
  20057. It's worth noting this configuration is different from the "TLS certificates auth method",
  20058. which is available under the `auth.cert` section.
  20059. properties:
  20060. certSecretRef:
  20061. description: |-
  20062. CertSecretRef is a certificate added to the transport layer
  20063. when communicating with the Vault server.
  20064. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  20065. properties:
  20066. key:
  20067. description: |-
  20068. A key in the referenced Secret.
  20069. Some instances of this field may be defaulted, in others it may be required.
  20070. maxLength: 253
  20071. minLength: 1
  20072. pattern: ^[-._a-zA-Z0-9]+$
  20073. type: string
  20074. name:
  20075. description: The name of the Secret resource being referred to.
  20076. maxLength: 253
  20077. minLength: 1
  20078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20079. type: string
  20080. namespace:
  20081. description: |-
  20082. The namespace of the Secret resource being referred to.
  20083. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20084. maxLength: 63
  20085. minLength: 1
  20086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20087. type: string
  20088. type: object
  20089. keySecretRef:
  20090. description: |-
  20091. KeySecretRef to a key in a Secret resource containing client private key
  20092. added to the transport layer when communicating with the Vault server.
  20093. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  20094. properties:
  20095. key:
  20096. description: |-
  20097. A key in the referenced Secret.
  20098. Some instances of this field may be defaulted, in others it may be required.
  20099. maxLength: 253
  20100. minLength: 1
  20101. pattern: ^[-._a-zA-Z0-9]+$
  20102. type: string
  20103. name:
  20104. description: The name of the Secret resource being referred to.
  20105. maxLength: 253
  20106. minLength: 1
  20107. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20108. type: string
  20109. namespace:
  20110. description: |-
  20111. The namespace of the Secret resource being referred to.
  20112. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20113. maxLength: 63
  20114. minLength: 1
  20115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20116. type: string
  20117. type: object
  20118. type: object
  20119. version:
  20120. default: v2
  20121. description: |-
  20122. Version is the Vault KV secret engine version. This can be either "v1" or
  20123. "v2". Version defaults to "v2".
  20124. enum:
  20125. - v1
  20126. - v2
  20127. type: string
  20128. required:
  20129. - server
  20130. type: object
  20131. volcengine:
  20132. description: Volcengine configures this store to sync secrets using the Volcengine provider
  20133. properties:
  20134. auth:
  20135. description: |-
  20136. Auth defines the authentication method to use.
  20137. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  20138. properties:
  20139. secretRef:
  20140. description: |-
  20141. SecretRef defines the static credentials to use for authentication.
  20142. If not set, IRSA is used.
  20143. properties:
  20144. accessKeyID:
  20145. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  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. secretAccessKey:
  20171. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  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. token:
  20197. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  20198. properties:
  20199. key:
  20200. description: |-
  20201. A key in the referenced Secret.
  20202. Some instances of this field may be defaulted, in others it may be required.
  20203. maxLength: 253
  20204. minLength: 1
  20205. pattern: ^[-._a-zA-Z0-9]+$
  20206. type: string
  20207. name:
  20208. description: The name of the Secret resource being referred to.
  20209. maxLength: 253
  20210. minLength: 1
  20211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20212. type: string
  20213. namespace:
  20214. description: |-
  20215. The namespace of the Secret resource being referred to.
  20216. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20217. maxLength: 63
  20218. minLength: 1
  20219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20220. type: string
  20221. type: object
  20222. required:
  20223. - accessKeyID
  20224. - secretAccessKey
  20225. type: object
  20226. type: object
  20227. region:
  20228. description: Region specifies the Volcengine region to connect to.
  20229. type: string
  20230. required:
  20231. - region
  20232. type: object
  20233. webhook:
  20234. description: Webhook configures this store to sync secrets using a generic templated webhook
  20235. properties:
  20236. auth:
  20237. description: Auth specifies a authorization protocol. Only one protocol may be set.
  20238. maxProperties: 1
  20239. minProperties: 1
  20240. properties:
  20241. ntlm:
  20242. description: NTLMProtocol configures the store to use NTLM for auth
  20243. properties:
  20244. passwordSecret:
  20245. description: |-
  20246. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20247. In some instances, `key` is a required field.
  20248. properties:
  20249. key:
  20250. description: |-
  20251. A key in the referenced Secret.
  20252. Some instances of this field may be defaulted, in others it may be required.
  20253. maxLength: 253
  20254. minLength: 1
  20255. pattern: ^[-._a-zA-Z0-9]+$
  20256. type: string
  20257. name:
  20258. description: The name of the Secret resource being referred to.
  20259. maxLength: 253
  20260. minLength: 1
  20261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20262. type: string
  20263. namespace:
  20264. description: |-
  20265. The namespace of the Secret resource being referred to.
  20266. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20267. maxLength: 63
  20268. minLength: 1
  20269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20270. type: string
  20271. type: object
  20272. usernameSecret:
  20273. description: |-
  20274. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20275. In some instances, `key` is a required field.
  20276. properties:
  20277. key:
  20278. description: |-
  20279. A key in the referenced Secret.
  20280. Some instances of this field may be defaulted, in others it may be required.
  20281. maxLength: 253
  20282. minLength: 1
  20283. pattern: ^[-._a-zA-Z0-9]+$
  20284. type: string
  20285. name:
  20286. description: The name of the Secret resource being referred to.
  20287. maxLength: 253
  20288. minLength: 1
  20289. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20290. type: string
  20291. namespace:
  20292. description: |-
  20293. The namespace of the Secret resource being referred to.
  20294. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20295. maxLength: 63
  20296. minLength: 1
  20297. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20298. type: string
  20299. type: object
  20300. required:
  20301. - passwordSecret
  20302. - usernameSecret
  20303. type: object
  20304. type: object
  20305. body:
  20306. description: Body
  20307. type: string
  20308. caBundle:
  20309. description: |-
  20310. PEM encoded CA bundle used to validate webhook server certificate. Only used
  20311. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20312. plain HTTP protocol connection. If not set the system root certificates
  20313. are used to validate the TLS connection.
  20314. format: byte
  20315. type: string
  20316. caProvider:
  20317. description: The provider for the CA bundle to use to validate webhook server certificate.
  20318. properties:
  20319. key:
  20320. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20321. maxLength: 253
  20322. minLength: 1
  20323. pattern: ^[-._a-zA-Z0-9]+$
  20324. type: string
  20325. name:
  20326. description: The name of the object located at the provider type.
  20327. maxLength: 253
  20328. minLength: 1
  20329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20330. type: string
  20331. namespace:
  20332. description: The namespace the Provider type is in.
  20333. maxLength: 63
  20334. minLength: 1
  20335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20336. type: string
  20337. type:
  20338. description: The type of provider to use such as "Secret", or "ConfigMap".
  20339. enum:
  20340. - Secret
  20341. - ConfigMap
  20342. type: string
  20343. required:
  20344. - name
  20345. - type
  20346. type: object
  20347. headers:
  20348. additionalProperties:
  20349. type: string
  20350. description: Headers
  20351. type: object
  20352. method:
  20353. description: Webhook Method
  20354. type: string
  20355. result:
  20356. description: Result formatting
  20357. properties:
  20358. jsonPath:
  20359. description: Json path of return value
  20360. type: string
  20361. type: object
  20362. secrets:
  20363. description: |-
  20364. Secrets to fill in templates
  20365. These secrets will be passed to the templating function as key value pairs under the given name
  20366. items:
  20367. description: WebhookSecret defines a secret that will be passed to the webhook request.
  20368. properties:
  20369. name:
  20370. description: Name of this secret in templates
  20371. type: string
  20372. secretRef:
  20373. description: Secret ref to fill in credentials
  20374. properties:
  20375. key:
  20376. description: |-
  20377. A key in the referenced Secret.
  20378. Some instances of this field may be defaulted, in others it may be required.
  20379. maxLength: 253
  20380. minLength: 1
  20381. pattern: ^[-._a-zA-Z0-9]+$
  20382. type: string
  20383. name:
  20384. description: The name of the Secret resource being referred to.
  20385. maxLength: 253
  20386. minLength: 1
  20387. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20388. type: string
  20389. namespace:
  20390. description: |-
  20391. The namespace of the Secret resource being referred to.
  20392. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20393. maxLength: 63
  20394. minLength: 1
  20395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20396. type: string
  20397. type: object
  20398. required:
  20399. - name
  20400. - secretRef
  20401. type: object
  20402. type: array
  20403. timeout:
  20404. description: Timeout
  20405. type: string
  20406. url:
  20407. description: Webhook url to call
  20408. type: string
  20409. required:
  20410. - url
  20411. type: object
  20412. yandexcertificatemanager:
  20413. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  20414. properties:
  20415. apiEndpoint:
  20416. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20417. type: string
  20418. auth:
  20419. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20420. properties:
  20421. authorizedKeySecretRef:
  20422. description: The authorized key used for authentication
  20423. properties:
  20424. key:
  20425. description: |-
  20426. A key in the referenced Secret.
  20427. Some instances of this field may be defaulted, in others it may be required.
  20428. maxLength: 253
  20429. minLength: 1
  20430. pattern: ^[-._a-zA-Z0-9]+$
  20431. type: string
  20432. name:
  20433. description: The name of the Secret resource being referred to.
  20434. maxLength: 253
  20435. minLength: 1
  20436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20437. type: string
  20438. namespace:
  20439. description: |-
  20440. The namespace of the Secret resource being referred to.
  20441. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20442. maxLength: 63
  20443. minLength: 1
  20444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20445. type: string
  20446. type: object
  20447. type: object
  20448. caProvider:
  20449. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20450. properties:
  20451. certSecretRef:
  20452. description: |-
  20453. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20454. In some instances, `key` is a required field.
  20455. properties:
  20456. key:
  20457. description: |-
  20458. A key in the referenced Secret.
  20459. Some instances of this field may be defaulted, in others it may be required.
  20460. maxLength: 253
  20461. minLength: 1
  20462. pattern: ^[-._a-zA-Z0-9]+$
  20463. type: string
  20464. name:
  20465. description: The name of the Secret resource being referred to.
  20466. maxLength: 253
  20467. minLength: 1
  20468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20469. type: string
  20470. namespace:
  20471. description: |-
  20472. The namespace of the Secret resource being referred to.
  20473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20474. maxLength: 63
  20475. minLength: 1
  20476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20477. type: string
  20478. type: object
  20479. type: object
  20480. fetching:
  20481. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  20482. maxProperties: 1
  20483. minProperties: 1
  20484. properties:
  20485. byID:
  20486. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20487. type: object
  20488. byName:
  20489. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20490. properties:
  20491. folderID:
  20492. description: The folder to fetch secrets from
  20493. type: string
  20494. required:
  20495. - folderID
  20496. type: object
  20497. type: object
  20498. required:
  20499. - auth
  20500. type: object
  20501. yandexlockbox:
  20502. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  20503. properties:
  20504. apiEndpoint:
  20505. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20506. type: string
  20507. auth:
  20508. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20509. properties:
  20510. authorizedKeySecretRef:
  20511. description: The authorized key used for authentication
  20512. properties:
  20513. key:
  20514. description: |-
  20515. A key in the referenced Secret.
  20516. Some instances of this field may be defaulted, in others it may be required.
  20517. maxLength: 253
  20518. minLength: 1
  20519. pattern: ^[-._a-zA-Z0-9]+$
  20520. type: string
  20521. name:
  20522. description: The name of the Secret resource being referred to.
  20523. maxLength: 253
  20524. minLength: 1
  20525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20526. type: string
  20527. namespace:
  20528. description: |-
  20529. The namespace of the Secret resource being referred to.
  20530. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20531. maxLength: 63
  20532. minLength: 1
  20533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20534. type: string
  20535. type: object
  20536. type: object
  20537. caProvider:
  20538. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20539. properties:
  20540. certSecretRef:
  20541. description: |-
  20542. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20543. In some instances, `key` is a required field.
  20544. properties:
  20545. key:
  20546. description: |-
  20547. A key in the referenced Secret.
  20548. Some instances of this field may be defaulted, in others it may be required.
  20549. maxLength: 253
  20550. minLength: 1
  20551. pattern: ^[-._a-zA-Z0-9]+$
  20552. type: string
  20553. name:
  20554. description: The name of the Secret resource being referred to.
  20555. maxLength: 253
  20556. minLength: 1
  20557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20558. type: string
  20559. namespace:
  20560. description: |-
  20561. The namespace of the Secret resource being referred to.
  20562. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20563. maxLength: 63
  20564. minLength: 1
  20565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20566. type: string
  20567. type: object
  20568. type: object
  20569. fetching:
  20570. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  20571. maxProperties: 1
  20572. minProperties: 1
  20573. properties:
  20574. byID:
  20575. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20576. type: object
  20577. byName:
  20578. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20579. properties:
  20580. folderID:
  20581. description: The folder to fetch secrets from
  20582. type: string
  20583. required:
  20584. - folderID
  20585. type: object
  20586. type: object
  20587. required:
  20588. - auth
  20589. type: object
  20590. type: object
  20591. refreshInterval:
  20592. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  20593. type: integer
  20594. retrySettings:
  20595. description: Used to configure HTTP retries on failures.
  20596. properties:
  20597. maxRetries:
  20598. type: integer
  20599. retryInterval:
  20600. type: string
  20601. type: object
  20602. required:
  20603. - provider
  20604. type: object
  20605. status:
  20606. description: SecretStoreStatus defines the observed state of the SecretStore.
  20607. properties:
  20608. capabilities:
  20609. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  20610. type: string
  20611. conditions:
  20612. items:
  20613. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  20614. properties:
  20615. lastTransitionTime:
  20616. format: date-time
  20617. type: string
  20618. message:
  20619. type: string
  20620. reason:
  20621. type: string
  20622. status:
  20623. type: string
  20624. type:
  20625. description: SecretStoreConditionType represents the condition of the SecretStore.
  20626. type: string
  20627. required:
  20628. - status
  20629. - type
  20630. type: object
  20631. type: array
  20632. type: object
  20633. type: object
  20634. served: true
  20635. storage: true
  20636. subresources:
  20637. status: {}
  20638. - additionalPrinterColumns:
  20639. - jsonPath: .metadata.creationTimestamp
  20640. name: AGE
  20641. type: date
  20642. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  20643. name: Status
  20644. type: string
  20645. - jsonPath: .status.capabilities
  20646. name: Capabilities
  20647. type: string
  20648. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20649. name: Ready
  20650. type: string
  20651. deprecated: true
  20652. name: v1beta1
  20653. schema:
  20654. openAPIV3Schema:
  20655. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  20656. properties:
  20657. apiVersion:
  20658. description: |-
  20659. APIVersion defines the versioned schema of this representation of an object.
  20660. Servers should convert recognized schemas to the latest internal value, and
  20661. may reject unrecognized values.
  20662. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  20663. type: string
  20664. kind:
  20665. description: |-
  20666. Kind is a string value representing the REST resource this object represents.
  20667. Servers may infer this from the endpoint the client submits requests to.
  20668. Cannot be updated.
  20669. In CamelCase.
  20670. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  20671. type: string
  20672. metadata:
  20673. type: object
  20674. spec:
  20675. description: SecretStoreSpec defines the desired state of SecretStore.
  20676. properties:
  20677. conditions:
  20678. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  20679. items:
  20680. description: |-
  20681. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  20682. for a ClusterSecretStore instance.
  20683. properties:
  20684. namespaceRegexes:
  20685. description: Choose namespaces by using regex matching
  20686. items:
  20687. type: string
  20688. type: array
  20689. namespaceSelector:
  20690. description: Choose namespace using a labelSelector
  20691. properties:
  20692. matchExpressions:
  20693. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  20694. items:
  20695. description: |-
  20696. A label selector requirement is a selector that contains values, a key, and an operator that
  20697. relates the key and values.
  20698. properties:
  20699. key:
  20700. description: key is the label key that the selector applies to.
  20701. type: string
  20702. operator:
  20703. description: |-
  20704. operator represents a key's relationship to a set of values.
  20705. Valid operators are In, NotIn, Exists and DoesNotExist.
  20706. type: string
  20707. values:
  20708. description: |-
  20709. values is an array of string values. If the operator is In or NotIn,
  20710. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  20711. the values array must be empty. This array is replaced during a strategic
  20712. merge patch.
  20713. items:
  20714. type: string
  20715. type: array
  20716. x-kubernetes-list-type: atomic
  20717. required:
  20718. - key
  20719. - operator
  20720. type: object
  20721. type: array
  20722. x-kubernetes-list-type: atomic
  20723. matchLabels:
  20724. additionalProperties:
  20725. type: string
  20726. description: |-
  20727. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  20728. map is equivalent to an element of matchExpressions, whose key field is "key", the
  20729. operator is "In", and the values array contains only "value". The requirements are ANDed.
  20730. type: object
  20731. type: object
  20732. x-kubernetes-map-type: atomic
  20733. namespaces:
  20734. description: Choose namespaces by name
  20735. items:
  20736. maxLength: 63
  20737. minLength: 1
  20738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20739. type: string
  20740. type: array
  20741. type: object
  20742. type: array
  20743. controller:
  20744. description: |-
  20745. Used to select the correct ESO controller (think: ingress.ingressClassName)
  20746. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  20747. type: string
  20748. provider:
  20749. description: Used to configure the provider. Only one provider may be set
  20750. maxProperties: 1
  20751. minProperties: 1
  20752. properties:
  20753. akeyless:
  20754. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  20755. properties:
  20756. akeylessGWApiURL:
  20757. description: Akeyless GW API Url from which the secrets to be fetched from.
  20758. type: string
  20759. authSecretRef:
  20760. description: Auth configures how the operator authenticates with Akeyless.
  20761. properties:
  20762. kubernetesAuth:
  20763. description: |-
  20764. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  20765. token stored in the named Secret resource.
  20766. properties:
  20767. accessID:
  20768. description: the Akeyless Kubernetes auth-method access-id
  20769. type: string
  20770. k8sConfName:
  20771. description: Kubernetes-auth configuration name in Akeyless-Gateway
  20772. type: string
  20773. secretRef:
  20774. description: |-
  20775. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20776. for authenticating with Akeyless. If a name is specified without a key,
  20777. `token` is the default. If one is not specified, the one bound to
  20778. the controller will be used.
  20779. properties:
  20780. key:
  20781. description: |-
  20782. A key in the referenced Secret.
  20783. Some instances of this field may be defaulted, in others it may be required.
  20784. maxLength: 253
  20785. minLength: 1
  20786. pattern: ^[-._a-zA-Z0-9]+$
  20787. type: string
  20788. name:
  20789. description: The name of the Secret resource being referred to.
  20790. maxLength: 253
  20791. minLength: 1
  20792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20793. type: string
  20794. namespace:
  20795. description: |-
  20796. The namespace of the Secret resource being referred to.
  20797. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20798. maxLength: 63
  20799. minLength: 1
  20800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20801. type: string
  20802. type: object
  20803. serviceAccountRef:
  20804. description: |-
  20805. Optional service account field containing the name of a kubernetes ServiceAccount.
  20806. If the service account is specified, the service account secret token JWT will be used
  20807. for authenticating with Akeyless. If the service account selector is not supplied,
  20808. the secretRef will be used instead.
  20809. properties:
  20810. audiences:
  20811. description: |-
  20812. Audience specifies the `aud` claim for the service account token
  20813. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20814. then this audiences will be appended to the list
  20815. items:
  20816. type: string
  20817. type: array
  20818. name:
  20819. description: The name of the ServiceAccount resource being referred to.
  20820. maxLength: 253
  20821. minLength: 1
  20822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20823. type: string
  20824. namespace:
  20825. description: |-
  20826. Namespace of the resource being referred to.
  20827. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20828. maxLength: 63
  20829. minLength: 1
  20830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20831. type: string
  20832. required:
  20833. - name
  20834. type: object
  20835. required:
  20836. - accessID
  20837. - k8sConfName
  20838. type: object
  20839. secretRef:
  20840. description: |-
  20841. Reference to a Secret that contains the details
  20842. to authenticate with Akeyless.
  20843. properties:
  20844. accessID:
  20845. description: The SecretAccessID is used for authentication
  20846. properties:
  20847. key:
  20848. description: |-
  20849. A key in the referenced Secret.
  20850. Some instances of this field may be defaulted, in others it may be required.
  20851. maxLength: 253
  20852. minLength: 1
  20853. pattern: ^[-._a-zA-Z0-9]+$
  20854. type: string
  20855. name:
  20856. description: The name of the Secret resource being referred to.
  20857. maxLength: 253
  20858. minLength: 1
  20859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20860. type: string
  20861. namespace:
  20862. description: |-
  20863. The namespace of the Secret resource being referred to.
  20864. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20865. maxLength: 63
  20866. minLength: 1
  20867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20868. type: string
  20869. type: object
  20870. accessType:
  20871. description: |-
  20872. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20873. In some instances, `key` is a required field.
  20874. properties:
  20875. key:
  20876. description: |-
  20877. A key in the referenced Secret.
  20878. Some instances of this field may be defaulted, in others it may be required.
  20879. maxLength: 253
  20880. minLength: 1
  20881. pattern: ^[-._a-zA-Z0-9]+$
  20882. type: string
  20883. name:
  20884. description: The name of the Secret resource being referred to.
  20885. maxLength: 253
  20886. minLength: 1
  20887. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20888. type: string
  20889. namespace:
  20890. description: |-
  20891. The namespace of the Secret resource being referred to.
  20892. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20893. maxLength: 63
  20894. minLength: 1
  20895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20896. type: string
  20897. type: object
  20898. accessTypeParam:
  20899. description: |-
  20900. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20901. In some instances, `key` is a required field.
  20902. properties:
  20903. key:
  20904. description: |-
  20905. A key in the referenced Secret.
  20906. Some instances of this field may be defaulted, in others it may be required.
  20907. maxLength: 253
  20908. minLength: 1
  20909. pattern: ^[-._a-zA-Z0-9]+$
  20910. type: string
  20911. name:
  20912. description: The name of the Secret resource being referred to.
  20913. maxLength: 253
  20914. minLength: 1
  20915. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20916. type: string
  20917. namespace:
  20918. description: |-
  20919. The namespace of the Secret resource being referred to.
  20920. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20921. maxLength: 63
  20922. minLength: 1
  20923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20924. type: string
  20925. type: object
  20926. type: object
  20927. type: object
  20928. caBundle:
  20929. description: |-
  20930. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  20931. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  20932. are used to validate the TLS connection.
  20933. format: byte
  20934. type: string
  20935. caProvider:
  20936. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  20937. properties:
  20938. key:
  20939. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20940. maxLength: 253
  20941. minLength: 1
  20942. pattern: ^[-._a-zA-Z0-9]+$
  20943. type: string
  20944. name:
  20945. description: The name of the object located at the provider type.
  20946. maxLength: 253
  20947. minLength: 1
  20948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20949. type: string
  20950. namespace:
  20951. description: |-
  20952. The namespace the Provider type is in.
  20953. Can only be defined when used in a ClusterSecretStore.
  20954. maxLength: 63
  20955. minLength: 1
  20956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20957. type: string
  20958. type:
  20959. description: The type of provider to use such as "Secret", or "ConfigMap".
  20960. enum:
  20961. - Secret
  20962. - ConfigMap
  20963. type: string
  20964. required:
  20965. - name
  20966. - type
  20967. type: object
  20968. required:
  20969. - akeylessGWApiURL
  20970. - authSecretRef
  20971. type: object
  20972. alibaba:
  20973. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  20974. properties:
  20975. auth:
  20976. description: AlibabaAuth contains a secretRef for credentials.
  20977. properties:
  20978. rrsa:
  20979. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  20980. properties:
  20981. oidcProviderArn:
  20982. type: string
  20983. oidcTokenFilePath:
  20984. type: string
  20985. roleArn:
  20986. type: string
  20987. sessionName:
  20988. type: string
  20989. required:
  20990. - oidcProviderArn
  20991. - oidcTokenFilePath
  20992. - roleArn
  20993. - sessionName
  20994. type: object
  20995. secretRef:
  20996. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  20997. properties:
  20998. accessKeyIDSecretRef:
  20999. description: The AccessKeyID is used for authentication
  21000. properties:
  21001. key:
  21002. description: |-
  21003. A key in the referenced Secret.
  21004. Some instances of this field may be defaulted, in others it may be required.
  21005. maxLength: 253
  21006. minLength: 1
  21007. pattern: ^[-._a-zA-Z0-9]+$
  21008. type: string
  21009. name:
  21010. description: The name of the Secret resource being referred to.
  21011. maxLength: 253
  21012. minLength: 1
  21013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21014. type: string
  21015. namespace:
  21016. description: |-
  21017. The namespace of the Secret resource being referred to.
  21018. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21019. maxLength: 63
  21020. minLength: 1
  21021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21022. type: string
  21023. type: object
  21024. accessKeySecretSecretRef:
  21025. description: The AccessKeySecret is used for authentication
  21026. properties:
  21027. key:
  21028. description: |-
  21029. A key in the referenced Secret.
  21030. Some instances of this field may be defaulted, in others it may be required.
  21031. maxLength: 253
  21032. minLength: 1
  21033. pattern: ^[-._a-zA-Z0-9]+$
  21034. type: string
  21035. name:
  21036. description: The name of the Secret resource being referred to.
  21037. maxLength: 253
  21038. minLength: 1
  21039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21040. type: string
  21041. namespace:
  21042. description: |-
  21043. The namespace of the Secret resource being referred to.
  21044. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21045. maxLength: 63
  21046. minLength: 1
  21047. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21048. type: string
  21049. type: object
  21050. required:
  21051. - accessKeyIDSecretRef
  21052. - accessKeySecretSecretRef
  21053. type: object
  21054. type: object
  21055. regionID:
  21056. description: Alibaba Region to be used for the provider
  21057. type: string
  21058. required:
  21059. - auth
  21060. - regionID
  21061. type: object
  21062. aws:
  21063. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  21064. properties:
  21065. additionalRoles:
  21066. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  21067. items:
  21068. type: string
  21069. type: array
  21070. auth:
  21071. description: |-
  21072. Auth defines the information necessary to authenticate against AWS
  21073. if not set aws sdk will infer credentials from your environment
  21074. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  21075. properties:
  21076. jwt:
  21077. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  21078. properties:
  21079. serviceAccountRef:
  21080. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21081. properties:
  21082. audiences:
  21083. description: |-
  21084. Audience specifies the `aud` claim for the service account token
  21085. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21086. then this audiences will be appended to the list
  21087. items:
  21088. type: string
  21089. type: array
  21090. name:
  21091. description: The name of the ServiceAccount resource being referred to.
  21092. maxLength: 253
  21093. minLength: 1
  21094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21095. type: string
  21096. namespace:
  21097. description: |-
  21098. Namespace of the resource being referred to.
  21099. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21100. maxLength: 63
  21101. minLength: 1
  21102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21103. type: string
  21104. required:
  21105. - name
  21106. type: object
  21107. type: object
  21108. secretRef:
  21109. description: |-
  21110. AWSAuthSecretRef holds secret references for AWS credentials
  21111. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  21112. properties:
  21113. accessKeyIDSecretRef:
  21114. description: The AccessKeyID is used for authentication
  21115. properties:
  21116. key:
  21117. description: |-
  21118. A key in the referenced Secret.
  21119. Some instances of this field may be defaulted, in others it may be required.
  21120. maxLength: 253
  21121. minLength: 1
  21122. pattern: ^[-._a-zA-Z0-9]+$
  21123. type: string
  21124. name:
  21125. description: The name of the Secret resource being referred to.
  21126. maxLength: 253
  21127. minLength: 1
  21128. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21129. type: string
  21130. namespace:
  21131. description: |-
  21132. The namespace of the Secret resource being referred to.
  21133. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21134. maxLength: 63
  21135. minLength: 1
  21136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21137. type: string
  21138. type: object
  21139. secretAccessKeySecretRef:
  21140. description: The SecretAccessKey is used for authentication
  21141. properties:
  21142. key:
  21143. description: |-
  21144. A key in the referenced Secret.
  21145. Some instances of this field may be defaulted, in others it may be required.
  21146. maxLength: 253
  21147. minLength: 1
  21148. pattern: ^[-._a-zA-Z0-9]+$
  21149. type: string
  21150. name:
  21151. description: The name of the Secret resource being referred to.
  21152. maxLength: 253
  21153. minLength: 1
  21154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21155. type: string
  21156. namespace:
  21157. description: |-
  21158. The namespace of the Secret resource being referred to.
  21159. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21160. maxLength: 63
  21161. minLength: 1
  21162. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21163. type: string
  21164. type: object
  21165. sessionTokenSecretRef:
  21166. description: |-
  21167. The SessionToken used for authentication
  21168. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  21169. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  21170. properties:
  21171. key:
  21172. description: |-
  21173. A key in the referenced Secret.
  21174. Some instances of this field may be defaulted, in others it may be required.
  21175. maxLength: 253
  21176. minLength: 1
  21177. pattern: ^[-._a-zA-Z0-9]+$
  21178. type: string
  21179. name:
  21180. description: The name of the Secret resource being referred to.
  21181. maxLength: 253
  21182. minLength: 1
  21183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21184. type: string
  21185. namespace:
  21186. description: |-
  21187. The namespace of the Secret resource being referred to.
  21188. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21189. maxLength: 63
  21190. minLength: 1
  21191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21192. type: string
  21193. type: object
  21194. type: object
  21195. type: object
  21196. externalID:
  21197. description: AWS External ID set on assumed IAM roles
  21198. type: string
  21199. prefix:
  21200. description: Prefix adds a prefix to all retrieved values.
  21201. type: string
  21202. region:
  21203. description: AWS Region to be used for the provider
  21204. type: string
  21205. role:
  21206. description: Role is a Role ARN which the provider will assume
  21207. type: string
  21208. secretsManager:
  21209. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  21210. properties:
  21211. forceDeleteWithoutRecovery:
  21212. description: |-
  21213. Specifies whether to delete the secret without any recovery window. You
  21214. can't use both this parameter and RecoveryWindowInDays in the same call.
  21215. If you don't use either, then by default Secrets Manager uses a 30 day
  21216. recovery window.
  21217. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  21218. type: boolean
  21219. recoveryWindowInDays:
  21220. description: |-
  21221. The number of days from 7 to 30 that Secrets Manager waits before
  21222. permanently deleting the secret. You can't use both this parameter and
  21223. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  21224. then by default Secrets Manager uses a 30 day recovery window.
  21225. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  21226. type: integer
  21227. type: object
  21228. service:
  21229. description: Service defines which service should be used to fetch the secrets
  21230. enum:
  21231. - SecretsManager
  21232. - ParameterStore
  21233. type: string
  21234. sessionTags:
  21235. description: AWS STS assume role session tags
  21236. items:
  21237. description: Tag defines a tag key and value for AWS resources.
  21238. properties:
  21239. key:
  21240. type: string
  21241. value:
  21242. type: string
  21243. required:
  21244. - key
  21245. - value
  21246. type: object
  21247. type: array
  21248. transitiveTagKeys:
  21249. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  21250. items:
  21251. type: string
  21252. type: array
  21253. required:
  21254. - region
  21255. - service
  21256. type: object
  21257. azurekv:
  21258. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  21259. properties:
  21260. authSecretRef:
  21261. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21262. properties:
  21263. clientCertificate:
  21264. description: The Azure ClientCertificate of the service principle used for authentication.
  21265. properties:
  21266. key:
  21267. description: |-
  21268. A key in the referenced Secret.
  21269. Some instances of this field may be defaulted, in others it may be required.
  21270. maxLength: 253
  21271. minLength: 1
  21272. pattern: ^[-._a-zA-Z0-9]+$
  21273. type: string
  21274. name:
  21275. description: The name of the Secret resource being referred to.
  21276. maxLength: 253
  21277. minLength: 1
  21278. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21279. type: string
  21280. namespace:
  21281. description: |-
  21282. The namespace of the Secret resource being referred to.
  21283. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21284. maxLength: 63
  21285. minLength: 1
  21286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21287. type: string
  21288. type: object
  21289. clientId:
  21290. description: The Azure clientId of the service principle or managed identity used for authentication.
  21291. properties:
  21292. key:
  21293. description: |-
  21294. A key in the referenced Secret.
  21295. Some instances of this field may be defaulted, in others it may be required.
  21296. maxLength: 253
  21297. minLength: 1
  21298. pattern: ^[-._a-zA-Z0-9]+$
  21299. type: string
  21300. name:
  21301. description: The name of the Secret resource being referred to.
  21302. maxLength: 253
  21303. minLength: 1
  21304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21305. type: string
  21306. namespace:
  21307. description: |-
  21308. The namespace of the Secret resource being referred to.
  21309. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21310. maxLength: 63
  21311. minLength: 1
  21312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21313. type: string
  21314. type: object
  21315. clientSecret:
  21316. description: The Azure ClientSecret of the service principle used for authentication.
  21317. properties:
  21318. key:
  21319. description: |-
  21320. A key in the referenced Secret.
  21321. Some instances of this field may be defaulted, in others it may be required.
  21322. maxLength: 253
  21323. minLength: 1
  21324. pattern: ^[-._a-zA-Z0-9]+$
  21325. type: string
  21326. name:
  21327. description: The name of the Secret resource being referred to.
  21328. maxLength: 253
  21329. minLength: 1
  21330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21331. type: string
  21332. namespace:
  21333. description: |-
  21334. The namespace of the Secret resource being referred to.
  21335. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21336. maxLength: 63
  21337. minLength: 1
  21338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21339. type: string
  21340. type: object
  21341. tenantId:
  21342. description: The Azure tenantId of the managed identity used for authentication.
  21343. properties:
  21344. key:
  21345. description: |-
  21346. A key in the referenced Secret.
  21347. Some instances of this field may be defaulted, in others it may be required.
  21348. maxLength: 253
  21349. minLength: 1
  21350. pattern: ^[-._a-zA-Z0-9]+$
  21351. type: string
  21352. name:
  21353. description: The name of the Secret resource being referred to.
  21354. maxLength: 253
  21355. minLength: 1
  21356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21357. type: string
  21358. namespace:
  21359. description: |-
  21360. The namespace of the Secret resource being referred to.
  21361. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21362. maxLength: 63
  21363. minLength: 1
  21364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21365. type: string
  21366. type: object
  21367. type: object
  21368. authType:
  21369. default: ServicePrincipal
  21370. description: |-
  21371. Auth type defines how to authenticate to the keyvault service.
  21372. Valid values are:
  21373. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  21374. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  21375. enum:
  21376. - ServicePrincipal
  21377. - ManagedIdentity
  21378. - WorkloadIdentity
  21379. type: string
  21380. environmentType:
  21381. default: PublicCloud
  21382. description: |-
  21383. EnvironmentType specifies the Azure cloud environment endpoints to use for
  21384. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  21385. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  21386. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  21387. enum:
  21388. - PublicCloud
  21389. - USGovernmentCloud
  21390. - ChinaCloud
  21391. - GermanCloud
  21392. type: string
  21393. identityId:
  21394. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  21395. type: string
  21396. serviceAccountRef:
  21397. description: |-
  21398. ServiceAccountRef specified the service account
  21399. that should be used when authenticating with WorkloadIdentity.
  21400. properties:
  21401. audiences:
  21402. description: |-
  21403. Audience specifies the `aud` claim for the service account token
  21404. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21405. then this audiences will be appended to the list
  21406. items:
  21407. type: string
  21408. type: array
  21409. name:
  21410. description: The name of the ServiceAccount resource being referred to.
  21411. maxLength: 253
  21412. minLength: 1
  21413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21414. type: string
  21415. namespace:
  21416. description: |-
  21417. Namespace of the resource being referred to.
  21418. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21419. maxLength: 63
  21420. minLength: 1
  21421. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21422. type: string
  21423. required:
  21424. - name
  21425. type: object
  21426. tenantId:
  21427. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21428. type: string
  21429. vaultUrl:
  21430. description: Vault Url from which the secrets to be fetched from.
  21431. type: string
  21432. required:
  21433. - vaultUrl
  21434. type: object
  21435. beyondtrust:
  21436. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  21437. properties:
  21438. auth:
  21439. description: Auth configures how the operator authenticates with Beyondtrust.
  21440. properties:
  21441. apiKey:
  21442. description: APIKey If not provided then ClientID/ClientSecret become required.
  21443. properties:
  21444. secretRef:
  21445. description: SecretRef references a key in a secret that will be used as value.
  21446. properties:
  21447. key:
  21448. description: |-
  21449. A key in the referenced Secret.
  21450. Some instances of this field may be defaulted, in others it may be required.
  21451. maxLength: 253
  21452. minLength: 1
  21453. pattern: ^[-._a-zA-Z0-9]+$
  21454. type: string
  21455. name:
  21456. description: The name of the Secret resource being referred to.
  21457. maxLength: 253
  21458. minLength: 1
  21459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21460. type: string
  21461. namespace:
  21462. description: |-
  21463. The namespace of the Secret resource being referred to.
  21464. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21465. maxLength: 63
  21466. minLength: 1
  21467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21468. type: string
  21469. type: object
  21470. value:
  21471. description: Value can be specified directly to set a value without using a secret.
  21472. type: string
  21473. type: object
  21474. certificate:
  21475. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  21476. properties:
  21477. secretRef:
  21478. description: SecretRef references a key in a secret that will be used as value.
  21479. properties:
  21480. key:
  21481. description: |-
  21482. A key in the referenced Secret.
  21483. Some instances of this field may be defaulted, in others it may be required.
  21484. maxLength: 253
  21485. minLength: 1
  21486. pattern: ^[-._a-zA-Z0-9]+$
  21487. type: string
  21488. name:
  21489. description: The name of the Secret resource being referred to.
  21490. maxLength: 253
  21491. minLength: 1
  21492. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21493. type: string
  21494. namespace:
  21495. description: |-
  21496. The namespace of the Secret resource being referred to.
  21497. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21498. maxLength: 63
  21499. minLength: 1
  21500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21501. type: string
  21502. type: object
  21503. value:
  21504. description: Value can be specified directly to set a value without using a secret.
  21505. type: string
  21506. type: object
  21507. certificateKey:
  21508. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  21509. properties:
  21510. secretRef:
  21511. description: SecretRef references a key in a secret that will be used as value.
  21512. properties:
  21513. key:
  21514. description: |-
  21515. A key in the referenced Secret.
  21516. Some instances of this field may be defaulted, in others it may be required.
  21517. maxLength: 253
  21518. minLength: 1
  21519. pattern: ^[-._a-zA-Z0-9]+$
  21520. type: string
  21521. name:
  21522. description: The name of the Secret resource being referred to.
  21523. maxLength: 253
  21524. minLength: 1
  21525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21526. type: string
  21527. namespace:
  21528. description: |-
  21529. The namespace of the Secret resource being referred to.
  21530. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21531. maxLength: 63
  21532. minLength: 1
  21533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21534. type: string
  21535. type: object
  21536. value:
  21537. description: Value can be specified directly to set a value without using a secret.
  21538. type: string
  21539. type: object
  21540. clientId:
  21541. description: ClientID is the API OAuth Client ID.
  21542. properties:
  21543. secretRef:
  21544. description: SecretRef references a key in a secret that will be used as value.
  21545. properties:
  21546. key:
  21547. description: |-
  21548. A key in the referenced Secret.
  21549. Some instances of this field may be defaulted, in others it may be required.
  21550. maxLength: 253
  21551. minLength: 1
  21552. pattern: ^[-._a-zA-Z0-9]+$
  21553. type: string
  21554. name:
  21555. description: The name of the Secret resource being referred to.
  21556. maxLength: 253
  21557. minLength: 1
  21558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21559. type: string
  21560. namespace:
  21561. description: |-
  21562. The namespace of the Secret resource being referred to.
  21563. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21564. maxLength: 63
  21565. minLength: 1
  21566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21567. type: string
  21568. type: object
  21569. value:
  21570. description: Value can be specified directly to set a value without using a secret.
  21571. type: string
  21572. type: object
  21573. clientSecret:
  21574. description: ClientSecret is the API OAuth Client Secret.
  21575. properties:
  21576. secretRef:
  21577. description: SecretRef references a key in a secret that will be used as value.
  21578. properties:
  21579. key:
  21580. description: |-
  21581. A key in the referenced Secret.
  21582. Some instances of this field may be defaulted, in others it may be required.
  21583. maxLength: 253
  21584. minLength: 1
  21585. pattern: ^[-._a-zA-Z0-9]+$
  21586. type: string
  21587. name:
  21588. description: The name of the Secret resource being referred to.
  21589. maxLength: 253
  21590. minLength: 1
  21591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21592. type: string
  21593. namespace:
  21594. description: |-
  21595. The namespace of the Secret resource being referred to.
  21596. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21597. maxLength: 63
  21598. minLength: 1
  21599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21600. type: string
  21601. type: object
  21602. value:
  21603. description: Value can be specified directly to set a value without using a secret.
  21604. type: string
  21605. type: object
  21606. type: object
  21607. server:
  21608. description: Auth configures how API server works.
  21609. properties:
  21610. apiUrl:
  21611. type: string
  21612. apiVersion:
  21613. type: string
  21614. clientTimeOutSeconds:
  21615. 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.
  21616. type: integer
  21617. decrypt:
  21618. default: true
  21619. 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.'
  21620. type: boolean
  21621. retrievalType:
  21622. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  21623. type: string
  21624. separator:
  21625. description: A character that separates the folder names.
  21626. type: string
  21627. verifyCA:
  21628. type: boolean
  21629. required:
  21630. - apiUrl
  21631. - verifyCA
  21632. type: object
  21633. required:
  21634. - auth
  21635. - server
  21636. type: object
  21637. bitwardensecretsmanager:
  21638. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  21639. properties:
  21640. apiURL:
  21641. type: string
  21642. auth:
  21643. description: |-
  21644. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  21645. Make sure that the token being used has permissions on the given secret.
  21646. properties:
  21647. secretRef:
  21648. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  21649. properties:
  21650. credentials:
  21651. description: AccessToken used for the bitwarden instance.
  21652. properties:
  21653. key:
  21654. description: |-
  21655. A key in the referenced Secret.
  21656. Some instances of this field may be defaulted, in others it may be required.
  21657. maxLength: 253
  21658. minLength: 1
  21659. pattern: ^[-._a-zA-Z0-9]+$
  21660. type: string
  21661. name:
  21662. description: The name of the Secret resource being referred to.
  21663. maxLength: 253
  21664. minLength: 1
  21665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21666. type: string
  21667. namespace:
  21668. description: |-
  21669. The namespace of the Secret resource being referred to.
  21670. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21671. maxLength: 63
  21672. minLength: 1
  21673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21674. type: string
  21675. type: object
  21676. required:
  21677. - credentials
  21678. type: object
  21679. required:
  21680. - secretRef
  21681. type: object
  21682. bitwardenServerSDKURL:
  21683. type: string
  21684. caBundle:
  21685. description: |-
  21686. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  21687. can be performed.
  21688. type: string
  21689. caProvider:
  21690. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  21691. properties:
  21692. key:
  21693. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21694. maxLength: 253
  21695. minLength: 1
  21696. pattern: ^[-._a-zA-Z0-9]+$
  21697. type: string
  21698. name:
  21699. description: The name of the object located at the provider type.
  21700. maxLength: 253
  21701. minLength: 1
  21702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21703. type: string
  21704. namespace:
  21705. description: |-
  21706. The namespace the Provider type is in.
  21707. Can only be defined when used in a ClusterSecretStore.
  21708. maxLength: 63
  21709. minLength: 1
  21710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21711. type: string
  21712. type:
  21713. description: The type of provider to use such as "Secret", or "ConfigMap".
  21714. enum:
  21715. - Secret
  21716. - ConfigMap
  21717. type: string
  21718. required:
  21719. - name
  21720. - type
  21721. type: object
  21722. identityURL:
  21723. type: string
  21724. organizationID:
  21725. description: OrganizationID determines which organization this secret store manages.
  21726. type: string
  21727. projectID:
  21728. description: ProjectID determines which project this secret store manages.
  21729. type: string
  21730. required:
  21731. - auth
  21732. - organizationID
  21733. - projectID
  21734. type: object
  21735. chef:
  21736. description: Chef configures this store to sync secrets with chef server
  21737. properties:
  21738. auth:
  21739. description: Auth defines the information necessary to authenticate against chef Server
  21740. properties:
  21741. secretRef:
  21742. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  21743. properties:
  21744. privateKeySecretRef:
  21745. description: SecretKey is the Signing Key in PEM format, used for authentication.
  21746. properties:
  21747. key:
  21748. description: |-
  21749. A key in the referenced Secret.
  21750. Some instances of this field may be defaulted, in others it may be required.
  21751. maxLength: 253
  21752. minLength: 1
  21753. pattern: ^[-._a-zA-Z0-9]+$
  21754. type: string
  21755. name:
  21756. description: The name of the Secret resource being referred to.
  21757. maxLength: 253
  21758. minLength: 1
  21759. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21760. type: string
  21761. namespace:
  21762. description: |-
  21763. The namespace of the Secret resource being referred to.
  21764. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21765. maxLength: 63
  21766. minLength: 1
  21767. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21768. type: string
  21769. type: object
  21770. required:
  21771. - privateKeySecretRef
  21772. type: object
  21773. required:
  21774. - secretRef
  21775. type: object
  21776. serverUrl:
  21777. 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 "/"
  21778. type: string
  21779. username:
  21780. description: UserName should be the user ID on the chef server
  21781. type: string
  21782. required:
  21783. - auth
  21784. - serverUrl
  21785. - username
  21786. type: object
  21787. cloudrusm:
  21788. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  21789. properties:
  21790. auth:
  21791. description: CSMAuth contains a secretRef for credentials.
  21792. properties:
  21793. secretRef:
  21794. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  21795. properties:
  21796. accessKeyIDSecretRef:
  21797. description: The AccessKeyID is used for authentication
  21798. properties:
  21799. key:
  21800. description: |-
  21801. A key in the referenced Secret.
  21802. Some instances of this field may be defaulted, in others it may be required.
  21803. maxLength: 253
  21804. minLength: 1
  21805. pattern: ^[-._a-zA-Z0-9]+$
  21806. type: string
  21807. name:
  21808. description: The name of the Secret resource being referred to.
  21809. maxLength: 253
  21810. minLength: 1
  21811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21812. type: string
  21813. namespace:
  21814. description: |-
  21815. The namespace of the Secret resource being referred to.
  21816. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21817. maxLength: 63
  21818. minLength: 1
  21819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21820. type: string
  21821. type: object
  21822. accessKeySecretSecretRef:
  21823. description: The AccessKeySecret is used for authentication
  21824. properties:
  21825. key:
  21826. description: |-
  21827. A key in the referenced Secret.
  21828. Some instances of this field may be defaulted, in others it may be required.
  21829. maxLength: 253
  21830. minLength: 1
  21831. pattern: ^[-._a-zA-Z0-9]+$
  21832. type: string
  21833. name:
  21834. description: The name of the Secret resource being referred to.
  21835. maxLength: 253
  21836. minLength: 1
  21837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21838. type: string
  21839. namespace:
  21840. description: |-
  21841. The namespace of the Secret resource being referred to.
  21842. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21843. maxLength: 63
  21844. minLength: 1
  21845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21846. type: string
  21847. type: object
  21848. required:
  21849. - accessKeyIDSecretRef
  21850. - accessKeySecretSecretRef
  21851. type: object
  21852. type: object
  21853. projectID:
  21854. description: ProjectID is the project, which the secrets are stored in.
  21855. type: string
  21856. required:
  21857. - auth
  21858. type: object
  21859. conjur:
  21860. description: Conjur configures this store to sync secrets using conjur provider
  21861. properties:
  21862. auth:
  21863. description: Defines authentication settings for connecting to Conjur.
  21864. properties:
  21865. apikey:
  21866. description: Authenticates with Conjur using an API key.
  21867. properties:
  21868. account:
  21869. description: Account is the Conjur organization account name.
  21870. type: string
  21871. apiKeyRef:
  21872. description: |-
  21873. A reference to a specific 'key' containing the Conjur API key
  21874. within a Secret resource. In some instances, `key` is a required field.
  21875. properties:
  21876. key:
  21877. description: |-
  21878. A key in the referenced Secret.
  21879. Some instances of this field may be defaulted, in others it may be required.
  21880. maxLength: 253
  21881. minLength: 1
  21882. pattern: ^[-._a-zA-Z0-9]+$
  21883. type: string
  21884. name:
  21885. description: The name of the Secret resource being referred to.
  21886. maxLength: 253
  21887. minLength: 1
  21888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21889. type: string
  21890. namespace:
  21891. description: |-
  21892. The namespace of the Secret resource being referred to.
  21893. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21894. maxLength: 63
  21895. minLength: 1
  21896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21897. type: string
  21898. type: object
  21899. userRef:
  21900. description: |-
  21901. A reference to a specific 'key' containing the Conjur username
  21902. within a Secret resource. In some instances, `key` is a required field.
  21903. properties:
  21904. key:
  21905. description: |-
  21906. A key in the referenced Secret.
  21907. Some instances of this field may be defaulted, in others it may be required.
  21908. maxLength: 253
  21909. minLength: 1
  21910. pattern: ^[-._a-zA-Z0-9]+$
  21911. type: string
  21912. name:
  21913. description: The name of the Secret resource being referred to.
  21914. maxLength: 253
  21915. minLength: 1
  21916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21917. type: string
  21918. namespace:
  21919. description: |-
  21920. The namespace of the Secret resource being referred to.
  21921. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21922. maxLength: 63
  21923. minLength: 1
  21924. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21925. type: string
  21926. type: object
  21927. required:
  21928. - account
  21929. - apiKeyRef
  21930. - userRef
  21931. type: object
  21932. jwt:
  21933. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  21934. properties:
  21935. account:
  21936. description: Account is the Conjur organization account name.
  21937. type: string
  21938. hostId:
  21939. description: |-
  21940. Optional HostID for JWT authentication. This may be used depending
  21941. on how the Conjur JWT authenticator policy is configured.
  21942. type: string
  21943. secretRef:
  21944. description: |-
  21945. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  21946. authenticate with Conjur using the JWT authentication method.
  21947. properties:
  21948. key:
  21949. description: |-
  21950. A key in the referenced Secret.
  21951. Some instances of this field may be defaulted, in others it may be required.
  21952. maxLength: 253
  21953. minLength: 1
  21954. pattern: ^[-._a-zA-Z0-9]+$
  21955. type: string
  21956. name:
  21957. description: The name of the Secret resource being referred to.
  21958. maxLength: 253
  21959. minLength: 1
  21960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21961. type: string
  21962. namespace:
  21963. description: |-
  21964. The namespace of the Secret resource being referred to.
  21965. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21966. maxLength: 63
  21967. minLength: 1
  21968. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21969. type: string
  21970. type: object
  21971. serviceAccountRef:
  21972. description: |-
  21973. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  21974. a token for with the `TokenRequest` API.
  21975. properties:
  21976. audiences:
  21977. description: |-
  21978. Audience specifies the `aud` claim for the service account token
  21979. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21980. then this audiences will be appended to the list
  21981. items:
  21982. type: string
  21983. type: array
  21984. name:
  21985. description: The name of the ServiceAccount resource being referred to.
  21986. maxLength: 253
  21987. minLength: 1
  21988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21989. type: string
  21990. namespace:
  21991. description: |-
  21992. Namespace of the resource being referred to.
  21993. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21994. maxLength: 63
  21995. minLength: 1
  21996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21997. type: string
  21998. required:
  21999. - name
  22000. type: object
  22001. serviceID:
  22002. description: The conjur authn jwt webservice id
  22003. type: string
  22004. required:
  22005. - account
  22006. - serviceID
  22007. type: object
  22008. type: object
  22009. caBundle:
  22010. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  22011. type: string
  22012. caProvider:
  22013. description: |-
  22014. Used to provide custom certificate authority (CA) certificates
  22015. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  22016. that contains a PEM-encoded certificate.
  22017. properties:
  22018. key:
  22019. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22020. maxLength: 253
  22021. minLength: 1
  22022. pattern: ^[-._a-zA-Z0-9]+$
  22023. type: string
  22024. name:
  22025. description: The name of the object located at the provider type.
  22026. maxLength: 253
  22027. minLength: 1
  22028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22029. type: string
  22030. namespace:
  22031. description: |-
  22032. The namespace the Provider type is in.
  22033. Can only be defined when used in a ClusterSecretStore.
  22034. maxLength: 63
  22035. minLength: 1
  22036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22037. type: string
  22038. type:
  22039. description: The type of provider to use such as "Secret", or "ConfigMap".
  22040. enum:
  22041. - Secret
  22042. - ConfigMap
  22043. type: string
  22044. required:
  22045. - name
  22046. - type
  22047. type: object
  22048. url:
  22049. description: URL is the endpoint of the Conjur instance.
  22050. type: string
  22051. required:
  22052. - auth
  22053. - url
  22054. type: object
  22055. delinea:
  22056. description: |-
  22057. Delinea DevOps Secrets Vault
  22058. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  22059. properties:
  22060. clientId:
  22061. description: ClientID is the non-secret part of the credential.
  22062. properties:
  22063. secretRef:
  22064. description: SecretRef references a key in a secret that will be used as value.
  22065. properties:
  22066. key:
  22067. description: |-
  22068. A key in the referenced Secret.
  22069. Some instances of this field may be defaulted, in others it may be required.
  22070. maxLength: 253
  22071. minLength: 1
  22072. pattern: ^[-._a-zA-Z0-9]+$
  22073. type: string
  22074. name:
  22075. description: The name of the Secret resource being referred to.
  22076. maxLength: 253
  22077. minLength: 1
  22078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22079. type: string
  22080. namespace:
  22081. description: |-
  22082. The namespace of the Secret resource being referred to.
  22083. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22084. maxLength: 63
  22085. minLength: 1
  22086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22087. type: string
  22088. type: object
  22089. value:
  22090. description: Value can be specified directly to set a value without using a secret.
  22091. type: string
  22092. type: object
  22093. clientSecret:
  22094. description: ClientSecret is the secret part of the credential.
  22095. properties:
  22096. secretRef:
  22097. description: SecretRef references a key in a secret that will be used as value.
  22098. properties:
  22099. key:
  22100. description: |-
  22101. A key in the referenced Secret.
  22102. Some instances of this field may be defaulted, in others it may be required.
  22103. maxLength: 253
  22104. minLength: 1
  22105. pattern: ^[-._a-zA-Z0-9]+$
  22106. type: string
  22107. name:
  22108. description: The name of the Secret resource being referred to.
  22109. maxLength: 253
  22110. minLength: 1
  22111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22112. type: string
  22113. namespace:
  22114. description: |-
  22115. The namespace of the Secret resource being referred to.
  22116. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22117. maxLength: 63
  22118. minLength: 1
  22119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22120. type: string
  22121. type: object
  22122. value:
  22123. description: Value can be specified directly to set a value without using a secret.
  22124. type: string
  22125. type: object
  22126. tenant:
  22127. description: Tenant is the chosen hostname / site name.
  22128. type: string
  22129. tld:
  22130. description: |-
  22131. TLD is based on the server location that was chosen during provisioning.
  22132. If unset, defaults to "com".
  22133. type: string
  22134. urlTemplate:
  22135. description: |-
  22136. URLTemplate
  22137. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  22138. type: string
  22139. required:
  22140. - clientId
  22141. - clientSecret
  22142. - tenant
  22143. type: object
  22144. device42:
  22145. description: Device42 configures this store to sync secrets using the Device42 provider
  22146. properties:
  22147. auth:
  22148. description: Auth configures how secret-manager authenticates with a Device42 instance.
  22149. properties:
  22150. secretRef:
  22151. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  22152. properties:
  22153. credentials:
  22154. description: Username / Password is used for authentication.
  22155. properties:
  22156. key:
  22157. description: |-
  22158. A key in the referenced Secret.
  22159. Some instances of this field may be defaulted, in others it may be required.
  22160. maxLength: 253
  22161. minLength: 1
  22162. pattern: ^[-._a-zA-Z0-9]+$
  22163. type: string
  22164. name:
  22165. description: The name of the Secret resource being referred to.
  22166. maxLength: 253
  22167. minLength: 1
  22168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22169. type: string
  22170. namespace:
  22171. description: |-
  22172. The namespace of the Secret resource being referred to.
  22173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22174. maxLength: 63
  22175. minLength: 1
  22176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22177. type: string
  22178. type: object
  22179. type: object
  22180. required:
  22181. - secretRef
  22182. type: object
  22183. host:
  22184. description: URL configures the Device42 instance URL.
  22185. type: string
  22186. required:
  22187. - auth
  22188. - host
  22189. type: object
  22190. doppler:
  22191. description: Doppler configures this store to sync secrets using the Doppler provider
  22192. properties:
  22193. auth:
  22194. description: Auth configures how the Operator authenticates with the Doppler API
  22195. properties:
  22196. secretRef:
  22197. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  22198. properties:
  22199. dopplerToken:
  22200. description: |-
  22201. The DopplerToken is used for authentication.
  22202. See https://docs.doppler.com/reference/api#authentication for auth token types.
  22203. The Key attribute defaults to dopplerToken if not specified.
  22204. properties:
  22205. key:
  22206. description: |-
  22207. A key in the referenced Secret.
  22208. Some instances of this field may be defaulted, in others it may be required.
  22209. maxLength: 253
  22210. minLength: 1
  22211. pattern: ^[-._a-zA-Z0-9]+$
  22212. type: string
  22213. name:
  22214. description: The name of the Secret resource being referred to.
  22215. maxLength: 253
  22216. minLength: 1
  22217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22218. type: string
  22219. namespace:
  22220. description: |-
  22221. The namespace of the Secret resource being referred to.
  22222. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22223. maxLength: 63
  22224. minLength: 1
  22225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22226. type: string
  22227. type: object
  22228. required:
  22229. - dopplerToken
  22230. type: object
  22231. required:
  22232. - secretRef
  22233. type: object
  22234. config:
  22235. description: Doppler config (required if not using a Service Token)
  22236. type: string
  22237. format:
  22238. description: Format enables the downloading of secrets as a file (string)
  22239. enum:
  22240. - json
  22241. - dotnet-json
  22242. - env
  22243. - yaml
  22244. - docker
  22245. type: string
  22246. nameTransformer:
  22247. description: Environment variable compatible name transforms that change secret names to a different format
  22248. enum:
  22249. - upper-camel
  22250. - camel
  22251. - lower-snake
  22252. - tf-var
  22253. - dotnet-env
  22254. - lower-kebab
  22255. type: string
  22256. project:
  22257. description: Doppler project (required if not using a Service Token)
  22258. type: string
  22259. required:
  22260. - auth
  22261. type: object
  22262. fake:
  22263. description: Fake configures a store with static key/value pairs
  22264. properties:
  22265. data:
  22266. items:
  22267. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  22268. properties:
  22269. key:
  22270. type: string
  22271. value:
  22272. type: string
  22273. version:
  22274. type: string
  22275. required:
  22276. - key
  22277. - value
  22278. type: object
  22279. type: array
  22280. required:
  22281. - data
  22282. type: object
  22283. fortanix:
  22284. description: Fortanix configures this store to sync secrets using the Fortanix provider
  22285. properties:
  22286. apiKey:
  22287. description: APIKey is the API token to access SDKMS Applications.
  22288. properties:
  22289. secretRef:
  22290. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  22291. properties:
  22292. key:
  22293. description: |-
  22294. A key in the referenced Secret.
  22295. Some instances of this field may be defaulted, in others it may be required.
  22296. maxLength: 253
  22297. minLength: 1
  22298. pattern: ^[-._a-zA-Z0-9]+$
  22299. type: string
  22300. name:
  22301. description: The name of the Secret resource being referred to.
  22302. maxLength: 253
  22303. minLength: 1
  22304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22305. type: string
  22306. namespace:
  22307. description: |-
  22308. The namespace of the Secret resource being referred to.
  22309. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22310. maxLength: 63
  22311. minLength: 1
  22312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22313. type: string
  22314. type: object
  22315. type: object
  22316. apiUrl:
  22317. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  22318. type: string
  22319. type: object
  22320. gcpsm:
  22321. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  22322. properties:
  22323. auth:
  22324. description: Auth defines the information necessary to authenticate against GCP
  22325. properties:
  22326. secretRef:
  22327. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  22328. properties:
  22329. secretAccessKeySecretRef:
  22330. description: The SecretAccessKey is used for authentication
  22331. properties:
  22332. key:
  22333. description: |-
  22334. A key in the referenced Secret.
  22335. Some instances of this field may be defaulted, in others it may be required.
  22336. maxLength: 253
  22337. minLength: 1
  22338. pattern: ^[-._a-zA-Z0-9]+$
  22339. type: string
  22340. name:
  22341. description: The name of the Secret resource being referred to.
  22342. maxLength: 253
  22343. minLength: 1
  22344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22345. type: string
  22346. namespace:
  22347. description: |-
  22348. The namespace of the Secret resource being referred to.
  22349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22350. maxLength: 63
  22351. minLength: 1
  22352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22353. type: string
  22354. type: object
  22355. type: object
  22356. workloadIdentity:
  22357. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  22358. properties:
  22359. clusterLocation:
  22360. description: |-
  22361. ClusterLocation is the location of the cluster
  22362. If not specified, it fetches information from the metadata server
  22363. type: string
  22364. clusterName:
  22365. description: |-
  22366. ClusterName is the name of the cluster
  22367. If not specified, it fetches information from the metadata server
  22368. type: string
  22369. clusterProjectID:
  22370. description: |-
  22371. ClusterProjectID is the project ID of the cluster
  22372. If not specified, it fetches information from the metadata server
  22373. type: string
  22374. serviceAccountRef:
  22375. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  22376. properties:
  22377. audiences:
  22378. description: |-
  22379. Audience specifies the `aud` claim for the service account token
  22380. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22381. then this audiences will be appended to the list
  22382. items:
  22383. type: string
  22384. type: array
  22385. name:
  22386. description: The name of the ServiceAccount resource being referred to.
  22387. maxLength: 253
  22388. minLength: 1
  22389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22390. type: string
  22391. namespace:
  22392. description: |-
  22393. Namespace of the resource being referred to.
  22394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22395. maxLength: 63
  22396. minLength: 1
  22397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22398. type: string
  22399. required:
  22400. - name
  22401. type: object
  22402. required:
  22403. - serviceAccountRef
  22404. type: object
  22405. type: object
  22406. location:
  22407. description: Location optionally defines a location for a secret
  22408. type: string
  22409. projectID:
  22410. description: ProjectID project where secret is located
  22411. type: string
  22412. type: object
  22413. github:
  22414. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  22415. properties:
  22416. appID:
  22417. description: appID specifies the Github APP that will be used to authenticate the client
  22418. type: integer
  22419. auth:
  22420. description: auth configures how secret-manager authenticates with a Github instance.
  22421. properties:
  22422. privateKey:
  22423. description: |-
  22424. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22425. In some instances, `key` is a required field.
  22426. properties:
  22427. key:
  22428. description: |-
  22429. A key in the referenced Secret.
  22430. Some instances of this field may be defaulted, in others it may be required.
  22431. maxLength: 253
  22432. minLength: 1
  22433. pattern: ^[-._a-zA-Z0-9]+$
  22434. type: string
  22435. name:
  22436. description: The name of the Secret resource being referred to.
  22437. maxLength: 253
  22438. minLength: 1
  22439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22440. type: string
  22441. namespace:
  22442. description: |-
  22443. The namespace of the Secret resource being referred to.
  22444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22445. maxLength: 63
  22446. minLength: 1
  22447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22448. type: string
  22449. type: object
  22450. required:
  22451. - privateKey
  22452. type: object
  22453. environment:
  22454. description: environment will be used to fetch secrets from a particular environment within a github repository
  22455. type: string
  22456. installationID:
  22457. description: installationID specifies the Github APP installation that will be used to authenticate the client
  22458. type: integer
  22459. organization:
  22460. description: organization will be used to fetch secrets from the Github organization
  22461. type: string
  22462. repository:
  22463. description: repository will be used to fetch secrets from the Github repository within an organization
  22464. type: string
  22465. uploadURL:
  22466. description: Upload URL for enterprise instances. Default to URL.
  22467. type: string
  22468. url:
  22469. default: https://github.com/
  22470. description: URL configures the Github instance URL. Defaults to https://github.com/.
  22471. type: string
  22472. required:
  22473. - appID
  22474. - auth
  22475. - installationID
  22476. - organization
  22477. type: object
  22478. gitlab:
  22479. description: GitLab configures this store to sync secrets using GitLab Variables provider
  22480. properties:
  22481. auth:
  22482. description: Auth configures how secret-manager authenticates with a GitLab instance.
  22483. properties:
  22484. SecretRef:
  22485. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  22486. properties:
  22487. accessToken:
  22488. description: AccessToken is used for authentication.
  22489. properties:
  22490. key:
  22491. description: |-
  22492. A key in the referenced Secret.
  22493. Some instances of this field may be defaulted, in others it may be required.
  22494. maxLength: 253
  22495. minLength: 1
  22496. pattern: ^[-._a-zA-Z0-9]+$
  22497. type: string
  22498. name:
  22499. description: The name of the Secret resource being referred to.
  22500. maxLength: 253
  22501. minLength: 1
  22502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22503. type: string
  22504. namespace:
  22505. description: |-
  22506. The namespace of the Secret resource being referred to.
  22507. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22508. maxLength: 63
  22509. minLength: 1
  22510. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22511. type: string
  22512. type: object
  22513. type: object
  22514. required:
  22515. - SecretRef
  22516. type: object
  22517. caBundle:
  22518. description: |-
  22519. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22520. can be performed.
  22521. format: byte
  22522. type: string
  22523. caProvider:
  22524. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22525. properties:
  22526. key:
  22527. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22528. maxLength: 253
  22529. minLength: 1
  22530. pattern: ^[-._a-zA-Z0-9]+$
  22531. type: string
  22532. name:
  22533. description: The name of the object located at the provider type.
  22534. maxLength: 253
  22535. minLength: 1
  22536. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22537. type: string
  22538. namespace:
  22539. description: |-
  22540. The namespace the Provider type is in.
  22541. Can only be defined when used in a ClusterSecretStore.
  22542. maxLength: 63
  22543. minLength: 1
  22544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22545. type: string
  22546. type:
  22547. description: The type of provider to use such as "Secret", or "ConfigMap".
  22548. enum:
  22549. - Secret
  22550. - ConfigMap
  22551. type: string
  22552. required:
  22553. - name
  22554. - type
  22555. type: object
  22556. environment:
  22557. 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)
  22558. type: string
  22559. groupIDs:
  22560. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  22561. items:
  22562. type: string
  22563. type: array
  22564. inheritFromGroups:
  22565. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  22566. type: boolean
  22567. projectID:
  22568. description: ProjectID specifies a project where secrets are located.
  22569. type: string
  22570. url:
  22571. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  22572. type: string
  22573. required:
  22574. - auth
  22575. type: object
  22576. ibm:
  22577. description: IBM configures this store to sync secrets using IBM Cloud provider
  22578. properties:
  22579. auth:
  22580. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  22581. maxProperties: 1
  22582. minProperties: 1
  22583. properties:
  22584. containerAuth:
  22585. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  22586. properties:
  22587. iamEndpoint:
  22588. type: string
  22589. profile:
  22590. description: the IBM Trusted Profile
  22591. type: string
  22592. tokenLocation:
  22593. description: Location the token is mounted on the pod
  22594. type: string
  22595. required:
  22596. - profile
  22597. type: object
  22598. secretRef:
  22599. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  22600. properties:
  22601. secretApiKeySecretRef:
  22602. description: The SecretAccessKey is used for authentication
  22603. properties:
  22604. key:
  22605. description: |-
  22606. A key in the referenced Secret.
  22607. Some instances of this field may be defaulted, in others it may be required.
  22608. maxLength: 253
  22609. minLength: 1
  22610. pattern: ^[-._a-zA-Z0-9]+$
  22611. type: string
  22612. name:
  22613. description: The name of the Secret resource being referred to.
  22614. maxLength: 253
  22615. minLength: 1
  22616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22617. type: string
  22618. namespace:
  22619. description: |-
  22620. The namespace of the Secret resource being referred to.
  22621. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22622. maxLength: 63
  22623. minLength: 1
  22624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22625. type: string
  22626. type: object
  22627. type: object
  22628. type: object
  22629. serviceUrl:
  22630. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  22631. type: string
  22632. required:
  22633. - auth
  22634. type: object
  22635. infisical:
  22636. description: Infisical configures this store to sync secrets using the Infisical provider
  22637. properties:
  22638. auth:
  22639. description: Auth configures how the Operator authenticates with the Infisical API
  22640. properties:
  22641. universalAuthCredentials:
  22642. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  22643. properties:
  22644. clientId:
  22645. description: |-
  22646. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22647. In some instances, `key` is a required field.
  22648. properties:
  22649. key:
  22650. description: |-
  22651. A key in the referenced Secret.
  22652. Some instances of this field may be defaulted, in others it may be required.
  22653. maxLength: 253
  22654. minLength: 1
  22655. pattern: ^[-._a-zA-Z0-9]+$
  22656. type: string
  22657. name:
  22658. description: The name of the Secret resource being referred to.
  22659. maxLength: 253
  22660. minLength: 1
  22661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22662. type: string
  22663. namespace:
  22664. description: |-
  22665. The namespace of the Secret resource being referred to.
  22666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22667. maxLength: 63
  22668. minLength: 1
  22669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22670. type: string
  22671. type: object
  22672. clientSecret:
  22673. description: |-
  22674. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22675. In some instances, `key` is a required field.
  22676. properties:
  22677. key:
  22678. description: |-
  22679. A key in the referenced Secret.
  22680. Some instances of this field may be defaulted, in others it may be required.
  22681. maxLength: 253
  22682. minLength: 1
  22683. pattern: ^[-._a-zA-Z0-9]+$
  22684. type: string
  22685. name:
  22686. description: The name of the Secret resource being referred to.
  22687. maxLength: 253
  22688. minLength: 1
  22689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22690. type: string
  22691. namespace:
  22692. description: |-
  22693. The namespace of the Secret resource being referred to.
  22694. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22695. maxLength: 63
  22696. minLength: 1
  22697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22698. type: string
  22699. type: object
  22700. required:
  22701. - clientId
  22702. - clientSecret
  22703. type: object
  22704. type: object
  22705. hostAPI:
  22706. default: https://app.infisical.com/api
  22707. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  22708. type: string
  22709. secretsScope:
  22710. description: SecretsScope defines the scope of the secrets within the workspace
  22711. properties:
  22712. environmentSlug:
  22713. description: EnvironmentSlug is the required slug identifier for the environment.
  22714. type: string
  22715. expandSecretReferences:
  22716. default: true
  22717. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  22718. type: boolean
  22719. projectSlug:
  22720. description: ProjectSlug is the required slug identifier for the project.
  22721. type: string
  22722. recursive:
  22723. default: false
  22724. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  22725. type: boolean
  22726. secretsPath:
  22727. default: /
  22728. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  22729. type: string
  22730. required:
  22731. - environmentSlug
  22732. - projectSlug
  22733. type: object
  22734. required:
  22735. - auth
  22736. - secretsScope
  22737. type: object
  22738. keepersecurity:
  22739. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  22740. properties:
  22741. authRef:
  22742. description: |-
  22743. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22744. In some instances, `key` is a required field.
  22745. properties:
  22746. key:
  22747. description: |-
  22748. A key in the referenced Secret.
  22749. Some instances of this field may be defaulted, in others it may be required.
  22750. maxLength: 253
  22751. minLength: 1
  22752. pattern: ^[-._a-zA-Z0-9]+$
  22753. type: string
  22754. name:
  22755. description: The name of the Secret resource being referred to.
  22756. maxLength: 253
  22757. minLength: 1
  22758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22759. type: string
  22760. namespace:
  22761. description: |-
  22762. The namespace of the Secret resource being referred to.
  22763. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22764. maxLength: 63
  22765. minLength: 1
  22766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22767. type: string
  22768. type: object
  22769. folderID:
  22770. type: string
  22771. required:
  22772. - authRef
  22773. - folderID
  22774. type: object
  22775. kubernetes:
  22776. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  22777. properties:
  22778. auth:
  22779. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  22780. maxProperties: 1
  22781. minProperties: 1
  22782. properties:
  22783. cert:
  22784. description: has both clientCert and clientKey as secretKeySelector
  22785. properties:
  22786. clientCert:
  22787. description: |-
  22788. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22789. In some instances, `key` is a required field.
  22790. properties:
  22791. key:
  22792. description: |-
  22793. A key in the referenced Secret.
  22794. Some instances of this field may be defaulted, in others it may be required.
  22795. maxLength: 253
  22796. minLength: 1
  22797. pattern: ^[-._a-zA-Z0-9]+$
  22798. type: string
  22799. name:
  22800. description: The name of the Secret resource being referred to.
  22801. maxLength: 253
  22802. minLength: 1
  22803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22804. type: string
  22805. namespace:
  22806. description: |-
  22807. The namespace of the Secret resource being referred to.
  22808. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22809. maxLength: 63
  22810. minLength: 1
  22811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22812. type: string
  22813. type: object
  22814. clientKey:
  22815. description: |-
  22816. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22817. In some instances, `key` is a required field.
  22818. properties:
  22819. key:
  22820. description: |-
  22821. A key in the referenced Secret.
  22822. Some instances of this field may be defaulted, in others it may be required.
  22823. maxLength: 253
  22824. minLength: 1
  22825. pattern: ^[-._a-zA-Z0-9]+$
  22826. type: string
  22827. name:
  22828. description: The name of the Secret resource being referred to.
  22829. maxLength: 253
  22830. minLength: 1
  22831. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22832. type: string
  22833. namespace:
  22834. description: |-
  22835. The namespace of the Secret resource being referred to.
  22836. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22837. maxLength: 63
  22838. minLength: 1
  22839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22840. type: string
  22841. type: object
  22842. type: object
  22843. serviceAccount:
  22844. description: points to a service account that should be used for authentication
  22845. properties:
  22846. audiences:
  22847. description: |-
  22848. Audience specifies the `aud` claim for the service account token
  22849. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22850. then this audiences will be appended to the list
  22851. items:
  22852. type: string
  22853. type: array
  22854. name:
  22855. description: The name of the ServiceAccount resource being referred to.
  22856. maxLength: 253
  22857. minLength: 1
  22858. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22859. type: string
  22860. namespace:
  22861. description: |-
  22862. Namespace of the resource being referred to.
  22863. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22864. maxLength: 63
  22865. minLength: 1
  22866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22867. type: string
  22868. required:
  22869. - name
  22870. type: object
  22871. token:
  22872. description: use static token to authenticate with
  22873. properties:
  22874. bearerToken:
  22875. description: |-
  22876. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22877. In some instances, `key` is a required field.
  22878. properties:
  22879. key:
  22880. description: |-
  22881. A key in the referenced Secret.
  22882. Some instances of this field may be defaulted, in others it may be required.
  22883. maxLength: 253
  22884. minLength: 1
  22885. pattern: ^[-._a-zA-Z0-9]+$
  22886. type: string
  22887. name:
  22888. description: The name of the Secret resource being referred to.
  22889. maxLength: 253
  22890. minLength: 1
  22891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22892. type: string
  22893. namespace:
  22894. description: |-
  22895. The namespace of the Secret resource being referred to.
  22896. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22897. maxLength: 63
  22898. minLength: 1
  22899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22900. type: string
  22901. type: object
  22902. type: object
  22903. type: object
  22904. authRef:
  22905. description: A reference to a secret that contains the auth information.
  22906. properties:
  22907. key:
  22908. description: |-
  22909. A key in the referenced Secret.
  22910. Some instances of this field may be defaulted, in others it may be required.
  22911. maxLength: 253
  22912. minLength: 1
  22913. pattern: ^[-._a-zA-Z0-9]+$
  22914. type: string
  22915. name:
  22916. description: The name of the Secret resource being referred to.
  22917. maxLength: 253
  22918. minLength: 1
  22919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22920. type: string
  22921. namespace:
  22922. description: |-
  22923. The namespace of the Secret resource being referred to.
  22924. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22925. maxLength: 63
  22926. minLength: 1
  22927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22928. type: string
  22929. type: object
  22930. remoteNamespace:
  22931. default: default
  22932. description: Remote namespace to fetch the secrets from
  22933. maxLength: 63
  22934. minLength: 1
  22935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22936. type: string
  22937. server:
  22938. description: configures the Kubernetes server Address.
  22939. properties:
  22940. caBundle:
  22941. description: CABundle is a base64-encoded CA certificate
  22942. format: byte
  22943. type: string
  22944. caProvider:
  22945. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  22946. properties:
  22947. key:
  22948. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22949. maxLength: 253
  22950. minLength: 1
  22951. pattern: ^[-._a-zA-Z0-9]+$
  22952. type: string
  22953. name:
  22954. description: The name of the object located at the provider type.
  22955. maxLength: 253
  22956. minLength: 1
  22957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22958. type: string
  22959. namespace:
  22960. description: |-
  22961. The namespace the Provider type is in.
  22962. Can only be defined when used in a ClusterSecretStore.
  22963. maxLength: 63
  22964. minLength: 1
  22965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22966. type: string
  22967. type:
  22968. description: The type of provider to use such as "Secret", or "ConfigMap".
  22969. enum:
  22970. - Secret
  22971. - ConfigMap
  22972. type: string
  22973. required:
  22974. - name
  22975. - type
  22976. type: object
  22977. url:
  22978. default: kubernetes.default
  22979. description: configures the Kubernetes server Address.
  22980. type: string
  22981. type: object
  22982. type: object
  22983. onboardbase:
  22984. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  22985. properties:
  22986. apiHost:
  22987. default: https://public.onboardbase.com/api/v1/
  22988. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  22989. type: string
  22990. auth:
  22991. description: Auth configures how the Operator authenticates with the Onboardbase API
  22992. properties:
  22993. apiKeyRef:
  22994. description: |-
  22995. OnboardbaseAPIKey is the APIKey generated by an admin account.
  22996. It is used to recognize and authorize access to a project and environment within onboardbase
  22997. properties:
  22998. key:
  22999. description: |-
  23000. A key in the referenced Secret.
  23001. Some instances of this field may be defaulted, in others it may be required.
  23002. maxLength: 253
  23003. minLength: 1
  23004. pattern: ^[-._a-zA-Z0-9]+$
  23005. type: string
  23006. name:
  23007. description: The name of the Secret resource being referred to.
  23008. maxLength: 253
  23009. minLength: 1
  23010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23011. type: string
  23012. namespace:
  23013. description: |-
  23014. The namespace of the Secret resource being referred to.
  23015. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23016. maxLength: 63
  23017. minLength: 1
  23018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23019. type: string
  23020. type: object
  23021. passcodeRef:
  23022. description: OnboardbasePasscode is the passcode attached to the API Key
  23023. properties:
  23024. key:
  23025. description: |-
  23026. A key in the referenced Secret.
  23027. Some instances of this field may be defaulted, in others it may be required.
  23028. maxLength: 253
  23029. minLength: 1
  23030. pattern: ^[-._a-zA-Z0-9]+$
  23031. type: string
  23032. name:
  23033. description: The name of the Secret resource being referred to.
  23034. maxLength: 253
  23035. minLength: 1
  23036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23037. type: string
  23038. namespace:
  23039. description: |-
  23040. The namespace of the Secret resource being referred to.
  23041. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23042. maxLength: 63
  23043. minLength: 1
  23044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23045. type: string
  23046. type: object
  23047. required:
  23048. - apiKeyRef
  23049. - passcodeRef
  23050. type: object
  23051. environment:
  23052. default: development
  23053. description: Environment is the name of an environmnent within a project to pull the secrets from
  23054. type: string
  23055. project:
  23056. default: development
  23057. description: Project is an onboardbase project that the secrets should be pulled from
  23058. type: string
  23059. required:
  23060. - apiHost
  23061. - auth
  23062. - environment
  23063. - project
  23064. type: object
  23065. onepassword:
  23066. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  23067. properties:
  23068. auth:
  23069. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  23070. properties:
  23071. secretRef:
  23072. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  23073. properties:
  23074. connectTokenSecretRef:
  23075. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  23076. properties:
  23077. key:
  23078. description: |-
  23079. A key in the referenced Secret.
  23080. Some instances of this field may be defaulted, in others it may be required.
  23081. maxLength: 253
  23082. minLength: 1
  23083. pattern: ^[-._a-zA-Z0-9]+$
  23084. type: string
  23085. name:
  23086. description: The name of the Secret resource being referred to.
  23087. maxLength: 253
  23088. minLength: 1
  23089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23090. type: string
  23091. namespace:
  23092. description: |-
  23093. The namespace of the Secret resource being referred to.
  23094. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23095. maxLength: 63
  23096. minLength: 1
  23097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23098. type: string
  23099. type: object
  23100. required:
  23101. - connectTokenSecretRef
  23102. type: object
  23103. required:
  23104. - secretRef
  23105. type: object
  23106. connectHost:
  23107. description: ConnectHost defines the OnePassword Connect Server to connect to
  23108. type: string
  23109. vaults:
  23110. additionalProperties:
  23111. type: integer
  23112. description: Vaults defines which OnePassword vaults to search in which order
  23113. type: object
  23114. required:
  23115. - auth
  23116. - connectHost
  23117. - vaults
  23118. type: object
  23119. oracle:
  23120. description: Oracle configures this store to sync secrets using Oracle Vault provider
  23121. properties:
  23122. auth:
  23123. description: |-
  23124. Auth configures how secret-manager authenticates with the Oracle Vault.
  23125. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  23126. properties:
  23127. secretRef:
  23128. description: SecretRef to pass through sensitive information.
  23129. properties:
  23130. fingerprint:
  23131. description: Fingerprint is the fingerprint of the API private key.
  23132. properties:
  23133. key:
  23134. description: |-
  23135. A key in the referenced Secret.
  23136. Some instances of this field may be defaulted, in others it may be required.
  23137. maxLength: 253
  23138. minLength: 1
  23139. pattern: ^[-._a-zA-Z0-9]+$
  23140. type: string
  23141. name:
  23142. description: The name of the Secret resource being referred to.
  23143. maxLength: 253
  23144. minLength: 1
  23145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23146. type: string
  23147. namespace:
  23148. description: |-
  23149. The namespace of the Secret resource being referred to.
  23150. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23151. maxLength: 63
  23152. minLength: 1
  23153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23154. type: string
  23155. type: object
  23156. privatekey:
  23157. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  23158. properties:
  23159. key:
  23160. description: |-
  23161. A key in the referenced Secret.
  23162. Some instances of this field may be defaulted, in others it may be required.
  23163. maxLength: 253
  23164. minLength: 1
  23165. pattern: ^[-._a-zA-Z0-9]+$
  23166. type: string
  23167. name:
  23168. description: The name of the Secret resource being referred to.
  23169. maxLength: 253
  23170. minLength: 1
  23171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23172. type: string
  23173. namespace:
  23174. description: |-
  23175. The namespace of the Secret resource being referred to.
  23176. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23177. maxLength: 63
  23178. minLength: 1
  23179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23180. type: string
  23181. type: object
  23182. required:
  23183. - fingerprint
  23184. - privatekey
  23185. type: object
  23186. tenancy:
  23187. description: Tenancy is the tenancy OCID where user is located.
  23188. type: string
  23189. user:
  23190. description: User is an access OCID specific to the account.
  23191. type: string
  23192. required:
  23193. - secretRef
  23194. - tenancy
  23195. - user
  23196. type: object
  23197. compartment:
  23198. description: |-
  23199. Compartment is the vault compartment OCID.
  23200. Required for PushSecret
  23201. type: string
  23202. encryptionKey:
  23203. description: |-
  23204. EncryptionKey is the OCID of the encryption key within the vault.
  23205. Required for PushSecret
  23206. type: string
  23207. principalType:
  23208. description: |-
  23209. The type of principal to use for authentication. If left blank, the Auth struct will
  23210. determine the principal type. This optional field must be specified if using
  23211. workload identity.
  23212. enum:
  23213. - ""
  23214. - UserPrincipal
  23215. - InstancePrincipal
  23216. - Workload
  23217. type: string
  23218. region:
  23219. description: Region is the region where vault is located.
  23220. type: string
  23221. serviceAccountRef:
  23222. description: |-
  23223. ServiceAccountRef specified the service account
  23224. that should be used when authenticating with WorkloadIdentity.
  23225. properties:
  23226. audiences:
  23227. description: |-
  23228. Audience specifies the `aud` claim for the service account token
  23229. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23230. then this audiences will be appended to the list
  23231. items:
  23232. type: string
  23233. type: array
  23234. name:
  23235. description: The name of the ServiceAccount resource being referred to.
  23236. maxLength: 253
  23237. minLength: 1
  23238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23239. type: string
  23240. namespace:
  23241. description: |-
  23242. Namespace of the resource being referred to.
  23243. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23244. maxLength: 63
  23245. minLength: 1
  23246. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23247. type: string
  23248. required:
  23249. - name
  23250. type: object
  23251. vault:
  23252. description: Vault is the vault's OCID of the specific vault where secret is located.
  23253. type: string
  23254. required:
  23255. - region
  23256. - vault
  23257. type: object
  23258. passbolt:
  23259. description: PassboltProvider defines configuration for the Passbolt provider.
  23260. properties:
  23261. auth:
  23262. description: Auth defines the information necessary to authenticate against Passbolt Server
  23263. properties:
  23264. passwordSecretRef:
  23265. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  23266. properties:
  23267. key:
  23268. description: |-
  23269. A key in the referenced Secret.
  23270. Some instances of this field may be defaulted, in others it may be required.
  23271. maxLength: 253
  23272. minLength: 1
  23273. pattern: ^[-._a-zA-Z0-9]+$
  23274. type: string
  23275. name:
  23276. description: The name of the Secret resource being referred to.
  23277. maxLength: 253
  23278. minLength: 1
  23279. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23280. type: string
  23281. namespace:
  23282. description: |-
  23283. The namespace of the Secret resource being referred to.
  23284. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23285. maxLength: 63
  23286. minLength: 1
  23287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23288. type: string
  23289. type: object
  23290. privateKeySecretRef:
  23291. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  23292. properties:
  23293. key:
  23294. description: |-
  23295. A key in the referenced Secret.
  23296. Some instances of this field may be defaulted, in others it may be required.
  23297. maxLength: 253
  23298. minLength: 1
  23299. pattern: ^[-._a-zA-Z0-9]+$
  23300. type: string
  23301. name:
  23302. description: The name of the Secret resource being referred to.
  23303. maxLength: 253
  23304. minLength: 1
  23305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23306. type: string
  23307. namespace:
  23308. description: |-
  23309. The namespace of the Secret resource being referred to.
  23310. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23311. maxLength: 63
  23312. minLength: 1
  23313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23314. type: string
  23315. type: object
  23316. required:
  23317. - passwordSecretRef
  23318. - privateKeySecretRef
  23319. type: object
  23320. host:
  23321. description: Host defines the Passbolt Server to connect to
  23322. type: string
  23323. required:
  23324. - auth
  23325. - host
  23326. type: object
  23327. passworddepot:
  23328. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  23329. properties:
  23330. auth:
  23331. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  23332. properties:
  23333. secretRef:
  23334. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  23335. properties:
  23336. credentials:
  23337. description: Username / Password is used for authentication.
  23338. properties:
  23339. key:
  23340. description: |-
  23341. A key in the referenced Secret.
  23342. Some instances of this field may be defaulted, in others it may be required.
  23343. maxLength: 253
  23344. minLength: 1
  23345. pattern: ^[-._a-zA-Z0-9]+$
  23346. type: string
  23347. name:
  23348. description: The name of the Secret resource being referred to.
  23349. maxLength: 253
  23350. minLength: 1
  23351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23352. type: string
  23353. namespace:
  23354. description: |-
  23355. The namespace of the Secret resource being referred to.
  23356. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23357. maxLength: 63
  23358. minLength: 1
  23359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23360. type: string
  23361. type: object
  23362. type: object
  23363. required:
  23364. - secretRef
  23365. type: object
  23366. database:
  23367. description: Database to use as source
  23368. type: string
  23369. host:
  23370. description: URL configures the Password Depot instance URL.
  23371. type: string
  23372. required:
  23373. - auth
  23374. - database
  23375. - host
  23376. type: object
  23377. previder:
  23378. description: Previder configures this store to sync secrets using the Previder provider
  23379. properties:
  23380. auth:
  23381. description: PreviderAuth contains a secretRef for credentials.
  23382. properties:
  23383. secretRef:
  23384. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  23385. properties:
  23386. accessToken:
  23387. description: The AccessToken is used for authentication
  23388. properties:
  23389. key:
  23390. description: |-
  23391. A key in the referenced Secret.
  23392. Some instances of this field may be defaulted, in others it may be required.
  23393. maxLength: 253
  23394. minLength: 1
  23395. pattern: ^[-._a-zA-Z0-9]+$
  23396. type: string
  23397. name:
  23398. description: The name of the Secret resource being referred to.
  23399. maxLength: 253
  23400. minLength: 1
  23401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23402. type: string
  23403. namespace:
  23404. description: |-
  23405. The namespace of the Secret resource being referred to.
  23406. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23407. maxLength: 63
  23408. minLength: 1
  23409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23410. type: string
  23411. type: object
  23412. required:
  23413. - accessToken
  23414. type: object
  23415. type: object
  23416. baseUri:
  23417. type: string
  23418. required:
  23419. - auth
  23420. type: object
  23421. pulumi:
  23422. description: Pulumi configures this store to sync secrets using the Pulumi provider
  23423. properties:
  23424. accessToken:
  23425. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  23426. properties:
  23427. secretRef:
  23428. description: SecretRef is a reference to a secret containing the Pulumi API token.
  23429. properties:
  23430. key:
  23431. description: |-
  23432. A key in the referenced Secret.
  23433. Some instances of this field may be defaulted, in others it may be required.
  23434. maxLength: 253
  23435. minLength: 1
  23436. pattern: ^[-._a-zA-Z0-9]+$
  23437. type: string
  23438. name:
  23439. description: The name of the Secret resource being referred to.
  23440. maxLength: 253
  23441. minLength: 1
  23442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23443. type: string
  23444. namespace:
  23445. description: |-
  23446. The namespace of the Secret resource being referred to.
  23447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23448. maxLength: 63
  23449. minLength: 1
  23450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23451. type: string
  23452. type: object
  23453. type: object
  23454. apiUrl:
  23455. default: https://api.pulumi.com/api/esc
  23456. description: APIURL is the URL of the Pulumi API.
  23457. type: string
  23458. environment:
  23459. description: |-
  23460. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  23461. dynamically retrieved values from supported providers including all major clouds,
  23462. and other Pulumi ESC environments.
  23463. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  23464. type: string
  23465. organization:
  23466. description: |-
  23467. Organization are a space to collaborate on shared projects and stacks.
  23468. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  23469. type: string
  23470. project:
  23471. description: Project is the name of the Pulumi ESC project the environment belongs to.
  23472. type: string
  23473. required:
  23474. - accessToken
  23475. - environment
  23476. - organization
  23477. - project
  23478. type: object
  23479. scaleway:
  23480. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  23481. properties:
  23482. accessKey:
  23483. description: AccessKey is the non-secret part of the api key.
  23484. properties:
  23485. secretRef:
  23486. description: SecretRef references a key in a secret that will be used as value.
  23487. properties:
  23488. key:
  23489. description: |-
  23490. A key in the referenced Secret.
  23491. Some instances of this field may be defaulted, in others it may be required.
  23492. maxLength: 253
  23493. minLength: 1
  23494. pattern: ^[-._a-zA-Z0-9]+$
  23495. type: string
  23496. name:
  23497. description: The name of the Secret resource being referred to.
  23498. maxLength: 253
  23499. minLength: 1
  23500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23501. type: string
  23502. namespace:
  23503. description: |-
  23504. The namespace of the Secret resource being referred to.
  23505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23506. maxLength: 63
  23507. minLength: 1
  23508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23509. type: string
  23510. type: object
  23511. value:
  23512. description: Value can be specified directly to set a value without using a secret.
  23513. type: string
  23514. type: object
  23515. apiUrl:
  23516. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  23517. type: string
  23518. projectId:
  23519. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  23520. type: string
  23521. region:
  23522. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  23523. type: string
  23524. secretKey:
  23525. description: SecretKey is the non-secret part of the api key.
  23526. properties:
  23527. secretRef:
  23528. description: SecretRef references a key in a secret that will be used as value.
  23529. properties:
  23530. key:
  23531. description: |-
  23532. A key in the referenced Secret.
  23533. Some instances of this field may be defaulted, in others it may be required.
  23534. maxLength: 253
  23535. minLength: 1
  23536. pattern: ^[-._a-zA-Z0-9]+$
  23537. type: string
  23538. name:
  23539. description: The name of the Secret resource being referred to.
  23540. maxLength: 253
  23541. minLength: 1
  23542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23543. type: string
  23544. namespace:
  23545. description: |-
  23546. The namespace of the Secret resource being referred to.
  23547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23548. maxLength: 63
  23549. minLength: 1
  23550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23551. type: string
  23552. type: object
  23553. value:
  23554. description: Value can be specified directly to set a value without using a secret.
  23555. type: string
  23556. type: object
  23557. required:
  23558. - accessKey
  23559. - projectId
  23560. - region
  23561. - secretKey
  23562. type: object
  23563. secretserver:
  23564. description: |-
  23565. SecretServer configures this store to sync secrets using SecretServer provider
  23566. https://docs.delinea.com/online-help/secret-server/start.htm
  23567. properties:
  23568. password:
  23569. description: Password is the secret server account password.
  23570. properties:
  23571. secretRef:
  23572. description: SecretRef references a key in a secret that will be used as value.
  23573. properties:
  23574. key:
  23575. description: |-
  23576. A key in the referenced Secret.
  23577. Some instances of this field may be defaulted, in others it may be required.
  23578. maxLength: 253
  23579. minLength: 1
  23580. pattern: ^[-._a-zA-Z0-9]+$
  23581. type: string
  23582. name:
  23583. description: The name of the Secret resource being referred to.
  23584. maxLength: 253
  23585. minLength: 1
  23586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23587. type: string
  23588. namespace:
  23589. description: |-
  23590. The namespace of the Secret resource being referred to.
  23591. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23592. maxLength: 63
  23593. minLength: 1
  23594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23595. type: string
  23596. type: object
  23597. value:
  23598. description: Value can be specified directly to set a value without using a secret.
  23599. type: string
  23600. type: object
  23601. serverURL:
  23602. description: |-
  23603. ServerURL
  23604. URL to your secret server installation
  23605. type: string
  23606. username:
  23607. description: Username is the secret server account username.
  23608. properties:
  23609. secretRef:
  23610. description: SecretRef references a key in a secret that will be used as value.
  23611. properties:
  23612. key:
  23613. description: |-
  23614. A key in the referenced Secret.
  23615. Some instances of this field may be defaulted, in others it may be required.
  23616. maxLength: 253
  23617. minLength: 1
  23618. pattern: ^[-._a-zA-Z0-9]+$
  23619. type: string
  23620. name:
  23621. description: The name of the Secret resource being referred to.
  23622. maxLength: 253
  23623. minLength: 1
  23624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23625. type: string
  23626. namespace:
  23627. description: |-
  23628. The namespace of the Secret resource being referred to.
  23629. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23630. maxLength: 63
  23631. minLength: 1
  23632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23633. type: string
  23634. type: object
  23635. value:
  23636. description: Value can be specified directly to set a value without using a secret.
  23637. type: string
  23638. type: object
  23639. required:
  23640. - password
  23641. - serverURL
  23642. - username
  23643. type: object
  23644. senhasegura:
  23645. description: Senhasegura configures this store to sync secrets using senhasegura provider
  23646. properties:
  23647. auth:
  23648. description: Auth defines parameters to authenticate in senhasegura
  23649. properties:
  23650. clientId:
  23651. type: string
  23652. clientSecretSecretRef:
  23653. description: |-
  23654. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23655. In some instances, `key` is a required field.
  23656. properties:
  23657. key:
  23658. description: |-
  23659. A key in the referenced Secret.
  23660. Some instances of this field may be defaulted, in others it may be required.
  23661. maxLength: 253
  23662. minLength: 1
  23663. pattern: ^[-._a-zA-Z0-9]+$
  23664. type: string
  23665. name:
  23666. description: The name of the Secret resource being referred to.
  23667. maxLength: 253
  23668. minLength: 1
  23669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23670. type: string
  23671. namespace:
  23672. description: |-
  23673. The namespace of the Secret resource being referred to.
  23674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23675. maxLength: 63
  23676. minLength: 1
  23677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23678. type: string
  23679. type: object
  23680. required:
  23681. - clientId
  23682. - clientSecretSecretRef
  23683. type: object
  23684. ignoreSslCertificate:
  23685. default: false
  23686. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  23687. type: boolean
  23688. module:
  23689. description: Module defines which senhasegura module should be used to get secrets
  23690. type: string
  23691. url:
  23692. description: URL of senhasegura
  23693. type: string
  23694. required:
  23695. - auth
  23696. - module
  23697. - url
  23698. type: object
  23699. vault:
  23700. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  23701. properties:
  23702. auth:
  23703. description: Auth configures how secret-manager authenticates with the Vault server.
  23704. properties:
  23705. appRole:
  23706. description: |-
  23707. AppRole authenticates with Vault using the App Role auth mechanism,
  23708. with the role and secret stored in a Kubernetes Secret resource.
  23709. properties:
  23710. path:
  23711. default: approle
  23712. description: |-
  23713. Path where the App Role authentication backend is mounted
  23714. in Vault, e.g: "approle"
  23715. type: string
  23716. roleId:
  23717. description: |-
  23718. RoleID configured in the App Role authentication backend when setting
  23719. up the authentication backend in Vault.
  23720. type: string
  23721. roleRef:
  23722. description: |-
  23723. Reference to a key in a Secret that contains the App Role ID used
  23724. to authenticate with Vault.
  23725. The `key` field must be specified and denotes which entry within the Secret
  23726. resource is used as the app role id.
  23727. properties:
  23728. key:
  23729. description: |-
  23730. A key in the referenced Secret.
  23731. Some instances of this field may be defaulted, in others it may be required.
  23732. maxLength: 253
  23733. minLength: 1
  23734. pattern: ^[-._a-zA-Z0-9]+$
  23735. type: string
  23736. name:
  23737. description: The name of the Secret resource being referred to.
  23738. maxLength: 253
  23739. minLength: 1
  23740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23741. type: string
  23742. namespace:
  23743. description: |-
  23744. The namespace of the Secret resource being referred to.
  23745. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23746. maxLength: 63
  23747. minLength: 1
  23748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23749. type: string
  23750. type: object
  23751. secretRef:
  23752. description: |-
  23753. Reference to a key in a Secret that contains the App Role secret used
  23754. to authenticate with Vault.
  23755. The `key` field must be specified and denotes which entry within the Secret
  23756. resource is used as the app role secret.
  23757. properties:
  23758. key:
  23759. description: |-
  23760. A key in the referenced Secret.
  23761. Some instances of this field may be defaulted, in others it may be required.
  23762. maxLength: 253
  23763. minLength: 1
  23764. pattern: ^[-._a-zA-Z0-9]+$
  23765. type: string
  23766. name:
  23767. description: The name of the Secret resource being referred to.
  23768. maxLength: 253
  23769. minLength: 1
  23770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23771. type: string
  23772. namespace:
  23773. description: |-
  23774. The namespace of the Secret resource being referred to.
  23775. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23776. maxLength: 63
  23777. minLength: 1
  23778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23779. type: string
  23780. type: object
  23781. required:
  23782. - path
  23783. - secretRef
  23784. type: object
  23785. cert:
  23786. description: |-
  23787. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  23788. Cert authentication method
  23789. properties:
  23790. clientCert:
  23791. description: |-
  23792. ClientCert is a certificate to authenticate using the Cert Vault
  23793. authentication method
  23794. properties:
  23795. key:
  23796. description: |-
  23797. A key in the referenced Secret.
  23798. Some instances of this field may be defaulted, in others it may be required.
  23799. maxLength: 253
  23800. minLength: 1
  23801. pattern: ^[-._a-zA-Z0-9]+$
  23802. type: string
  23803. name:
  23804. description: The name of the Secret resource being referred to.
  23805. maxLength: 253
  23806. minLength: 1
  23807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23808. type: string
  23809. namespace:
  23810. description: |-
  23811. The namespace of the Secret resource being referred to.
  23812. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23813. maxLength: 63
  23814. minLength: 1
  23815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23816. type: string
  23817. type: object
  23818. secretRef:
  23819. description: |-
  23820. SecretRef to a key in a Secret resource containing client private key to
  23821. authenticate with Vault using the Cert authentication method
  23822. properties:
  23823. key:
  23824. description: |-
  23825. A key in the referenced Secret.
  23826. Some instances of this field may be defaulted, in others it may be required.
  23827. maxLength: 253
  23828. minLength: 1
  23829. pattern: ^[-._a-zA-Z0-9]+$
  23830. type: string
  23831. name:
  23832. description: The name of the Secret resource being referred to.
  23833. maxLength: 253
  23834. minLength: 1
  23835. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23836. type: string
  23837. namespace:
  23838. description: |-
  23839. The namespace of the Secret resource being referred to.
  23840. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23841. maxLength: 63
  23842. minLength: 1
  23843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23844. type: string
  23845. type: object
  23846. type: object
  23847. iam:
  23848. description: |-
  23849. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  23850. AWS IAM authentication method
  23851. properties:
  23852. externalID:
  23853. description: AWS External ID set on assumed IAM roles
  23854. type: string
  23855. jwt:
  23856. description: Specify a service account with IRSA enabled
  23857. properties:
  23858. serviceAccountRef:
  23859. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  23860. properties:
  23861. audiences:
  23862. description: |-
  23863. Audience specifies the `aud` claim for the service account token
  23864. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23865. then this audiences will be appended to the list
  23866. items:
  23867. type: string
  23868. type: array
  23869. name:
  23870. description: The name of the ServiceAccount resource being referred to.
  23871. maxLength: 253
  23872. minLength: 1
  23873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23874. type: string
  23875. namespace:
  23876. description: |-
  23877. Namespace of the resource being referred to.
  23878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23879. maxLength: 63
  23880. minLength: 1
  23881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23882. type: string
  23883. required:
  23884. - name
  23885. type: object
  23886. type: object
  23887. path:
  23888. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  23889. type: string
  23890. region:
  23891. description: AWS region
  23892. type: string
  23893. role:
  23894. description: This is the AWS role to be assumed before talking to vault
  23895. type: string
  23896. secretRef:
  23897. description: Specify credentials in a Secret object
  23898. properties:
  23899. accessKeyIDSecretRef:
  23900. description: The AccessKeyID is used for authentication
  23901. properties:
  23902. key:
  23903. description: |-
  23904. A key in the referenced Secret.
  23905. Some instances of this field may be defaulted, in others it may be required.
  23906. maxLength: 253
  23907. minLength: 1
  23908. pattern: ^[-._a-zA-Z0-9]+$
  23909. type: string
  23910. name:
  23911. description: The name of the Secret resource being referred to.
  23912. maxLength: 253
  23913. minLength: 1
  23914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23915. type: string
  23916. namespace:
  23917. description: |-
  23918. The namespace of the Secret resource being referred to.
  23919. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23920. maxLength: 63
  23921. minLength: 1
  23922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23923. type: string
  23924. type: object
  23925. secretAccessKeySecretRef:
  23926. description: The SecretAccessKey is used for authentication
  23927. properties:
  23928. key:
  23929. description: |-
  23930. A key in the referenced Secret.
  23931. Some instances of this field may be defaulted, in others it may be required.
  23932. maxLength: 253
  23933. minLength: 1
  23934. pattern: ^[-._a-zA-Z0-9]+$
  23935. type: string
  23936. name:
  23937. description: The name of the Secret resource being referred to.
  23938. maxLength: 253
  23939. minLength: 1
  23940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23941. type: string
  23942. namespace:
  23943. description: |-
  23944. The namespace of the Secret resource being referred to.
  23945. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23946. maxLength: 63
  23947. minLength: 1
  23948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23949. type: string
  23950. type: object
  23951. sessionTokenSecretRef:
  23952. description: |-
  23953. The SessionToken used for authentication
  23954. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  23955. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  23956. properties:
  23957. key:
  23958. description: |-
  23959. A key in the referenced Secret.
  23960. Some instances of this field may be defaulted, in others it may be required.
  23961. maxLength: 253
  23962. minLength: 1
  23963. pattern: ^[-._a-zA-Z0-9]+$
  23964. type: string
  23965. name:
  23966. description: The name of the Secret resource being referred to.
  23967. maxLength: 253
  23968. minLength: 1
  23969. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23970. type: string
  23971. namespace:
  23972. description: |-
  23973. The namespace of the Secret resource being referred to.
  23974. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23975. maxLength: 63
  23976. minLength: 1
  23977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23978. type: string
  23979. type: object
  23980. type: object
  23981. vaultAwsIamServerID:
  23982. 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'
  23983. type: string
  23984. vaultRole:
  23985. 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
  23986. type: string
  23987. required:
  23988. - vaultRole
  23989. type: object
  23990. jwt:
  23991. description: |-
  23992. Jwt authenticates with Vault by passing role and JWT token using the
  23993. JWT/OIDC authentication method
  23994. properties:
  23995. kubernetesServiceAccountToken:
  23996. description: |-
  23997. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  23998. a token for with the `TokenRequest` API.
  23999. properties:
  24000. audiences:
  24001. description: |-
  24002. Optional audiences field that will be used to request a temporary Kubernetes service
  24003. account token for the service account referenced by `serviceAccountRef`.
  24004. Defaults to a single audience `vault` it not specified.
  24005. Deprecated: use serviceAccountRef.Audiences instead
  24006. items:
  24007. type: string
  24008. type: array
  24009. expirationSeconds:
  24010. description: |-
  24011. Optional expiration time in seconds that will be used to request a temporary
  24012. Kubernetes service account token for the service account referenced by
  24013. `serviceAccountRef`.
  24014. Deprecated: this will be removed in the future.
  24015. Defaults to 10 minutes.
  24016. type: integer
  24017. serviceAccountRef:
  24018. description: Service account field containing the name of a kubernetes ServiceAccount.
  24019. properties:
  24020. audiences:
  24021. description: |-
  24022. Audience specifies the `aud` claim for the service account token
  24023. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24024. then this audiences will be appended to the list
  24025. items:
  24026. type: string
  24027. type: array
  24028. name:
  24029. description: The name of the ServiceAccount resource being referred to.
  24030. maxLength: 253
  24031. minLength: 1
  24032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24033. type: string
  24034. namespace:
  24035. description: |-
  24036. Namespace of the resource being referred to.
  24037. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24038. maxLength: 63
  24039. minLength: 1
  24040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24041. type: string
  24042. required:
  24043. - name
  24044. type: object
  24045. required:
  24046. - serviceAccountRef
  24047. type: object
  24048. path:
  24049. default: jwt
  24050. description: |-
  24051. Path where the JWT authentication backend is mounted
  24052. in Vault, e.g: "jwt"
  24053. type: string
  24054. role:
  24055. description: |-
  24056. Role is a JWT role to authenticate using the JWT/OIDC Vault
  24057. authentication method
  24058. type: string
  24059. secretRef:
  24060. description: |-
  24061. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  24062. authenticate with Vault using the JWT/OIDC authentication method.
  24063. properties:
  24064. key:
  24065. description: |-
  24066. A key in the referenced Secret.
  24067. Some instances of this field may be defaulted, in others it may be required.
  24068. maxLength: 253
  24069. minLength: 1
  24070. pattern: ^[-._a-zA-Z0-9]+$
  24071. type: string
  24072. name:
  24073. description: The name of the Secret resource being referred to.
  24074. maxLength: 253
  24075. minLength: 1
  24076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24077. type: string
  24078. namespace:
  24079. description: |-
  24080. The namespace of the Secret resource being referred to.
  24081. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24082. maxLength: 63
  24083. minLength: 1
  24084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24085. type: string
  24086. type: object
  24087. required:
  24088. - path
  24089. type: object
  24090. kubernetes:
  24091. description: |-
  24092. Kubernetes authenticates with Vault by passing the ServiceAccount
  24093. token stored in the named Secret resource to the Vault server.
  24094. properties:
  24095. mountPath:
  24096. default: kubernetes
  24097. description: |-
  24098. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  24099. "kubernetes"
  24100. type: string
  24101. role:
  24102. description: |-
  24103. A required field containing the Vault Role to assume. A Role binds a
  24104. Kubernetes ServiceAccount with a set of Vault policies.
  24105. type: string
  24106. secretRef:
  24107. description: |-
  24108. Optional secret field containing a Kubernetes ServiceAccount JWT used
  24109. for authenticating with Vault. If a name is specified without a key,
  24110. `token` is the default. If one is not specified, the one bound to
  24111. the controller will be used.
  24112. properties:
  24113. key:
  24114. description: |-
  24115. A key in the referenced Secret.
  24116. Some instances of this field may be defaulted, in others it may be required.
  24117. maxLength: 253
  24118. minLength: 1
  24119. pattern: ^[-._a-zA-Z0-9]+$
  24120. type: string
  24121. name:
  24122. description: The name of the Secret resource being referred to.
  24123. maxLength: 253
  24124. minLength: 1
  24125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24126. type: string
  24127. namespace:
  24128. description: |-
  24129. The namespace of the Secret resource being referred to.
  24130. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24131. maxLength: 63
  24132. minLength: 1
  24133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24134. type: string
  24135. type: object
  24136. serviceAccountRef:
  24137. description: |-
  24138. Optional service account field containing the name of a kubernetes ServiceAccount.
  24139. If the service account is specified, the service account secret token JWT will be used
  24140. for authenticating with Vault. If the service account selector is not supplied,
  24141. the secretRef will be used instead.
  24142. properties:
  24143. audiences:
  24144. description: |-
  24145. Audience specifies the `aud` claim for the service account token
  24146. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24147. then this audiences will be appended to the list
  24148. items:
  24149. type: string
  24150. type: array
  24151. name:
  24152. description: The name of the ServiceAccount resource being referred to.
  24153. maxLength: 253
  24154. minLength: 1
  24155. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24156. type: string
  24157. namespace:
  24158. description: |-
  24159. Namespace of the resource being referred to.
  24160. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24161. maxLength: 63
  24162. minLength: 1
  24163. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24164. type: string
  24165. required:
  24166. - name
  24167. type: object
  24168. required:
  24169. - mountPath
  24170. - role
  24171. type: object
  24172. ldap:
  24173. description: |-
  24174. Ldap authenticates with Vault by passing username/password pair using
  24175. the LDAP authentication method
  24176. properties:
  24177. path:
  24178. default: ldap
  24179. description: |-
  24180. Path where the LDAP authentication backend is mounted
  24181. in Vault, e.g: "ldap"
  24182. type: string
  24183. secretRef:
  24184. description: |-
  24185. SecretRef to a key in a Secret resource containing password for the LDAP
  24186. user used to authenticate with Vault using the LDAP authentication
  24187. method
  24188. properties:
  24189. key:
  24190. description: |-
  24191. A key in the referenced Secret.
  24192. Some instances of this field may be defaulted, in others it may be required.
  24193. maxLength: 253
  24194. minLength: 1
  24195. pattern: ^[-._a-zA-Z0-9]+$
  24196. type: string
  24197. name:
  24198. description: The name of the Secret resource being referred to.
  24199. maxLength: 253
  24200. minLength: 1
  24201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24202. type: string
  24203. namespace:
  24204. description: |-
  24205. The namespace of the Secret resource being referred to.
  24206. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24207. maxLength: 63
  24208. minLength: 1
  24209. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24210. type: string
  24211. type: object
  24212. username:
  24213. description: |-
  24214. Username is an LDAP username used to authenticate using the LDAP Vault
  24215. authentication method
  24216. type: string
  24217. required:
  24218. - path
  24219. - username
  24220. type: object
  24221. namespace:
  24222. description: |-
  24223. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  24224. Namespaces is a set of features within Vault Enterprise that allows
  24225. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24226. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24227. This will default to Vault.Namespace field if set, or empty otherwise
  24228. type: string
  24229. tokenSecretRef:
  24230. description: TokenSecretRef authenticates with Vault by presenting a token.
  24231. properties:
  24232. key:
  24233. description: |-
  24234. A key in the referenced Secret.
  24235. Some instances of this field may be defaulted, in others it may be required.
  24236. maxLength: 253
  24237. minLength: 1
  24238. pattern: ^[-._a-zA-Z0-9]+$
  24239. type: string
  24240. name:
  24241. description: The name of the Secret resource being referred to.
  24242. maxLength: 253
  24243. minLength: 1
  24244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24245. type: string
  24246. namespace:
  24247. description: |-
  24248. The namespace of the Secret resource being referred to.
  24249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24250. maxLength: 63
  24251. minLength: 1
  24252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24253. type: string
  24254. type: object
  24255. userPass:
  24256. description: UserPass authenticates with Vault by passing username/password pair
  24257. properties:
  24258. path:
  24259. default: userpass
  24260. description: |-
  24261. Path where the UserPassword authentication backend is mounted
  24262. in Vault, e.g: "userpass"
  24263. type: string
  24264. secretRef:
  24265. description: |-
  24266. SecretRef to a key in a Secret resource containing password for the
  24267. user used to authenticate with Vault using the UserPass authentication
  24268. method
  24269. properties:
  24270. key:
  24271. description: |-
  24272. A key in the referenced Secret.
  24273. Some instances of this field may be defaulted, in others it may be required.
  24274. maxLength: 253
  24275. minLength: 1
  24276. pattern: ^[-._a-zA-Z0-9]+$
  24277. type: string
  24278. name:
  24279. description: The name of the Secret resource being referred to.
  24280. maxLength: 253
  24281. minLength: 1
  24282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24283. type: string
  24284. namespace:
  24285. description: |-
  24286. The namespace of the Secret resource being referred to.
  24287. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24288. maxLength: 63
  24289. minLength: 1
  24290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24291. type: string
  24292. type: object
  24293. username:
  24294. description: |-
  24295. Username is a username used to authenticate using the UserPass Vault
  24296. authentication method
  24297. type: string
  24298. required:
  24299. - path
  24300. - username
  24301. type: object
  24302. type: object
  24303. caBundle:
  24304. description: |-
  24305. PEM encoded CA bundle used to validate Vault server certificate. Only used
  24306. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24307. plain HTTP protocol connection. If not set the system root certificates
  24308. are used to validate the TLS connection.
  24309. format: byte
  24310. type: string
  24311. caProvider:
  24312. description: The provider for the CA bundle to use to validate Vault server certificate.
  24313. properties:
  24314. key:
  24315. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24316. maxLength: 253
  24317. minLength: 1
  24318. pattern: ^[-._a-zA-Z0-9]+$
  24319. type: string
  24320. name:
  24321. description: The name of the object located at the provider type.
  24322. maxLength: 253
  24323. minLength: 1
  24324. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24325. type: string
  24326. namespace:
  24327. description: |-
  24328. The namespace the Provider type is in.
  24329. Can only be defined when used in a ClusterSecretStore.
  24330. maxLength: 63
  24331. minLength: 1
  24332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24333. type: string
  24334. type:
  24335. description: The type of provider to use such as "Secret", or "ConfigMap".
  24336. enum:
  24337. - Secret
  24338. - ConfigMap
  24339. type: string
  24340. required:
  24341. - name
  24342. - type
  24343. type: object
  24344. forwardInconsistent:
  24345. description: |-
  24346. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  24347. leader instead of simply retrying within a loop. This can increase performance if
  24348. the option is enabled serverside.
  24349. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  24350. type: boolean
  24351. headers:
  24352. additionalProperties:
  24353. type: string
  24354. description: Headers to be added in Vault request
  24355. type: object
  24356. namespace:
  24357. description: |-
  24358. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  24359. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24360. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24361. type: string
  24362. path:
  24363. description: |-
  24364. Path is the mount path of the Vault KV backend endpoint, e.g:
  24365. "secret". The v2 KV secret engine version specific "/data" path suffix
  24366. for fetching secrets from Vault is optional and will be appended
  24367. if not present in specified path.
  24368. type: string
  24369. readYourWrites:
  24370. description: |-
  24371. ReadYourWrites ensures isolated read-after-write semantics by
  24372. providing discovered cluster replication states in each request.
  24373. More information about eventual consistency in Vault can be found here
  24374. https://www.vaultproject.io/docs/enterprise/consistency
  24375. type: boolean
  24376. server:
  24377. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  24378. type: string
  24379. tls:
  24380. description: |-
  24381. The configuration used for client side related TLS communication, when the Vault server
  24382. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  24383. This parameter is ignored for plain HTTP protocol connection.
  24384. It's worth noting this configuration is different from the "TLS certificates auth method",
  24385. which is available under the `auth.cert` section.
  24386. properties:
  24387. certSecretRef:
  24388. description: |-
  24389. CertSecretRef is a certificate added to the transport layer
  24390. when communicating with the Vault server.
  24391. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  24392. properties:
  24393. key:
  24394. description: |-
  24395. A key in the referenced Secret.
  24396. Some instances of this field may be defaulted, in others it may be required.
  24397. maxLength: 253
  24398. minLength: 1
  24399. pattern: ^[-._a-zA-Z0-9]+$
  24400. type: string
  24401. name:
  24402. description: The name of the Secret resource being referred to.
  24403. maxLength: 253
  24404. minLength: 1
  24405. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24406. type: string
  24407. namespace:
  24408. description: |-
  24409. The namespace of the Secret resource being referred to.
  24410. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24411. maxLength: 63
  24412. minLength: 1
  24413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24414. type: string
  24415. type: object
  24416. keySecretRef:
  24417. description: |-
  24418. KeySecretRef to a key in a Secret resource containing client private key
  24419. added to the transport layer when communicating with the Vault server.
  24420. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  24421. properties:
  24422. key:
  24423. description: |-
  24424. A key in the referenced Secret.
  24425. Some instances of this field may be defaulted, in others it may be required.
  24426. maxLength: 253
  24427. minLength: 1
  24428. pattern: ^[-._a-zA-Z0-9]+$
  24429. type: string
  24430. name:
  24431. description: The name of the Secret resource being referred to.
  24432. maxLength: 253
  24433. minLength: 1
  24434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24435. type: string
  24436. namespace:
  24437. description: |-
  24438. The namespace of the Secret resource being referred to.
  24439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24440. maxLength: 63
  24441. minLength: 1
  24442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24443. type: string
  24444. type: object
  24445. type: object
  24446. version:
  24447. default: v2
  24448. description: |-
  24449. Version is the Vault KV secret engine version. This can be either "v1" or
  24450. "v2". Version defaults to "v2".
  24451. enum:
  24452. - v1
  24453. - v2
  24454. type: string
  24455. required:
  24456. - server
  24457. type: object
  24458. webhook:
  24459. description: Webhook configures this store to sync secrets using a generic templated webhook
  24460. properties:
  24461. auth:
  24462. description: Auth specifies a authorization protocol. Only one protocol may be set.
  24463. maxProperties: 1
  24464. minProperties: 1
  24465. properties:
  24466. ntlm:
  24467. description: NTLMProtocol configures the store to use NTLM for auth
  24468. properties:
  24469. passwordSecret:
  24470. description: |-
  24471. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24472. In some instances, `key` is a required field.
  24473. properties:
  24474. key:
  24475. description: |-
  24476. A key in the referenced Secret.
  24477. Some instances of this field may be defaulted, in others it may be required.
  24478. maxLength: 253
  24479. minLength: 1
  24480. pattern: ^[-._a-zA-Z0-9]+$
  24481. type: string
  24482. name:
  24483. description: The name of the Secret resource being referred to.
  24484. maxLength: 253
  24485. minLength: 1
  24486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24487. type: string
  24488. namespace:
  24489. description: |-
  24490. The namespace of the Secret resource being referred to.
  24491. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24492. maxLength: 63
  24493. minLength: 1
  24494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24495. type: string
  24496. type: object
  24497. usernameSecret:
  24498. description: |-
  24499. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24500. In some instances, `key` is a required field.
  24501. properties:
  24502. key:
  24503. description: |-
  24504. A key in the referenced Secret.
  24505. Some instances of this field may be defaulted, in others it may be required.
  24506. maxLength: 253
  24507. minLength: 1
  24508. pattern: ^[-._a-zA-Z0-9]+$
  24509. type: string
  24510. name:
  24511. description: The name of the Secret resource being referred to.
  24512. maxLength: 253
  24513. minLength: 1
  24514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24515. type: string
  24516. namespace:
  24517. description: |-
  24518. The namespace of the Secret resource being referred to.
  24519. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24520. maxLength: 63
  24521. minLength: 1
  24522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24523. type: string
  24524. type: object
  24525. required:
  24526. - passwordSecret
  24527. - usernameSecret
  24528. type: object
  24529. type: object
  24530. body:
  24531. description: Body
  24532. type: string
  24533. caBundle:
  24534. description: |-
  24535. PEM encoded CA bundle used to validate webhook server certificate. Only used
  24536. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24537. plain HTTP protocol connection. If not set the system root certificates
  24538. are used to validate the TLS connection.
  24539. format: byte
  24540. type: string
  24541. caProvider:
  24542. description: The provider for the CA bundle to use to validate webhook server certificate.
  24543. properties:
  24544. key:
  24545. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24546. maxLength: 253
  24547. minLength: 1
  24548. pattern: ^[-._a-zA-Z0-9]+$
  24549. type: string
  24550. name:
  24551. description: The name of the object located at the provider type.
  24552. maxLength: 253
  24553. minLength: 1
  24554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24555. type: string
  24556. namespace:
  24557. description: The namespace the Provider type is in.
  24558. maxLength: 63
  24559. minLength: 1
  24560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24561. type: string
  24562. type:
  24563. description: The type of provider to use such as "Secret", or "ConfigMap".
  24564. enum:
  24565. - Secret
  24566. - ConfigMap
  24567. type: string
  24568. required:
  24569. - name
  24570. - type
  24571. type: object
  24572. headers:
  24573. additionalProperties:
  24574. type: string
  24575. description: Headers
  24576. type: object
  24577. method:
  24578. description: Webhook Method
  24579. type: string
  24580. result:
  24581. description: Result formatting
  24582. properties:
  24583. jsonPath:
  24584. description: Json path of return value
  24585. type: string
  24586. type: object
  24587. secrets:
  24588. description: |-
  24589. Secrets to fill in templates
  24590. These secrets will be passed to the templating function as key value pairs under the given name
  24591. items:
  24592. description: WebhookSecret defines a secret to be used in webhook templates.
  24593. properties:
  24594. name:
  24595. description: Name of this secret in templates
  24596. type: string
  24597. secretRef:
  24598. description: Secret ref to fill in credentials
  24599. properties:
  24600. key:
  24601. description: |-
  24602. A key in the referenced Secret.
  24603. Some instances of this field may be defaulted, in others it may be required.
  24604. maxLength: 253
  24605. minLength: 1
  24606. pattern: ^[-._a-zA-Z0-9]+$
  24607. type: string
  24608. name:
  24609. description: The name of the Secret resource being referred to.
  24610. maxLength: 253
  24611. minLength: 1
  24612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24613. type: string
  24614. namespace:
  24615. description: |-
  24616. The namespace of the Secret resource being referred to.
  24617. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24618. maxLength: 63
  24619. minLength: 1
  24620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24621. type: string
  24622. type: object
  24623. required:
  24624. - name
  24625. - secretRef
  24626. type: object
  24627. type: array
  24628. timeout:
  24629. description: Timeout
  24630. type: string
  24631. url:
  24632. description: Webhook url to call
  24633. type: string
  24634. required:
  24635. - result
  24636. - url
  24637. type: object
  24638. yandexcertificatemanager:
  24639. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  24640. properties:
  24641. apiEndpoint:
  24642. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24643. type: string
  24644. auth:
  24645. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  24646. properties:
  24647. authorizedKeySecretRef:
  24648. description: The authorized key used for authentication
  24649. properties:
  24650. key:
  24651. description: |-
  24652. A key in the referenced Secret.
  24653. Some instances of this field may be defaulted, in others it may be required.
  24654. maxLength: 253
  24655. minLength: 1
  24656. pattern: ^[-._a-zA-Z0-9]+$
  24657. type: string
  24658. name:
  24659. description: The name of the Secret resource being referred to.
  24660. maxLength: 253
  24661. minLength: 1
  24662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24663. type: string
  24664. namespace:
  24665. description: |-
  24666. The namespace of the Secret resource being referred to.
  24667. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24668. maxLength: 63
  24669. minLength: 1
  24670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24671. type: string
  24672. type: object
  24673. type: object
  24674. caProvider:
  24675. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24676. properties:
  24677. certSecretRef:
  24678. description: |-
  24679. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24680. In some instances, `key` is a required field.
  24681. properties:
  24682. key:
  24683. description: |-
  24684. A key in the referenced Secret.
  24685. Some instances of this field may be defaulted, in others it may be required.
  24686. maxLength: 253
  24687. minLength: 1
  24688. pattern: ^[-._a-zA-Z0-9]+$
  24689. type: string
  24690. name:
  24691. description: The name of the Secret resource being referred to.
  24692. maxLength: 253
  24693. minLength: 1
  24694. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24695. type: string
  24696. namespace:
  24697. description: |-
  24698. The namespace of the Secret resource being referred to.
  24699. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24700. maxLength: 63
  24701. minLength: 1
  24702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24703. type: string
  24704. type: object
  24705. type: object
  24706. required:
  24707. - auth
  24708. type: object
  24709. yandexlockbox:
  24710. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  24711. properties:
  24712. apiEndpoint:
  24713. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24714. type: string
  24715. auth:
  24716. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  24717. properties:
  24718. authorizedKeySecretRef:
  24719. description: The authorized key used for authentication
  24720. properties:
  24721. key:
  24722. description: |-
  24723. A key in the referenced Secret.
  24724. Some instances of this field may be defaulted, in others it may be required.
  24725. maxLength: 253
  24726. minLength: 1
  24727. pattern: ^[-._a-zA-Z0-9]+$
  24728. type: string
  24729. name:
  24730. description: The name of the Secret resource being referred to.
  24731. maxLength: 253
  24732. minLength: 1
  24733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24734. type: string
  24735. namespace:
  24736. description: |-
  24737. The namespace of the Secret resource being referred to.
  24738. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24739. maxLength: 63
  24740. minLength: 1
  24741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24742. type: string
  24743. type: object
  24744. type: object
  24745. caProvider:
  24746. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24747. properties:
  24748. certSecretRef:
  24749. description: |-
  24750. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24751. In some instances, `key` is a required field.
  24752. properties:
  24753. key:
  24754. description: |-
  24755. A key in the referenced Secret.
  24756. Some instances of this field may be defaulted, in others it may be required.
  24757. maxLength: 253
  24758. minLength: 1
  24759. pattern: ^[-._a-zA-Z0-9]+$
  24760. type: string
  24761. name:
  24762. description: The name of the Secret resource being referred to.
  24763. maxLength: 253
  24764. minLength: 1
  24765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24766. type: string
  24767. namespace:
  24768. description: |-
  24769. The namespace of the Secret resource being referred to.
  24770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24771. maxLength: 63
  24772. minLength: 1
  24773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24774. type: string
  24775. type: object
  24776. type: object
  24777. required:
  24778. - auth
  24779. type: object
  24780. type: object
  24781. refreshInterval:
  24782. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  24783. type: integer
  24784. retrySettings:
  24785. description: Used to configure HTTP retries on failures.
  24786. properties:
  24787. maxRetries:
  24788. description: MaxRetries is the maximum number of retry attempts.
  24789. format: int32
  24790. type: integer
  24791. retryInterval:
  24792. description: RetryInterval is the interval between retry attempts.
  24793. type: string
  24794. type: object
  24795. required:
  24796. - provider
  24797. type: object
  24798. status:
  24799. description: SecretStoreStatus defines the observed state of the SecretStore.
  24800. properties:
  24801. capabilities:
  24802. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  24803. type: string
  24804. conditions:
  24805. items:
  24806. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  24807. properties:
  24808. lastTransitionTime:
  24809. format: date-time
  24810. type: string
  24811. message:
  24812. type: string
  24813. reason:
  24814. type: string
  24815. status:
  24816. type: string
  24817. type:
  24818. description: SecretStoreConditionType represents the condition type of the SecretStore.
  24819. type: string
  24820. required:
  24821. - status
  24822. - type
  24823. type: object
  24824. type: array
  24825. type: object
  24826. type: object
  24827. served: false
  24828. storage: false
  24829. subresources:
  24830. status: {}
  24831. ---
  24832. apiVersion: apiextensions.k8s.io/v1
  24833. kind: CustomResourceDefinition
  24834. metadata:
  24835. annotations:
  24836. controller-gen.kubebuilder.io/version: v0.19.0
  24837. labels:
  24838. external-secrets.io/component: controller
  24839. name: acraccesstokens.generators.external-secrets.io
  24840. spec:
  24841. group: generators.external-secrets.io
  24842. names:
  24843. categories:
  24844. - external-secrets
  24845. - external-secrets-generators
  24846. kind: ACRAccessToken
  24847. listKind: ACRAccessTokenList
  24848. plural: acraccesstokens
  24849. singular: acraccesstoken
  24850. scope: Namespaced
  24851. versions:
  24852. - name: v1alpha1
  24853. schema:
  24854. openAPIV3Schema:
  24855. description: |-
  24856. ACRAccessToken returns an Azure Container Registry token
  24857. that can be used for pushing/pulling images.
  24858. Note: by default it will return an ACR Refresh Token with full access
  24859. (depending on the identity).
  24860. This can be scoped down to the repository level using .spec.scope.
  24861. In case scope is defined it will return an ACR Access Token.
  24862. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  24863. properties:
  24864. apiVersion:
  24865. description: |-
  24866. APIVersion defines the versioned schema of this representation of an object.
  24867. Servers should convert recognized schemas to the latest internal value, and
  24868. may reject unrecognized values.
  24869. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24870. type: string
  24871. kind:
  24872. description: |-
  24873. Kind is a string value representing the REST resource this object represents.
  24874. Servers may infer this from the endpoint the client submits requests to.
  24875. Cannot be updated.
  24876. In CamelCase.
  24877. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24878. type: string
  24879. metadata:
  24880. type: object
  24881. spec:
  24882. description: |-
  24883. ACRAccessTokenSpec defines how to generate the access token
  24884. e.g. how to authenticate and which registry to use.
  24885. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  24886. properties:
  24887. auth:
  24888. description: ACRAuth defines the authentication methods for Azure Container Registry.
  24889. properties:
  24890. managedIdentity:
  24891. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  24892. properties:
  24893. identityId:
  24894. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  24895. type: string
  24896. type: object
  24897. servicePrincipal:
  24898. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  24899. properties:
  24900. secretRef:
  24901. description: |-
  24902. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  24903. It uses static credentials stored in a Kind=Secret.
  24904. properties:
  24905. clientId:
  24906. description: The Azure clientId of the service principle used for authentication.
  24907. properties:
  24908. key:
  24909. description: |-
  24910. A key in the referenced Secret.
  24911. Some instances of this field may be defaulted, in others it may be required.
  24912. maxLength: 253
  24913. minLength: 1
  24914. pattern: ^[-._a-zA-Z0-9]+$
  24915. type: string
  24916. name:
  24917. description: The name of the Secret resource being referred to.
  24918. maxLength: 253
  24919. minLength: 1
  24920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24921. type: string
  24922. namespace:
  24923. description: |-
  24924. The namespace of the Secret resource being referred to.
  24925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24926. maxLength: 63
  24927. minLength: 1
  24928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24929. type: string
  24930. type: object
  24931. clientSecret:
  24932. description: The Azure ClientSecret of the service principle used for authentication.
  24933. properties:
  24934. key:
  24935. description: |-
  24936. A key in the referenced Secret.
  24937. Some instances of this field may be defaulted, in others it may be required.
  24938. maxLength: 253
  24939. minLength: 1
  24940. pattern: ^[-._a-zA-Z0-9]+$
  24941. type: string
  24942. name:
  24943. description: The name of the Secret resource being referred to.
  24944. maxLength: 253
  24945. minLength: 1
  24946. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24947. type: string
  24948. namespace:
  24949. description: |-
  24950. The namespace of the Secret resource being referred to.
  24951. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24952. maxLength: 63
  24953. minLength: 1
  24954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24955. type: string
  24956. type: object
  24957. type: object
  24958. required:
  24959. - secretRef
  24960. type: object
  24961. workloadIdentity:
  24962. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  24963. properties:
  24964. serviceAccountRef:
  24965. description: |-
  24966. ServiceAccountRef specified the service account
  24967. that should be used when authenticating with WorkloadIdentity.
  24968. properties:
  24969. audiences:
  24970. description: |-
  24971. Audience specifies the `aud` claim for the service account token
  24972. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24973. then this audiences will be appended to the list
  24974. items:
  24975. type: string
  24976. type: array
  24977. name:
  24978. description: The name of the ServiceAccount resource being referred to.
  24979. maxLength: 253
  24980. minLength: 1
  24981. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24982. type: string
  24983. namespace:
  24984. description: |-
  24985. Namespace of the resource being referred to.
  24986. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24987. maxLength: 63
  24988. minLength: 1
  24989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24990. type: string
  24991. required:
  24992. - name
  24993. type: object
  24994. type: object
  24995. type: object
  24996. environmentType:
  24997. default: PublicCloud
  24998. description: |-
  24999. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25000. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25001. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25002. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25003. enum:
  25004. - PublicCloud
  25005. - USGovernmentCloud
  25006. - ChinaCloud
  25007. - GermanCloud
  25008. - AzureStackCloud
  25009. type: string
  25010. registry:
  25011. description: |-
  25012. the domain name of the ACR registry
  25013. e.g. foobarexample.azurecr.io
  25014. type: string
  25015. scope:
  25016. description: |-
  25017. Define the scope for the access token, e.g. pull/push access for a repository.
  25018. if not provided it will return a refresh token that has full scope.
  25019. Note: you need to pin it down to the repository level, there is no wildcard available.
  25020. examples:
  25021. repository:my-repository:pull,push
  25022. repository:my-repository:pull
  25023. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25024. type: string
  25025. tenantId:
  25026. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25027. type: string
  25028. required:
  25029. - auth
  25030. - registry
  25031. type: object
  25032. type: object
  25033. served: true
  25034. storage: true
  25035. subresources:
  25036. status: {}
  25037. ---
  25038. apiVersion: apiextensions.k8s.io/v1
  25039. kind: CustomResourceDefinition
  25040. metadata:
  25041. annotations:
  25042. controller-gen.kubebuilder.io/version: v0.19.0
  25043. labels:
  25044. external-secrets.io/component: controller
  25045. name: cloudsmithaccesstokens.generators.external-secrets.io
  25046. spec:
  25047. group: generators.external-secrets.io
  25048. names:
  25049. categories:
  25050. - external-secrets
  25051. - external-secrets-generators
  25052. kind: CloudsmithAccessToken
  25053. listKind: CloudsmithAccessTokenList
  25054. plural: cloudsmithaccesstokens
  25055. singular: cloudsmithaccesstoken
  25056. scope: Namespaced
  25057. versions:
  25058. - name: v1alpha1
  25059. schema:
  25060. openAPIV3Schema:
  25061. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  25062. properties:
  25063. apiVersion:
  25064. description: |-
  25065. APIVersion defines the versioned schema of this representation of an object.
  25066. Servers should convert recognized schemas to the latest internal value, and
  25067. may reject unrecognized values.
  25068. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25069. type: string
  25070. kind:
  25071. description: |-
  25072. Kind is a string value representing the REST resource this object represents.
  25073. Servers may infer this from the endpoint the client submits requests to.
  25074. Cannot be updated.
  25075. In CamelCase.
  25076. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25077. type: string
  25078. metadata:
  25079. type: object
  25080. spec:
  25081. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25082. properties:
  25083. apiUrl:
  25084. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25085. type: string
  25086. orgSlug:
  25087. description: OrgSlug is the organization slug in Cloudsmith
  25088. type: string
  25089. serviceAccountRef:
  25090. description: Name of the service account you are federating with
  25091. properties:
  25092. audiences:
  25093. description: |-
  25094. Audience specifies the `aud` claim for the service account token
  25095. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25096. then this audiences will be appended to the list
  25097. items:
  25098. type: string
  25099. type: array
  25100. name:
  25101. description: The name of the ServiceAccount resource being referred to.
  25102. maxLength: 253
  25103. minLength: 1
  25104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25105. type: string
  25106. namespace:
  25107. description: |-
  25108. Namespace of the resource being referred to.
  25109. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25110. maxLength: 63
  25111. minLength: 1
  25112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25113. type: string
  25114. required:
  25115. - name
  25116. type: object
  25117. serviceSlug:
  25118. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25119. type: string
  25120. required:
  25121. - orgSlug
  25122. - serviceAccountRef
  25123. - serviceSlug
  25124. type: object
  25125. type: object
  25126. served: true
  25127. storage: true
  25128. subresources:
  25129. status: {}
  25130. ---
  25131. apiVersion: apiextensions.k8s.io/v1
  25132. kind: CustomResourceDefinition
  25133. metadata:
  25134. annotations:
  25135. controller-gen.kubebuilder.io/version: v0.19.0
  25136. labels:
  25137. external-secrets.io/component: controller
  25138. name: clustergenerators.generators.external-secrets.io
  25139. spec:
  25140. group: generators.external-secrets.io
  25141. names:
  25142. categories:
  25143. - external-secrets
  25144. - external-secrets-generators
  25145. kind: ClusterGenerator
  25146. listKind: ClusterGeneratorList
  25147. plural: clustergenerators
  25148. singular: clustergenerator
  25149. scope: Cluster
  25150. versions:
  25151. - name: v1alpha1
  25152. schema:
  25153. openAPIV3Schema:
  25154. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  25155. properties:
  25156. apiVersion:
  25157. description: |-
  25158. APIVersion defines the versioned schema of this representation of an object.
  25159. Servers should convert recognized schemas to the latest internal value, and
  25160. may reject unrecognized values.
  25161. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25162. type: string
  25163. kind:
  25164. description: |-
  25165. Kind is a string value representing the REST resource this object represents.
  25166. Servers may infer this from the endpoint the client submits requests to.
  25167. Cannot be updated.
  25168. In CamelCase.
  25169. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25170. type: string
  25171. metadata:
  25172. type: object
  25173. spec:
  25174. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  25175. properties:
  25176. generator:
  25177. description: Generator the spec for this generator, must match the kind.
  25178. maxProperties: 1
  25179. minProperties: 1
  25180. properties:
  25181. acrAccessTokenSpec:
  25182. description: |-
  25183. ACRAccessTokenSpec defines how to generate the access token
  25184. e.g. how to authenticate and which registry to use.
  25185. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25186. properties:
  25187. auth:
  25188. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25189. properties:
  25190. managedIdentity:
  25191. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25192. properties:
  25193. identityId:
  25194. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25195. type: string
  25196. type: object
  25197. servicePrincipal:
  25198. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25199. properties:
  25200. secretRef:
  25201. description: |-
  25202. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25203. It uses static credentials stored in a Kind=Secret.
  25204. properties:
  25205. clientId:
  25206. description: The Azure clientId of the service principle used for authentication.
  25207. properties:
  25208. key:
  25209. description: |-
  25210. A key in the referenced Secret.
  25211. Some instances of this field may be defaulted, in others it may be required.
  25212. maxLength: 253
  25213. minLength: 1
  25214. pattern: ^[-._a-zA-Z0-9]+$
  25215. type: string
  25216. name:
  25217. description: The name of the Secret resource being referred to.
  25218. maxLength: 253
  25219. minLength: 1
  25220. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25221. type: string
  25222. namespace:
  25223. description: |-
  25224. The namespace of the Secret resource being referred to.
  25225. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25226. maxLength: 63
  25227. minLength: 1
  25228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25229. type: string
  25230. type: object
  25231. clientSecret:
  25232. description: The Azure ClientSecret of the service principle used for authentication.
  25233. properties:
  25234. key:
  25235. description: |-
  25236. A key in the referenced Secret.
  25237. Some instances of this field may be defaulted, in others it may be required.
  25238. maxLength: 253
  25239. minLength: 1
  25240. pattern: ^[-._a-zA-Z0-9]+$
  25241. type: string
  25242. name:
  25243. description: The name of the Secret resource being referred to.
  25244. maxLength: 253
  25245. minLength: 1
  25246. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25247. type: string
  25248. namespace:
  25249. description: |-
  25250. The namespace of the Secret resource being referred to.
  25251. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25252. maxLength: 63
  25253. minLength: 1
  25254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25255. type: string
  25256. type: object
  25257. type: object
  25258. required:
  25259. - secretRef
  25260. type: object
  25261. workloadIdentity:
  25262. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  25263. properties:
  25264. serviceAccountRef:
  25265. description: |-
  25266. ServiceAccountRef specified the service account
  25267. that should be used when authenticating with WorkloadIdentity.
  25268. properties:
  25269. audiences:
  25270. description: |-
  25271. Audience specifies the `aud` claim for the service account token
  25272. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25273. then this audiences will be appended to the list
  25274. items:
  25275. type: string
  25276. type: array
  25277. name:
  25278. description: The name of the ServiceAccount resource being referred to.
  25279. maxLength: 253
  25280. minLength: 1
  25281. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25282. type: string
  25283. namespace:
  25284. description: |-
  25285. Namespace of the resource being referred to.
  25286. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25287. maxLength: 63
  25288. minLength: 1
  25289. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25290. type: string
  25291. required:
  25292. - name
  25293. type: object
  25294. type: object
  25295. type: object
  25296. environmentType:
  25297. default: PublicCloud
  25298. description: |-
  25299. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25300. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25301. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25302. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25303. enum:
  25304. - PublicCloud
  25305. - USGovernmentCloud
  25306. - ChinaCloud
  25307. - GermanCloud
  25308. - AzureStackCloud
  25309. type: string
  25310. registry:
  25311. description: |-
  25312. the domain name of the ACR registry
  25313. e.g. foobarexample.azurecr.io
  25314. type: string
  25315. scope:
  25316. description: |-
  25317. Define the scope for the access token, e.g. pull/push access for a repository.
  25318. if not provided it will return a refresh token that has full scope.
  25319. Note: you need to pin it down to the repository level, there is no wildcard available.
  25320. examples:
  25321. repository:my-repository:pull,push
  25322. repository:my-repository:pull
  25323. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25324. type: string
  25325. tenantId:
  25326. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25327. type: string
  25328. required:
  25329. - auth
  25330. - registry
  25331. type: object
  25332. cloudsmithAccessTokenSpec:
  25333. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25334. properties:
  25335. apiUrl:
  25336. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25337. type: string
  25338. orgSlug:
  25339. description: OrgSlug is the organization slug in Cloudsmith
  25340. type: string
  25341. serviceAccountRef:
  25342. description: Name of the service account you are federating with
  25343. properties:
  25344. audiences:
  25345. description: |-
  25346. Audience specifies the `aud` claim for the service account token
  25347. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25348. then this audiences will be appended to the list
  25349. items:
  25350. type: string
  25351. type: array
  25352. name:
  25353. description: The name of the ServiceAccount resource being referred to.
  25354. maxLength: 253
  25355. minLength: 1
  25356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25357. type: string
  25358. namespace:
  25359. description: |-
  25360. Namespace of the resource being referred to.
  25361. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25362. maxLength: 63
  25363. minLength: 1
  25364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25365. type: string
  25366. required:
  25367. - name
  25368. type: object
  25369. serviceSlug:
  25370. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25371. type: string
  25372. required:
  25373. - orgSlug
  25374. - serviceAccountRef
  25375. - serviceSlug
  25376. type: object
  25377. ecrAuthorizationTokenSpec:
  25378. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  25379. properties:
  25380. auth:
  25381. description: Auth defines how to authenticate with AWS
  25382. properties:
  25383. jwt:
  25384. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  25385. properties:
  25386. serviceAccountRef:
  25387. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25388. properties:
  25389. audiences:
  25390. description: |-
  25391. Audience specifies the `aud` claim for the service account token
  25392. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25393. then this audiences will be appended to the list
  25394. items:
  25395. type: string
  25396. type: array
  25397. name:
  25398. description: The name of the ServiceAccount resource being referred to.
  25399. maxLength: 253
  25400. minLength: 1
  25401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25402. type: string
  25403. namespace:
  25404. description: |-
  25405. Namespace of the resource being referred to.
  25406. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25407. maxLength: 63
  25408. minLength: 1
  25409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25410. type: string
  25411. required:
  25412. - name
  25413. type: object
  25414. type: object
  25415. secretRef:
  25416. description: |-
  25417. AWSAuthSecretRef holds secret references for AWS credentials
  25418. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  25419. properties:
  25420. accessKeyIDSecretRef:
  25421. description: The AccessKeyID is used for authentication
  25422. properties:
  25423. key:
  25424. description: |-
  25425. A key in the referenced Secret.
  25426. Some instances of this field may be defaulted, in others it may be required.
  25427. maxLength: 253
  25428. minLength: 1
  25429. pattern: ^[-._a-zA-Z0-9]+$
  25430. type: string
  25431. name:
  25432. description: The name of the Secret resource being referred to.
  25433. maxLength: 253
  25434. minLength: 1
  25435. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25436. type: string
  25437. namespace:
  25438. description: |-
  25439. The namespace of the Secret resource being referred to.
  25440. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25441. maxLength: 63
  25442. minLength: 1
  25443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25444. type: string
  25445. type: object
  25446. secretAccessKeySecretRef:
  25447. description: The SecretAccessKey is used for authentication
  25448. properties:
  25449. key:
  25450. description: |-
  25451. A key in the referenced Secret.
  25452. Some instances of this field may be defaulted, in others it may be required.
  25453. maxLength: 253
  25454. minLength: 1
  25455. pattern: ^[-._a-zA-Z0-9]+$
  25456. type: string
  25457. name:
  25458. description: The name of the Secret resource being referred to.
  25459. maxLength: 253
  25460. minLength: 1
  25461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25462. type: string
  25463. namespace:
  25464. description: |-
  25465. The namespace of the Secret resource being referred to.
  25466. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25467. maxLength: 63
  25468. minLength: 1
  25469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25470. type: string
  25471. type: object
  25472. sessionTokenSecretRef:
  25473. description: |-
  25474. The SessionToken used for authentication
  25475. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  25476. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  25477. properties:
  25478. key:
  25479. description: |-
  25480. A key in the referenced Secret.
  25481. Some instances of this field may be defaulted, in others it may be required.
  25482. maxLength: 253
  25483. minLength: 1
  25484. pattern: ^[-._a-zA-Z0-9]+$
  25485. type: string
  25486. name:
  25487. description: The name of the Secret resource being referred to.
  25488. maxLength: 253
  25489. minLength: 1
  25490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25491. type: string
  25492. namespace:
  25493. description: |-
  25494. The namespace of the Secret resource being referred to.
  25495. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25496. maxLength: 63
  25497. minLength: 1
  25498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25499. type: string
  25500. type: object
  25501. type: object
  25502. type: object
  25503. region:
  25504. description: Region specifies the region to operate in.
  25505. type: string
  25506. role:
  25507. description: |-
  25508. You can assume a role before making calls to the
  25509. desired AWS service.
  25510. type: string
  25511. scope:
  25512. description: |-
  25513. Scope specifies the ECR service scope.
  25514. Valid options are private and public.
  25515. type: string
  25516. required:
  25517. - region
  25518. type: object
  25519. fakeSpec:
  25520. description: FakeSpec contains the static data.
  25521. properties:
  25522. controller:
  25523. description: |-
  25524. Used to select the correct ESO controller (think: ingress.ingressClassName)
  25525. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  25526. type: string
  25527. data:
  25528. additionalProperties:
  25529. type: string
  25530. description: |-
  25531. Data defines the static data returned
  25532. by this generator.
  25533. type: object
  25534. type: object
  25535. gcrAccessTokenSpec:
  25536. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  25537. properties:
  25538. auth:
  25539. description: Auth defines the means for authenticating with GCP
  25540. properties:
  25541. secretRef:
  25542. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  25543. properties:
  25544. secretAccessKeySecretRef:
  25545. description: The SecretAccessKey is used for authentication
  25546. properties:
  25547. key:
  25548. description: |-
  25549. A key in the referenced Secret.
  25550. Some instances of this field may be defaulted, in others it may be required.
  25551. maxLength: 253
  25552. minLength: 1
  25553. pattern: ^[-._a-zA-Z0-9]+$
  25554. type: string
  25555. name:
  25556. description: The name of the Secret resource being referred to.
  25557. maxLength: 253
  25558. minLength: 1
  25559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25560. type: string
  25561. namespace:
  25562. description: |-
  25563. The namespace of the Secret resource being referred to.
  25564. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25565. maxLength: 63
  25566. minLength: 1
  25567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25568. type: string
  25569. type: object
  25570. type: object
  25571. workloadIdentity:
  25572. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  25573. properties:
  25574. clusterLocation:
  25575. type: string
  25576. clusterName:
  25577. type: string
  25578. clusterProjectID:
  25579. type: string
  25580. serviceAccountRef:
  25581. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25582. properties:
  25583. audiences:
  25584. description: |-
  25585. Audience specifies the `aud` claim for the service account token
  25586. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25587. then this audiences will be appended to the list
  25588. items:
  25589. type: string
  25590. type: array
  25591. name:
  25592. description: The name of the ServiceAccount resource being referred to.
  25593. maxLength: 253
  25594. minLength: 1
  25595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25596. type: string
  25597. namespace:
  25598. description: |-
  25599. Namespace of the resource being referred to.
  25600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25601. maxLength: 63
  25602. minLength: 1
  25603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25604. type: string
  25605. required:
  25606. - name
  25607. type: object
  25608. required:
  25609. - clusterLocation
  25610. - clusterName
  25611. - serviceAccountRef
  25612. type: object
  25613. workloadIdentityFederation:
  25614. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  25615. properties:
  25616. audience:
  25617. description: |-
  25618. 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.
  25619. If specified, Audience found in the external account credential config will be overridden with the configured value.
  25620. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  25621. type: string
  25622. awsSecurityCredentials:
  25623. description: |-
  25624. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  25625. when using the AWS metadata server is not an option.
  25626. properties:
  25627. awsCredentialsSecretRef:
  25628. description: |-
  25629. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  25630. Secret should be created with below names for keys
  25631. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  25632. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  25633. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  25634. properties:
  25635. name:
  25636. description: name of the secret.
  25637. maxLength: 253
  25638. minLength: 1
  25639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25640. type: string
  25641. namespace:
  25642. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  25643. maxLength: 63
  25644. minLength: 1
  25645. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25646. type: string
  25647. required:
  25648. - name
  25649. type: object
  25650. region:
  25651. description: region is for configuring the AWS region to be used.
  25652. example: ap-south-1
  25653. maxLength: 50
  25654. minLength: 1
  25655. pattern: ^[a-z0-9-]+$
  25656. type: string
  25657. required:
  25658. - awsCredentialsSecretRef
  25659. - region
  25660. type: object
  25661. credConfig:
  25662. description: |-
  25663. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  25664. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  25665. serviceAccountRef must be used by providing operators service account details.
  25666. properties:
  25667. key:
  25668. description: key name holding the external account credential config.
  25669. maxLength: 253
  25670. minLength: 1
  25671. pattern: ^[-._a-zA-Z0-9]+$
  25672. type: string
  25673. name:
  25674. description: name of the configmap.
  25675. maxLength: 253
  25676. minLength: 1
  25677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25678. type: string
  25679. namespace:
  25680. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  25681. maxLength: 63
  25682. minLength: 1
  25683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25684. type: string
  25685. required:
  25686. - key
  25687. - name
  25688. type: object
  25689. externalTokenEndpoint:
  25690. description: |-
  25691. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  25692. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  25693. URL is having the expected value.
  25694. type: string
  25695. serviceAccountRef:
  25696. description: |-
  25697. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  25698. when Kubernetes is configured as provider in workload identity pool.
  25699. properties:
  25700. audiences:
  25701. description: |-
  25702. Audience specifies the `aud` claim for the service account token
  25703. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25704. then this audiences will be appended to the list
  25705. items:
  25706. type: string
  25707. type: array
  25708. name:
  25709. description: The name of the ServiceAccount resource being referred to.
  25710. maxLength: 253
  25711. minLength: 1
  25712. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25713. type: string
  25714. namespace:
  25715. description: |-
  25716. Namespace of the resource being referred to.
  25717. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25718. maxLength: 63
  25719. minLength: 1
  25720. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25721. type: string
  25722. required:
  25723. - name
  25724. type: object
  25725. type: object
  25726. type: object
  25727. projectID:
  25728. description: ProjectID defines which project to use to authenticate with
  25729. type: string
  25730. required:
  25731. - auth
  25732. - projectID
  25733. type: object
  25734. githubAccessTokenSpec:
  25735. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  25736. properties:
  25737. appID:
  25738. type: string
  25739. auth:
  25740. description: Auth configures how ESO authenticates with a Github instance.
  25741. properties:
  25742. privateKey:
  25743. description: GithubSecretRef references a secret containing GitHub credentials.
  25744. properties:
  25745. secretRef:
  25746. description: |-
  25747. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25748. In some instances, `key` is a required field.
  25749. properties:
  25750. key:
  25751. description: |-
  25752. A key in the referenced Secret.
  25753. Some instances of this field may be defaulted, in others it may be required.
  25754. maxLength: 253
  25755. minLength: 1
  25756. pattern: ^[-._a-zA-Z0-9]+$
  25757. type: string
  25758. name:
  25759. description: The name of the Secret resource being referred to.
  25760. maxLength: 253
  25761. minLength: 1
  25762. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25763. type: string
  25764. namespace:
  25765. description: |-
  25766. The namespace of the Secret resource being referred to.
  25767. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25768. maxLength: 63
  25769. minLength: 1
  25770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25771. type: string
  25772. type: object
  25773. required:
  25774. - secretRef
  25775. type: object
  25776. required:
  25777. - privateKey
  25778. type: object
  25779. installID:
  25780. type: string
  25781. permissions:
  25782. additionalProperties:
  25783. type: string
  25784. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  25785. type: object
  25786. repositories:
  25787. description: |-
  25788. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  25789. is installed to.
  25790. items:
  25791. type: string
  25792. type: array
  25793. url:
  25794. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  25795. type: string
  25796. required:
  25797. - appID
  25798. - auth
  25799. - installID
  25800. type: object
  25801. grafanaSpec:
  25802. description: GrafanaSpec controls the behavior of the grafana generator.
  25803. properties:
  25804. auth:
  25805. description: |-
  25806. Auth is the authentication configuration to authenticate
  25807. against the Grafana instance.
  25808. properties:
  25809. basic:
  25810. description: |-
  25811. Basic auth credentials used to authenticate against the Grafana instance.
  25812. Note: you need a token which has elevated permissions to create service accounts.
  25813. See here for the documentation on basic roles offered by Grafana:
  25814. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25815. properties:
  25816. password:
  25817. description: A basic auth password used to authenticate against the Grafana instance.
  25818. properties:
  25819. key:
  25820. description: The key where the token is found.
  25821. maxLength: 253
  25822. minLength: 1
  25823. pattern: ^[-._a-zA-Z0-9]+$
  25824. type: string
  25825. name:
  25826. description: The name of the Secret resource being referred to.
  25827. maxLength: 253
  25828. minLength: 1
  25829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25830. type: string
  25831. type: object
  25832. username:
  25833. description: A basic auth username used to authenticate against the Grafana instance.
  25834. type: string
  25835. required:
  25836. - password
  25837. - username
  25838. type: object
  25839. token:
  25840. description: |-
  25841. A service account token used to authenticate against the Grafana instance.
  25842. Note: you need a token which has elevated permissions to create service accounts.
  25843. See here for the documentation on basic roles offered by Grafana:
  25844. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25845. properties:
  25846. key:
  25847. description: The key where the token is found.
  25848. maxLength: 253
  25849. minLength: 1
  25850. pattern: ^[-._a-zA-Z0-9]+$
  25851. type: string
  25852. name:
  25853. description: The name of the Secret resource being referred to.
  25854. maxLength: 253
  25855. minLength: 1
  25856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25857. type: string
  25858. type: object
  25859. type: object
  25860. serviceAccount:
  25861. description: |-
  25862. ServiceAccount is the configuration for the service account that
  25863. is supposed to be generated by the generator.
  25864. properties:
  25865. name:
  25866. description: Name is the name of the service account that will be created by ESO.
  25867. type: string
  25868. role:
  25869. description: |-
  25870. Role is the role of the service account.
  25871. See here for the documentation on basic roles offered by Grafana:
  25872. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25873. type: string
  25874. required:
  25875. - name
  25876. - role
  25877. type: object
  25878. url:
  25879. description: URL is the URL of the Grafana instance.
  25880. type: string
  25881. required:
  25882. - auth
  25883. - serviceAccount
  25884. - url
  25885. type: object
  25886. mfaSpec:
  25887. description: MFASpec controls the behavior of the mfa generator.
  25888. properties:
  25889. algorithm:
  25890. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  25891. type: string
  25892. length:
  25893. description: Length defines the token length. Defaults to 6 characters.
  25894. type: integer
  25895. secret:
  25896. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  25897. properties:
  25898. key:
  25899. description: |-
  25900. A key in the referenced Secret.
  25901. Some instances of this field may be defaulted, in others it may be required.
  25902. maxLength: 253
  25903. minLength: 1
  25904. pattern: ^[-._a-zA-Z0-9]+$
  25905. type: string
  25906. name:
  25907. description: The name of the Secret resource being referred to.
  25908. maxLength: 253
  25909. minLength: 1
  25910. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25911. type: string
  25912. namespace:
  25913. description: |-
  25914. The namespace of the Secret resource being referred to.
  25915. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25916. maxLength: 63
  25917. minLength: 1
  25918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25919. type: string
  25920. type: object
  25921. timePeriod:
  25922. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  25923. type: integer
  25924. when:
  25925. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  25926. format: date-time
  25927. type: string
  25928. required:
  25929. - secret
  25930. type: object
  25931. passwordSpec:
  25932. description: PasswordSpec controls the behavior of the password generator.
  25933. properties:
  25934. allowRepeat:
  25935. default: false
  25936. description: set AllowRepeat to true to allow repeating characters.
  25937. type: boolean
  25938. digits:
  25939. description: |-
  25940. Digits specifies the number of digits in the generated
  25941. password. If omitted it defaults to 25% of the length of the password
  25942. type: integer
  25943. encoding:
  25944. default: raw
  25945. description: |-
  25946. Encoding specifies the encoding of the generated password.
  25947. Valid values are:
  25948. - "raw" (default): no encoding
  25949. - "base64": standard base64 encoding
  25950. - "base64url": base64url encoding
  25951. - "base32": base32 encoding
  25952. - "hex": hexadecimal encoding
  25953. enum:
  25954. - base64
  25955. - base64url
  25956. - base32
  25957. - hex
  25958. - raw
  25959. type: string
  25960. length:
  25961. default: 24
  25962. description: |-
  25963. Length of the password to be generated.
  25964. Defaults to 24
  25965. type: integer
  25966. noUpper:
  25967. default: false
  25968. description: Set NoUpper to disable uppercase characters
  25969. type: boolean
  25970. secretKeys:
  25971. description: |-
  25972. SecretKeys defines the keys that will be populated with generated passwords.
  25973. Defaults to "password" when not set.
  25974. items:
  25975. type: string
  25976. minItems: 1
  25977. type: array
  25978. symbolCharacters:
  25979. description: |-
  25980. SymbolCharacters specifies the special characters that should be used
  25981. in the generated password.
  25982. type: string
  25983. symbols:
  25984. description: |-
  25985. Symbols specifies the number of symbol characters in the generated
  25986. password. If omitted it defaults to 25% of the length of the password
  25987. type: integer
  25988. required:
  25989. - allowRepeat
  25990. - length
  25991. - noUpper
  25992. type: object
  25993. quayAccessTokenSpec:
  25994. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  25995. properties:
  25996. robotAccount:
  25997. description: Name of the robot account you are federating with
  25998. type: string
  25999. serviceAccountRef:
  26000. description: Name of the service account you are federating with
  26001. properties:
  26002. audiences:
  26003. description: |-
  26004. Audience specifies the `aud` claim for the service account token
  26005. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26006. then this audiences will be appended to the list
  26007. items:
  26008. type: string
  26009. type: array
  26010. name:
  26011. description: The name of the ServiceAccount resource being referred to.
  26012. maxLength: 253
  26013. minLength: 1
  26014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26015. type: string
  26016. namespace:
  26017. description: |-
  26018. Namespace of the resource being referred to.
  26019. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26020. maxLength: 63
  26021. minLength: 1
  26022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26023. type: string
  26024. required:
  26025. - name
  26026. type: object
  26027. url:
  26028. description: URL configures the Quay instance URL. Defaults to quay.io.
  26029. type: string
  26030. required:
  26031. - robotAccount
  26032. - serviceAccountRef
  26033. type: object
  26034. sshKeySpec:
  26035. description: SSHKeySpec controls the behavior of the ssh key generator.
  26036. properties:
  26037. comment:
  26038. description: Comment specifies an optional comment for the SSH key
  26039. type: string
  26040. keySize:
  26041. description: |-
  26042. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  26043. For RSA keys: 2048, 3072, 4096
  26044. For ECDSA keys: 256, 384, 521
  26045. Ignored for ed25519 keys
  26046. maximum: 8192
  26047. minimum: 256
  26048. type: integer
  26049. keyType:
  26050. default: rsa
  26051. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  26052. enum:
  26053. - rsa
  26054. - ecdsa
  26055. - ed25519
  26056. type: string
  26057. type: object
  26058. stsSessionTokenSpec:
  26059. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  26060. properties:
  26061. auth:
  26062. description: Auth defines how to authenticate with AWS
  26063. properties:
  26064. jwt:
  26065. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26066. properties:
  26067. serviceAccountRef:
  26068. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26069. properties:
  26070. audiences:
  26071. description: |-
  26072. Audience specifies the `aud` claim for the service account token
  26073. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26074. then this audiences will be appended to the list
  26075. items:
  26076. type: string
  26077. type: array
  26078. name:
  26079. description: The name of the ServiceAccount resource being referred to.
  26080. maxLength: 253
  26081. minLength: 1
  26082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26083. type: string
  26084. namespace:
  26085. description: |-
  26086. Namespace of the resource being referred to.
  26087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26088. maxLength: 63
  26089. minLength: 1
  26090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26091. type: string
  26092. required:
  26093. - name
  26094. type: object
  26095. type: object
  26096. secretRef:
  26097. description: |-
  26098. AWSAuthSecretRef holds secret references for AWS credentials
  26099. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26100. properties:
  26101. accessKeyIDSecretRef:
  26102. description: The AccessKeyID is used for authentication
  26103. properties:
  26104. key:
  26105. description: |-
  26106. A key in the referenced Secret.
  26107. Some instances of this field may be defaulted, in others it may be required.
  26108. maxLength: 253
  26109. minLength: 1
  26110. pattern: ^[-._a-zA-Z0-9]+$
  26111. type: string
  26112. name:
  26113. description: The name of the Secret resource being referred to.
  26114. maxLength: 253
  26115. minLength: 1
  26116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26117. type: string
  26118. namespace:
  26119. description: |-
  26120. The namespace of the Secret resource being referred to.
  26121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26122. maxLength: 63
  26123. minLength: 1
  26124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26125. type: string
  26126. type: object
  26127. secretAccessKeySecretRef:
  26128. description: The SecretAccessKey is used for authentication
  26129. properties:
  26130. key:
  26131. description: |-
  26132. A key in the referenced Secret.
  26133. Some instances of this field may be defaulted, in others it may be required.
  26134. maxLength: 253
  26135. minLength: 1
  26136. pattern: ^[-._a-zA-Z0-9]+$
  26137. type: string
  26138. name:
  26139. description: The name of the Secret resource being referred to.
  26140. maxLength: 253
  26141. minLength: 1
  26142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26143. type: string
  26144. namespace:
  26145. description: |-
  26146. The namespace of the Secret resource being referred to.
  26147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26148. maxLength: 63
  26149. minLength: 1
  26150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26151. type: string
  26152. type: object
  26153. sessionTokenSecretRef:
  26154. description: |-
  26155. The SessionToken used for authentication
  26156. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26157. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26158. properties:
  26159. key:
  26160. description: |-
  26161. A key in the referenced Secret.
  26162. Some instances of this field may be defaulted, in others it may be required.
  26163. maxLength: 253
  26164. minLength: 1
  26165. pattern: ^[-._a-zA-Z0-9]+$
  26166. type: string
  26167. name:
  26168. description: The name of the Secret resource being referred to.
  26169. maxLength: 253
  26170. minLength: 1
  26171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26172. type: string
  26173. namespace:
  26174. description: |-
  26175. The namespace of the Secret resource being referred to.
  26176. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26177. maxLength: 63
  26178. minLength: 1
  26179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26180. type: string
  26181. type: object
  26182. type: object
  26183. type: object
  26184. region:
  26185. description: Region specifies the region to operate in.
  26186. type: string
  26187. requestParameters:
  26188. description: RequestParameters contains parameters that can be passed to the STS service.
  26189. properties:
  26190. serialNumber:
  26191. description: |-
  26192. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  26193. the GetSessionToken call.
  26194. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  26195. (such as arn:aws:iam::123456789012:mfa/user)
  26196. type: string
  26197. sessionDuration:
  26198. format: int32
  26199. type: integer
  26200. tokenCode:
  26201. description: TokenCode is the value provided by the MFA device, if MFA is required.
  26202. type: string
  26203. type: object
  26204. role:
  26205. description: |-
  26206. You can assume a role before making calls to the
  26207. desired AWS service.
  26208. type: string
  26209. required:
  26210. - region
  26211. type: object
  26212. uuidSpec:
  26213. description: UUIDSpec controls the behavior of the uuid generator.
  26214. type: object
  26215. vaultDynamicSecretSpec:
  26216. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  26217. properties:
  26218. allowEmptyResponse:
  26219. default: false
  26220. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  26221. type: boolean
  26222. controller:
  26223. description: |-
  26224. Used to select the correct ESO controller (think: ingress.ingressClassName)
  26225. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  26226. type: string
  26227. method:
  26228. description: Vault API method to use (GET/POST/other)
  26229. type: string
  26230. parameters:
  26231. description: Parameters to pass to Vault write (for non-GET methods)
  26232. x-kubernetes-preserve-unknown-fields: true
  26233. path:
  26234. description: Vault path to obtain the dynamic secret from
  26235. type: string
  26236. provider:
  26237. description: Vault provider common spec
  26238. properties:
  26239. auth:
  26240. description: Auth configures how secret-manager authenticates with the Vault server.
  26241. properties:
  26242. appRole:
  26243. description: |-
  26244. AppRole authenticates with Vault using the App Role auth mechanism,
  26245. with the role and secret stored in a Kubernetes Secret resource.
  26246. properties:
  26247. path:
  26248. default: approle
  26249. description: |-
  26250. Path where the App Role authentication backend is mounted
  26251. in Vault, e.g: "approle"
  26252. type: string
  26253. roleId:
  26254. description: |-
  26255. RoleID configured in the App Role authentication backend when setting
  26256. up the authentication backend in Vault.
  26257. type: string
  26258. roleRef:
  26259. description: |-
  26260. Reference to a key in a Secret that contains the App Role ID used
  26261. to authenticate with Vault.
  26262. The `key` field must be specified and denotes which entry within the Secret
  26263. resource is used as the app role id.
  26264. properties:
  26265. key:
  26266. description: |-
  26267. A key in the referenced Secret.
  26268. Some instances of this field may be defaulted, in others it may be required.
  26269. maxLength: 253
  26270. minLength: 1
  26271. pattern: ^[-._a-zA-Z0-9]+$
  26272. type: string
  26273. name:
  26274. description: The name of the Secret resource being referred to.
  26275. maxLength: 253
  26276. minLength: 1
  26277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26278. type: string
  26279. namespace:
  26280. description: |-
  26281. The namespace of the Secret resource being referred to.
  26282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26283. maxLength: 63
  26284. minLength: 1
  26285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26286. type: string
  26287. type: object
  26288. secretRef:
  26289. description: |-
  26290. Reference to a key in a Secret that contains the App Role secret used
  26291. to authenticate with Vault.
  26292. The `key` field must be specified and denotes which entry within the Secret
  26293. resource is used as the app role secret.
  26294. properties:
  26295. key:
  26296. description: |-
  26297. A key in the referenced Secret.
  26298. Some instances of this field may be defaulted, in others it may be required.
  26299. maxLength: 253
  26300. minLength: 1
  26301. pattern: ^[-._a-zA-Z0-9]+$
  26302. type: string
  26303. name:
  26304. description: The name of the Secret resource being referred to.
  26305. maxLength: 253
  26306. minLength: 1
  26307. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26308. type: string
  26309. namespace:
  26310. description: |-
  26311. The namespace of the Secret resource being referred to.
  26312. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26313. maxLength: 63
  26314. minLength: 1
  26315. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26316. type: string
  26317. type: object
  26318. required:
  26319. - path
  26320. - secretRef
  26321. type: object
  26322. cert:
  26323. description: |-
  26324. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  26325. Cert authentication method
  26326. properties:
  26327. clientCert:
  26328. description: |-
  26329. ClientCert is a certificate to authenticate using the Cert Vault
  26330. authentication method
  26331. properties:
  26332. key:
  26333. description: |-
  26334. A key in the referenced Secret.
  26335. Some instances of this field may be defaulted, in others it may be required.
  26336. maxLength: 253
  26337. minLength: 1
  26338. pattern: ^[-._a-zA-Z0-9]+$
  26339. type: string
  26340. name:
  26341. description: The name of the Secret resource being referred to.
  26342. maxLength: 253
  26343. minLength: 1
  26344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26345. type: string
  26346. namespace:
  26347. description: |-
  26348. The namespace of the Secret resource being referred to.
  26349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26350. maxLength: 63
  26351. minLength: 1
  26352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26353. type: string
  26354. type: object
  26355. path:
  26356. default: cert
  26357. description: |-
  26358. Path where the Certificate authentication backend is mounted
  26359. in Vault, e.g: "cert"
  26360. type: string
  26361. secretRef:
  26362. description: |-
  26363. SecretRef to a key in a Secret resource containing client private key to
  26364. authenticate with Vault using the Cert authentication method
  26365. properties:
  26366. key:
  26367. description: |-
  26368. A key in the referenced Secret.
  26369. Some instances of this field may be defaulted, in others it may be required.
  26370. maxLength: 253
  26371. minLength: 1
  26372. pattern: ^[-._a-zA-Z0-9]+$
  26373. type: string
  26374. name:
  26375. description: The name of the Secret resource being referred to.
  26376. maxLength: 253
  26377. minLength: 1
  26378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26379. type: string
  26380. namespace:
  26381. description: |-
  26382. The namespace of the Secret resource being referred to.
  26383. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26384. maxLength: 63
  26385. minLength: 1
  26386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26387. type: string
  26388. type: object
  26389. vaultRole:
  26390. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  26391. type: string
  26392. type: object
  26393. gcp:
  26394. description: |-
  26395. Gcp authenticates with Vault using Google Cloud Platform authentication method
  26396. GCP authentication method
  26397. properties:
  26398. location:
  26399. description: Location optionally defines a location/region for the secret
  26400. type: string
  26401. path:
  26402. default: gcp
  26403. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  26404. type: string
  26405. projectID:
  26406. description: Project ID of the Google Cloud Platform project
  26407. type: string
  26408. role:
  26409. 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.
  26410. type: string
  26411. secretRef:
  26412. description: Specify credentials in a Secret object
  26413. properties:
  26414. secretAccessKeySecretRef:
  26415. description: The SecretAccessKey is used for authentication
  26416. properties:
  26417. key:
  26418. description: |-
  26419. A key in the referenced Secret.
  26420. Some instances of this field may be defaulted, in others it may be required.
  26421. maxLength: 253
  26422. minLength: 1
  26423. pattern: ^[-._a-zA-Z0-9]+$
  26424. type: string
  26425. name:
  26426. description: The name of the Secret resource being referred to.
  26427. maxLength: 253
  26428. minLength: 1
  26429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26430. type: string
  26431. namespace:
  26432. description: |-
  26433. The namespace of the Secret resource being referred to.
  26434. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26435. maxLength: 63
  26436. minLength: 1
  26437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26438. type: string
  26439. type: object
  26440. type: object
  26441. serviceAccountRef:
  26442. description: ServiceAccountRef to a service account for impersonation
  26443. properties:
  26444. audiences:
  26445. description: |-
  26446. Audience specifies the `aud` claim for the service account token
  26447. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26448. then this audiences will be appended to the list
  26449. items:
  26450. type: string
  26451. type: array
  26452. name:
  26453. description: The name of the ServiceAccount resource being referred to.
  26454. maxLength: 253
  26455. minLength: 1
  26456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26457. type: string
  26458. namespace:
  26459. description: |-
  26460. Namespace of the resource being referred to.
  26461. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26462. maxLength: 63
  26463. minLength: 1
  26464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26465. type: string
  26466. required:
  26467. - name
  26468. type: object
  26469. workloadIdentity:
  26470. description: Specify a service account with Workload Identity
  26471. properties:
  26472. clusterLocation:
  26473. description: |-
  26474. ClusterLocation is the location of the cluster
  26475. If not specified, it fetches information from the metadata server
  26476. type: string
  26477. clusterName:
  26478. description: |-
  26479. ClusterName is the name of the cluster
  26480. If not specified, it fetches information from the metadata server
  26481. type: string
  26482. clusterProjectID:
  26483. description: |-
  26484. ClusterProjectID is the project ID of the cluster
  26485. If not specified, it fetches information from the metadata server
  26486. type: string
  26487. serviceAccountRef:
  26488. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26489. properties:
  26490. audiences:
  26491. description: |-
  26492. Audience specifies the `aud` claim for the service account token
  26493. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26494. then this audiences will be appended to the list
  26495. items:
  26496. type: string
  26497. type: array
  26498. name:
  26499. description: The name of the ServiceAccount 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. Namespace of the 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. required:
  26513. - name
  26514. type: object
  26515. required:
  26516. - serviceAccountRef
  26517. type: object
  26518. required:
  26519. - role
  26520. type: object
  26521. iam:
  26522. description: |-
  26523. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  26524. AWS IAM authentication method
  26525. properties:
  26526. externalID:
  26527. description: AWS External ID set on assumed IAM roles
  26528. type: string
  26529. jwt:
  26530. description: Specify a service account with IRSA enabled
  26531. properties:
  26532. serviceAccountRef:
  26533. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26534. properties:
  26535. audiences:
  26536. description: |-
  26537. Audience specifies the `aud` claim for the service account token
  26538. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26539. then this audiences will be appended to the list
  26540. items:
  26541. type: string
  26542. type: array
  26543. name:
  26544. description: The name of the ServiceAccount resource being referred to.
  26545. maxLength: 253
  26546. minLength: 1
  26547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26548. type: string
  26549. namespace:
  26550. description: |-
  26551. Namespace of the resource being referred to.
  26552. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26553. maxLength: 63
  26554. minLength: 1
  26555. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26556. type: string
  26557. required:
  26558. - name
  26559. type: object
  26560. type: object
  26561. path:
  26562. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  26563. type: string
  26564. region:
  26565. description: AWS region
  26566. type: string
  26567. role:
  26568. description: This is the AWS role to be assumed before talking to vault
  26569. type: string
  26570. secretRef:
  26571. description: Specify credentials in a Secret object
  26572. properties:
  26573. accessKeyIDSecretRef:
  26574. description: The AccessKeyID is used for authentication
  26575. properties:
  26576. key:
  26577. description: |-
  26578. A key in the referenced Secret.
  26579. Some instances of this field may be defaulted, in others it may be required.
  26580. maxLength: 253
  26581. minLength: 1
  26582. pattern: ^[-._a-zA-Z0-9]+$
  26583. type: string
  26584. name:
  26585. description: The name of the Secret resource being referred to.
  26586. maxLength: 253
  26587. minLength: 1
  26588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26589. type: string
  26590. namespace:
  26591. description: |-
  26592. The namespace of the Secret resource being referred to.
  26593. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26594. maxLength: 63
  26595. minLength: 1
  26596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26597. type: string
  26598. type: object
  26599. secretAccessKeySecretRef:
  26600. description: The SecretAccessKey is used for authentication
  26601. properties:
  26602. key:
  26603. description: |-
  26604. A key in the referenced Secret.
  26605. Some instances of this field may be defaulted, in others it may be required.
  26606. maxLength: 253
  26607. minLength: 1
  26608. pattern: ^[-._a-zA-Z0-9]+$
  26609. type: string
  26610. name:
  26611. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  26625. sessionTokenSecretRef:
  26626. description: |-
  26627. The SessionToken used for authentication
  26628. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26629. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26630. properties:
  26631. key:
  26632. description: |-
  26633. A key in the referenced Secret.
  26634. Some instances of this field may be defaulted, in others it may be required.
  26635. maxLength: 253
  26636. minLength: 1
  26637. pattern: ^[-._a-zA-Z0-9]+$
  26638. type: string
  26639. name:
  26640. description: The name of the Secret resource being referred to.
  26641. maxLength: 253
  26642. minLength: 1
  26643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26644. type: string
  26645. namespace:
  26646. description: |-
  26647. The namespace of the Secret resource being referred to.
  26648. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26649. maxLength: 63
  26650. minLength: 1
  26651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26652. type: string
  26653. type: object
  26654. type: object
  26655. vaultAwsIamServerID:
  26656. 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'
  26657. type: string
  26658. vaultRole:
  26659. 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
  26660. type: string
  26661. required:
  26662. - vaultRole
  26663. type: object
  26664. jwt:
  26665. description: |-
  26666. Jwt authenticates with Vault by passing role and JWT token using the
  26667. JWT/OIDC authentication method
  26668. properties:
  26669. kubernetesServiceAccountToken:
  26670. description: |-
  26671. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  26672. a token for with the `TokenRequest` API.
  26673. properties:
  26674. audiences:
  26675. description: |-
  26676. Optional audiences field that will be used to request a temporary Kubernetes service
  26677. account token for the service account referenced by `serviceAccountRef`.
  26678. Defaults to a single audience `vault` it not specified.
  26679. Deprecated: use serviceAccountRef.Audiences instead
  26680. items:
  26681. type: string
  26682. type: array
  26683. expirationSeconds:
  26684. description: |-
  26685. Optional expiration time in seconds that will be used to request a temporary
  26686. Kubernetes service account token for the service account referenced by
  26687. `serviceAccountRef`.
  26688. Deprecated: this will be removed in the future.
  26689. Defaults to 10 minutes.
  26690. type: integer
  26691. serviceAccountRef:
  26692. description: Service account field containing the name of a kubernetes ServiceAccount.
  26693. properties:
  26694. audiences:
  26695. description: |-
  26696. Audience specifies the `aud` claim for the service account token
  26697. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26698. then this audiences will be appended to the list
  26699. items:
  26700. type: string
  26701. type: array
  26702. name:
  26703. description: The name of the ServiceAccount resource being referred to.
  26704. maxLength: 253
  26705. minLength: 1
  26706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26707. type: string
  26708. namespace:
  26709. description: |-
  26710. Namespace of the resource being referred to.
  26711. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26712. maxLength: 63
  26713. minLength: 1
  26714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26715. type: string
  26716. required:
  26717. - name
  26718. type: object
  26719. required:
  26720. - serviceAccountRef
  26721. type: object
  26722. path:
  26723. default: jwt
  26724. description: |-
  26725. Path where the JWT authentication backend is mounted
  26726. in Vault, e.g: "jwt"
  26727. type: string
  26728. role:
  26729. description: |-
  26730. Role is a JWT role to authenticate using the JWT/OIDC Vault
  26731. authentication method
  26732. type: string
  26733. secretRef:
  26734. description: |-
  26735. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  26736. authenticate with Vault using the JWT/OIDC authentication method.
  26737. properties:
  26738. key:
  26739. description: |-
  26740. A key in the referenced Secret.
  26741. Some instances of this field may be defaulted, in others it may be required.
  26742. maxLength: 253
  26743. minLength: 1
  26744. pattern: ^[-._a-zA-Z0-9]+$
  26745. type: string
  26746. name:
  26747. description: The name of the Secret resource being referred to.
  26748. maxLength: 253
  26749. minLength: 1
  26750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26751. type: string
  26752. namespace:
  26753. description: |-
  26754. The namespace of the Secret resource being referred to.
  26755. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26756. maxLength: 63
  26757. minLength: 1
  26758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26759. type: string
  26760. type: object
  26761. required:
  26762. - path
  26763. type: object
  26764. kubernetes:
  26765. description: |-
  26766. Kubernetes authenticates with Vault by passing the ServiceAccount
  26767. token stored in the named Secret resource to the Vault server.
  26768. properties:
  26769. mountPath:
  26770. default: kubernetes
  26771. description: |-
  26772. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  26773. "kubernetes"
  26774. type: string
  26775. role:
  26776. description: |-
  26777. A required field containing the Vault Role to assume. A Role binds a
  26778. Kubernetes ServiceAccount with a set of Vault policies.
  26779. type: string
  26780. secretRef:
  26781. description: |-
  26782. Optional secret field containing a Kubernetes ServiceAccount JWT used
  26783. for authenticating with Vault. If a name is specified without a key,
  26784. `token` is the default. If one is not specified, the one bound to
  26785. the controller will be used.
  26786. properties:
  26787. key:
  26788. description: |-
  26789. A key in the referenced Secret.
  26790. Some instances of this field may be defaulted, in others it may be required.
  26791. maxLength: 253
  26792. minLength: 1
  26793. pattern: ^[-._a-zA-Z0-9]+$
  26794. type: string
  26795. name:
  26796. description: The name of the Secret resource being referred to.
  26797. maxLength: 253
  26798. minLength: 1
  26799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26800. type: string
  26801. namespace:
  26802. description: |-
  26803. The namespace of the Secret resource being referred to.
  26804. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26805. maxLength: 63
  26806. minLength: 1
  26807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26808. type: string
  26809. type: object
  26810. serviceAccountRef:
  26811. description: |-
  26812. Optional service account field containing the name of a kubernetes ServiceAccount.
  26813. If the service account is specified, the service account secret token JWT will be used
  26814. for authenticating with Vault. If the service account selector is not supplied,
  26815. the secretRef will be used instead.
  26816. properties:
  26817. audiences:
  26818. description: |-
  26819. Audience specifies the `aud` claim for the service account token
  26820. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26821. then this audiences will be appended to the list
  26822. items:
  26823. type: string
  26824. type: array
  26825. name:
  26826. description: The name of the ServiceAccount resource being referred to.
  26827. maxLength: 253
  26828. minLength: 1
  26829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26830. type: string
  26831. namespace:
  26832. description: |-
  26833. Namespace of the resource being referred to.
  26834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26835. maxLength: 63
  26836. minLength: 1
  26837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26838. type: string
  26839. required:
  26840. - name
  26841. type: object
  26842. required:
  26843. - mountPath
  26844. - role
  26845. type: object
  26846. ldap:
  26847. description: |-
  26848. Ldap authenticates with Vault by passing username/password pair using
  26849. the LDAP authentication method
  26850. properties:
  26851. path:
  26852. default: ldap
  26853. description: |-
  26854. Path where the LDAP authentication backend is mounted
  26855. in Vault, e.g: "ldap"
  26856. type: string
  26857. secretRef:
  26858. description: |-
  26859. SecretRef to a key in a Secret resource containing password for the LDAP
  26860. user used to authenticate with Vault using the LDAP authentication
  26861. method
  26862. properties:
  26863. key:
  26864. description: |-
  26865. A key in the referenced Secret.
  26866. Some instances of this field may be defaulted, in others it may be required.
  26867. maxLength: 253
  26868. minLength: 1
  26869. pattern: ^[-._a-zA-Z0-9]+$
  26870. type: string
  26871. name:
  26872. description: The name of the Secret resource being referred to.
  26873. maxLength: 253
  26874. minLength: 1
  26875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26876. type: string
  26877. namespace:
  26878. description: |-
  26879. The namespace of the Secret resource being referred to.
  26880. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26881. maxLength: 63
  26882. minLength: 1
  26883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26884. type: string
  26885. type: object
  26886. username:
  26887. description: |-
  26888. Username is an LDAP username used to authenticate using the LDAP Vault
  26889. authentication method
  26890. type: string
  26891. required:
  26892. - path
  26893. - username
  26894. type: object
  26895. namespace:
  26896. description: |-
  26897. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  26898. Namespaces is a set of features within Vault Enterprise that allows
  26899. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  26900. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  26901. This will default to Vault.Namespace field if set, or empty otherwise
  26902. type: string
  26903. tokenSecretRef:
  26904. description: TokenSecretRef authenticates with Vault by presenting a token.
  26905. properties:
  26906. key:
  26907. description: |-
  26908. A key in the referenced Secret.
  26909. Some instances of this field may be defaulted, in others it may be required.
  26910. maxLength: 253
  26911. minLength: 1
  26912. pattern: ^[-._a-zA-Z0-9]+$
  26913. type: string
  26914. name:
  26915. description: The name of the Secret resource being referred to.
  26916. maxLength: 253
  26917. minLength: 1
  26918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26919. type: string
  26920. namespace:
  26921. description: |-
  26922. The namespace of the Secret resource being referred to.
  26923. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26924. maxLength: 63
  26925. minLength: 1
  26926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26927. type: string
  26928. type: object
  26929. userPass:
  26930. description: UserPass authenticates with Vault by passing username/password pair
  26931. properties:
  26932. path:
  26933. default: userpass
  26934. description: |-
  26935. Path where the UserPassword authentication backend is mounted
  26936. in Vault, e.g: "userpass"
  26937. type: string
  26938. secretRef:
  26939. description: |-
  26940. SecretRef to a key in a Secret resource containing password for the
  26941. user used to authenticate with Vault using the UserPass authentication
  26942. method
  26943. properties:
  26944. key:
  26945. description: |-
  26946. A key in the referenced Secret.
  26947. Some instances of this field may be defaulted, in others it may be required.
  26948. maxLength: 253
  26949. minLength: 1
  26950. pattern: ^[-._a-zA-Z0-9]+$
  26951. type: string
  26952. name:
  26953. description: The name of the Secret resource being referred to.
  26954. maxLength: 253
  26955. minLength: 1
  26956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26957. type: string
  26958. namespace:
  26959. description: |-
  26960. The namespace of the Secret resource being referred to.
  26961. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26962. maxLength: 63
  26963. minLength: 1
  26964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26965. type: string
  26966. type: object
  26967. username:
  26968. description: |-
  26969. Username is a username used to authenticate using the UserPass Vault
  26970. authentication method
  26971. type: string
  26972. required:
  26973. - path
  26974. - username
  26975. type: object
  26976. type: object
  26977. caBundle:
  26978. description: |-
  26979. PEM encoded CA bundle used to validate Vault server certificate. Only used
  26980. if the Server URL is using HTTPS protocol. This parameter is ignored for
  26981. plain HTTP protocol connection. If not set the system root certificates
  26982. are used to validate the TLS connection.
  26983. format: byte
  26984. type: string
  26985. caProvider:
  26986. description: The provider for the CA bundle to use to validate Vault server certificate.
  26987. properties:
  26988. key:
  26989. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26990. maxLength: 253
  26991. minLength: 1
  26992. pattern: ^[-._a-zA-Z0-9]+$
  26993. type: string
  26994. name:
  26995. description: The name of the object located at the provider type.
  26996. maxLength: 253
  26997. minLength: 1
  26998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26999. type: string
  27000. namespace:
  27001. description: |-
  27002. The namespace the Provider type is in.
  27003. Can only be defined when used in a ClusterSecretStore.
  27004. maxLength: 63
  27005. minLength: 1
  27006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27007. type: string
  27008. type:
  27009. description: The type of provider to use such as "Secret", or "ConfigMap".
  27010. enum:
  27011. - Secret
  27012. - ConfigMap
  27013. type: string
  27014. required:
  27015. - name
  27016. - type
  27017. type: object
  27018. checkAndSet:
  27019. description: |-
  27020. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  27021. Only applies to Vault KV v2 stores. When enabled, write operations must include
  27022. the current version of the secret to prevent unintentional overwrites.
  27023. properties:
  27024. required:
  27025. description: |-
  27026. Required when true, all write operations must include a check-and-set parameter.
  27027. This helps prevent unintentional overwrites of secrets.
  27028. type: boolean
  27029. type: object
  27030. forwardInconsistent:
  27031. description: |-
  27032. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  27033. leader instead of simply retrying within a loop. This can increase performance if
  27034. the option is enabled serverside.
  27035. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  27036. type: boolean
  27037. headers:
  27038. additionalProperties:
  27039. type: string
  27040. description: Headers to be added in Vault request
  27041. type: object
  27042. namespace:
  27043. description: |-
  27044. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  27045. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  27046. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  27047. type: string
  27048. path:
  27049. description: |-
  27050. Path is the mount path of the Vault KV backend endpoint, e.g:
  27051. "secret". The v2 KV secret engine version specific "/data" path suffix
  27052. for fetching secrets from Vault is optional and will be appended
  27053. if not present in specified path.
  27054. type: string
  27055. readYourWrites:
  27056. description: |-
  27057. ReadYourWrites ensures isolated read-after-write semantics by
  27058. providing discovered cluster replication states in each request.
  27059. More information about eventual consistency in Vault can be found here
  27060. https://www.vaultproject.io/docs/enterprise/consistency
  27061. type: boolean
  27062. server:
  27063. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  27064. type: string
  27065. tls:
  27066. description: |-
  27067. The configuration used for client side related TLS communication, when the Vault server
  27068. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  27069. This parameter is ignored for plain HTTP protocol connection.
  27070. It's worth noting this configuration is different from the "TLS certificates auth method",
  27071. which is available under the `auth.cert` section.
  27072. properties:
  27073. certSecretRef:
  27074. description: |-
  27075. CertSecretRef is a certificate added to the transport layer
  27076. when communicating with the Vault server.
  27077. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  27078. properties:
  27079. key:
  27080. description: |-
  27081. A key in the referenced Secret.
  27082. Some instances of this field may be defaulted, in others it may be required.
  27083. maxLength: 253
  27084. minLength: 1
  27085. pattern: ^[-._a-zA-Z0-9]+$
  27086. type: string
  27087. name:
  27088. description: The name of the Secret resource being referred to.
  27089. maxLength: 253
  27090. minLength: 1
  27091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27092. type: string
  27093. namespace:
  27094. description: |-
  27095. The namespace of the Secret resource being referred to.
  27096. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27097. maxLength: 63
  27098. minLength: 1
  27099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27100. type: string
  27101. type: object
  27102. keySecretRef:
  27103. description: |-
  27104. KeySecretRef to a key in a Secret resource containing client private key
  27105. added to the transport layer when communicating with the Vault server.
  27106. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  27107. properties:
  27108. key:
  27109. description: |-
  27110. A key in the referenced Secret.
  27111. Some instances of this field may be defaulted, in others it may be required.
  27112. maxLength: 253
  27113. minLength: 1
  27114. pattern: ^[-._a-zA-Z0-9]+$
  27115. type: string
  27116. name:
  27117. description: The name of the Secret resource being referred to.
  27118. maxLength: 253
  27119. minLength: 1
  27120. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27121. type: string
  27122. namespace:
  27123. description: |-
  27124. The namespace of the Secret resource being referred to.
  27125. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27126. maxLength: 63
  27127. minLength: 1
  27128. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27129. type: string
  27130. type: object
  27131. type: object
  27132. version:
  27133. default: v2
  27134. description: |-
  27135. Version is the Vault KV secret engine version. This can be either "v1" or
  27136. "v2". Version defaults to "v2".
  27137. enum:
  27138. - v1
  27139. - v2
  27140. type: string
  27141. required:
  27142. - server
  27143. type: object
  27144. resultType:
  27145. default: Data
  27146. description: |-
  27147. Result type defines which data is returned from the generator.
  27148. By default, it is the "data" section of the Vault API response.
  27149. When using e.g. /auth/token/create the "data" section is empty but
  27150. the "auth" section contains the generated token.
  27151. Please refer to the vault docs regarding the result data structure.
  27152. Additionally, accessing the raw response is possibly by using "Raw" result type.
  27153. enum:
  27154. - Data
  27155. - Auth
  27156. - Raw
  27157. type: string
  27158. retrySettings:
  27159. description: Used to configure http retries if failed
  27160. properties:
  27161. maxRetries:
  27162. type: integer
  27163. retryInterval:
  27164. type: string
  27165. type: object
  27166. required:
  27167. - path
  27168. - provider
  27169. type: object
  27170. webhookSpec:
  27171. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  27172. properties:
  27173. auth:
  27174. description: Auth specifies a authorization protocol. Only one protocol may be set.
  27175. maxProperties: 1
  27176. minProperties: 1
  27177. properties:
  27178. ntlm:
  27179. description: NTLMProtocol configures the store to use NTLM for auth
  27180. properties:
  27181. passwordSecret:
  27182. description: |-
  27183. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27184. In some instances, `key` is a required field.
  27185. properties:
  27186. key:
  27187. description: |-
  27188. A key in the referenced Secret.
  27189. Some instances of this field may be defaulted, in others it may be required.
  27190. maxLength: 253
  27191. minLength: 1
  27192. pattern: ^[-._a-zA-Z0-9]+$
  27193. type: string
  27194. name:
  27195. description: The name of the Secret resource being referred to.
  27196. maxLength: 253
  27197. minLength: 1
  27198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27199. type: string
  27200. namespace:
  27201. description: |-
  27202. The namespace of the Secret resource being referred to.
  27203. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27204. maxLength: 63
  27205. minLength: 1
  27206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27207. type: string
  27208. type: object
  27209. usernameSecret:
  27210. description: |-
  27211. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27212. In some instances, `key` is a required field.
  27213. properties:
  27214. key:
  27215. description: |-
  27216. A key in the referenced Secret.
  27217. Some instances of this field may be defaulted, in others it may be required.
  27218. maxLength: 253
  27219. minLength: 1
  27220. pattern: ^[-._a-zA-Z0-9]+$
  27221. type: string
  27222. name:
  27223. description: The name of the Secret resource being referred to.
  27224. maxLength: 253
  27225. minLength: 1
  27226. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27227. type: string
  27228. namespace:
  27229. description: |-
  27230. The namespace of the Secret resource being referred to.
  27231. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27232. maxLength: 63
  27233. minLength: 1
  27234. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27235. type: string
  27236. type: object
  27237. required:
  27238. - passwordSecret
  27239. - usernameSecret
  27240. type: object
  27241. type: object
  27242. body:
  27243. description: Body
  27244. type: string
  27245. caBundle:
  27246. description: |-
  27247. PEM encoded CA bundle used to validate webhook server certificate. Only used
  27248. if the Server URL is using HTTPS protocol. This parameter is ignored for
  27249. plain HTTP protocol connection. If not set the system root certificates
  27250. are used to validate the TLS connection.
  27251. format: byte
  27252. type: string
  27253. caProvider:
  27254. description: The provider for the CA bundle to use to validate webhook server certificate.
  27255. properties:
  27256. key:
  27257. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  27258. maxLength: 253
  27259. minLength: 1
  27260. pattern: ^[-._a-zA-Z0-9]+$
  27261. type: string
  27262. name:
  27263. description: The name of the object located at the provider type.
  27264. maxLength: 253
  27265. minLength: 1
  27266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27267. type: string
  27268. namespace:
  27269. description: The namespace the Provider type is in.
  27270. maxLength: 63
  27271. minLength: 1
  27272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27273. type: string
  27274. type:
  27275. description: The type of provider to use such as "Secret", or "ConfigMap".
  27276. enum:
  27277. - Secret
  27278. - ConfigMap
  27279. type: string
  27280. required:
  27281. - name
  27282. - type
  27283. type: object
  27284. headers:
  27285. additionalProperties:
  27286. type: string
  27287. description: Headers
  27288. type: object
  27289. method:
  27290. description: Webhook Method
  27291. type: string
  27292. result:
  27293. description: Result formatting
  27294. properties:
  27295. jsonPath:
  27296. description: Json path of return value
  27297. type: string
  27298. type: object
  27299. secrets:
  27300. description: |-
  27301. Secrets to fill in templates
  27302. These secrets will be passed to the templating function as key value pairs under the given name
  27303. items:
  27304. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  27305. properties:
  27306. name:
  27307. description: Name of this secret in templates
  27308. type: string
  27309. secretRef:
  27310. description: Secret ref to fill in credentials
  27311. properties:
  27312. key:
  27313. description: The key where the token is found.
  27314. maxLength: 253
  27315. minLength: 1
  27316. pattern: ^[-._a-zA-Z0-9]+$
  27317. type: string
  27318. name:
  27319. description: The name of the Secret resource being referred to.
  27320. maxLength: 253
  27321. minLength: 1
  27322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27323. type: string
  27324. type: object
  27325. required:
  27326. - name
  27327. - secretRef
  27328. type: object
  27329. type: array
  27330. timeout:
  27331. description: Timeout
  27332. type: string
  27333. url:
  27334. description: Webhook url to call
  27335. type: string
  27336. required:
  27337. - result
  27338. - url
  27339. type: object
  27340. type: object
  27341. kind:
  27342. description: Kind the kind of this generator.
  27343. enum:
  27344. - ACRAccessToken
  27345. - CloudsmithAccessToken
  27346. - ECRAuthorizationToken
  27347. - Fake
  27348. - GCRAccessToken
  27349. - GithubAccessToken
  27350. - QuayAccessToken
  27351. - Password
  27352. - SSHKey
  27353. - STSSessionToken
  27354. - UUID
  27355. - VaultDynamicSecret
  27356. - Webhook
  27357. - Grafana
  27358. type: string
  27359. required:
  27360. - generator
  27361. - kind
  27362. type: object
  27363. type: object
  27364. served: true
  27365. storage: true
  27366. subresources:
  27367. status: {}
  27368. ---
  27369. apiVersion: apiextensions.k8s.io/v1
  27370. kind: CustomResourceDefinition
  27371. metadata:
  27372. annotations:
  27373. controller-gen.kubebuilder.io/version: v0.19.0
  27374. labels:
  27375. external-secrets.io/component: controller
  27376. name: ecrauthorizationtokens.generators.external-secrets.io
  27377. spec:
  27378. group: generators.external-secrets.io
  27379. names:
  27380. categories:
  27381. - external-secrets
  27382. - external-secrets-generators
  27383. kind: ECRAuthorizationToken
  27384. listKind: ECRAuthorizationTokenList
  27385. plural: ecrauthorizationtokens
  27386. singular: ecrauthorizationtoken
  27387. scope: Namespaced
  27388. versions:
  27389. - name: v1alpha1
  27390. schema:
  27391. openAPIV3Schema:
  27392. description: |-
  27393. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  27394. The authorization token is valid for 12 hours.
  27395. The authorizationToken returned is a base64 encoded string that can be decoded
  27396. and used in a docker login command to authenticate to a registry.
  27397. 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.
  27398. properties:
  27399. apiVersion:
  27400. description: |-
  27401. APIVersion defines the versioned schema of this representation of an object.
  27402. Servers should convert recognized schemas to the latest internal value, and
  27403. may reject unrecognized values.
  27404. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27405. type: string
  27406. kind:
  27407. description: |-
  27408. Kind is a string value representing the REST resource this object represents.
  27409. Servers may infer this from the endpoint the client submits requests to.
  27410. Cannot be updated.
  27411. In CamelCase.
  27412. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27413. type: string
  27414. metadata:
  27415. type: object
  27416. spec:
  27417. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  27418. properties:
  27419. auth:
  27420. description: Auth defines how to authenticate with AWS
  27421. properties:
  27422. jwt:
  27423. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27424. properties:
  27425. serviceAccountRef:
  27426. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27427. properties:
  27428. audiences:
  27429. description: |-
  27430. Audience specifies the `aud` claim for the service account token
  27431. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27432. then this audiences will be appended to the list
  27433. items:
  27434. type: string
  27435. type: array
  27436. name:
  27437. description: The name of the ServiceAccount resource being referred to.
  27438. maxLength: 253
  27439. minLength: 1
  27440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27441. type: string
  27442. namespace:
  27443. description: |-
  27444. Namespace of the resource being referred to.
  27445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27446. maxLength: 63
  27447. minLength: 1
  27448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27449. type: string
  27450. required:
  27451. - name
  27452. type: object
  27453. type: object
  27454. secretRef:
  27455. description: |-
  27456. AWSAuthSecretRef holds secret references for AWS credentials
  27457. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27458. properties:
  27459. accessKeyIDSecretRef:
  27460. description: The AccessKeyID is used for authentication
  27461. properties:
  27462. key:
  27463. description: |-
  27464. A key in the referenced Secret.
  27465. Some instances of this field may be defaulted, in others it may be required.
  27466. maxLength: 253
  27467. minLength: 1
  27468. pattern: ^[-._a-zA-Z0-9]+$
  27469. type: string
  27470. name:
  27471. description: The name of the Secret resource being referred to.
  27472. maxLength: 253
  27473. minLength: 1
  27474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27475. type: string
  27476. namespace:
  27477. description: |-
  27478. The namespace of the Secret resource being referred to.
  27479. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27480. maxLength: 63
  27481. minLength: 1
  27482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27483. type: string
  27484. type: object
  27485. secretAccessKeySecretRef:
  27486. description: The SecretAccessKey is used for authentication
  27487. properties:
  27488. key:
  27489. description: |-
  27490. A key in the referenced Secret.
  27491. Some instances of this field may be defaulted, in others it may be required.
  27492. maxLength: 253
  27493. minLength: 1
  27494. pattern: ^[-._a-zA-Z0-9]+$
  27495. type: string
  27496. name:
  27497. description: The name of the Secret resource being referred to.
  27498. maxLength: 253
  27499. minLength: 1
  27500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27501. type: string
  27502. namespace:
  27503. description: |-
  27504. The namespace of the Secret resource being referred to.
  27505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27506. maxLength: 63
  27507. minLength: 1
  27508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27509. type: string
  27510. type: object
  27511. sessionTokenSecretRef:
  27512. description: |-
  27513. The SessionToken used for authentication
  27514. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27515. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27516. properties:
  27517. key:
  27518. description: |-
  27519. A key in the referenced Secret.
  27520. Some instances of this field may be defaulted, in others it may be required.
  27521. maxLength: 253
  27522. minLength: 1
  27523. pattern: ^[-._a-zA-Z0-9]+$
  27524. type: string
  27525. name:
  27526. description: The name of the Secret resource being referred to.
  27527. maxLength: 253
  27528. minLength: 1
  27529. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27530. type: string
  27531. namespace:
  27532. description: |-
  27533. The namespace of the Secret resource being referred to.
  27534. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27535. maxLength: 63
  27536. minLength: 1
  27537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27538. type: string
  27539. type: object
  27540. type: object
  27541. type: object
  27542. region:
  27543. description: Region specifies the region to operate in.
  27544. type: string
  27545. role:
  27546. description: |-
  27547. You can assume a role before making calls to the
  27548. desired AWS service.
  27549. type: string
  27550. scope:
  27551. description: |-
  27552. Scope specifies the ECR service scope.
  27553. Valid options are private and public.
  27554. type: string
  27555. required:
  27556. - region
  27557. type: object
  27558. type: object
  27559. served: true
  27560. storage: true
  27561. subresources:
  27562. status: {}
  27563. ---
  27564. apiVersion: apiextensions.k8s.io/v1
  27565. kind: CustomResourceDefinition
  27566. metadata:
  27567. annotations:
  27568. controller-gen.kubebuilder.io/version: v0.19.0
  27569. labels:
  27570. external-secrets.io/component: controller
  27571. name: fakes.generators.external-secrets.io
  27572. spec:
  27573. group: generators.external-secrets.io
  27574. names:
  27575. categories:
  27576. - external-secrets
  27577. - external-secrets-generators
  27578. kind: Fake
  27579. listKind: FakeList
  27580. plural: fakes
  27581. singular: fake
  27582. scope: Namespaced
  27583. versions:
  27584. - name: v1alpha1
  27585. schema:
  27586. openAPIV3Schema:
  27587. description: |-
  27588. Fake generator is used for testing. It lets you define
  27589. a static set of credentials that is always returned.
  27590. properties:
  27591. apiVersion:
  27592. description: |-
  27593. APIVersion defines the versioned schema of this representation of an object.
  27594. Servers should convert recognized schemas to the latest internal value, and
  27595. may reject unrecognized values.
  27596. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27597. type: string
  27598. kind:
  27599. description: |-
  27600. Kind is a string value representing the REST resource this object represents.
  27601. Servers may infer this from the endpoint the client submits requests to.
  27602. Cannot be updated.
  27603. In CamelCase.
  27604. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27605. type: string
  27606. metadata:
  27607. type: object
  27608. spec:
  27609. description: FakeSpec contains the static data.
  27610. properties:
  27611. controller:
  27612. description: |-
  27613. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27614. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27615. type: string
  27616. data:
  27617. additionalProperties:
  27618. type: string
  27619. description: |-
  27620. Data defines the static data returned
  27621. by this generator.
  27622. type: object
  27623. type: object
  27624. type: object
  27625. served: true
  27626. storage: true
  27627. subresources:
  27628. status: {}
  27629. ---
  27630. apiVersion: apiextensions.k8s.io/v1
  27631. kind: CustomResourceDefinition
  27632. metadata:
  27633. annotations:
  27634. controller-gen.kubebuilder.io/version: v0.19.0
  27635. labels:
  27636. external-secrets.io/component: controller
  27637. name: gcraccesstokens.generators.external-secrets.io
  27638. spec:
  27639. group: generators.external-secrets.io
  27640. names:
  27641. categories:
  27642. - external-secrets
  27643. - external-secrets-generators
  27644. kind: GCRAccessToken
  27645. listKind: GCRAccessTokenList
  27646. plural: gcraccesstokens
  27647. singular: gcraccesstoken
  27648. scope: Namespaced
  27649. versions:
  27650. - name: v1alpha1
  27651. schema:
  27652. openAPIV3Schema:
  27653. description: |-
  27654. GCRAccessToken generates an GCP access token
  27655. that can be used to authenticate with GCR.
  27656. properties:
  27657. apiVersion:
  27658. description: |-
  27659. APIVersion defines the versioned schema of this representation of an object.
  27660. Servers should convert recognized schemas to the latest internal value, and
  27661. may reject unrecognized values.
  27662. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27663. type: string
  27664. kind:
  27665. description: |-
  27666. Kind is a string value representing the REST resource this object represents.
  27667. Servers may infer this from the endpoint the client submits requests to.
  27668. Cannot be updated.
  27669. In CamelCase.
  27670. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27671. type: string
  27672. metadata:
  27673. type: object
  27674. spec:
  27675. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  27676. properties:
  27677. auth:
  27678. description: Auth defines the means for authenticating with GCP
  27679. properties:
  27680. secretRef:
  27681. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  27682. properties:
  27683. secretAccessKeySecretRef:
  27684. description: The SecretAccessKey is used for authentication
  27685. properties:
  27686. key:
  27687. description: |-
  27688. A key in the referenced Secret.
  27689. Some instances of this field may be defaulted, in others it may be required.
  27690. maxLength: 253
  27691. minLength: 1
  27692. pattern: ^[-._a-zA-Z0-9]+$
  27693. type: string
  27694. name:
  27695. description: The name of the Secret resource being referred to.
  27696. maxLength: 253
  27697. minLength: 1
  27698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27699. type: string
  27700. namespace:
  27701. description: |-
  27702. The namespace of the Secret resource being referred to.
  27703. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27704. maxLength: 63
  27705. minLength: 1
  27706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27707. type: string
  27708. type: object
  27709. type: object
  27710. workloadIdentity:
  27711. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  27712. properties:
  27713. clusterLocation:
  27714. type: string
  27715. clusterName:
  27716. type: string
  27717. clusterProjectID:
  27718. type: string
  27719. serviceAccountRef:
  27720. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27721. properties:
  27722. audiences:
  27723. description: |-
  27724. Audience specifies the `aud` claim for the service account token
  27725. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27726. then this audiences will be appended to the list
  27727. items:
  27728. type: string
  27729. type: array
  27730. name:
  27731. description: The name of the ServiceAccount resource being referred to.
  27732. maxLength: 253
  27733. minLength: 1
  27734. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27735. type: string
  27736. namespace:
  27737. description: |-
  27738. Namespace of the resource being referred to.
  27739. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27740. maxLength: 63
  27741. minLength: 1
  27742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27743. type: string
  27744. required:
  27745. - name
  27746. type: object
  27747. required:
  27748. - clusterLocation
  27749. - clusterName
  27750. - serviceAccountRef
  27751. type: object
  27752. workloadIdentityFederation:
  27753. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  27754. properties:
  27755. audience:
  27756. description: |-
  27757. 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.
  27758. If specified, Audience found in the external account credential config will be overridden with the configured value.
  27759. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  27760. type: string
  27761. awsSecurityCredentials:
  27762. description: |-
  27763. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  27764. when using the AWS metadata server is not an option.
  27765. properties:
  27766. awsCredentialsSecretRef:
  27767. description: |-
  27768. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  27769. Secret should be created with below names for keys
  27770. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  27771. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  27772. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  27773. properties:
  27774. name:
  27775. description: name of the secret.
  27776. maxLength: 253
  27777. minLength: 1
  27778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27779. type: string
  27780. namespace:
  27781. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  27782. maxLength: 63
  27783. minLength: 1
  27784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27785. type: string
  27786. required:
  27787. - name
  27788. type: object
  27789. region:
  27790. description: region is for configuring the AWS region to be used.
  27791. example: ap-south-1
  27792. maxLength: 50
  27793. minLength: 1
  27794. pattern: ^[a-z0-9-]+$
  27795. type: string
  27796. required:
  27797. - awsCredentialsSecretRef
  27798. - region
  27799. type: object
  27800. credConfig:
  27801. description: |-
  27802. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  27803. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  27804. serviceAccountRef must be used by providing operators service account details.
  27805. properties:
  27806. key:
  27807. description: key name holding the external account credential config.
  27808. maxLength: 253
  27809. minLength: 1
  27810. pattern: ^[-._a-zA-Z0-9]+$
  27811. type: string
  27812. name:
  27813. description: name of the configmap.
  27814. maxLength: 253
  27815. minLength: 1
  27816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27817. type: string
  27818. namespace:
  27819. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  27820. maxLength: 63
  27821. minLength: 1
  27822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27823. type: string
  27824. required:
  27825. - key
  27826. - name
  27827. type: object
  27828. externalTokenEndpoint:
  27829. description: |-
  27830. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  27831. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  27832. URL is having the expected value.
  27833. type: string
  27834. serviceAccountRef:
  27835. description: |-
  27836. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  27837. when Kubernetes is configured as provider in workload identity pool.
  27838. properties:
  27839. audiences:
  27840. description: |-
  27841. Audience specifies the `aud` claim for the service account token
  27842. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27843. then this audiences will be appended to the list
  27844. items:
  27845. type: string
  27846. type: array
  27847. name:
  27848. description: The name of the ServiceAccount resource being referred to.
  27849. maxLength: 253
  27850. minLength: 1
  27851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27852. type: string
  27853. namespace:
  27854. description: |-
  27855. Namespace of the resource being referred to.
  27856. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27857. maxLength: 63
  27858. minLength: 1
  27859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27860. type: string
  27861. required:
  27862. - name
  27863. type: object
  27864. type: object
  27865. type: object
  27866. projectID:
  27867. description: ProjectID defines which project to use to authenticate with
  27868. type: string
  27869. required:
  27870. - auth
  27871. - projectID
  27872. type: object
  27873. type: object
  27874. served: true
  27875. storage: true
  27876. subresources:
  27877. status: {}
  27878. ---
  27879. apiVersion: apiextensions.k8s.io/v1
  27880. kind: CustomResourceDefinition
  27881. metadata:
  27882. annotations:
  27883. controller-gen.kubebuilder.io/version: v0.19.0
  27884. labels:
  27885. external-secrets.io/component: controller
  27886. name: generatorstates.generators.external-secrets.io
  27887. spec:
  27888. group: generators.external-secrets.io
  27889. names:
  27890. categories:
  27891. - external-secrets
  27892. - external-secrets-generators
  27893. kind: GeneratorState
  27894. listKind: GeneratorStateList
  27895. plural: generatorstates
  27896. shortNames:
  27897. - gs
  27898. singular: generatorstate
  27899. scope: Namespaced
  27900. versions:
  27901. - additionalPrinterColumns:
  27902. - jsonPath: .spec.garbageCollectionDeadline
  27903. name: GC Deadline
  27904. type: string
  27905. - jsonPath: .metadata.creationTimestamp
  27906. name: Age
  27907. type: date
  27908. name: v1alpha1
  27909. schema:
  27910. openAPIV3Schema:
  27911. description: GeneratorState represents the state created and managed by a generator resource.
  27912. properties:
  27913. apiVersion:
  27914. description: |-
  27915. APIVersion defines the versioned schema of this representation of an object.
  27916. Servers should convert recognized schemas to the latest internal value, and
  27917. may reject unrecognized values.
  27918. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27919. type: string
  27920. kind:
  27921. description: |-
  27922. Kind is a string value representing the REST resource this object represents.
  27923. Servers may infer this from the endpoint the client submits requests to.
  27924. Cannot be updated.
  27925. In CamelCase.
  27926. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27927. type: string
  27928. metadata:
  27929. type: object
  27930. spec:
  27931. description: GeneratorStateSpec defines the desired state of a generator state resource.
  27932. properties:
  27933. garbageCollectionDeadline:
  27934. description: |-
  27935. GarbageCollectionDeadline is the time after which the generator state
  27936. will be deleted.
  27937. It is set by the controller which creates the generator state and
  27938. can be set configured by the user.
  27939. If the garbage collection deadline is not set the generator state will not be deleted.
  27940. format: date-time
  27941. type: string
  27942. resource:
  27943. description: |-
  27944. Resource is the generator manifest that produced the state.
  27945. It is a snapshot of the generator manifest at the time the state was produced.
  27946. This manifest will be used to delete the resource. Any configuration that is referenced
  27947. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  27948. be blocked by a finalizer.
  27949. x-kubernetes-preserve-unknown-fields: true
  27950. state:
  27951. description: State is the state that was produced by the generator implementation.
  27952. x-kubernetes-preserve-unknown-fields: true
  27953. required:
  27954. - resource
  27955. - state
  27956. type: object
  27957. status:
  27958. description: GeneratorStateStatus defines the observed state of a generator state resource.
  27959. properties:
  27960. conditions:
  27961. items:
  27962. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  27963. properties:
  27964. lastTransitionTime:
  27965. format: date-time
  27966. type: string
  27967. message:
  27968. type: string
  27969. reason:
  27970. type: string
  27971. status:
  27972. type: string
  27973. type:
  27974. description: GeneratorStateConditionType represents the type of condition for a generator state.
  27975. type: string
  27976. required:
  27977. - status
  27978. - type
  27979. type: object
  27980. type: array
  27981. type: object
  27982. type: object
  27983. served: true
  27984. storage: true
  27985. subresources: {}
  27986. ---
  27987. apiVersion: apiextensions.k8s.io/v1
  27988. kind: CustomResourceDefinition
  27989. metadata:
  27990. annotations:
  27991. controller-gen.kubebuilder.io/version: v0.19.0
  27992. labels:
  27993. external-secrets.io/component: controller
  27994. name: githubaccesstokens.generators.external-secrets.io
  27995. spec:
  27996. group: generators.external-secrets.io
  27997. names:
  27998. categories:
  27999. - external-secrets
  28000. - external-secrets-generators
  28001. kind: GithubAccessToken
  28002. listKind: GithubAccessTokenList
  28003. plural: githubaccesstokens
  28004. singular: githubaccesstoken
  28005. scope: Namespaced
  28006. versions:
  28007. - name: v1alpha1
  28008. schema:
  28009. openAPIV3Schema:
  28010. description: GithubAccessToken generates ghs_ accessToken
  28011. properties:
  28012. apiVersion:
  28013. description: |-
  28014. APIVersion defines the versioned schema of this representation of an object.
  28015. Servers should convert recognized schemas to the latest internal value, and
  28016. may reject unrecognized values.
  28017. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28018. type: string
  28019. kind:
  28020. description: |-
  28021. Kind is a string value representing the REST resource this object represents.
  28022. Servers may infer this from the endpoint the client submits requests to.
  28023. Cannot be updated.
  28024. In CamelCase.
  28025. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28026. type: string
  28027. metadata:
  28028. type: object
  28029. spec:
  28030. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  28031. properties:
  28032. appID:
  28033. type: string
  28034. auth:
  28035. description: Auth configures how ESO authenticates with a Github instance.
  28036. properties:
  28037. privateKey:
  28038. description: GithubSecretRef references a secret containing GitHub credentials.
  28039. properties:
  28040. secretRef:
  28041. description: |-
  28042. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28043. In some instances, `key` is a required field.
  28044. properties:
  28045. key:
  28046. description: |-
  28047. A key in the referenced Secret.
  28048. Some instances of this field may be defaulted, in others it may be required.
  28049. maxLength: 253
  28050. minLength: 1
  28051. pattern: ^[-._a-zA-Z0-9]+$
  28052. type: string
  28053. name:
  28054. description: The name of the Secret resource being referred to.
  28055. maxLength: 253
  28056. minLength: 1
  28057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28058. type: string
  28059. namespace:
  28060. description: |-
  28061. The namespace of the Secret resource being referred to.
  28062. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28063. maxLength: 63
  28064. minLength: 1
  28065. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28066. type: string
  28067. type: object
  28068. required:
  28069. - secretRef
  28070. type: object
  28071. required:
  28072. - privateKey
  28073. type: object
  28074. installID:
  28075. type: string
  28076. permissions:
  28077. additionalProperties:
  28078. type: string
  28079. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  28080. type: object
  28081. repositories:
  28082. description: |-
  28083. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  28084. is installed to.
  28085. items:
  28086. type: string
  28087. type: array
  28088. url:
  28089. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  28090. type: string
  28091. required:
  28092. - appID
  28093. - auth
  28094. - installID
  28095. type: object
  28096. type: object
  28097. served: true
  28098. storage: true
  28099. subresources:
  28100. status: {}
  28101. ---
  28102. apiVersion: apiextensions.k8s.io/v1
  28103. kind: CustomResourceDefinition
  28104. metadata:
  28105. annotations:
  28106. controller-gen.kubebuilder.io/version: v0.19.0
  28107. labels:
  28108. external-secrets.io/component: controller
  28109. name: grafanas.generators.external-secrets.io
  28110. spec:
  28111. group: generators.external-secrets.io
  28112. names:
  28113. categories:
  28114. - external-secrets
  28115. - external-secrets-generators
  28116. kind: Grafana
  28117. listKind: GrafanaList
  28118. plural: grafanas
  28119. singular: grafana
  28120. scope: Namespaced
  28121. versions:
  28122. - name: v1alpha1
  28123. schema:
  28124. openAPIV3Schema:
  28125. description: Grafana represents a generator for Grafana service account tokens.
  28126. properties:
  28127. apiVersion:
  28128. description: |-
  28129. APIVersion defines the versioned schema of this representation of an object.
  28130. Servers should convert recognized schemas to the latest internal value, and
  28131. may reject unrecognized values.
  28132. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28133. type: string
  28134. kind:
  28135. description: |-
  28136. Kind is a string value representing the REST resource this object represents.
  28137. Servers may infer this from the endpoint the client submits requests to.
  28138. Cannot be updated.
  28139. In CamelCase.
  28140. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28141. type: string
  28142. metadata:
  28143. type: object
  28144. spec:
  28145. description: GrafanaSpec controls the behavior of the grafana generator.
  28146. properties:
  28147. auth:
  28148. description: |-
  28149. Auth is the authentication configuration to authenticate
  28150. against the Grafana instance.
  28151. properties:
  28152. basic:
  28153. description: |-
  28154. Basic auth credentials used to authenticate against the Grafana instance.
  28155. Note: you need a token which has elevated permissions to create service accounts.
  28156. See here for the documentation on basic roles offered by Grafana:
  28157. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28158. properties:
  28159. password:
  28160. description: A basic auth password used to authenticate against the Grafana instance.
  28161. properties:
  28162. key:
  28163. description: The key where the token is found.
  28164. maxLength: 253
  28165. minLength: 1
  28166. pattern: ^[-._a-zA-Z0-9]+$
  28167. type: string
  28168. name:
  28169. description: The name of the Secret resource being referred to.
  28170. maxLength: 253
  28171. minLength: 1
  28172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28173. type: string
  28174. type: object
  28175. username:
  28176. description: A basic auth username used to authenticate against the Grafana instance.
  28177. type: string
  28178. required:
  28179. - password
  28180. - username
  28181. type: object
  28182. token:
  28183. description: |-
  28184. A service account token used to authenticate against the Grafana instance.
  28185. Note: you need a token which has elevated permissions to create service accounts.
  28186. See here for the documentation on basic roles offered by Grafana:
  28187. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28188. properties:
  28189. key:
  28190. description: The key where the token is found.
  28191. maxLength: 253
  28192. minLength: 1
  28193. pattern: ^[-._a-zA-Z0-9]+$
  28194. type: string
  28195. name:
  28196. description: The name of the Secret resource being referred to.
  28197. maxLength: 253
  28198. minLength: 1
  28199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28200. type: string
  28201. type: object
  28202. type: object
  28203. serviceAccount:
  28204. description: |-
  28205. ServiceAccount is the configuration for the service account that
  28206. is supposed to be generated by the generator.
  28207. properties:
  28208. name:
  28209. description: Name is the name of the service account that will be created by ESO.
  28210. type: string
  28211. role:
  28212. description: |-
  28213. Role is the role of the service account.
  28214. See here for the documentation on basic roles offered by Grafana:
  28215. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28216. type: string
  28217. required:
  28218. - name
  28219. - role
  28220. type: object
  28221. url:
  28222. description: URL is the URL of the Grafana instance.
  28223. type: string
  28224. required:
  28225. - auth
  28226. - serviceAccount
  28227. - url
  28228. type: object
  28229. type: object
  28230. served: true
  28231. storage: true
  28232. subresources:
  28233. status: {}
  28234. ---
  28235. apiVersion: apiextensions.k8s.io/v1
  28236. kind: CustomResourceDefinition
  28237. metadata:
  28238. annotations:
  28239. controller-gen.kubebuilder.io/version: v0.19.0
  28240. labels:
  28241. external-secrets.io/component: controller
  28242. name: mfas.generators.external-secrets.io
  28243. spec:
  28244. group: generators.external-secrets.io
  28245. names:
  28246. categories:
  28247. - external-secrets
  28248. - external-secrets-generators
  28249. kind: MFA
  28250. listKind: MFAList
  28251. plural: mfas
  28252. singular: mfa
  28253. scope: Namespaced
  28254. versions:
  28255. - name: v1alpha1
  28256. schema:
  28257. openAPIV3Schema:
  28258. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  28259. properties:
  28260. apiVersion:
  28261. description: |-
  28262. APIVersion defines the versioned schema of this representation of an object.
  28263. Servers should convert recognized schemas to the latest internal value, and
  28264. may reject unrecognized values.
  28265. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28266. type: string
  28267. kind:
  28268. description: |-
  28269. Kind is a string value representing the REST resource this object represents.
  28270. Servers may infer this from the endpoint the client submits requests to.
  28271. Cannot be updated.
  28272. In CamelCase.
  28273. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28274. type: string
  28275. metadata:
  28276. type: object
  28277. spec:
  28278. description: MFASpec controls the behavior of the mfa generator.
  28279. properties:
  28280. algorithm:
  28281. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  28282. type: string
  28283. length:
  28284. description: Length defines the token length. Defaults to 6 characters.
  28285. type: integer
  28286. secret:
  28287. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  28288. properties:
  28289. key:
  28290. description: |-
  28291. A key in the referenced Secret.
  28292. Some instances of this field may be defaulted, in others it may be required.
  28293. maxLength: 253
  28294. minLength: 1
  28295. pattern: ^[-._a-zA-Z0-9]+$
  28296. type: string
  28297. name:
  28298. description: The name of the Secret resource being referred to.
  28299. maxLength: 253
  28300. minLength: 1
  28301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28302. type: string
  28303. namespace:
  28304. description: |-
  28305. The namespace of the Secret resource being referred to.
  28306. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28307. maxLength: 63
  28308. minLength: 1
  28309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28310. type: string
  28311. type: object
  28312. timePeriod:
  28313. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  28314. type: integer
  28315. when:
  28316. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  28317. format: date-time
  28318. type: string
  28319. required:
  28320. - secret
  28321. type: object
  28322. type: object
  28323. served: true
  28324. storage: true
  28325. subresources:
  28326. status: {}
  28327. ---
  28328. apiVersion: apiextensions.k8s.io/v1
  28329. kind: CustomResourceDefinition
  28330. metadata:
  28331. annotations:
  28332. controller-gen.kubebuilder.io/version: v0.19.0
  28333. labels:
  28334. external-secrets.io/component: controller
  28335. name: passwords.generators.external-secrets.io
  28336. spec:
  28337. group: generators.external-secrets.io
  28338. names:
  28339. categories:
  28340. - external-secrets
  28341. - external-secrets-generators
  28342. kind: Password
  28343. listKind: PasswordList
  28344. plural: passwords
  28345. singular: password
  28346. scope: Namespaced
  28347. versions:
  28348. - name: v1alpha1
  28349. schema:
  28350. openAPIV3Schema:
  28351. description: |-
  28352. Password generates a random password based on the
  28353. configuration parameters in spec.
  28354. You can specify the length, characterset and other attributes.
  28355. properties:
  28356. apiVersion:
  28357. description: |-
  28358. APIVersion defines the versioned schema of this representation of an object.
  28359. Servers should convert recognized schemas to the latest internal value, and
  28360. may reject unrecognized values.
  28361. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28362. type: string
  28363. kind:
  28364. description: |-
  28365. Kind is a string value representing the REST resource this object represents.
  28366. Servers may infer this from the endpoint the client submits requests to.
  28367. Cannot be updated.
  28368. In CamelCase.
  28369. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28370. type: string
  28371. metadata:
  28372. type: object
  28373. spec:
  28374. description: PasswordSpec controls the behavior of the password generator.
  28375. properties:
  28376. allowRepeat:
  28377. default: false
  28378. description: set AllowRepeat to true to allow repeating characters.
  28379. type: boolean
  28380. digits:
  28381. description: |-
  28382. Digits specifies the number of digits in the generated
  28383. password. If omitted it defaults to 25% of the length of the password
  28384. type: integer
  28385. encoding:
  28386. default: raw
  28387. description: |-
  28388. Encoding specifies the encoding of the generated password.
  28389. Valid values are:
  28390. - "raw" (default): no encoding
  28391. - "base64": standard base64 encoding
  28392. - "base64url": base64url encoding
  28393. - "base32": base32 encoding
  28394. - "hex": hexadecimal encoding
  28395. enum:
  28396. - base64
  28397. - base64url
  28398. - base32
  28399. - hex
  28400. - raw
  28401. type: string
  28402. length:
  28403. default: 24
  28404. description: |-
  28405. Length of the password to be generated.
  28406. Defaults to 24
  28407. type: integer
  28408. noUpper:
  28409. default: false
  28410. description: Set NoUpper to disable uppercase characters
  28411. type: boolean
  28412. secretKeys:
  28413. description: |-
  28414. SecretKeys defines the keys that will be populated with generated passwords.
  28415. Defaults to "password" when not set.
  28416. items:
  28417. type: string
  28418. minItems: 1
  28419. type: array
  28420. symbolCharacters:
  28421. description: |-
  28422. SymbolCharacters specifies the special characters that should be used
  28423. in the generated password.
  28424. type: string
  28425. symbols:
  28426. description: |-
  28427. Symbols specifies the number of symbol characters in the generated
  28428. password. If omitted it defaults to 25% of the length of the password
  28429. type: integer
  28430. required:
  28431. - allowRepeat
  28432. - length
  28433. - noUpper
  28434. type: object
  28435. type: object
  28436. served: true
  28437. storage: true
  28438. subresources:
  28439. status: {}
  28440. ---
  28441. apiVersion: apiextensions.k8s.io/v1
  28442. kind: CustomResourceDefinition
  28443. metadata:
  28444. annotations:
  28445. controller-gen.kubebuilder.io/version: v0.19.0
  28446. labels:
  28447. external-secrets.io/component: controller
  28448. name: quayaccesstokens.generators.external-secrets.io
  28449. spec:
  28450. group: generators.external-secrets.io
  28451. names:
  28452. categories:
  28453. - external-secrets
  28454. - external-secrets-generators
  28455. kind: QuayAccessToken
  28456. listKind: QuayAccessTokenList
  28457. plural: quayaccesstokens
  28458. singular: quayaccesstoken
  28459. scope: Namespaced
  28460. versions:
  28461. - name: v1alpha1
  28462. schema:
  28463. openAPIV3Schema:
  28464. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  28465. properties:
  28466. apiVersion:
  28467. description: |-
  28468. APIVersion defines the versioned schema of this representation of an object.
  28469. Servers should convert recognized schemas to the latest internal value, and
  28470. may reject unrecognized values.
  28471. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28472. type: string
  28473. kind:
  28474. description: |-
  28475. Kind is a string value representing the REST resource this object represents.
  28476. Servers may infer this from the endpoint the client submits requests to.
  28477. Cannot be updated.
  28478. In CamelCase.
  28479. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28480. type: string
  28481. metadata:
  28482. type: object
  28483. spec:
  28484. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  28485. properties:
  28486. robotAccount:
  28487. description: Name of the robot account you are federating with
  28488. type: string
  28489. serviceAccountRef:
  28490. description: Name of the service account you are federating with
  28491. properties:
  28492. audiences:
  28493. description: |-
  28494. Audience specifies the `aud` claim for the service account token
  28495. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28496. then this audiences will be appended to the list
  28497. items:
  28498. type: string
  28499. type: array
  28500. name:
  28501. description: The name of the ServiceAccount resource being referred to.
  28502. maxLength: 253
  28503. minLength: 1
  28504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28505. type: string
  28506. namespace:
  28507. description: |-
  28508. Namespace of the resource being referred to.
  28509. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28510. maxLength: 63
  28511. minLength: 1
  28512. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28513. type: string
  28514. required:
  28515. - name
  28516. type: object
  28517. url:
  28518. description: URL configures the Quay instance URL. Defaults to quay.io.
  28519. type: string
  28520. required:
  28521. - robotAccount
  28522. - serviceAccountRef
  28523. type: object
  28524. type: object
  28525. served: true
  28526. storage: true
  28527. subresources:
  28528. status: {}
  28529. ---
  28530. apiVersion: apiextensions.k8s.io/v1
  28531. kind: CustomResourceDefinition
  28532. metadata:
  28533. annotations:
  28534. controller-gen.kubebuilder.io/version: v0.19.0
  28535. labels:
  28536. external-secrets.io/component: controller
  28537. name: sshkeys.generators.external-secrets.io
  28538. spec:
  28539. group: generators.external-secrets.io
  28540. names:
  28541. categories:
  28542. - external-secrets
  28543. - external-secrets-generators
  28544. kind: SSHKey
  28545. listKind: SSHKeyList
  28546. plural: sshkeys
  28547. singular: sshkey
  28548. scope: Namespaced
  28549. versions:
  28550. - name: v1alpha1
  28551. schema:
  28552. openAPIV3Schema:
  28553. description: SSHKey generates SSH key pairs.
  28554. properties:
  28555. apiVersion:
  28556. description: |-
  28557. APIVersion defines the versioned schema of this representation of an object.
  28558. Servers should convert recognized schemas to the latest internal value, and
  28559. may reject unrecognized values.
  28560. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28561. type: string
  28562. kind:
  28563. description: |-
  28564. Kind is a string value representing the REST resource this object represents.
  28565. Servers may infer this from the endpoint the client submits requests to.
  28566. Cannot be updated.
  28567. In CamelCase.
  28568. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28569. type: string
  28570. metadata:
  28571. type: object
  28572. spec:
  28573. description: SSHKeySpec controls the behavior of the ssh key generator.
  28574. properties:
  28575. comment:
  28576. description: Comment specifies an optional comment for the SSH key
  28577. type: string
  28578. keySize:
  28579. description: |-
  28580. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  28581. For RSA keys: 2048, 3072, 4096
  28582. For ECDSA keys: 256, 384, 521
  28583. Ignored for ed25519 keys
  28584. maximum: 8192
  28585. minimum: 256
  28586. type: integer
  28587. keyType:
  28588. default: rsa
  28589. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  28590. enum:
  28591. - rsa
  28592. - ecdsa
  28593. - ed25519
  28594. type: string
  28595. type: object
  28596. type: object
  28597. served: true
  28598. storage: true
  28599. subresources:
  28600. status: {}
  28601. ---
  28602. apiVersion: apiextensions.k8s.io/v1
  28603. kind: CustomResourceDefinition
  28604. metadata:
  28605. annotations:
  28606. controller-gen.kubebuilder.io/version: v0.19.0
  28607. labels:
  28608. external-secrets.io/component: controller
  28609. name: stssessiontokens.generators.external-secrets.io
  28610. spec:
  28611. group: generators.external-secrets.io
  28612. names:
  28613. categories:
  28614. - external-secrets
  28615. - external-secrets-generators
  28616. kind: STSSessionToken
  28617. listKind: STSSessionTokenList
  28618. plural: stssessiontokens
  28619. singular: stssessiontoken
  28620. scope: Namespaced
  28621. versions:
  28622. - name: v1alpha1
  28623. schema:
  28624. openAPIV3Schema:
  28625. description: |-
  28626. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  28627. The authorization token is valid for 12 hours.
  28628. The authorizationToken returned is a base64 encoded string that can be decoded.
  28629. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  28630. properties:
  28631. apiVersion:
  28632. description: |-
  28633. APIVersion defines the versioned schema of this representation of an object.
  28634. Servers should convert recognized schemas to the latest internal value, and
  28635. may reject unrecognized values.
  28636. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28637. type: string
  28638. kind:
  28639. description: |-
  28640. Kind is a string value representing the REST resource this object represents.
  28641. Servers may infer this from the endpoint the client submits requests to.
  28642. Cannot be updated.
  28643. In CamelCase.
  28644. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28645. type: string
  28646. metadata:
  28647. type: object
  28648. spec:
  28649. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  28650. properties:
  28651. auth:
  28652. description: Auth defines how to authenticate with AWS
  28653. properties:
  28654. jwt:
  28655. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28656. properties:
  28657. serviceAccountRef:
  28658. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28659. properties:
  28660. audiences:
  28661. description: |-
  28662. Audience specifies the `aud` claim for the service account token
  28663. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28664. then this audiences will be appended to the list
  28665. items:
  28666. type: string
  28667. type: array
  28668. name:
  28669. description: The name of the ServiceAccount resource being referred to.
  28670. maxLength: 253
  28671. minLength: 1
  28672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28673. type: string
  28674. namespace:
  28675. description: |-
  28676. Namespace of the resource being referred to.
  28677. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28678. maxLength: 63
  28679. minLength: 1
  28680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28681. type: string
  28682. required:
  28683. - name
  28684. type: object
  28685. type: object
  28686. secretRef:
  28687. description: |-
  28688. AWSAuthSecretRef holds secret references for AWS credentials
  28689. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28690. properties:
  28691. accessKeyIDSecretRef:
  28692. description: The AccessKeyID is used for authentication
  28693. properties:
  28694. key:
  28695. description: |-
  28696. A key in the referenced Secret.
  28697. Some instances of this field may be defaulted, in others it may be required.
  28698. maxLength: 253
  28699. minLength: 1
  28700. pattern: ^[-._a-zA-Z0-9]+$
  28701. type: string
  28702. name:
  28703. description: The name of the Secret resource being referred to.
  28704. maxLength: 253
  28705. minLength: 1
  28706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28707. type: string
  28708. namespace:
  28709. description: |-
  28710. The namespace of the Secret resource being referred to.
  28711. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28712. maxLength: 63
  28713. minLength: 1
  28714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28715. type: string
  28716. type: object
  28717. secretAccessKeySecretRef:
  28718. description: The SecretAccessKey is used for authentication
  28719. properties:
  28720. key:
  28721. description: |-
  28722. A key in the referenced Secret.
  28723. Some instances of this field may be defaulted, in others it may be required.
  28724. maxLength: 253
  28725. minLength: 1
  28726. pattern: ^[-._a-zA-Z0-9]+$
  28727. type: string
  28728. name:
  28729. description: The name of the Secret resource being referred to.
  28730. maxLength: 253
  28731. minLength: 1
  28732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28733. type: string
  28734. namespace:
  28735. description: |-
  28736. The namespace of the Secret resource being referred to.
  28737. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28738. maxLength: 63
  28739. minLength: 1
  28740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28741. type: string
  28742. type: object
  28743. sessionTokenSecretRef:
  28744. description: |-
  28745. The SessionToken used for authentication
  28746. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28747. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28748. properties:
  28749. key:
  28750. description: |-
  28751. A key in the referenced Secret.
  28752. Some instances of this field may be defaulted, in others it may be required.
  28753. maxLength: 253
  28754. minLength: 1
  28755. pattern: ^[-._a-zA-Z0-9]+$
  28756. type: string
  28757. name:
  28758. description: The name of the Secret resource being referred to.
  28759. maxLength: 253
  28760. minLength: 1
  28761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28762. type: string
  28763. namespace:
  28764. description: |-
  28765. The namespace of the Secret resource being referred to.
  28766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28767. maxLength: 63
  28768. minLength: 1
  28769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28770. type: string
  28771. type: object
  28772. type: object
  28773. type: object
  28774. region:
  28775. description: Region specifies the region to operate in.
  28776. type: string
  28777. requestParameters:
  28778. description: RequestParameters contains parameters that can be passed to the STS service.
  28779. properties:
  28780. serialNumber:
  28781. description: |-
  28782. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  28783. the GetSessionToken call.
  28784. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  28785. (such as arn:aws:iam::123456789012:mfa/user)
  28786. type: string
  28787. sessionDuration:
  28788. format: int32
  28789. type: integer
  28790. tokenCode:
  28791. description: TokenCode is the value provided by the MFA device, if MFA is required.
  28792. type: string
  28793. type: object
  28794. role:
  28795. description: |-
  28796. You can assume a role before making calls to the
  28797. desired AWS service.
  28798. type: string
  28799. required:
  28800. - region
  28801. type: object
  28802. type: object
  28803. served: true
  28804. storage: true
  28805. subresources:
  28806. status: {}
  28807. ---
  28808. apiVersion: apiextensions.k8s.io/v1
  28809. kind: CustomResourceDefinition
  28810. metadata:
  28811. annotations:
  28812. controller-gen.kubebuilder.io/version: v0.19.0
  28813. labels:
  28814. external-secrets.io/component: controller
  28815. name: uuids.generators.external-secrets.io
  28816. spec:
  28817. group: generators.external-secrets.io
  28818. names:
  28819. categories:
  28820. - external-secrets
  28821. - external-secrets-generators
  28822. kind: UUID
  28823. listKind: UUIDList
  28824. plural: uuids
  28825. singular: uuid
  28826. scope: Namespaced
  28827. versions:
  28828. - name: v1alpha1
  28829. schema:
  28830. openAPIV3Schema:
  28831. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  28832. properties:
  28833. apiVersion:
  28834. description: |-
  28835. APIVersion defines the versioned schema of this representation of an object.
  28836. Servers should convert recognized schemas to the latest internal value, and
  28837. may reject unrecognized values.
  28838. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28839. type: string
  28840. kind:
  28841. description: |-
  28842. Kind is a string value representing the REST resource this object represents.
  28843. Servers may infer this from the endpoint the client submits requests to.
  28844. Cannot be updated.
  28845. In CamelCase.
  28846. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28847. type: string
  28848. metadata:
  28849. type: object
  28850. spec:
  28851. description: UUIDSpec controls the behavior of the uuid generator.
  28852. type: object
  28853. type: object
  28854. served: true
  28855. storage: true
  28856. subresources:
  28857. status: {}
  28858. ---
  28859. apiVersion: apiextensions.k8s.io/v1
  28860. kind: CustomResourceDefinition
  28861. metadata:
  28862. annotations:
  28863. controller-gen.kubebuilder.io/version: v0.19.0
  28864. labels:
  28865. external-secrets.io/component: controller
  28866. name: vaultdynamicsecrets.generators.external-secrets.io
  28867. spec:
  28868. group: generators.external-secrets.io
  28869. names:
  28870. categories:
  28871. - external-secrets
  28872. - external-secrets-generators
  28873. kind: VaultDynamicSecret
  28874. listKind: VaultDynamicSecretList
  28875. plural: vaultdynamicsecrets
  28876. singular: vaultdynamicsecret
  28877. scope: Namespaced
  28878. versions:
  28879. - name: v1alpha1
  28880. schema:
  28881. openAPIV3Schema:
  28882. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  28883. properties:
  28884. apiVersion:
  28885. description: |-
  28886. APIVersion defines the versioned schema of this representation of an object.
  28887. Servers should convert recognized schemas to the latest internal value, and
  28888. may reject unrecognized values.
  28889. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28890. type: string
  28891. kind:
  28892. description: |-
  28893. Kind is a string value representing the REST resource this object represents.
  28894. Servers may infer this from the endpoint the client submits requests to.
  28895. Cannot be updated.
  28896. In CamelCase.
  28897. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28898. type: string
  28899. metadata:
  28900. type: object
  28901. spec:
  28902. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  28903. properties:
  28904. allowEmptyResponse:
  28905. default: false
  28906. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  28907. type: boolean
  28908. controller:
  28909. description: |-
  28910. Used to select the correct ESO controller (think: ingress.ingressClassName)
  28911. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  28912. type: string
  28913. method:
  28914. description: Vault API method to use (GET/POST/other)
  28915. type: string
  28916. parameters:
  28917. description: Parameters to pass to Vault write (for non-GET methods)
  28918. x-kubernetes-preserve-unknown-fields: true
  28919. path:
  28920. description: Vault path to obtain the dynamic secret from
  28921. type: string
  28922. provider:
  28923. description: Vault provider common spec
  28924. properties:
  28925. auth:
  28926. description: Auth configures how secret-manager authenticates with the Vault server.
  28927. properties:
  28928. appRole:
  28929. description: |-
  28930. AppRole authenticates with Vault using the App Role auth mechanism,
  28931. with the role and secret stored in a Kubernetes Secret resource.
  28932. properties:
  28933. path:
  28934. default: approle
  28935. description: |-
  28936. Path where the App Role authentication backend is mounted
  28937. in Vault, e.g: "approle"
  28938. type: string
  28939. roleId:
  28940. description: |-
  28941. RoleID configured in the App Role authentication backend when setting
  28942. up the authentication backend in Vault.
  28943. type: string
  28944. roleRef:
  28945. description: |-
  28946. Reference to a key in a Secret that contains the App Role ID used
  28947. to authenticate with Vault.
  28948. The `key` field must be specified and denotes which entry within the Secret
  28949. resource is used as the app role id.
  28950. properties:
  28951. key:
  28952. description: |-
  28953. A key in the referenced Secret.
  28954. Some instances of this field may be defaulted, in others it may be required.
  28955. maxLength: 253
  28956. minLength: 1
  28957. pattern: ^[-._a-zA-Z0-9]+$
  28958. type: string
  28959. name:
  28960. description: The name of the Secret resource being referred to.
  28961. maxLength: 253
  28962. minLength: 1
  28963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28964. type: string
  28965. namespace:
  28966. description: |-
  28967. The namespace of the Secret resource being referred to.
  28968. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28969. maxLength: 63
  28970. minLength: 1
  28971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28972. type: string
  28973. type: object
  28974. secretRef:
  28975. description: |-
  28976. Reference to a key in a Secret that contains the App Role secret used
  28977. to authenticate with Vault.
  28978. The `key` field must be specified and denotes which entry within the Secret
  28979. resource is used as the app role secret.
  28980. properties:
  28981. key:
  28982. description: |-
  28983. A key in the referenced Secret.
  28984. Some instances of this field may be defaulted, in others it may be required.
  28985. maxLength: 253
  28986. minLength: 1
  28987. pattern: ^[-._a-zA-Z0-9]+$
  28988. type: string
  28989. name:
  28990. description: The name of the Secret resource being referred to.
  28991. maxLength: 253
  28992. minLength: 1
  28993. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28994. type: string
  28995. namespace:
  28996. description: |-
  28997. The namespace of the Secret resource being referred to.
  28998. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28999. maxLength: 63
  29000. minLength: 1
  29001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29002. type: string
  29003. type: object
  29004. required:
  29005. - path
  29006. - secretRef
  29007. type: object
  29008. cert:
  29009. description: |-
  29010. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  29011. Cert authentication method
  29012. properties:
  29013. clientCert:
  29014. description: |-
  29015. ClientCert is a certificate to authenticate using the Cert Vault
  29016. authentication method
  29017. properties:
  29018. key:
  29019. description: |-
  29020. A key in the referenced Secret.
  29021. Some instances of this field may be defaulted, in others it may be required.
  29022. maxLength: 253
  29023. minLength: 1
  29024. pattern: ^[-._a-zA-Z0-9]+$
  29025. type: string
  29026. name:
  29027. description: The name of the Secret resource being referred to.
  29028. maxLength: 253
  29029. minLength: 1
  29030. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29031. type: string
  29032. namespace:
  29033. description: |-
  29034. The namespace of the Secret resource being referred to.
  29035. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29036. maxLength: 63
  29037. minLength: 1
  29038. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29039. type: string
  29040. type: object
  29041. path:
  29042. default: cert
  29043. description: |-
  29044. Path where the Certificate authentication backend is mounted
  29045. in Vault, e.g: "cert"
  29046. type: string
  29047. secretRef:
  29048. description: |-
  29049. SecretRef to a key in a Secret resource containing client private key to
  29050. authenticate with Vault using the Cert authentication method
  29051. properties:
  29052. key:
  29053. description: |-
  29054. A key in the referenced Secret.
  29055. Some instances of this field may be defaulted, in others it may be required.
  29056. maxLength: 253
  29057. minLength: 1
  29058. pattern: ^[-._a-zA-Z0-9]+$
  29059. type: string
  29060. name:
  29061. description: The name of the Secret resource being referred to.
  29062. maxLength: 253
  29063. minLength: 1
  29064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29065. type: string
  29066. namespace:
  29067. description: |-
  29068. The namespace of the Secret resource being referred to.
  29069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29070. maxLength: 63
  29071. minLength: 1
  29072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29073. type: string
  29074. type: object
  29075. vaultRole:
  29076. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  29077. type: string
  29078. type: object
  29079. gcp:
  29080. description: |-
  29081. Gcp authenticates with Vault using Google Cloud Platform authentication method
  29082. GCP authentication method
  29083. properties:
  29084. location:
  29085. description: Location optionally defines a location/region for the secret
  29086. type: string
  29087. path:
  29088. default: gcp
  29089. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  29090. type: string
  29091. projectID:
  29092. description: Project ID of the Google Cloud Platform project
  29093. type: string
  29094. role:
  29095. 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.
  29096. type: string
  29097. secretRef:
  29098. description: Specify credentials in a Secret object
  29099. properties:
  29100. secretAccessKeySecretRef:
  29101. description: The SecretAccessKey is used for authentication
  29102. properties:
  29103. key:
  29104. description: |-
  29105. A key in the referenced Secret.
  29106. Some instances of this field may be defaulted, in others it may be required.
  29107. maxLength: 253
  29108. minLength: 1
  29109. pattern: ^[-._a-zA-Z0-9]+$
  29110. type: string
  29111. name:
  29112. description: The name of the Secret resource being referred to.
  29113. maxLength: 253
  29114. minLength: 1
  29115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29116. type: string
  29117. namespace:
  29118. description: |-
  29119. The namespace of the Secret resource being referred to.
  29120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29121. maxLength: 63
  29122. minLength: 1
  29123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29124. type: string
  29125. type: object
  29126. type: object
  29127. serviceAccountRef:
  29128. description: ServiceAccountRef to a service account for impersonation
  29129. properties:
  29130. audiences:
  29131. description: |-
  29132. Audience specifies the `aud` claim for the service account token
  29133. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29134. then this audiences will be appended to the list
  29135. items:
  29136. type: string
  29137. type: array
  29138. name:
  29139. description: The name of the ServiceAccount resource being referred to.
  29140. maxLength: 253
  29141. minLength: 1
  29142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29143. type: string
  29144. namespace:
  29145. description: |-
  29146. Namespace of the resource being referred to.
  29147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29148. maxLength: 63
  29149. minLength: 1
  29150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29151. type: string
  29152. required:
  29153. - name
  29154. type: object
  29155. workloadIdentity:
  29156. description: Specify a service account with Workload Identity
  29157. properties:
  29158. clusterLocation:
  29159. description: |-
  29160. ClusterLocation is the location of the cluster
  29161. If not specified, it fetches information from the metadata server
  29162. type: string
  29163. clusterName:
  29164. description: |-
  29165. ClusterName is the name of the cluster
  29166. If not specified, it fetches information from the metadata server
  29167. type: string
  29168. clusterProjectID:
  29169. description: |-
  29170. ClusterProjectID is the project ID of the cluster
  29171. If not specified, it fetches information from the metadata server
  29172. type: string
  29173. serviceAccountRef:
  29174. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29175. properties:
  29176. audiences:
  29177. description: |-
  29178. Audience specifies the `aud` claim for the service account token
  29179. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29180. then this audiences will be appended to the list
  29181. items:
  29182. type: string
  29183. type: array
  29184. name:
  29185. description: The name of the ServiceAccount resource being referred to.
  29186. maxLength: 253
  29187. minLength: 1
  29188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29189. type: string
  29190. namespace:
  29191. description: |-
  29192. Namespace of the resource being referred to.
  29193. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29194. maxLength: 63
  29195. minLength: 1
  29196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29197. type: string
  29198. required:
  29199. - name
  29200. type: object
  29201. required:
  29202. - serviceAccountRef
  29203. type: object
  29204. required:
  29205. - role
  29206. type: object
  29207. iam:
  29208. description: |-
  29209. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  29210. AWS IAM authentication method
  29211. properties:
  29212. externalID:
  29213. description: AWS External ID set on assumed IAM roles
  29214. type: string
  29215. jwt:
  29216. description: Specify a service account with IRSA enabled
  29217. properties:
  29218. serviceAccountRef:
  29219. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29220. properties:
  29221. audiences:
  29222. description: |-
  29223. Audience specifies the `aud` claim for the service account token
  29224. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29225. then this audiences will be appended to the list
  29226. items:
  29227. type: string
  29228. type: array
  29229. name:
  29230. description: The name of the ServiceAccount resource being referred to.
  29231. maxLength: 253
  29232. minLength: 1
  29233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29234. type: string
  29235. namespace:
  29236. description: |-
  29237. Namespace of the resource being referred to.
  29238. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29239. maxLength: 63
  29240. minLength: 1
  29241. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29242. type: string
  29243. required:
  29244. - name
  29245. type: object
  29246. type: object
  29247. path:
  29248. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  29249. type: string
  29250. region:
  29251. description: AWS region
  29252. type: string
  29253. role:
  29254. description: This is the AWS role to be assumed before talking to vault
  29255. type: string
  29256. secretRef:
  29257. description: Specify credentials in a Secret object
  29258. properties:
  29259. accessKeyIDSecretRef:
  29260. description: The AccessKeyID is used for authentication
  29261. properties:
  29262. key:
  29263. description: |-
  29264. A key in the referenced Secret.
  29265. Some instances of this field may be defaulted, in others it may be required.
  29266. maxLength: 253
  29267. minLength: 1
  29268. pattern: ^[-._a-zA-Z0-9]+$
  29269. type: string
  29270. name:
  29271. description: The name of the Secret resource being referred to.
  29272. maxLength: 253
  29273. minLength: 1
  29274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29275. type: string
  29276. namespace:
  29277. description: |-
  29278. The namespace of the Secret resource being referred to.
  29279. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29280. maxLength: 63
  29281. minLength: 1
  29282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29283. type: string
  29284. type: object
  29285. secretAccessKeySecretRef:
  29286. description: The SecretAccessKey is used for authentication
  29287. properties:
  29288. key:
  29289. description: |-
  29290. A key in the referenced Secret.
  29291. Some instances of this field may be defaulted, in others it may be required.
  29292. maxLength: 253
  29293. minLength: 1
  29294. pattern: ^[-._a-zA-Z0-9]+$
  29295. type: string
  29296. name:
  29297. description: The name of the Secret resource being referred to.
  29298. maxLength: 253
  29299. minLength: 1
  29300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29301. type: string
  29302. namespace:
  29303. description: |-
  29304. The namespace of the Secret resource being referred to.
  29305. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29306. maxLength: 63
  29307. minLength: 1
  29308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29309. type: string
  29310. type: object
  29311. sessionTokenSecretRef:
  29312. description: |-
  29313. The SessionToken used for authentication
  29314. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  29315. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  29316. properties:
  29317. key:
  29318. description: |-
  29319. A key in the referenced Secret.
  29320. Some instances of this field may be defaulted, in others it may be required.
  29321. maxLength: 253
  29322. minLength: 1
  29323. pattern: ^[-._a-zA-Z0-9]+$
  29324. type: string
  29325. name:
  29326. description: The name of the Secret resource being referred to.
  29327. maxLength: 253
  29328. minLength: 1
  29329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29330. type: string
  29331. namespace:
  29332. description: |-
  29333. The namespace of the Secret resource being referred to.
  29334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29335. maxLength: 63
  29336. minLength: 1
  29337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29338. type: string
  29339. type: object
  29340. type: object
  29341. vaultAwsIamServerID:
  29342. 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'
  29343. type: string
  29344. vaultRole:
  29345. 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
  29346. type: string
  29347. required:
  29348. - vaultRole
  29349. type: object
  29350. jwt:
  29351. description: |-
  29352. Jwt authenticates with Vault by passing role and JWT token using the
  29353. JWT/OIDC authentication method
  29354. properties:
  29355. kubernetesServiceAccountToken:
  29356. description: |-
  29357. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  29358. a token for with the `TokenRequest` API.
  29359. properties:
  29360. audiences:
  29361. description: |-
  29362. Optional audiences field that will be used to request a temporary Kubernetes service
  29363. account token for the service account referenced by `serviceAccountRef`.
  29364. Defaults to a single audience `vault` it not specified.
  29365. Deprecated: use serviceAccountRef.Audiences instead
  29366. items:
  29367. type: string
  29368. type: array
  29369. expirationSeconds:
  29370. description: |-
  29371. Optional expiration time in seconds that will be used to request a temporary
  29372. Kubernetes service account token for the service account referenced by
  29373. `serviceAccountRef`.
  29374. Deprecated: this will be removed in the future.
  29375. Defaults to 10 minutes.
  29376. type: integer
  29377. serviceAccountRef:
  29378. description: Service account field containing the name of a kubernetes ServiceAccount.
  29379. properties:
  29380. audiences:
  29381. description: |-
  29382. Audience specifies the `aud` claim for the service account token
  29383. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29384. then this audiences will be appended to the list
  29385. items:
  29386. type: string
  29387. type: array
  29388. name:
  29389. description: The name of the ServiceAccount resource being referred to.
  29390. maxLength: 253
  29391. minLength: 1
  29392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29393. type: string
  29394. namespace:
  29395. description: |-
  29396. Namespace of the resource being referred to.
  29397. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29398. maxLength: 63
  29399. minLength: 1
  29400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29401. type: string
  29402. required:
  29403. - name
  29404. type: object
  29405. required:
  29406. - serviceAccountRef
  29407. type: object
  29408. path:
  29409. default: jwt
  29410. description: |-
  29411. Path where the JWT authentication backend is mounted
  29412. in Vault, e.g: "jwt"
  29413. type: string
  29414. role:
  29415. description: |-
  29416. Role is a JWT role to authenticate using the JWT/OIDC Vault
  29417. authentication method
  29418. type: string
  29419. secretRef:
  29420. description: |-
  29421. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  29422. authenticate with Vault using the JWT/OIDC authentication method.
  29423. properties:
  29424. key:
  29425. description: |-
  29426. A key in the referenced Secret.
  29427. Some instances of this field may be defaulted, in others it may be required.
  29428. maxLength: 253
  29429. minLength: 1
  29430. pattern: ^[-._a-zA-Z0-9]+$
  29431. type: string
  29432. name:
  29433. description: The name of the Secret resource being referred to.
  29434. maxLength: 253
  29435. minLength: 1
  29436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29437. type: string
  29438. namespace:
  29439. description: |-
  29440. The namespace of the Secret resource being referred to.
  29441. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29442. maxLength: 63
  29443. minLength: 1
  29444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29445. type: string
  29446. type: object
  29447. required:
  29448. - path
  29449. type: object
  29450. kubernetes:
  29451. description: |-
  29452. Kubernetes authenticates with Vault by passing the ServiceAccount
  29453. token stored in the named Secret resource to the Vault server.
  29454. properties:
  29455. mountPath:
  29456. default: kubernetes
  29457. description: |-
  29458. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  29459. "kubernetes"
  29460. type: string
  29461. role:
  29462. description: |-
  29463. A required field containing the Vault Role to assume. A Role binds a
  29464. Kubernetes ServiceAccount with a set of Vault policies.
  29465. type: string
  29466. secretRef:
  29467. description: |-
  29468. Optional secret field containing a Kubernetes ServiceAccount JWT used
  29469. for authenticating with Vault. If a name is specified without a key,
  29470. `token` is the default. If one is not specified, the one bound to
  29471. the controller will be used.
  29472. properties:
  29473. key:
  29474. description: |-
  29475. A key in the referenced Secret.
  29476. Some instances of this field may be defaulted, in others it may be required.
  29477. maxLength: 253
  29478. minLength: 1
  29479. pattern: ^[-._a-zA-Z0-9]+$
  29480. type: string
  29481. name:
  29482. description: The name of the Secret resource being referred to.
  29483. maxLength: 253
  29484. minLength: 1
  29485. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29486. type: string
  29487. namespace:
  29488. description: |-
  29489. The namespace of the Secret resource being referred to.
  29490. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29491. maxLength: 63
  29492. minLength: 1
  29493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29494. type: string
  29495. type: object
  29496. serviceAccountRef:
  29497. description: |-
  29498. Optional service account field containing the name of a kubernetes ServiceAccount.
  29499. If the service account is specified, the service account secret token JWT will be used
  29500. for authenticating with Vault. If the service account selector is not supplied,
  29501. the secretRef will be used instead.
  29502. properties:
  29503. audiences:
  29504. description: |-
  29505. Audience specifies the `aud` claim for the service account token
  29506. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29507. then this audiences will be appended to the list
  29508. items:
  29509. type: string
  29510. type: array
  29511. name:
  29512. description: The name of the ServiceAccount resource being referred to.
  29513. maxLength: 253
  29514. minLength: 1
  29515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29516. type: string
  29517. namespace:
  29518. description: |-
  29519. Namespace of the resource being referred to.
  29520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29521. maxLength: 63
  29522. minLength: 1
  29523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29524. type: string
  29525. required:
  29526. - name
  29527. type: object
  29528. required:
  29529. - mountPath
  29530. - role
  29531. type: object
  29532. ldap:
  29533. description: |-
  29534. Ldap authenticates with Vault by passing username/password pair using
  29535. the LDAP authentication method
  29536. properties:
  29537. path:
  29538. default: ldap
  29539. description: |-
  29540. Path where the LDAP authentication backend is mounted
  29541. in Vault, e.g: "ldap"
  29542. type: string
  29543. secretRef:
  29544. description: |-
  29545. SecretRef to a key in a Secret resource containing password for the LDAP
  29546. user used to authenticate with Vault using the LDAP authentication
  29547. method
  29548. properties:
  29549. key:
  29550. description: |-
  29551. A key in the referenced Secret.
  29552. Some instances of this field may be defaulted, in others it may be required.
  29553. maxLength: 253
  29554. minLength: 1
  29555. pattern: ^[-._a-zA-Z0-9]+$
  29556. type: string
  29557. name:
  29558. description: The name of the Secret resource being referred to.
  29559. maxLength: 253
  29560. minLength: 1
  29561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29562. type: string
  29563. namespace:
  29564. description: |-
  29565. The namespace of the Secret resource being referred to.
  29566. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29567. maxLength: 63
  29568. minLength: 1
  29569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29570. type: string
  29571. type: object
  29572. username:
  29573. description: |-
  29574. Username is an LDAP username used to authenticate using the LDAP Vault
  29575. authentication method
  29576. type: string
  29577. required:
  29578. - path
  29579. - username
  29580. type: object
  29581. namespace:
  29582. description: |-
  29583. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  29584. Namespaces is a set of features within Vault Enterprise that allows
  29585. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29586. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29587. This will default to Vault.Namespace field if set, or empty otherwise
  29588. type: string
  29589. tokenSecretRef:
  29590. description: TokenSecretRef authenticates with Vault by presenting a token.
  29591. properties:
  29592. key:
  29593. description: |-
  29594. A key in the referenced Secret.
  29595. Some instances of this field may be defaulted, in others it may be required.
  29596. maxLength: 253
  29597. minLength: 1
  29598. pattern: ^[-._a-zA-Z0-9]+$
  29599. type: string
  29600. name:
  29601. description: The name of the Secret resource being referred to.
  29602. maxLength: 253
  29603. minLength: 1
  29604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29605. type: string
  29606. namespace:
  29607. description: |-
  29608. The namespace of the Secret resource being referred to.
  29609. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29610. maxLength: 63
  29611. minLength: 1
  29612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29613. type: string
  29614. type: object
  29615. userPass:
  29616. description: UserPass authenticates with Vault by passing username/password pair
  29617. properties:
  29618. path:
  29619. default: userpass
  29620. description: |-
  29621. Path where the UserPassword authentication backend is mounted
  29622. in Vault, e.g: "userpass"
  29623. type: string
  29624. secretRef:
  29625. description: |-
  29626. SecretRef to a key in a Secret resource containing password for the
  29627. user used to authenticate with Vault using the UserPass authentication
  29628. method
  29629. properties:
  29630. key:
  29631. description: |-
  29632. A key in the referenced Secret.
  29633. Some instances of this field may be defaulted, in others it may be required.
  29634. maxLength: 253
  29635. minLength: 1
  29636. pattern: ^[-._a-zA-Z0-9]+$
  29637. type: string
  29638. name:
  29639. description: The name of the Secret resource being referred to.
  29640. maxLength: 253
  29641. minLength: 1
  29642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29643. type: string
  29644. namespace:
  29645. description: |-
  29646. The namespace of the Secret resource being referred to.
  29647. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29648. maxLength: 63
  29649. minLength: 1
  29650. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29651. type: string
  29652. type: object
  29653. username:
  29654. description: |-
  29655. Username is a username used to authenticate using the UserPass Vault
  29656. authentication method
  29657. type: string
  29658. required:
  29659. - path
  29660. - username
  29661. type: object
  29662. type: object
  29663. caBundle:
  29664. description: |-
  29665. PEM encoded CA bundle used to validate Vault server certificate. Only used
  29666. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29667. plain HTTP protocol connection. If not set the system root certificates
  29668. are used to validate the TLS connection.
  29669. format: byte
  29670. type: string
  29671. caProvider:
  29672. description: The provider for the CA bundle to use to validate Vault server certificate.
  29673. properties:
  29674. key:
  29675. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29676. maxLength: 253
  29677. minLength: 1
  29678. pattern: ^[-._a-zA-Z0-9]+$
  29679. type: string
  29680. name:
  29681. description: The name of the object located at the provider type.
  29682. maxLength: 253
  29683. minLength: 1
  29684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29685. type: string
  29686. namespace:
  29687. description: |-
  29688. The namespace the Provider type is in.
  29689. Can only be defined when used in a ClusterSecretStore.
  29690. maxLength: 63
  29691. minLength: 1
  29692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29693. type: string
  29694. type:
  29695. description: The type of provider to use such as "Secret", or "ConfigMap".
  29696. enum:
  29697. - Secret
  29698. - ConfigMap
  29699. type: string
  29700. required:
  29701. - name
  29702. - type
  29703. type: object
  29704. checkAndSet:
  29705. description: |-
  29706. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  29707. Only applies to Vault KV v2 stores. When enabled, write operations must include
  29708. the current version of the secret to prevent unintentional overwrites.
  29709. properties:
  29710. required:
  29711. description: |-
  29712. Required when true, all write operations must include a check-and-set parameter.
  29713. This helps prevent unintentional overwrites of secrets.
  29714. type: boolean
  29715. type: object
  29716. forwardInconsistent:
  29717. description: |-
  29718. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  29719. leader instead of simply retrying within a loop. This can increase performance if
  29720. the option is enabled serverside.
  29721. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  29722. type: boolean
  29723. headers:
  29724. additionalProperties:
  29725. type: string
  29726. description: Headers to be added in Vault request
  29727. type: object
  29728. namespace:
  29729. description: |-
  29730. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  29731. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29732. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29733. type: string
  29734. path:
  29735. description: |-
  29736. Path is the mount path of the Vault KV backend endpoint, e.g:
  29737. "secret". The v2 KV secret engine version specific "/data" path suffix
  29738. for fetching secrets from Vault is optional and will be appended
  29739. if not present in specified path.
  29740. type: string
  29741. readYourWrites:
  29742. description: |-
  29743. ReadYourWrites ensures isolated read-after-write semantics by
  29744. providing discovered cluster replication states in each request.
  29745. More information about eventual consistency in Vault can be found here
  29746. https://www.vaultproject.io/docs/enterprise/consistency
  29747. type: boolean
  29748. server:
  29749. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  29750. type: string
  29751. tls:
  29752. description: |-
  29753. The configuration used for client side related TLS communication, when the Vault server
  29754. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  29755. This parameter is ignored for plain HTTP protocol connection.
  29756. It's worth noting this configuration is different from the "TLS certificates auth method",
  29757. which is available under the `auth.cert` section.
  29758. properties:
  29759. certSecretRef:
  29760. description: |-
  29761. CertSecretRef is a certificate added to the transport layer
  29762. when communicating with the Vault server.
  29763. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  29764. properties:
  29765. key:
  29766. description: |-
  29767. A key in the referenced Secret.
  29768. Some instances of this field may be defaulted, in others it may be required.
  29769. maxLength: 253
  29770. minLength: 1
  29771. pattern: ^[-._a-zA-Z0-9]+$
  29772. type: string
  29773. name:
  29774. description: The name of the Secret resource being referred to.
  29775. maxLength: 253
  29776. minLength: 1
  29777. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29778. type: string
  29779. namespace:
  29780. description: |-
  29781. The namespace of the Secret resource being referred to.
  29782. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29783. maxLength: 63
  29784. minLength: 1
  29785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29786. type: string
  29787. type: object
  29788. keySecretRef:
  29789. description: |-
  29790. KeySecretRef to a key in a Secret resource containing client private key
  29791. added to the transport layer when communicating with the Vault server.
  29792. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  29793. properties:
  29794. key:
  29795. description: |-
  29796. A key in the referenced Secret.
  29797. Some instances of this field may be defaulted, in others it may be required.
  29798. maxLength: 253
  29799. minLength: 1
  29800. pattern: ^[-._a-zA-Z0-9]+$
  29801. type: string
  29802. name:
  29803. description: The name of the Secret resource being referred to.
  29804. maxLength: 253
  29805. minLength: 1
  29806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29807. type: string
  29808. namespace:
  29809. description: |-
  29810. The namespace of the Secret resource being referred to.
  29811. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29812. maxLength: 63
  29813. minLength: 1
  29814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29815. type: string
  29816. type: object
  29817. type: object
  29818. version:
  29819. default: v2
  29820. description: |-
  29821. Version is the Vault KV secret engine version. This can be either "v1" or
  29822. "v2". Version defaults to "v2".
  29823. enum:
  29824. - v1
  29825. - v2
  29826. type: string
  29827. required:
  29828. - server
  29829. type: object
  29830. resultType:
  29831. default: Data
  29832. description: |-
  29833. Result type defines which data is returned from the generator.
  29834. By default, it is the "data" section of the Vault API response.
  29835. When using e.g. /auth/token/create the "data" section is empty but
  29836. the "auth" section contains the generated token.
  29837. Please refer to the vault docs regarding the result data structure.
  29838. Additionally, accessing the raw response is possibly by using "Raw" result type.
  29839. enum:
  29840. - Data
  29841. - Auth
  29842. - Raw
  29843. type: string
  29844. retrySettings:
  29845. description: Used to configure http retries if failed
  29846. properties:
  29847. maxRetries:
  29848. type: integer
  29849. retryInterval:
  29850. type: string
  29851. type: object
  29852. required:
  29853. - path
  29854. - provider
  29855. type: object
  29856. type: object
  29857. served: true
  29858. storage: true
  29859. subresources:
  29860. status: {}
  29861. ---
  29862. apiVersion: apiextensions.k8s.io/v1
  29863. kind: CustomResourceDefinition
  29864. metadata:
  29865. annotations:
  29866. controller-gen.kubebuilder.io/version: v0.19.0
  29867. labels:
  29868. external-secrets.io/component: controller
  29869. name: webhooks.generators.external-secrets.io
  29870. spec:
  29871. group: generators.external-secrets.io
  29872. names:
  29873. categories:
  29874. - external-secrets
  29875. - external-secrets-generators
  29876. kind: Webhook
  29877. listKind: WebhookList
  29878. plural: webhooks
  29879. singular: webhook
  29880. scope: Namespaced
  29881. versions:
  29882. - name: v1alpha1
  29883. schema:
  29884. openAPIV3Schema:
  29885. description: |-
  29886. Webhook connects to a third party API server to handle the secrets generation
  29887. configuration parameters in spec.
  29888. You can specify the server, the token, and additional body parameters.
  29889. See documentation for the full API specification for requests and responses.
  29890. properties:
  29891. apiVersion:
  29892. description: |-
  29893. APIVersion defines the versioned schema of this representation of an object.
  29894. Servers should convert recognized schemas to the latest internal value, and
  29895. may reject unrecognized values.
  29896. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29897. type: string
  29898. kind:
  29899. description: |-
  29900. Kind is a string value representing the REST resource this object represents.
  29901. Servers may infer this from the endpoint the client submits requests to.
  29902. Cannot be updated.
  29903. In CamelCase.
  29904. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29905. type: string
  29906. metadata:
  29907. type: object
  29908. spec:
  29909. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  29910. properties:
  29911. auth:
  29912. description: Auth specifies a authorization protocol. Only one protocol may be set.
  29913. maxProperties: 1
  29914. minProperties: 1
  29915. properties:
  29916. ntlm:
  29917. description: NTLMProtocol configures the store to use NTLM for auth
  29918. properties:
  29919. passwordSecret:
  29920. description: |-
  29921. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29922. In some instances, `key` is a required field.
  29923. properties:
  29924. key:
  29925. description: |-
  29926. A key in the referenced Secret.
  29927. Some instances of this field may be defaulted, in others it may be required.
  29928. maxLength: 253
  29929. minLength: 1
  29930. pattern: ^[-._a-zA-Z0-9]+$
  29931. type: string
  29932. name:
  29933. description: The name of the Secret resource being referred to.
  29934. maxLength: 253
  29935. minLength: 1
  29936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29937. type: string
  29938. namespace:
  29939. description: |-
  29940. The namespace of the Secret resource being referred to.
  29941. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29942. maxLength: 63
  29943. minLength: 1
  29944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29945. type: string
  29946. type: object
  29947. usernameSecret:
  29948. description: |-
  29949. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29950. In some instances, `key` is a required field.
  29951. properties:
  29952. key:
  29953. description: |-
  29954. A key in the referenced Secret.
  29955. Some instances of this field may be defaulted, in others it may be required.
  29956. maxLength: 253
  29957. minLength: 1
  29958. pattern: ^[-._a-zA-Z0-9]+$
  29959. type: string
  29960. name:
  29961. description: The name of the Secret resource being referred to.
  29962. maxLength: 253
  29963. minLength: 1
  29964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29965. type: string
  29966. namespace:
  29967. description: |-
  29968. The namespace of the Secret resource being referred to.
  29969. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29970. maxLength: 63
  29971. minLength: 1
  29972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29973. type: string
  29974. type: object
  29975. required:
  29976. - passwordSecret
  29977. - usernameSecret
  29978. type: object
  29979. type: object
  29980. body:
  29981. description: Body
  29982. type: string
  29983. caBundle:
  29984. description: |-
  29985. PEM encoded CA bundle used to validate webhook server certificate. Only used
  29986. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29987. plain HTTP protocol connection. If not set the system root certificates
  29988. are used to validate the TLS connection.
  29989. format: byte
  29990. type: string
  29991. caProvider:
  29992. description: The provider for the CA bundle to use to validate webhook server certificate.
  29993. properties:
  29994. key:
  29995. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29996. maxLength: 253
  29997. minLength: 1
  29998. pattern: ^[-._a-zA-Z0-9]+$
  29999. type: string
  30000. name:
  30001. description: The name of the object located at the provider type.
  30002. maxLength: 253
  30003. minLength: 1
  30004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30005. type: string
  30006. namespace:
  30007. description: The namespace the Provider type is in.
  30008. maxLength: 63
  30009. minLength: 1
  30010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30011. type: string
  30012. type:
  30013. description: The type of provider to use such as "Secret", or "ConfigMap".
  30014. enum:
  30015. - Secret
  30016. - ConfigMap
  30017. type: string
  30018. required:
  30019. - name
  30020. - type
  30021. type: object
  30022. headers:
  30023. additionalProperties:
  30024. type: string
  30025. description: Headers
  30026. type: object
  30027. method:
  30028. description: Webhook Method
  30029. type: string
  30030. result:
  30031. description: Result formatting
  30032. properties:
  30033. jsonPath:
  30034. description: Json path of return value
  30035. type: string
  30036. type: object
  30037. secrets:
  30038. description: |-
  30039. Secrets to fill in templates
  30040. These secrets will be passed to the templating function as key value pairs under the given name
  30041. items:
  30042. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  30043. properties:
  30044. name:
  30045. description: Name of this secret in templates
  30046. type: string
  30047. secretRef:
  30048. description: Secret ref to fill in credentials
  30049. properties:
  30050. key:
  30051. description: The key where the token is found.
  30052. maxLength: 253
  30053. minLength: 1
  30054. pattern: ^[-._a-zA-Z0-9]+$
  30055. type: string
  30056. name:
  30057. description: The name of the Secret resource being referred to.
  30058. maxLength: 253
  30059. minLength: 1
  30060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30061. type: string
  30062. type: object
  30063. required:
  30064. - name
  30065. - secretRef
  30066. type: object
  30067. type: array
  30068. timeout:
  30069. description: Timeout
  30070. type: string
  30071. url:
  30072. description: Webhook url to call
  30073. type: string
  30074. required:
  30075. - result
  30076. - url
  30077. type: object
  30078. type: object
  30079. served: true
  30080. storage: true
  30081. subresources:
  30082. status: {}
  30083. ---
  30084. apiVersion: apiextensions.k8s.io/v1
  30085. kind: CustomResourceDefinition
  30086. metadata:
  30087. annotations:
  30088. controller-gen.kubebuilder.io/version: v0.19.0
  30089. name: fakes.provider.external-secrets.io
  30090. spec:
  30091. group: provider.external-secrets.io
  30092. names:
  30093. categories:
  30094. - external-secrets
  30095. kind: Fake
  30096. listKind: FakeList
  30097. plural: fakes
  30098. shortNames:
  30099. - fake
  30100. singular: fake
  30101. scope: Namespaced
  30102. versions:
  30103. - name: v2alpha1
  30104. schema:
  30105. openAPIV3Schema:
  30106. description: |-
  30107. Fake defines the configuration for the Fake provider.
  30108. This provider returns static key-value pairs for testing purposes.
  30109. properties:
  30110. apiVersion:
  30111. description: |-
  30112. APIVersion defines the versioned schema of this representation of an object.
  30113. Servers should convert recognized schemas to the latest internal value, and
  30114. may reject unrecognized values.
  30115. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30116. type: string
  30117. kind:
  30118. description: |-
  30119. Kind is a string value representing the REST resource this object represents.
  30120. Servers may infer this from the endpoint the client submits requests to.
  30121. Cannot be updated.
  30122. In CamelCase.
  30123. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30124. type: string
  30125. metadata:
  30126. type: object
  30127. spec:
  30128. description: FakeProvider configures a fake provider that returns static values.
  30129. properties:
  30130. data:
  30131. items:
  30132. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  30133. properties:
  30134. key:
  30135. type: string
  30136. value:
  30137. type: string
  30138. version:
  30139. type: string
  30140. required:
  30141. - key
  30142. - value
  30143. type: object
  30144. type: array
  30145. validationResult:
  30146. description: ValidationResult is defined type for the number of validation results.
  30147. type: integer
  30148. required:
  30149. - data
  30150. type: object
  30151. type: object
  30152. served: true
  30153. storage: true
  30154. subresources:
  30155. status: {}
  30156. ---
  30157. apiVersion: apiextensions.k8s.io/v1
  30158. kind: CustomResourceDefinition
  30159. metadata:
  30160. annotations:
  30161. controller-gen.kubebuilder.io/version: v0.19.0
  30162. name: kubernetes.provider.external-secrets.io
  30163. spec:
  30164. group: provider.external-secrets.io
  30165. names:
  30166. categories:
  30167. - external-secrets
  30168. kind: Kubernetes
  30169. listKind: KubernetesList
  30170. plural: kubernetes
  30171. singular: kubernetes
  30172. scope: Namespaced
  30173. versions:
  30174. - name: v2alpha1
  30175. schema:
  30176. openAPIV3Schema:
  30177. description: |-
  30178. Kubernetes defines the configuration for the Kubernetes Secret provider.
  30179. This provider fetches secrets from Kubernetes Secrets in the same cluster.
  30180. It's primarily useful for testing and migration scenarios.
  30181. properties:
  30182. apiVersion:
  30183. description: |-
  30184. APIVersion defines the versioned schema of this representation of an object.
  30185. Servers should convert recognized schemas to the latest internal value, and
  30186. may reject unrecognized values.
  30187. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30188. type: string
  30189. kind:
  30190. description: |-
  30191. Kind is a string value representing the REST resource this object represents.
  30192. Servers may infer this from the endpoint the client submits requests to.
  30193. Cannot be updated.
  30194. In CamelCase.
  30195. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30196. type: string
  30197. metadata:
  30198. type: object
  30199. spec:
  30200. description: KubernetesProvider configures a store to sync secrets with a Kubernetes instance.
  30201. properties:
  30202. auth:
  30203. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  30204. maxProperties: 1
  30205. minProperties: 1
  30206. properties:
  30207. cert:
  30208. description: has both clientCert and clientKey as secretKeySelector
  30209. properties:
  30210. clientCert:
  30211. description: |-
  30212. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30213. In some instances, `key` is a required field.
  30214. properties:
  30215. key:
  30216. description: |-
  30217. A key in the referenced Secret.
  30218. Some instances of this field may be defaulted, in others it may be required.
  30219. maxLength: 253
  30220. minLength: 1
  30221. pattern: ^[-._a-zA-Z0-9]+$
  30222. type: string
  30223. name:
  30224. description: The name of the Secret resource being referred to.
  30225. maxLength: 253
  30226. minLength: 1
  30227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30228. type: string
  30229. namespace:
  30230. description: |-
  30231. The namespace of the Secret resource being referred to.
  30232. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30233. maxLength: 63
  30234. minLength: 1
  30235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30236. type: string
  30237. type: object
  30238. clientKey:
  30239. description: |-
  30240. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30241. In some instances, `key` is a required field.
  30242. properties:
  30243. key:
  30244. description: |-
  30245. A key in the referenced Secret.
  30246. Some instances of this field may be defaulted, in others it may be required.
  30247. maxLength: 253
  30248. minLength: 1
  30249. pattern: ^[-._a-zA-Z0-9]+$
  30250. type: string
  30251. name:
  30252. description: The name of the Secret resource being referred to.
  30253. maxLength: 253
  30254. minLength: 1
  30255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30256. type: string
  30257. namespace:
  30258. description: |-
  30259. The namespace of the Secret resource being referred to.
  30260. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30261. maxLength: 63
  30262. minLength: 1
  30263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30264. type: string
  30265. type: object
  30266. type: object
  30267. serviceAccount:
  30268. description: points to a service account that should be used for authentication
  30269. properties:
  30270. audiences:
  30271. description: |-
  30272. Audience specifies the `aud` claim for the service account token
  30273. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30274. then this audiences will be appended to the list
  30275. items:
  30276. type: string
  30277. type: array
  30278. name:
  30279. description: The name of the ServiceAccount resource being referred to.
  30280. maxLength: 253
  30281. minLength: 1
  30282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30283. type: string
  30284. namespace:
  30285. description: |-
  30286. Namespace of the resource being referred to.
  30287. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30288. maxLength: 63
  30289. minLength: 1
  30290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30291. type: string
  30292. required:
  30293. - name
  30294. type: object
  30295. token:
  30296. description: use static token to authenticate with
  30297. properties:
  30298. bearerToken:
  30299. description: |-
  30300. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30301. In some instances, `key` is a required field.
  30302. properties:
  30303. key:
  30304. description: |-
  30305. A key in the referenced Secret.
  30306. Some instances of this field may be defaulted, in others it may be required.
  30307. maxLength: 253
  30308. minLength: 1
  30309. pattern: ^[-._a-zA-Z0-9]+$
  30310. type: string
  30311. name:
  30312. description: The name of the Secret resource being referred to.
  30313. maxLength: 253
  30314. minLength: 1
  30315. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30316. type: string
  30317. namespace:
  30318. description: |-
  30319. The namespace of the Secret resource being referred to.
  30320. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30321. maxLength: 63
  30322. minLength: 1
  30323. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30324. type: string
  30325. type: object
  30326. type: object
  30327. type: object
  30328. authRef:
  30329. description: A reference to a secret that contains the auth information.
  30330. properties:
  30331. key:
  30332. description: |-
  30333. A key in the referenced Secret.
  30334. Some instances of this field may be defaulted, in others it may be required.
  30335. maxLength: 253
  30336. minLength: 1
  30337. pattern: ^[-._a-zA-Z0-9]+$
  30338. type: string
  30339. name:
  30340. description: The name of the Secret resource being referred to.
  30341. maxLength: 253
  30342. minLength: 1
  30343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30344. type: string
  30345. namespace:
  30346. description: |-
  30347. The namespace of the Secret resource being referred to.
  30348. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30349. maxLength: 63
  30350. minLength: 1
  30351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30352. type: string
  30353. type: object
  30354. remoteNamespace:
  30355. default: default
  30356. description: Remote namespace to fetch the secrets from
  30357. maxLength: 63
  30358. minLength: 1
  30359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30360. type: string
  30361. server:
  30362. description: configures the Kubernetes server Address.
  30363. properties:
  30364. caBundle:
  30365. description: CABundle is a base64-encoded CA certificate
  30366. format: byte
  30367. type: string
  30368. caProvider:
  30369. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  30370. properties:
  30371. key:
  30372. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  30373. maxLength: 253
  30374. minLength: 1
  30375. pattern: ^[-._a-zA-Z0-9]+$
  30376. type: string
  30377. name:
  30378. description: The name of the object located at the provider type.
  30379. maxLength: 253
  30380. minLength: 1
  30381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30382. type: string
  30383. namespace:
  30384. description: |-
  30385. The namespace the Provider type is in.
  30386. Can only be defined when used in a ClusterSecretStore.
  30387. maxLength: 63
  30388. minLength: 1
  30389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30390. type: string
  30391. type:
  30392. description: The type of provider to use such as "Secret", or "ConfigMap".
  30393. enum:
  30394. - Secret
  30395. - ConfigMap
  30396. type: string
  30397. required:
  30398. - name
  30399. - type
  30400. type: object
  30401. url:
  30402. default: kubernetes.default
  30403. description: configures the Kubernetes server Address.
  30404. type: string
  30405. type: object
  30406. type: object
  30407. type: object
  30408. served: true
  30409. storage: true
  30410. subresources:
  30411. status: {}
  30412. ---
  30413. apiVersion: apiextensions.k8s.io/v1
  30414. kind: CustomResourceDefinition
  30415. metadata:
  30416. annotations:
  30417. controller-gen.kubebuilder.io/version: v0.19.0
  30418. name: secretsmanagers.provider.external-secrets.io
  30419. spec:
  30420. group: provider.external-secrets.io
  30421. names:
  30422. categories:
  30423. - externalsecrets
  30424. kind: SecretsManager
  30425. listKind: SecretsManagerList
  30426. plural: secretsmanagers
  30427. shortNames:
  30428. - sm
  30429. singular: secretsmanager
  30430. scope: Namespaced
  30431. versions:
  30432. - additionalPrinterColumns:
  30433. - jsonPath: .spec.region
  30434. name: Region
  30435. type: string
  30436. - jsonPath: .metadata.creationTimestamp
  30437. name: Age
  30438. type: date
  30439. name: v2alpha1
  30440. schema:
  30441. openAPIV3Schema:
  30442. description: SecretsManager is the Schema for AWS Secrets Manager provider configuration.
  30443. properties:
  30444. apiVersion:
  30445. description: |-
  30446. APIVersion defines the versioned schema of this representation of an object.
  30447. Servers should convert recognized schemas to the latest internal value, and
  30448. may reject unrecognized values.
  30449. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30450. type: string
  30451. kind:
  30452. description: |-
  30453. Kind is a string value representing the REST resource this object represents.
  30454. Servers may infer this from the endpoint the client submits requests to.
  30455. Cannot be updated.
  30456. In CamelCase.
  30457. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30458. type: string
  30459. metadata:
  30460. type: object
  30461. spec:
  30462. description: SecretsManagerSpec defines the desired state of SecretsManager.
  30463. properties:
  30464. additionalRoles:
  30465. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  30466. items:
  30467. type: string
  30468. type: array
  30469. auth:
  30470. description: |-
  30471. Auth defines the information necessary to authenticate against AWS
  30472. if not set aws sdk will infer credentials from your environment
  30473. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  30474. properties:
  30475. jwt:
  30476. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  30477. properties:
  30478. serviceAccountRef:
  30479. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  30480. properties:
  30481. audiences:
  30482. description: |-
  30483. Audience specifies the `aud` claim for the service account token
  30484. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30485. then this audiences will be appended to the list
  30486. items:
  30487. type: string
  30488. type: array
  30489. name:
  30490. description: The name of the ServiceAccount resource being referred to.
  30491. maxLength: 253
  30492. minLength: 1
  30493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30494. type: string
  30495. namespace:
  30496. description: |-
  30497. Namespace of the resource being referred to.
  30498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30499. maxLength: 63
  30500. minLength: 1
  30501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30502. type: string
  30503. required:
  30504. - name
  30505. type: object
  30506. type: object
  30507. secretRef:
  30508. description: |-
  30509. AWSAuthSecretRef holds secret references for AWS credentials
  30510. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  30511. properties:
  30512. accessKeyIDSecretRef:
  30513. description: The AccessKeyID is used for authentication
  30514. properties:
  30515. key:
  30516. description: |-
  30517. A key in the referenced Secret.
  30518. Some instances of this field may be defaulted, in others it may be required.
  30519. maxLength: 253
  30520. minLength: 1
  30521. pattern: ^[-._a-zA-Z0-9]+$
  30522. type: string
  30523. name:
  30524. description: The name of the Secret resource being referred to.
  30525. maxLength: 253
  30526. minLength: 1
  30527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30528. type: string
  30529. namespace:
  30530. description: |-
  30531. The namespace of the Secret resource being referred to.
  30532. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30533. maxLength: 63
  30534. minLength: 1
  30535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30536. type: string
  30537. type: object
  30538. secretAccessKeySecretRef:
  30539. description: The SecretAccessKey is used for authentication
  30540. properties:
  30541. key:
  30542. description: |-
  30543. A key in the referenced Secret.
  30544. Some instances of this field may be defaulted, in others it may be required.
  30545. maxLength: 253
  30546. minLength: 1
  30547. pattern: ^[-._a-zA-Z0-9]+$
  30548. type: string
  30549. name:
  30550. description: The name of the Secret resource being referred to.
  30551. maxLength: 253
  30552. minLength: 1
  30553. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30554. type: string
  30555. namespace:
  30556. description: |-
  30557. The namespace of the Secret resource being referred to.
  30558. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30559. maxLength: 63
  30560. minLength: 1
  30561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30562. type: string
  30563. type: object
  30564. sessionTokenSecretRef:
  30565. description: |-
  30566. The SessionToken used for authentication
  30567. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  30568. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  30569. properties:
  30570. key:
  30571. description: |-
  30572. A key in the referenced Secret.
  30573. Some instances of this field may be defaulted, in others it may be required.
  30574. maxLength: 253
  30575. minLength: 1
  30576. pattern: ^[-._a-zA-Z0-9]+$
  30577. type: string
  30578. name:
  30579. description: The name of the Secret resource being referred to.
  30580. maxLength: 253
  30581. minLength: 1
  30582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30583. type: string
  30584. namespace:
  30585. description: |-
  30586. The namespace of the Secret resource being referred to.
  30587. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30588. maxLength: 63
  30589. minLength: 1
  30590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30591. type: string
  30592. type: object
  30593. type: object
  30594. type: object
  30595. externalID:
  30596. description: AWS External ID set on assumed IAM roles
  30597. type: string
  30598. prefix:
  30599. description: Prefix adds a prefix to all retrieved values.
  30600. type: string
  30601. region:
  30602. description: AWS Region to be used for the provider
  30603. type: string
  30604. role:
  30605. description: Role is a Role ARN which the provider will assume
  30606. type: string
  30607. secretsManager:
  30608. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  30609. properties:
  30610. forceDeleteWithoutRecovery:
  30611. description: |-
  30612. Specifies whether to delete the secret without any recovery window. You
  30613. can't use both this parameter and RecoveryWindowInDays in the same call.
  30614. If you don't use either, then by default Secrets Manager uses a 30 day
  30615. recovery window.
  30616. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  30617. type: boolean
  30618. recoveryWindowInDays:
  30619. description: |-
  30620. The number of days from 7 to 30 that Secrets Manager waits before
  30621. permanently deleting the secret. You can't use both this parameter and
  30622. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  30623. then by default Secrets Manager uses a 30-day recovery window.
  30624. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  30625. type: integer
  30626. type: object
  30627. sessionTags:
  30628. description: AWS STS assume role session tags
  30629. items:
  30630. description: |-
  30631. Tag is a key-value pair that can be attached to an AWS resource.
  30632. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  30633. properties:
  30634. key:
  30635. type: string
  30636. value:
  30637. type: string
  30638. required:
  30639. - key
  30640. - value
  30641. type: object
  30642. type: array
  30643. transitiveTagKeys:
  30644. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  30645. items:
  30646. type: string
  30647. type: array
  30648. required:
  30649. - region
  30650. type: object
  30651. status:
  30652. description: SecretsManagerStatus defines the observed state of SecretsManager.
  30653. properties:
  30654. conditions:
  30655. description: Conditions represent the latest available observations of the resource's state.
  30656. items:
  30657. description: Condition contains details for one aspect of the current state of this API Resource.
  30658. properties:
  30659. lastTransitionTime:
  30660. description: |-
  30661. lastTransitionTime is the last time the condition transitioned from one status to another.
  30662. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
  30663. format: date-time
  30664. type: string
  30665. message:
  30666. description: |-
  30667. message is a human readable message indicating details about the transition.
  30668. This may be an empty string.
  30669. maxLength: 32768
  30670. type: string
  30671. observedGeneration:
  30672. description: |-
  30673. observedGeneration represents the .metadata.generation that the condition was set based upon.
  30674. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
  30675. with respect to the current state of the instance.
  30676. format: int64
  30677. minimum: 0
  30678. type: integer
  30679. reason:
  30680. description: |-
  30681. reason contains a programmatic identifier indicating the reason for the condition's last transition.
  30682. Producers of specific condition types may define expected values and meanings for this field,
  30683. and whether the values are considered a guaranteed API.
  30684. The value should be a CamelCase string.
  30685. This field may not be empty.
  30686. maxLength: 1024
  30687. minLength: 1
  30688. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  30689. type: string
  30690. status:
  30691. description: status of the condition, one of True, False, Unknown.
  30692. enum:
  30693. - "True"
  30694. - "False"
  30695. - Unknown
  30696. type: string
  30697. type:
  30698. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  30699. maxLength: 316
  30700. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  30701. type: string
  30702. required:
  30703. - lastTransitionTime
  30704. - message
  30705. - reason
  30706. - status
  30707. - type
  30708. type: object
  30709. type: array
  30710. type: object
  30711. type: object
  30712. served: true
  30713. storage: true
  30714. subresources:
  30715. status: {}