bundle.yaml 1.7 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312263132631426315263162631726318263192632026321263222632326324263252632626327263282632926330263312633226333263342633526336263372633826339263402634126342263432634426345263462634726348263492635026351263522635326354263552635626357263582635926360263612636226363263642636526366263672636826369263702637126372263732637426375263762637726378263792638026381263822638326384263852638626387263882638926390263912639226393263942639526396263972639826399264002640126402264032640426405264062640726408264092641026411264122641326414264152641626417264182641926420264212642226423264242642526426264272642826429264302643126432264332643426435264362643726438264392644026441264422644326444264452644626447264482644926450264512645226453264542645526456264572645826459264602646126462264632646426465264662646726468264692647026471264722647326474264752647626477264782647926480264812648226483264842648526486264872648826489264902649126492264932649426495264962649726498264992650026501265022650326504265052650626507265082650926510265112651226513265142651526516265172651826519265202652126522265232652426525265262652726528265292653026531265322653326534265352653626537265382653926540265412654226543265442654526546265472654826549265502655126552265532655426555265562655726558265592656026561265622656326564265652656626567265682656926570265712657226573265742657526576265772657826579265802658126582265832658426585265862658726588265892659026591265922659326594265952659626597265982659926600266012660226603266042660526606266072660826609266102661126612266132661426615266162661726618266192662026621266222662326624266252662626627266282662926630266312663226633266342663526636266372663826639266402664126642266432664426645266462664726648266492665026651266522665326654266552665626657266582665926660266612666226663266642666526666266672666826669266702667126672266732667426675266762667726678266792668026681266822668326684266852668626687266882668926690266912669226693266942669526696266972669826699267002670126702267032670426705267062670726708267092671026711267122671326714267152671626717267182671926720267212672226723267242672526726267272672826729267302673126732267332673426735267362673726738267392674026741267422674326744267452674626747267482674926750267512675226753267542675526756267572675826759267602676126762267632676426765267662676726768267692677026771267722677326774267752677626777267782677926780267812678226783267842678526786267872678826789267902679126792267932679426795267962679726798267992680026801268022680326804268052680626807268082680926810268112681226813268142681526816268172681826819268202682126822268232682426825268262682726828268292683026831268322683326834268352683626837268382683926840268412684226843268442684526846268472684826849268502685126852268532685426855268562685726858268592686026861268622686326864268652686626867268682686926870268712687226873268742687526876268772687826879268802688126882268832688426885268862688726888268892689026891268922689326894268952689626897268982689926900269012690226903269042690526906269072690826909269102691126912269132691426915269162691726918269192692026921269222692326924269252692626927269282692926930269312693226933269342693526936269372693826939269402694126942269432694426945269462694726948269492695026951269522695326954269552695626957269582695926960269612696226963269642696526966269672696826969269702697126972269732697426975269762697726978269792698026981269822698326984269852698626987269882698926990269912699226993269942699526996269972699826999270002700127002270032700427005270062700727008270092701027011270122701327014270152701627017270182701927020270212702227023270242702527026270272702827029270302703127032270332703427035270362703727038270392704027041270422704327044270452704627047270482704927050270512705227053270542705527056270572705827059270602706127062270632706427065270662706727068270692707027071270722707327074270752707627077270782707927080270812708227083270842708527086270872708827089270902709127092270932709427095270962709727098270992710027101271022710327104271052710627107271082710927110271112711227113271142711527116271172711827119271202712127122271232712427125271262712727128271292713027131271322713327134271352713627137271382713927140271412714227143271442714527146271472714827149271502715127152271532715427155271562715727158271592716027161271622716327164271652716627167271682716927170271712717227173271742717527176271772717827179271802718127182271832718427185271862718727188271892719027191271922719327194271952719627197271982719927200272012720227203272042720527206272072720827209272102721127212272132721427215272162721727218272192722027221272222722327224272252722627227272282722927230272312723227233272342723527236272372723827239272402724127242272432724427245272462724727248272492725027251272522725327254272552725627257272582725927260272612726227263272642726527266272672726827269272702727127272272732727427275272762727727278272792728027281272822728327284272852728627287272882728927290272912729227293272942729527296272972729827299273002730127302273032730427305273062730727308273092731027311273122731327314273152731627317273182731927320273212732227323273242732527326273272732827329273302733127332273332733427335273362733727338273392734027341273422734327344273452734627347273482734927350273512735227353273542735527356273572735827359273602736127362273632736427365273662736727368273692737027371273722737327374273752737627377273782737927380273812738227383273842738527386273872738827389273902739127392273932739427395273962739727398273992740027401274022740327404274052740627407274082740927410274112741227413274142741527416274172741827419274202742127422274232742427425274262742727428274292743027431274322743327434274352743627437274382743927440274412744227443274442744527446274472744827449274502745127452274532745427455274562745727458274592746027461274622746327464274652746627467274682746927470274712747227473274742747527476274772747827479274802748127482274832748427485274862748727488274892749027491274922749327494274952749627497274982749927500275012750227503275042750527506275072750827509275102751127512275132751427515275162751727518275192752027521275222752327524275252752627527275282752927530275312753227533275342753527536275372753827539275402754127542275432754427545275462754727548275492755027551275522755327554275552755627557275582755927560275612756227563275642756527566275672756827569275702757127572275732757427575275762757727578275792758027581275822758327584275852758627587275882758927590275912759227593275942759527596275972759827599276002760127602276032760427605276062760727608276092761027611276122761327614276152761627617276182761927620276212762227623276242762527626276272762827629276302763127632276332763427635276362763727638276392764027641276422764327644276452764627647276482764927650276512765227653276542765527656276572765827659276602766127662276632766427665276662766727668276692767027671276722767327674276752767627677276782767927680276812768227683276842768527686276872768827689276902769127692276932769427695276962769727698276992770027701277022770327704277052770627707277082770927710277112771227713277142771527716277172771827719277202772127722277232772427725277262772727728277292773027731277322773327734277352773627737277382773927740277412774227743277442774527746277472774827749277502775127752277532775427755277562775727758277592776027761277622776327764277652776627767277682776927770277712777227773277742777527776277772777827779277802778127782277832778427785277862778727788277892779027791277922779327794277952779627797277982779927800278012780227803278042780527806278072780827809278102781127812278132781427815278162781727818278192782027821278222782327824278252782627827278282782927830278312783227833278342783527836278372783827839278402784127842278432784427845278462784727848278492785027851278522785327854278552785627857278582785927860278612786227863278642786527866278672786827869278702787127872278732787427875278762787727878278792788027881278822788327884278852788627887278882788927890278912789227893278942789527896278972789827899279002790127902279032790427905279062790727908279092791027911279122791327914279152791627917279182791927920279212792227923279242792527926279272792827929279302793127932279332793427935279362793727938279392794027941279422794327944279452794627947279482794927950279512795227953279542795527956279572795827959279602796127962279632796427965279662796727968279692797027971279722797327974279752797627977279782797927980279812798227983279842798527986279872798827989279902799127992279932799427995279962799727998279992800028001280022800328004280052800628007280082800928010280112801228013280142801528016280172801828019280202802128022280232802428025280262802728028280292803028031280322803328034280352803628037280382803928040280412804228043280442804528046280472804828049280502805128052280532805428055280562805728058280592806028061280622806328064280652806628067280682806928070280712807228073280742807528076280772807828079280802808128082280832808428085280862808728088280892809028091280922809328094280952809628097280982809928100281012810228103281042810528106281072810828109281102811128112281132811428115281162811728118281192812028121281222812328124281252812628127281282812928130281312813228133281342813528136281372813828139281402814128142281432814428145281462814728148281492815028151281522815328154281552815628157281582815928160281612816228163281642816528166281672816828169281702817128172281732817428175281762817728178281792818028181281822818328184281852818628187281882818928190281912819228193281942819528196281972819828199282002820128202282032820428205282062820728208282092821028211282122821328214282152821628217282182821928220282212822228223282242822528226282272822828229282302823128232282332823428235282362823728238282392824028241282422824328244282452824628247282482824928250282512825228253282542825528256282572825828259282602826128262282632826428265282662826728268282692827028271282722827328274282752827628277282782827928280282812828228283282842828528286282872828828289282902829128292282932829428295282962829728298282992830028301283022830328304283052830628307283082830928310283112831228313283142831528316283172831828319283202832128322283232832428325283262832728328283292833028331283322833328334283352833628337283382833928340283412834228343283442834528346283472834828349283502835128352283532835428355283562835728358283592836028361283622836328364283652836628367283682836928370283712837228373283742837528376283772837828379283802838128382283832838428385283862838728388283892839028391283922839328394283952839628397283982839928400284012840228403284042840528406284072840828409284102841128412284132841428415284162841728418284192842028421284222842328424284252842628427284282842928430284312843228433284342843528436284372843828439284402844128442284432844428445284462844728448284492845028451284522845328454284552845628457284582845928460284612846228463284642846528466284672846828469284702847128472284732847428475284762847728478284792848028481284822848328484284852848628487284882848928490284912849228493284942849528496284972849828499285002850128502285032850428505285062850728508285092851028511285122851328514285152851628517285182851928520285212852228523285242852528526285272852828529285302853128532285332853428535285362853728538285392854028541285422854328544285452854628547285482854928550285512855228553285542855528556285572855828559285602856128562285632856428565285662856728568285692857028571285722857328574285752857628577285782857928580285812858228583285842858528586285872858828589285902859128592285932859428595285962859728598285992860028601286022860328604286052860628607286082860928610286112861228613286142861528616286172861828619286202862128622286232862428625286262862728628286292863028631286322863328634286352863628637286382863928640286412864228643286442864528646286472864828649286502865128652286532865428655286562865728658286592866028661286622866328664286652866628667286682866928670286712867228673286742867528676286772867828679286802868128682286832868428685286862868728688286892869028691286922869328694286952869628697286982869928700287012870228703287042870528706287072870828709287102871128712287132871428715287162871728718287192872028721287222872328724287252872628727287282872928730287312873228733287342873528736287372873828739287402874128742287432874428745287462874728748287492875028751287522875328754287552875628757287582875928760287612876228763287642876528766287672876828769287702877128772287732877428775287762877728778287792878028781287822878328784287852878628787287882878928790287912879228793287942879528796287972879828799288002880128802288032880428805288062880728808288092881028811288122881328814288152881628817288182881928820288212882228823288242882528826288272882828829288302883128832288332883428835288362883728838288392884028841288422884328844288452884628847288482884928850288512885228853288542885528856288572885828859288602886128862288632886428865288662886728868288692887028871288722887328874288752887628877288782887928880288812888228883288842888528886288872888828889288902889128892288932889428895288962889728898288992890028901289022890328904289052890628907289082890928910289112891228913289142891528916289172891828919289202892128922289232892428925289262892728928289292893028931289322893328934289352893628937289382893928940289412894228943289442894528946289472894828949289502895128952289532895428955289562895728958289592896028961289622896328964289652896628967289682896928970289712897228973289742897528976289772897828979289802898128982289832898428985289862898728988289892899028991289922899328994289952899628997289982899929000290012900229003290042900529006290072900829009290102901129012290132901429015290162901729018290192902029021290222902329024290252902629027290282902929030290312903229033290342903529036290372903829039290402904129042290432904429045290462904729048290492905029051290522905329054290552905629057290582905929060290612906229063290642906529066290672906829069290702907129072290732907429075290762907729078290792908029081290822908329084290852908629087290882908929090290912909229093290942909529096290972909829099291002910129102291032910429105291062910729108291092911029111291122911329114291152911629117291182911929120291212912229123291242912529126291272912829129291302913129132291332913429135291362913729138291392914029141291422914329144291452914629147291482914929150291512915229153291542915529156291572915829159291602916129162291632916429165291662916729168291692917029171291722917329174291752917629177291782917929180291812918229183291842918529186291872918829189291902919129192291932919429195291962919729198291992920029201292022920329204292052920629207292082920929210292112921229213292142921529216292172921829219292202922129222292232922429225292262922729228292292923029231292322923329234292352923629237292382923929240292412924229243292442924529246292472924829249292502925129252292532925429255292562925729258292592926029261292622926329264292652926629267292682926929270292712927229273292742927529276292772927829279292802928129282292832928429285292862928729288292892929029291292922929329294292952929629297292982929929300293012930229303293042930529306293072930829309293102931129312293132931429315293162931729318293192932029321293222932329324293252932629327293282932929330293312933229333293342933529336293372933829339293402934129342293432934429345293462934729348293492935029351293522935329354293552935629357293582935929360293612936229363293642936529366293672936829369293702937129372293732937429375293762937729378293792938029381293822938329384293852938629387293882938929390293912939229393293942939529396293972939829399294002940129402294032940429405294062940729408294092941029411294122941329414294152941629417294182941929420294212942229423294242942529426294272942829429294302943129432294332943429435294362943729438294392944029441294422944329444294452944629447294482944929450294512945229453294542945529456294572945829459294602946129462294632946429465294662946729468294692947029471294722947329474294752947629477294782947929480294812948229483294842948529486294872948829489294902949129492294932949429495294962949729498294992950029501295022950329504295052950629507295082950929510295112951229513295142951529516295172951829519295202952129522295232952429525295262952729528295292953029531295322953329534295352953629537295382953929540295412954229543295442954529546295472954829549295502955129552295532955429555295562955729558295592956029561295622956329564295652956629567295682956929570295712957229573295742957529576295772957829579295802958129582295832958429585295862958729588295892959029591295922959329594295952959629597295982959929600296012960229603296042960529606296072960829609296102961129612296132961429615296162961729618296192962029621296222962329624296252962629627296282962929630296312963229633296342963529636296372963829639296402964129642296432964429645296462964729648296492965029651296522965329654296552965629657296582965929660296612966229663296642966529666296672966829669296702967129672296732967429675296762967729678296792968029681296822968329684296852968629687296882968929690296912969229693296942969529696296972969829699297002970129702297032970429705297062970729708297092971029711
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: clusterexternalsecrets.external-secrets.io
  9. spec:
  10. group: external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. kind: ClusterExternalSecret
  15. listKind: ClusterExternalSecretList
  16. plural: clusterexternalsecrets
  17. shortNames:
  18. - ces
  19. singular: clusterexternalsecret
  20. scope: Cluster
  21. versions:
  22. - additionalPrinterColumns:
  23. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  24. name: Store
  25. type: string
  26. - jsonPath: .spec.refreshTime
  27. name: Refresh Interval
  28. type: string
  29. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  30. name: Ready
  31. type: string
  32. name: v1
  33. schema:
  34. openAPIV3Schema:
  35. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  36. properties:
  37. apiVersion:
  38. description: |-
  39. APIVersion defines the versioned schema of this representation of an object.
  40. Servers should convert recognized schemas to the latest internal value, and
  41. may reject unrecognized values.
  42. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  43. type: string
  44. kind:
  45. description: |-
  46. Kind is a string value representing the REST resource this object represents.
  47. Servers may infer this from the endpoint the client submits requests to.
  48. Cannot be updated.
  49. In CamelCase.
  50. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  51. type: string
  52. metadata:
  53. type: object
  54. spec:
  55. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  56. properties:
  57. externalSecretMetadata:
  58. description: The metadata of the external secrets to be created
  59. properties:
  60. annotations:
  61. additionalProperties:
  62. type: string
  63. type: object
  64. labels:
  65. additionalProperties:
  66. type: string
  67. type: object
  68. type: object
  69. externalSecretName:
  70. description: |-
  71. The name of the external secrets to be created.
  72. Defaults to the name of the ClusterExternalSecret
  73. maxLength: 253
  74. minLength: 1
  75. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  76. type: string
  77. externalSecretSpec:
  78. description: The spec for the ExternalSecrets to be created
  79. properties:
  80. data:
  81. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  82. items:
  83. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  84. properties:
  85. remoteRef:
  86. description: |-
  87. RemoteRef points to the remote secret and defines
  88. which secret (version/property/..) to fetch.
  89. properties:
  90. conversionStrategy:
  91. default: Default
  92. description: Used to define a conversion Strategy
  93. enum:
  94. - Default
  95. - Unicode
  96. type: string
  97. decodingStrategy:
  98. default: None
  99. description: Used to define a decoding Strategy
  100. enum:
  101. - Auto
  102. - Base64
  103. - Base64URL
  104. - None
  105. type: string
  106. key:
  107. description: Key is the key used in the Provider, mandatory
  108. type: string
  109. metadataPolicy:
  110. default: None
  111. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  112. enum:
  113. - None
  114. - Fetch
  115. type: string
  116. nullBytePolicy:
  117. default: Ignore
  118. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  119. enum:
  120. - Ignore
  121. - Fail
  122. type: string
  123. property:
  124. description: Used to select a specific property of the Provider value (if a map), if supported
  125. type: string
  126. version:
  127. description: Used to select a specific version of the Provider value, if supported
  128. type: string
  129. required:
  130. - key
  131. type: object
  132. secretKey:
  133. description: The key in the Kubernetes Secret to store the value.
  134. maxLength: 253
  135. minLength: 1
  136. pattern: ^[-._a-zA-Z0-9]+$
  137. type: string
  138. sourceRef:
  139. description: |-
  140. SourceRef allows you to override the source
  141. from which the value will be pulled.
  142. maxProperties: 1
  143. minProperties: 1
  144. properties:
  145. generatorRef:
  146. description: |-
  147. GeneratorRef points to a generator custom resource.
  148. Deprecated: The generatorRef is not implemented in .data[].
  149. this will be removed with v1.
  150. properties:
  151. apiVersion:
  152. default: generators.external-secrets.io/v1alpha1
  153. description: Specify the apiVersion of the generator resource
  154. type: string
  155. kind:
  156. description: Specify the Kind of the generator resource
  157. enum:
  158. - ACRAccessToken
  159. - ClusterGenerator
  160. - CloudsmithAccessToken
  161. - ECRAuthorizationToken
  162. - Fake
  163. - GCRAccessToken
  164. - GithubAccessToken
  165. - QuayAccessToken
  166. - Password
  167. - SSHKey
  168. - STSSessionToken
  169. - UUID
  170. - VaultDynamicSecret
  171. - Webhook
  172. - Grafana
  173. - MFA
  174. type: string
  175. name:
  176. description: Specify the name of the generator resource
  177. maxLength: 253
  178. minLength: 1
  179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  180. type: string
  181. required:
  182. - kind
  183. - name
  184. type: object
  185. storeRef:
  186. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  187. properties:
  188. kind:
  189. description: |-
  190. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  191. Defaults to `SecretStore`
  192. enum:
  193. - SecretStore
  194. - ClusterSecretStore
  195. type: string
  196. name:
  197. description: Name of the SecretStore resource
  198. maxLength: 253
  199. minLength: 1
  200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  201. type: string
  202. type: object
  203. type: object
  204. required:
  205. - remoteRef
  206. - secretKey
  207. type: object
  208. type: array
  209. dataFrom:
  210. description: |-
  211. DataFrom is used to fetch all properties from a specific Provider data
  212. If multiple entries are specified, the Secret keys are merged in the specified order
  213. items:
  214. description: |-
  215. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  216. when using DataFrom to fetch multiple values from a Provider.
  217. properties:
  218. extract:
  219. description: |-
  220. Used to extract multiple key/value pairs from one secret
  221. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  222. properties:
  223. conversionStrategy:
  224. default: Default
  225. description: Used to define a conversion Strategy
  226. enum:
  227. - Default
  228. - Unicode
  229. type: string
  230. decodingStrategy:
  231. default: None
  232. description: Used to define a decoding Strategy
  233. enum:
  234. - Auto
  235. - Base64
  236. - Base64URL
  237. - None
  238. type: string
  239. key:
  240. description: Key is the key used in the Provider, mandatory
  241. type: string
  242. metadataPolicy:
  243. default: None
  244. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  245. enum:
  246. - None
  247. - Fetch
  248. type: string
  249. nullBytePolicy:
  250. default: Ignore
  251. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  252. enum:
  253. - Ignore
  254. - Fail
  255. type: string
  256. property:
  257. description: Used to select a specific property of the Provider value (if a map), if supported
  258. type: string
  259. version:
  260. description: Used to select a specific version of the Provider value, if supported
  261. type: string
  262. required:
  263. - key
  264. type: object
  265. find:
  266. description: |-
  267. Used to find secrets based on tags or regular expressions
  268. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  269. properties:
  270. conversionStrategy:
  271. default: Default
  272. description: Used to define a conversion Strategy
  273. enum:
  274. - Default
  275. - Unicode
  276. type: string
  277. decodingStrategy:
  278. default: None
  279. description: Used to define a decoding Strategy
  280. enum:
  281. - Auto
  282. - Base64
  283. - Base64URL
  284. - None
  285. type: string
  286. name:
  287. description: Finds secrets based on the name.
  288. properties:
  289. regexp:
  290. description: Finds secrets base
  291. type: string
  292. type: object
  293. nullBytePolicy:
  294. default: Ignore
  295. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  296. enum:
  297. - Ignore
  298. - Fail
  299. type: string
  300. path:
  301. description: A root path to start the find operations.
  302. type: string
  303. tags:
  304. additionalProperties:
  305. type: string
  306. description: Find secrets based on tags.
  307. type: object
  308. type: object
  309. rewrite:
  310. description: |-
  311. Used to rewrite secret Keys after getting them from the secret Provider
  312. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  313. items:
  314. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  315. maxProperties: 1
  316. minProperties: 1
  317. properties:
  318. merge:
  319. description: |-
  320. Used to merge key/values in one single Secret
  321. The resulting key will contain all values from the specified secrets
  322. properties:
  323. conflictPolicy:
  324. default: Error
  325. description: Used to define the policy to use in conflict resolution.
  326. enum:
  327. - Ignore
  328. - Error
  329. type: string
  330. into:
  331. default: ""
  332. description: |-
  333. Used to define the target key of the merge operation.
  334. Required if strategy is JSON. Ignored otherwise.
  335. type: string
  336. priority:
  337. description: Used to define key priority in conflict resolution.
  338. items:
  339. type: string
  340. type: array
  341. priorityPolicy:
  342. default: Strict
  343. description: Used to define the policy when a key in the priority list does not exist in the input.
  344. enum:
  345. - IgnoreNotFound
  346. - Strict
  347. type: string
  348. strategy:
  349. default: Extract
  350. description: Used to define the strategy to use in the merge operation.
  351. enum:
  352. - Extract
  353. - JSON
  354. type: string
  355. type: object
  356. regexp:
  357. description: |-
  358. Used to rewrite with regular expressions.
  359. The resulting key will be the output of a regexp.ReplaceAll operation.
  360. properties:
  361. source:
  362. description: Used to define the regular expression of a re.Compiler.
  363. type: string
  364. target:
  365. description: Used to define the target pattern of a ReplaceAll operation.
  366. type: string
  367. required:
  368. - source
  369. - target
  370. type: object
  371. transform:
  372. description: |-
  373. Used to apply string transformation on the secrets.
  374. The resulting key will be the output of the template applied by the operation.
  375. properties:
  376. template:
  377. description: |-
  378. Used to define the template to apply on the secret name.
  379. `.value ` will specify the secret name in the template.
  380. type: string
  381. required:
  382. - template
  383. type: object
  384. type: object
  385. type: array
  386. sourceRef:
  387. description: |-
  388. SourceRef points to a store or generator
  389. which contains secret values ready to use.
  390. Use this in combination with Extract or Find pull values out of
  391. a specific SecretStore.
  392. When sourceRef points to a generator Extract or Find is not supported.
  393. The generator returns a static map of values
  394. maxProperties: 1
  395. minProperties: 1
  396. properties:
  397. generatorRef:
  398. description: GeneratorRef points to a generator custom resource.
  399. properties:
  400. apiVersion:
  401. default: generators.external-secrets.io/v1alpha1
  402. description: Specify the apiVersion of the generator resource
  403. type: string
  404. kind:
  405. description: Specify the Kind of the generator resource
  406. enum:
  407. - ACRAccessToken
  408. - ClusterGenerator
  409. - CloudsmithAccessToken
  410. - ECRAuthorizationToken
  411. - Fake
  412. - GCRAccessToken
  413. - GithubAccessToken
  414. - QuayAccessToken
  415. - Password
  416. - SSHKey
  417. - STSSessionToken
  418. - UUID
  419. - VaultDynamicSecret
  420. - Webhook
  421. - Grafana
  422. - MFA
  423. type: string
  424. name:
  425. description: Specify the name of the generator resource
  426. maxLength: 253
  427. minLength: 1
  428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  429. type: string
  430. required:
  431. - kind
  432. - name
  433. type: object
  434. storeRef:
  435. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  436. properties:
  437. kind:
  438. description: |-
  439. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  440. Defaults to `SecretStore`
  441. enum:
  442. - SecretStore
  443. - ClusterSecretStore
  444. type: string
  445. name:
  446. description: Name of the SecretStore resource
  447. maxLength: 253
  448. minLength: 1
  449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  450. type: string
  451. type: object
  452. type: object
  453. type: object
  454. type: array
  455. refreshInterval:
  456. default: 1h0m0s
  457. description: |-
  458. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  459. specified as Golang Duration strings.
  460. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  461. Example values: "1h0m0s", "2h30m0s", "10m0s"
  462. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  463. type: string
  464. refreshPolicy:
  465. description: |-
  466. RefreshPolicy determines how the ExternalSecret should be refreshed:
  467. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  468. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  469. No periodic updates occur if refreshInterval is 0.
  470. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  471. enum:
  472. - CreatedOnce
  473. - Periodic
  474. - OnChange
  475. type: string
  476. secretStoreRef:
  477. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  478. properties:
  479. kind:
  480. description: |-
  481. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  482. Defaults to `SecretStore`
  483. enum:
  484. - SecretStore
  485. - ClusterSecretStore
  486. type: string
  487. name:
  488. description: Name of the SecretStore resource
  489. maxLength: 253
  490. minLength: 1
  491. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  492. type: string
  493. type: object
  494. target:
  495. default:
  496. creationPolicy: Owner
  497. deletionPolicy: Retain
  498. description: |-
  499. ExternalSecretTarget defines the Kubernetes Secret to be created,
  500. there can be only one target per ExternalSecret.
  501. properties:
  502. creationPolicy:
  503. default: Owner
  504. description: |-
  505. CreationPolicy defines rules on how to create the resulting Secret.
  506. Defaults to "Owner"
  507. enum:
  508. - Owner
  509. - Orphan
  510. - Merge
  511. - None
  512. type: string
  513. deletionPolicy:
  514. default: Retain
  515. description: |-
  516. DeletionPolicy defines rules on how to delete the resulting Secret.
  517. Defaults to "Retain"
  518. enum:
  519. - Delete
  520. - Merge
  521. - Retain
  522. type: string
  523. immutable:
  524. description: Immutable defines if the final secret will be immutable
  525. type: boolean
  526. manifest:
  527. description: |-
  528. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  529. When specified, ExternalSecret will create the resource type defined here
  530. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  531. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  532. properties:
  533. apiVersion:
  534. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  535. minLength: 1
  536. type: string
  537. kind:
  538. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  539. minLength: 1
  540. type: string
  541. required:
  542. - apiVersion
  543. - kind
  544. type: object
  545. name:
  546. description: |-
  547. The name of the Secret resource to be managed.
  548. Defaults to the .metadata.name of the ExternalSecret resource
  549. maxLength: 253
  550. minLength: 1
  551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  552. type: string
  553. template:
  554. description: Template defines a blueprint for the created Secret resource.
  555. properties:
  556. data:
  557. additionalProperties:
  558. type: string
  559. type: object
  560. engineVersion:
  561. default: v2
  562. description: |-
  563. EngineVersion specifies the template engine version
  564. that should be used to compile/execute the
  565. template specified in .data and .templateFrom[].
  566. enum:
  567. - v2
  568. type: string
  569. mergePolicy:
  570. default: Replace
  571. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  572. enum:
  573. - Replace
  574. - Merge
  575. type: string
  576. metadata:
  577. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  578. properties:
  579. annotations:
  580. additionalProperties:
  581. type: string
  582. type: object
  583. finalizers:
  584. items:
  585. type: string
  586. type: array
  587. labels:
  588. additionalProperties:
  589. type: string
  590. type: object
  591. type: object
  592. templateFrom:
  593. items:
  594. description: |-
  595. TemplateFrom specifies a source for templates.
  596. Each item in the list can either reference a ConfigMap or a Secret resource.
  597. properties:
  598. configMap:
  599. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  600. properties:
  601. items:
  602. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  603. items:
  604. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  605. properties:
  606. key:
  607. description: A key in the ConfigMap/Secret
  608. maxLength: 253
  609. minLength: 1
  610. pattern: ^[-._a-zA-Z0-9]+$
  611. type: string
  612. templateAs:
  613. default: Values
  614. description: TemplateScope specifies how the template keys should be interpreted.
  615. enum:
  616. - Values
  617. - KeysAndValues
  618. type: string
  619. required:
  620. - key
  621. type: object
  622. type: array
  623. name:
  624. description: The name of the ConfigMap/Secret resource
  625. maxLength: 253
  626. minLength: 1
  627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  628. type: string
  629. required:
  630. - items
  631. - name
  632. type: object
  633. literal:
  634. type: string
  635. secret:
  636. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  637. properties:
  638. items:
  639. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  640. items:
  641. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  642. properties:
  643. key:
  644. description: A key in the ConfigMap/Secret
  645. maxLength: 253
  646. minLength: 1
  647. pattern: ^[-._a-zA-Z0-9]+$
  648. type: string
  649. templateAs:
  650. default: Values
  651. description: TemplateScope specifies how the template keys should be interpreted.
  652. enum:
  653. - Values
  654. - KeysAndValues
  655. type: string
  656. required:
  657. - key
  658. type: object
  659. type: array
  660. name:
  661. description: The name of the ConfigMap/Secret resource
  662. maxLength: 253
  663. minLength: 1
  664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  665. type: string
  666. required:
  667. - items
  668. - name
  669. type: object
  670. target:
  671. default: Data
  672. description: |-
  673. Target specifies where to place the template result.
  674. For Secret resources, common values are: "Data", "Annotations", "Labels".
  675. For custom resources (when spec.target.manifest is set), this supports
  676. nested paths like "spec.database.config" or "data".
  677. type: string
  678. type: object
  679. type: array
  680. type:
  681. type: string
  682. type: object
  683. type: object
  684. type: object
  685. namespaceSelector:
  686. description: |-
  687. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  688. Deprecated: Use NamespaceSelectors instead.
  689. properties:
  690. matchExpressions:
  691. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  692. items:
  693. description: |-
  694. A label selector requirement is a selector that contains values, a key, and an operator that
  695. relates the key and values.
  696. properties:
  697. key:
  698. description: key is the label key that the selector applies to.
  699. type: string
  700. operator:
  701. description: |-
  702. operator represents a key's relationship to a set of values.
  703. Valid operators are In, NotIn, Exists and DoesNotExist.
  704. type: string
  705. values:
  706. description: |-
  707. values is an array of string values. If the operator is In or NotIn,
  708. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  709. the values array must be empty. This array is replaced during a strategic
  710. merge patch.
  711. items:
  712. type: string
  713. type: array
  714. x-kubernetes-list-type: atomic
  715. required:
  716. - key
  717. - operator
  718. type: object
  719. type: array
  720. x-kubernetes-list-type: atomic
  721. matchLabels:
  722. additionalProperties:
  723. type: string
  724. description: |-
  725. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  726. map is equivalent to an element of matchExpressions, whose key field is "key", the
  727. operator is "In", and the values array contains only "value". The requirements are ANDed.
  728. type: object
  729. type: object
  730. x-kubernetes-map-type: atomic
  731. namespaceSelectors:
  732. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  733. items:
  734. description: |-
  735. A label selector is a label query over a set of resources. The result of matchLabels and
  736. matchExpressions are ANDed. An empty label selector matches all objects. A null
  737. label selector matches no objects.
  738. properties:
  739. matchExpressions:
  740. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  741. items:
  742. description: |-
  743. A label selector requirement is a selector that contains values, a key, and an operator that
  744. relates the key and values.
  745. properties:
  746. key:
  747. description: key is the label key that the selector applies to.
  748. type: string
  749. operator:
  750. description: |-
  751. operator represents a key's relationship to a set of values.
  752. Valid operators are In, NotIn, Exists and DoesNotExist.
  753. type: string
  754. values:
  755. description: |-
  756. values is an array of string values. If the operator is In or NotIn,
  757. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  758. the values array must be empty. This array is replaced during a strategic
  759. merge patch.
  760. items:
  761. type: string
  762. type: array
  763. x-kubernetes-list-type: atomic
  764. required:
  765. - key
  766. - operator
  767. type: object
  768. type: array
  769. x-kubernetes-list-type: atomic
  770. matchLabels:
  771. additionalProperties:
  772. type: string
  773. description: |-
  774. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  775. map is equivalent to an element of matchExpressions, whose key field is "key", the
  776. operator is "In", and the values array contains only "value". The requirements are ANDed.
  777. type: object
  778. type: object
  779. x-kubernetes-map-type: atomic
  780. type: array
  781. namespaces:
  782. description: |-
  783. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  784. Deprecated: Use NamespaceSelectors instead.
  785. items:
  786. maxLength: 63
  787. minLength: 1
  788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  789. type: string
  790. type: array
  791. refreshTime:
  792. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  793. type: string
  794. required:
  795. - externalSecretSpec
  796. type: object
  797. status:
  798. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  799. properties:
  800. conditions:
  801. items:
  802. description: ClusterExternalSecretStatusCondition defines the observed state of a ClusterExternalSecret resource.
  803. properties:
  804. message:
  805. type: string
  806. status:
  807. type: string
  808. type:
  809. description: ClusterExternalSecretConditionType defines a value type for ClusterExternalSecret conditions.
  810. type: string
  811. required:
  812. - status
  813. - type
  814. type: object
  815. type: array
  816. externalSecretName:
  817. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  818. type: string
  819. failedNamespaces:
  820. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  821. items:
  822. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  823. properties:
  824. namespace:
  825. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  826. type: string
  827. reason:
  828. description: Reason is why the ExternalSecret failed to apply to the namespace
  829. type: string
  830. required:
  831. - namespace
  832. type: object
  833. type: array
  834. provisionedNamespaces:
  835. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  836. items:
  837. type: string
  838. type: array
  839. type: object
  840. type: object
  841. served: true
  842. storage: true
  843. subresources:
  844. status: {}
  845. - additionalPrinterColumns:
  846. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  847. name: Store
  848. type: string
  849. - jsonPath: .spec.refreshTime
  850. name: Refresh Interval
  851. type: string
  852. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  853. name: Ready
  854. type: string
  855. deprecated: true
  856. name: v1beta1
  857. schema:
  858. openAPIV3Schema:
  859. description: ClusterExternalSecret is the schema for the clusterexternalsecrets API.
  860. properties:
  861. apiVersion:
  862. description: |-
  863. APIVersion defines the versioned schema of this representation of an object.
  864. Servers should convert recognized schemas to the latest internal value, and
  865. may reject unrecognized values.
  866. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  867. type: string
  868. kind:
  869. description: |-
  870. Kind is a string value representing the REST resource this object represents.
  871. Servers may infer this from the endpoint the client submits requests to.
  872. Cannot be updated.
  873. In CamelCase.
  874. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  875. type: string
  876. metadata:
  877. type: object
  878. spec:
  879. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  880. properties:
  881. externalSecretMetadata:
  882. description: The metadata of the external secrets to be created
  883. properties:
  884. annotations:
  885. additionalProperties:
  886. type: string
  887. type: object
  888. labels:
  889. additionalProperties:
  890. type: string
  891. type: object
  892. type: object
  893. externalSecretName:
  894. description: |-
  895. The name of the external secrets to be created.
  896. Defaults to the name of the ClusterExternalSecret
  897. maxLength: 253
  898. minLength: 1
  899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  900. type: string
  901. externalSecretSpec:
  902. description: The spec for the ExternalSecrets to be created
  903. properties:
  904. data:
  905. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  906. items:
  907. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  908. properties:
  909. remoteRef:
  910. description: |-
  911. RemoteRef points to the remote secret and defines
  912. which secret (version/property/..) to fetch.
  913. properties:
  914. conversionStrategy:
  915. default: Default
  916. description: Used to define a conversion Strategy
  917. enum:
  918. - Default
  919. - Unicode
  920. type: string
  921. decodingStrategy:
  922. default: None
  923. description: Used to define a decoding Strategy
  924. enum:
  925. - Auto
  926. - Base64
  927. - Base64URL
  928. - None
  929. type: string
  930. key:
  931. description: Key is the key used in the Provider, mandatory
  932. type: string
  933. metadataPolicy:
  934. default: None
  935. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  936. enum:
  937. - None
  938. - Fetch
  939. type: string
  940. property:
  941. description: Used to select a specific property of the Provider value (if a map), if supported
  942. type: string
  943. version:
  944. description: Used to select a specific version of the Provider value, if supported
  945. type: string
  946. required:
  947. - key
  948. type: object
  949. secretKey:
  950. description: The key in the Kubernetes Secret to store the value.
  951. maxLength: 253
  952. minLength: 1
  953. pattern: ^[-._a-zA-Z0-9]+$
  954. type: string
  955. sourceRef:
  956. description: |-
  957. SourceRef allows you to override the source
  958. from which the value will be pulled.
  959. maxProperties: 1
  960. minProperties: 1
  961. properties:
  962. generatorRef:
  963. description: |-
  964. GeneratorRef points to a generator custom resource.
  965. Deprecated: The generatorRef is not implemented in .data[].
  966. this will be removed with v1.
  967. properties:
  968. apiVersion:
  969. default: generators.external-secrets.io/v1alpha1
  970. description: Specify the apiVersion of the generator resource
  971. type: string
  972. kind:
  973. description: Specify the Kind of the generator resource
  974. enum:
  975. - ACRAccessToken
  976. - ClusterGenerator
  977. - ECRAuthorizationToken
  978. - Fake
  979. - GCRAccessToken
  980. - GithubAccessToken
  981. - QuayAccessToken
  982. - Password
  983. - SSHKey
  984. - STSSessionToken
  985. - UUID
  986. - VaultDynamicSecret
  987. - Webhook
  988. - Grafana
  989. type: string
  990. name:
  991. description: Specify the name of the generator resource
  992. maxLength: 253
  993. minLength: 1
  994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  995. type: string
  996. required:
  997. - kind
  998. - name
  999. type: object
  1000. storeRef:
  1001. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1002. properties:
  1003. kind:
  1004. description: |-
  1005. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1006. Defaults to `SecretStore`
  1007. enum:
  1008. - SecretStore
  1009. - ClusterSecretStore
  1010. type: string
  1011. name:
  1012. description: Name of the SecretStore resource
  1013. maxLength: 253
  1014. minLength: 1
  1015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1016. type: string
  1017. type: object
  1018. type: object
  1019. required:
  1020. - remoteRef
  1021. - secretKey
  1022. type: object
  1023. type: array
  1024. dataFrom:
  1025. description: |-
  1026. DataFrom is used to fetch all properties from a specific Provider data
  1027. If multiple entries are specified, the Secret keys are merged in the specified order
  1028. items:
  1029. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  1030. properties:
  1031. extract:
  1032. description: |-
  1033. Used to extract multiple key/value pairs from one secret
  1034. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1035. properties:
  1036. conversionStrategy:
  1037. default: Default
  1038. description: Used to define a conversion Strategy
  1039. enum:
  1040. - Default
  1041. - Unicode
  1042. type: string
  1043. decodingStrategy:
  1044. default: None
  1045. description: Used to define a decoding Strategy
  1046. enum:
  1047. - Auto
  1048. - Base64
  1049. - Base64URL
  1050. - None
  1051. type: string
  1052. key:
  1053. description: Key is the key used in the Provider, mandatory
  1054. type: string
  1055. metadataPolicy:
  1056. default: None
  1057. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  1058. enum:
  1059. - None
  1060. - Fetch
  1061. type: string
  1062. property:
  1063. description: Used to select a specific property of the Provider value (if a map), if supported
  1064. type: string
  1065. version:
  1066. description: Used to select a specific version of the Provider value, if supported
  1067. type: string
  1068. required:
  1069. - key
  1070. type: object
  1071. find:
  1072. description: |-
  1073. Used to find secrets based on tags or regular expressions
  1074. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1075. properties:
  1076. conversionStrategy:
  1077. default: Default
  1078. description: Used to define a conversion Strategy
  1079. enum:
  1080. - Default
  1081. - Unicode
  1082. type: string
  1083. decodingStrategy:
  1084. default: None
  1085. description: Used to define a decoding Strategy
  1086. enum:
  1087. - Auto
  1088. - Base64
  1089. - Base64URL
  1090. - None
  1091. type: string
  1092. name:
  1093. description: Finds secrets based on the name.
  1094. properties:
  1095. regexp:
  1096. description: Finds secrets base
  1097. type: string
  1098. type: object
  1099. path:
  1100. description: A root path to start the find operations.
  1101. type: string
  1102. tags:
  1103. additionalProperties:
  1104. type: string
  1105. description: Find secrets based on tags.
  1106. type: object
  1107. type: object
  1108. rewrite:
  1109. description: |-
  1110. Used to rewrite secret Keys after getting them from the secret Provider
  1111. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  1112. items:
  1113. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  1114. maxProperties: 1
  1115. minProperties: 1
  1116. properties:
  1117. regexp:
  1118. description: |-
  1119. Used to rewrite with regular expressions.
  1120. The resulting key will be the output of a regexp.ReplaceAll operation.
  1121. properties:
  1122. source:
  1123. description: Used to define the regular expression of a re.Compiler.
  1124. type: string
  1125. target:
  1126. description: Used to define the target pattern of a ReplaceAll operation.
  1127. type: string
  1128. required:
  1129. - source
  1130. - target
  1131. type: object
  1132. transform:
  1133. description: |-
  1134. Used to apply string transformation on the secrets.
  1135. The resulting key will be the output of the template applied by the operation.
  1136. properties:
  1137. template:
  1138. description: |-
  1139. Used to define the template to apply on the secret name.
  1140. `.value ` will specify the secret name in the template.
  1141. type: string
  1142. required:
  1143. - template
  1144. type: object
  1145. type: object
  1146. type: array
  1147. sourceRef:
  1148. description: |-
  1149. SourceRef points to a store or generator
  1150. which contains secret values ready to use.
  1151. Use this in combination with Extract or Find pull values out of
  1152. a specific SecretStore.
  1153. When sourceRef points to a generator Extract or Find is not supported.
  1154. The generator returns a static map of values
  1155. maxProperties: 1
  1156. minProperties: 1
  1157. properties:
  1158. generatorRef:
  1159. description: GeneratorRef points to a generator custom resource.
  1160. properties:
  1161. apiVersion:
  1162. default: generators.external-secrets.io/v1alpha1
  1163. description: Specify the apiVersion of the generator resource
  1164. type: string
  1165. kind:
  1166. description: Specify the Kind of the generator resource
  1167. enum:
  1168. - ACRAccessToken
  1169. - ClusterGenerator
  1170. - ECRAuthorizationToken
  1171. - Fake
  1172. - GCRAccessToken
  1173. - GithubAccessToken
  1174. - QuayAccessToken
  1175. - Password
  1176. - SSHKey
  1177. - STSSessionToken
  1178. - UUID
  1179. - VaultDynamicSecret
  1180. - Webhook
  1181. - Grafana
  1182. type: string
  1183. name:
  1184. description: Specify the name of the generator resource
  1185. maxLength: 253
  1186. minLength: 1
  1187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1188. type: string
  1189. required:
  1190. - kind
  1191. - name
  1192. type: object
  1193. storeRef:
  1194. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1195. properties:
  1196. kind:
  1197. description: |-
  1198. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1199. Defaults to `SecretStore`
  1200. enum:
  1201. - SecretStore
  1202. - ClusterSecretStore
  1203. type: string
  1204. name:
  1205. description: Name of the SecretStore resource
  1206. maxLength: 253
  1207. minLength: 1
  1208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1209. type: string
  1210. type: object
  1211. type: object
  1212. type: object
  1213. type: array
  1214. refreshInterval:
  1215. default: 1h0m0s
  1216. description: |-
  1217. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  1218. specified as Golang Duration strings.
  1219. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  1220. Example values: "1h0m0s", "2h30m0s", "10m0s"
  1221. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  1222. type: string
  1223. refreshPolicy:
  1224. description: |-
  1225. RefreshPolicy determines how the ExternalSecret should be refreshed:
  1226. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  1227. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  1228. No periodic updates occur if refreshInterval is 0.
  1229. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  1230. enum:
  1231. - CreatedOnce
  1232. - Periodic
  1233. - OnChange
  1234. type: string
  1235. secretStoreRef:
  1236. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1237. properties:
  1238. kind:
  1239. description: |-
  1240. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1241. Defaults to `SecretStore`
  1242. enum:
  1243. - SecretStore
  1244. - ClusterSecretStore
  1245. type: string
  1246. name:
  1247. description: Name of the SecretStore resource
  1248. maxLength: 253
  1249. minLength: 1
  1250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1251. type: string
  1252. type: object
  1253. target:
  1254. default:
  1255. creationPolicy: Owner
  1256. deletionPolicy: Retain
  1257. description: |-
  1258. ExternalSecretTarget defines the Kubernetes Secret to be created
  1259. There can be only one target per ExternalSecret.
  1260. properties:
  1261. creationPolicy:
  1262. default: Owner
  1263. description: |-
  1264. CreationPolicy defines rules on how to create the resulting Secret.
  1265. Defaults to "Owner"
  1266. enum:
  1267. - Owner
  1268. - Orphan
  1269. - Merge
  1270. - None
  1271. type: string
  1272. deletionPolicy:
  1273. default: Retain
  1274. description: |-
  1275. DeletionPolicy defines rules on how to delete the resulting Secret.
  1276. Defaults to "Retain"
  1277. enum:
  1278. - Delete
  1279. - Merge
  1280. - Retain
  1281. type: string
  1282. immutable:
  1283. description: Immutable defines if the final secret will be immutable
  1284. type: boolean
  1285. name:
  1286. description: |-
  1287. The name of the Secret resource to be managed.
  1288. Defaults to the .metadata.name of the ExternalSecret resource
  1289. maxLength: 253
  1290. minLength: 1
  1291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1292. type: string
  1293. template:
  1294. description: Template defines a blueprint for the created Secret resource.
  1295. properties:
  1296. data:
  1297. additionalProperties:
  1298. type: string
  1299. type: object
  1300. engineVersion:
  1301. default: v2
  1302. description: |-
  1303. EngineVersion specifies the template engine version
  1304. that should be used to compile/execute the
  1305. template specified in .data and .templateFrom[].
  1306. enum:
  1307. - v2
  1308. type: string
  1309. mergePolicy:
  1310. default: Replace
  1311. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  1312. enum:
  1313. - Replace
  1314. - Merge
  1315. type: string
  1316. metadata:
  1317. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1318. properties:
  1319. annotations:
  1320. additionalProperties:
  1321. type: string
  1322. type: object
  1323. labels:
  1324. additionalProperties:
  1325. type: string
  1326. type: object
  1327. type: object
  1328. templateFrom:
  1329. items:
  1330. description: TemplateFrom defines a source for template data.
  1331. properties:
  1332. configMap:
  1333. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1334. properties:
  1335. items:
  1336. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1337. items:
  1338. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1339. properties:
  1340. key:
  1341. description: A key in the ConfigMap/Secret
  1342. maxLength: 253
  1343. minLength: 1
  1344. pattern: ^[-._a-zA-Z0-9]+$
  1345. type: string
  1346. templateAs:
  1347. default: Values
  1348. description: TemplateScope defines the scope of the template when processing template data.
  1349. enum:
  1350. - Values
  1351. - KeysAndValues
  1352. type: string
  1353. required:
  1354. - key
  1355. type: object
  1356. type: array
  1357. name:
  1358. description: The name of the ConfigMap/Secret resource
  1359. maxLength: 253
  1360. minLength: 1
  1361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1362. type: string
  1363. required:
  1364. - items
  1365. - name
  1366. type: object
  1367. literal:
  1368. type: string
  1369. secret:
  1370. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1371. properties:
  1372. items:
  1373. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1374. items:
  1375. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1376. properties:
  1377. key:
  1378. description: A key in the ConfigMap/Secret
  1379. maxLength: 253
  1380. minLength: 1
  1381. pattern: ^[-._a-zA-Z0-9]+$
  1382. type: string
  1383. templateAs:
  1384. default: Values
  1385. description: TemplateScope defines the scope of the template when processing template data.
  1386. enum:
  1387. - Values
  1388. - KeysAndValues
  1389. type: string
  1390. required:
  1391. - key
  1392. type: object
  1393. type: array
  1394. name:
  1395. description: The name of the ConfigMap/Secret resource
  1396. maxLength: 253
  1397. minLength: 1
  1398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1399. type: string
  1400. required:
  1401. - items
  1402. - name
  1403. type: object
  1404. target:
  1405. default: Data
  1406. description: TemplateTarget defines the target field where the template result will be stored.
  1407. enum:
  1408. - Data
  1409. - Annotations
  1410. - Labels
  1411. type: string
  1412. type: object
  1413. type: array
  1414. type:
  1415. type: string
  1416. type: object
  1417. type: object
  1418. type: object
  1419. namespaceSelector:
  1420. description: The labels to select by to find the Namespaces to create the ExternalSecrets in
  1421. properties:
  1422. matchExpressions:
  1423. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1424. items:
  1425. description: |-
  1426. A label selector requirement is a selector that contains values, a key, and an operator that
  1427. relates the key and values.
  1428. properties:
  1429. key:
  1430. description: key is the label key that the selector applies to.
  1431. type: string
  1432. operator:
  1433. description: |-
  1434. operator represents a key's relationship to a set of values.
  1435. Valid operators are In, NotIn, Exists and DoesNotExist.
  1436. type: string
  1437. values:
  1438. description: |-
  1439. values is an array of string values. If the operator is In or NotIn,
  1440. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1441. the values array must be empty. This array is replaced during a strategic
  1442. merge patch.
  1443. items:
  1444. type: string
  1445. type: array
  1446. x-kubernetes-list-type: atomic
  1447. required:
  1448. - key
  1449. - operator
  1450. type: object
  1451. type: array
  1452. x-kubernetes-list-type: atomic
  1453. matchLabels:
  1454. additionalProperties:
  1455. type: string
  1456. description: |-
  1457. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1458. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1459. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1460. type: object
  1461. type: object
  1462. x-kubernetes-map-type: atomic
  1463. namespaceSelectors:
  1464. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1465. items:
  1466. description: |-
  1467. A label selector is a label query over a set of resources. The result of matchLabels and
  1468. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1469. label selector matches no objects.
  1470. properties:
  1471. matchExpressions:
  1472. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1473. items:
  1474. description: |-
  1475. A label selector requirement is a selector that contains values, a key, and an operator that
  1476. relates the key and values.
  1477. properties:
  1478. key:
  1479. description: key is the label key that the selector applies to.
  1480. type: string
  1481. operator:
  1482. description: |-
  1483. operator represents a key's relationship to a set of values.
  1484. Valid operators are In, NotIn, Exists and DoesNotExist.
  1485. type: string
  1486. values:
  1487. description: |-
  1488. values is an array of string values. If the operator is In or NotIn,
  1489. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1490. the values array must be empty. This array is replaced during a strategic
  1491. merge patch.
  1492. items:
  1493. type: string
  1494. type: array
  1495. x-kubernetes-list-type: atomic
  1496. required:
  1497. - key
  1498. - operator
  1499. type: object
  1500. type: array
  1501. x-kubernetes-list-type: atomic
  1502. matchLabels:
  1503. additionalProperties:
  1504. type: string
  1505. description: |-
  1506. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1507. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1508. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1509. type: object
  1510. type: object
  1511. x-kubernetes-map-type: atomic
  1512. type: array
  1513. namespaces:
  1514. description: |-
  1515. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  1516. Deprecated: Use NamespaceSelectors instead.
  1517. items:
  1518. maxLength: 63
  1519. minLength: 1
  1520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1521. type: string
  1522. type: array
  1523. refreshTime:
  1524. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  1525. type: string
  1526. required:
  1527. - externalSecretSpec
  1528. type: object
  1529. status:
  1530. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  1531. properties:
  1532. conditions:
  1533. items:
  1534. description: ClusterExternalSecretStatusCondition indicates the status of the ClusterExternalSecret.
  1535. properties:
  1536. message:
  1537. type: string
  1538. status:
  1539. type: string
  1540. type:
  1541. description: ClusterExternalSecretConditionType indicates the condition of the ClusterExternalSecret.
  1542. type: string
  1543. required:
  1544. - status
  1545. - type
  1546. type: object
  1547. type: array
  1548. externalSecretName:
  1549. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  1550. type: string
  1551. failedNamespaces:
  1552. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  1553. items:
  1554. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  1555. properties:
  1556. namespace:
  1557. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  1558. type: string
  1559. reason:
  1560. description: Reason is why the ExternalSecret failed to apply to the namespace
  1561. type: string
  1562. required:
  1563. - namespace
  1564. type: object
  1565. type: array
  1566. provisionedNamespaces:
  1567. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  1568. items:
  1569. type: string
  1570. type: array
  1571. type: object
  1572. type: object
  1573. served: false
  1574. storage: false
  1575. subresources:
  1576. status: {}
  1577. ---
  1578. apiVersion: apiextensions.k8s.io/v1
  1579. kind: CustomResourceDefinition
  1580. metadata:
  1581. annotations:
  1582. controller-gen.kubebuilder.io/version: v0.19.0
  1583. labels:
  1584. external-secrets.io/component: controller
  1585. name: clusterpushsecrets.external-secrets.io
  1586. spec:
  1587. group: external-secrets.io
  1588. names:
  1589. categories:
  1590. - external-secrets
  1591. kind: ClusterPushSecret
  1592. listKind: ClusterPushSecretList
  1593. plural: clusterpushsecrets
  1594. singular: clusterpushsecret
  1595. scope: Cluster
  1596. versions:
  1597. - additionalPrinterColumns:
  1598. - jsonPath: .metadata.creationTimestamp
  1599. name: AGE
  1600. type: date
  1601. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1602. name: Status
  1603. type: string
  1604. name: v1alpha1
  1605. schema:
  1606. openAPIV3Schema:
  1607. description: ClusterPushSecret is the Schema for the ClusterPushSecrets API that enables cluster-wide management of pushing Kubernetes secrets to external providers.
  1608. properties:
  1609. apiVersion:
  1610. description: |-
  1611. APIVersion defines the versioned schema of this representation of an object.
  1612. Servers should convert recognized schemas to the latest internal value, and
  1613. may reject unrecognized values.
  1614. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1615. type: string
  1616. kind:
  1617. description: |-
  1618. Kind is a string value representing the REST resource this object represents.
  1619. Servers may infer this from the endpoint the client submits requests to.
  1620. Cannot be updated.
  1621. In CamelCase.
  1622. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1623. type: string
  1624. metadata:
  1625. type: object
  1626. spec:
  1627. description: ClusterPushSecretSpec defines the configuration for a ClusterPushSecret resource.
  1628. properties:
  1629. namespaceSelectors:
  1630. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1631. items:
  1632. description: |-
  1633. A label selector is a label query over a set of resources. The result of matchLabels and
  1634. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1635. label selector matches no objects.
  1636. properties:
  1637. matchExpressions:
  1638. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1639. items:
  1640. description: |-
  1641. A label selector requirement is a selector that contains values, a key, and an operator that
  1642. relates the key and values.
  1643. properties:
  1644. key:
  1645. description: key is the label key that the selector applies to.
  1646. type: string
  1647. operator:
  1648. description: |-
  1649. operator represents a key's relationship to a set of values.
  1650. Valid operators are In, NotIn, Exists and DoesNotExist.
  1651. type: string
  1652. values:
  1653. description: |-
  1654. values is an array of string values. If the operator is In or NotIn,
  1655. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1656. the values array must be empty. This array is replaced during a strategic
  1657. merge patch.
  1658. items:
  1659. type: string
  1660. type: array
  1661. x-kubernetes-list-type: atomic
  1662. required:
  1663. - key
  1664. - operator
  1665. type: object
  1666. type: array
  1667. x-kubernetes-list-type: atomic
  1668. matchLabels:
  1669. additionalProperties:
  1670. type: string
  1671. description: |-
  1672. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1673. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1674. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1675. type: object
  1676. type: object
  1677. x-kubernetes-map-type: atomic
  1678. type: array
  1679. pushSecretMetadata:
  1680. description: The metadata of the external secrets to be created
  1681. properties:
  1682. annotations:
  1683. additionalProperties:
  1684. type: string
  1685. type: object
  1686. labels:
  1687. additionalProperties:
  1688. type: string
  1689. type: object
  1690. type: object
  1691. pushSecretName:
  1692. description: |-
  1693. The name of the push secrets to be created.
  1694. Defaults to the name of the ClusterPushSecret
  1695. maxLength: 253
  1696. minLength: 1
  1697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1698. type: string
  1699. pushSecretSpec:
  1700. description: PushSecretSpec defines what to do with the secrets.
  1701. properties:
  1702. data:
  1703. description: Secret Data that should be pushed to providers
  1704. items:
  1705. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  1706. properties:
  1707. conversionStrategy:
  1708. default: None
  1709. description: Used to define a conversion Strategy for the secret keys
  1710. enum:
  1711. - None
  1712. - ReverseUnicode
  1713. type: string
  1714. match:
  1715. description: Match a given Secret Key to be pushed to the provider.
  1716. properties:
  1717. remoteRef:
  1718. description: Remote Refs to push to providers.
  1719. properties:
  1720. property:
  1721. description: Name of the property in the resulting secret
  1722. type: string
  1723. remoteKey:
  1724. description: Name of the resulting provider secret.
  1725. type: string
  1726. required:
  1727. - remoteKey
  1728. type: object
  1729. secretKey:
  1730. description: Secret Key to be pushed
  1731. type: string
  1732. required:
  1733. - remoteRef
  1734. type: object
  1735. metadata:
  1736. description: |-
  1737. Metadata is metadata attached to the secret.
  1738. The structure of metadata is provider specific, please look it up in the provider documentation.
  1739. x-kubernetes-preserve-unknown-fields: true
  1740. required:
  1741. - match
  1742. type: object
  1743. type: array
  1744. dataTo:
  1745. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  1746. items:
  1747. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  1748. properties:
  1749. conversionStrategy:
  1750. default: None
  1751. description: Used to define a conversion Strategy for the secret keys
  1752. enum:
  1753. - None
  1754. - ReverseUnicode
  1755. type: string
  1756. match:
  1757. description: |-
  1758. Match pattern for selecting keys from the source Secret.
  1759. If not specified, all keys are selected.
  1760. properties:
  1761. regexp:
  1762. description: |-
  1763. Regexp matches keys by regular expression.
  1764. If not specified, all keys are matched.
  1765. type: string
  1766. type: object
  1767. metadata:
  1768. description: |-
  1769. Metadata is metadata attached to the secret.
  1770. The structure of metadata is provider specific, please look it up in the provider documentation.
  1771. x-kubernetes-preserve-unknown-fields: true
  1772. remoteKey:
  1773. description: |-
  1774. RemoteKey is the name of the single provider secret that will receive ALL
  1775. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  1776. When set, per-key expansion is skipped and a single push is performed.
  1777. The provider's store prefix (if any) is still prepended to this value.
  1778. When not set, each matched key is pushed as its own individual provider secret.
  1779. type: string
  1780. rewrite:
  1781. description: |-
  1782. Rewrite operations to transform keys before pushing to the provider.
  1783. Operations are applied sequentially.
  1784. items:
  1785. description: PushSecretRewrite defines how to transform secret keys before pushing.
  1786. properties:
  1787. regexp:
  1788. description: Used to rewrite with regular expressions.
  1789. properties:
  1790. source:
  1791. description: Used to define the regular expression of a re.Compiler.
  1792. type: string
  1793. target:
  1794. description: Used to define the target pattern of a ReplaceAll operation.
  1795. type: string
  1796. required:
  1797. - source
  1798. - target
  1799. type: object
  1800. transform:
  1801. description: Used to apply string transformation on the secrets.
  1802. properties:
  1803. template:
  1804. description: |-
  1805. Used to define the template to apply on the secret name.
  1806. `.value ` will specify the secret name in the template.
  1807. type: string
  1808. required:
  1809. - template
  1810. type: object
  1811. type: object
  1812. x-kubernetes-validations:
  1813. - message: exactly one of regexp or transform must be set
  1814. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  1815. type: array
  1816. storeRef:
  1817. description: StoreRef specifies which SecretStore to push to. Required.
  1818. properties:
  1819. kind:
  1820. default: SecretStore
  1821. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1822. enum:
  1823. - SecretStore
  1824. - ClusterSecretStore
  1825. type: string
  1826. labelSelector:
  1827. description: Optionally, sync to secret stores with label selector
  1828. properties:
  1829. matchExpressions:
  1830. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1831. items:
  1832. description: |-
  1833. A label selector requirement is a selector that contains values, a key, and an operator that
  1834. relates the key and values.
  1835. properties:
  1836. key:
  1837. description: key is the label key that the selector applies to.
  1838. type: string
  1839. operator:
  1840. description: |-
  1841. operator represents a key's relationship to a set of values.
  1842. Valid operators are In, NotIn, Exists and DoesNotExist.
  1843. type: string
  1844. values:
  1845. description: |-
  1846. values is an array of string values. If the operator is In or NotIn,
  1847. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1848. the values array must be empty. This array is replaced during a strategic
  1849. merge patch.
  1850. items:
  1851. type: string
  1852. type: array
  1853. x-kubernetes-list-type: atomic
  1854. required:
  1855. - key
  1856. - operator
  1857. type: object
  1858. type: array
  1859. x-kubernetes-list-type: atomic
  1860. matchLabels:
  1861. additionalProperties:
  1862. type: string
  1863. description: |-
  1864. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1865. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1866. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1867. type: object
  1868. type: object
  1869. x-kubernetes-map-type: atomic
  1870. name:
  1871. description: Optionally, sync to the SecretStore of the given name
  1872. maxLength: 253
  1873. minLength: 1
  1874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1875. type: string
  1876. type: object
  1877. type: object
  1878. x-kubernetes-validations:
  1879. - message: storeRef must specify either name or labelSelector
  1880. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  1881. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  1882. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  1883. type: array
  1884. deletionPolicy:
  1885. default: None
  1886. description: Deletion Policy to handle Secrets in the provider.
  1887. enum:
  1888. - Delete
  1889. - None
  1890. type: string
  1891. refreshInterval:
  1892. default: 1h0m0s
  1893. description: The Interval to which External Secrets will try to push a secret definition
  1894. type: string
  1895. secretStoreRefs:
  1896. items:
  1897. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  1898. properties:
  1899. kind:
  1900. default: SecretStore
  1901. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1902. enum:
  1903. - SecretStore
  1904. - ClusterSecretStore
  1905. type: string
  1906. labelSelector:
  1907. description: Optionally, sync to secret stores with label selector
  1908. properties:
  1909. matchExpressions:
  1910. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1911. items:
  1912. description: |-
  1913. A label selector requirement is a selector that contains values, a key, and an operator that
  1914. relates the key and values.
  1915. properties:
  1916. key:
  1917. description: key is the label key that the selector applies to.
  1918. type: string
  1919. operator:
  1920. description: |-
  1921. operator represents a key's relationship to a set of values.
  1922. Valid operators are In, NotIn, Exists and DoesNotExist.
  1923. type: string
  1924. values:
  1925. description: |-
  1926. values is an array of string values. If the operator is In or NotIn,
  1927. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1928. the values array must be empty. This array is replaced during a strategic
  1929. merge patch.
  1930. items:
  1931. type: string
  1932. type: array
  1933. x-kubernetes-list-type: atomic
  1934. required:
  1935. - key
  1936. - operator
  1937. type: object
  1938. type: array
  1939. x-kubernetes-list-type: atomic
  1940. matchLabels:
  1941. additionalProperties:
  1942. type: string
  1943. description: |-
  1944. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1945. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1946. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1947. type: object
  1948. type: object
  1949. x-kubernetes-map-type: atomic
  1950. name:
  1951. description: Optionally, sync to the SecretStore of the given name
  1952. maxLength: 253
  1953. minLength: 1
  1954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1955. type: string
  1956. type: object
  1957. type: array
  1958. selector:
  1959. description: The Secret Selector (k8s source) for the Push Secret
  1960. maxProperties: 1
  1961. minProperties: 1
  1962. properties:
  1963. generatorRef:
  1964. description: Point to a generator to create a Secret.
  1965. properties:
  1966. apiVersion:
  1967. default: generators.external-secrets.io/v1alpha1
  1968. description: Specify the apiVersion of the generator resource
  1969. type: string
  1970. kind:
  1971. description: Specify the Kind of the generator resource
  1972. enum:
  1973. - ACRAccessToken
  1974. - ClusterGenerator
  1975. - CloudsmithAccessToken
  1976. - ECRAuthorizationToken
  1977. - Fake
  1978. - GCRAccessToken
  1979. - GithubAccessToken
  1980. - QuayAccessToken
  1981. - Password
  1982. - SSHKey
  1983. - STSSessionToken
  1984. - UUID
  1985. - VaultDynamicSecret
  1986. - Webhook
  1987. - Grafana
  1988. - MFA
  1989. type: string
  1990. name:
  1991. description: Specify the name of the generator resource
  1992. maxLength: 253
  1993. minLength: 1
  1994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1995. type: string
  1996. required:
  1997. - kind
  1998. - name
  1999. type: object
  2000. secret:
  2001. description: Select a Secret to Push.
  2002. properties:
  2003. name:
  2004. description: |-
  2005. Name of the Secret.
  2006. The Secret must exist in the same namespace as the PushSecret manifest.
  2007. maxLength: 253
  2008. minLength: 1
  2009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2010. type: string
  2011. selector:
  2012. description: Selector chooses secrets using a labelSelector.
  2013. properties:
  2014. matchExpressions:
  2015. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2016. items:
  2017. description: |-
  2018. A label selector requirement is a selector that contains values, a key, and an operator that
  2019. relates the key and values.
  2020. properties:
  2021. key:
  2022. description: key is the label key that the selector applies to.
  2023. type: string
  2024. operator:
  2025. description: |-
  2026. operator represents a key's relationship to a set of values.
  2027. Valid operators are In, NotIn, Exists and DoesNotExist.
  2028. type: string
  2029. values:
  2030. description: |-
  2031. values is an array of string values. If the operator is In or NotIn,
  2032. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2033. the values array must be empty. This array is replaced during a strategic
  2034. merge patch.
  2035. items:
  2036. type: string
  2037. type: array
  2038. x-kubernetes-list-type: atomic
  2039. required:
  2040. - key
  2041. - operator
  2042. type: object
  2043. type: array
  2044. x-kubernetes-list-type: atomic
  2045. matchLabels:
  2046. additionalProperties:
  2047. type: string
  2048. description: |-
  2049. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2050. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2051. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2052. type: object
  2053. type: object
  2054. x-kubernetes-map-type: atomic
  2055. type: object
  2056. type: object
  2057. template:
  2058. description: Template defines a blueprint for the created Secret resource.
  2059. properties:
  2060. data:
  2061. additionalProperties:
  2062. type: string
  2063. type: object
  2064. engineVersion:
  2065. default: v2
  2066. description: |-
  2067. EngineVersion specifies the template engine version
  2068. that should be used to compile/execute the
  2069. template specified in .data and .templateFrom[].
  2070. enum:
  2071. - v2
  2072. type: string
  2073. mergePolicy:
  2074. default: Replace
  2075. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  2076. enum:
  2077. - Replace
  2078. - Merge
  2079. type: string
  2080. metadata:
  2081. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2082. properties:
  2083. annotations:
  2084. additionalProperties:
  2085. type: string
  2086. type: object
  2087. finalizers:
  2088. items:
  2089. type: string
  2090. type: array
  2091. labels:
  2092. additionalProperties:
  2093. type: string
  2094. type: object
  2095. type: object
  2096. templateFrom:
  2097. items:
  2098. description: |-
  2099. TemplateFrom specifies a source for templates.
  2100. Each item in the list can either reference a ConfigMap or a Secret resource.
  2101. properties:
  2102. configMap:
  2103. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2104. properties:
  2105. items:
  2106. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2107. items:
  2108. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2109. properties:
  2110. key:
  2111. description: A key in the ConfigMap/Secret
  2112. maxLength: 253
  2113. minLength: 1
  2114. pattern: ^[-._a-zA-Z0-9]+$
  2115. type: string
  2116. templateAs:
  2117. default: Values
  2118. description: TemplateScope specifies how the template keys should be interpreted.
  2119. enum:
  2120. - Values
  2121. - KeysAndValues
  2122. type: string
  2123. required:
  2124. - key
  2125. type: object
  2126. type: array
  2127. name:
  2128. description: The name of the ConfigMap/Secret resource
  2129. maxLength: 253
  2130. minLength: 1
  2131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2132. type: string
  2133. required:
  2134. - items
  2135. - name
  2136. type: object
  2137. literal:
  2138. type: string
  2139. secret:
  2140. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2141. properties:
  2142. items:
  2143. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2144. items:
  2145. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2146. properties:
  2147. key:
  2148. description: A key in the ConfigMap/Secret
  2149. maxLength: 253
  2150. minLength: 1
  2151. pattern: ^[-._a-zA-Z0-9]+$
  2152. type: string
  2153. templateAs:
  2154. default: Values
  2155. description: TemplateScope specifies how the template keys should be interpreted.
  2156. enum:
  2157. - Values
  2158. - KeysAndValues
  2159. type: string
  2160. required:
  2161. - key
  2162. type: object
  2163. type: array
  2164. name:
  2165. description: The name of the ConfigMap/Secret resource
  2166. maxLength: 253
  2167. minLength: 1
  2168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2169. type: string
  2170. required:
  2171. - items
  2172. - name
  2173. type: object
  2174. target:
  2175. default: Data
  2176. description: |-
  2177. Target specifies where to place the template result.
  2178. For Secret resources, common values are: "Data", "Annotations", "Labels".
  2179. For custom resources (when spec.target.manifest is set), this supports
  2180. nested paths like "spec.database.config" or "data".
  2181. type: string
  2182. type: object
  2183. type: array
  2184. type:
  2185. type: string
  2186. type: object
  2187. updatePolicy:
  2188. default: Replace
  2189. description: UpdatePolicy to handle Secrets in the provider.
  2190. enum:
  2191. - Replace
  2192. - IfNotExists
  2193. type: string
  2194. required:
  2195. - secretStoreRefs
  2196. - selector
  2197. type: object
  2198. refreshTime:
  2199. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  2200. type: string
  2201. required:
  2202. - pushSecretSpec
  2203. type: object
  2204. status:
  2205. description: ClusterPushSecretStatus contains the status information for the ClusterPushSecret resource.
  2206. properties:
  2207. conditions:
  2208. items:
  2209. description: PushSecretStatusCondition indicates the status of the PushSecret.
  2210. properties:
  2211. lastTransitionTime:
  2212. format: date-time
  2213. type: string
  2214. message:
  2215. type: string
  2216. reason:
  2217. type: string
  2218. status:
  2219. type: string
  2220. type:
  2221. description: PushSecretConditionType indicates the condition of the PushSecret.
  2222. type: string
  2223. required:
  2224. - status
  2225. - type
  2226. type: object
  2227. type: array
  2228. failedNamespaces:
  2229. description: Failed namespaces are the namespaces that failed to apply an PushSecret
  2230. items:
  2231. description: ClusterPushSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  2232. properties:
  2233. namespace:
  2234. description: Namespace is the namespace that failed when trying to apply an PushSecret
  2235. type: string
  2236. reason:
  2237. description: Reason is why the PushSecret failed to apply to the namespace
  2238. type: string
  2239. required:
  2240. - namespace
  2241. type: object
  2242. type: array
  2243. provisionedNamespaces:
  2244. description: ProvisionedNamespaces are the namespaces where the ClusterPushSecret has secrets
  2245. items:
  2246. type: string
  2247. type: array
  2248. pushSecretName:
  2249. type: string
  2250. type: object
  2251. type: object
  2252. served: true
  2253. storage: true
  2254. subresources:
  2255. status: {}
  2256. ---
  2257. apiVersion: apiextensions.k8s.io/v1
  2258. kind: CustomResourceDefinition
  2259. metadata:
  2260. annotations:
  2261. controller-gen.kubebuilder.io/version: v0.19.0
  2262. labels:
  2263. external-secrets.io/component: controller
  2264. name: clustersecretstores.external-secrets.io
  2265. spec:
  2266. group: external-secrets.io
  2267. names:
  2268. categories:
  2269. - external-secrets
  2270. kind: ClusterSecretStore
  2271. listKind: ClusterSecretStoreList
  2272. plural: clustersecretstores
  2273. shortNames:
  2274. - css
  2275. singular: clustersecretstore
  2276. scope: Cluster
  2277. versions:
  2278. - additionalPrinterColumns:
  2279. - jsonPath: .metadata.creationTimestamp
  2280. name: AGE
  2281. type: date
  2282. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2283. name: Status
  2284. type: string
  2285. - jsonPath: .status.capabilities
  2286. name: Capabilities
  2287. type: string
  2288. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2289. name: Ready
  2290. type: string
  2291. name: v1
  2292. schema:
  2293. openAPIV3Schema:
  2294. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2295. properties:
  2296. apiVersion:
  2297. description: |-
  2298. APIVersion defines the versioned schema of this representation of an object.
  2299. Servers should convert recognized schemas to the latest internal value, and
  2300. may reject unrecognized values.
  2301. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2302. type: string
  2303. kind:
  2304. description: |-
  2305. Kind is a string value representing the REST resource this object represents.
  2306. Servers may infer this from the endpoint the client submits requests to.
  2307. Cannot be updated.
  2308. In CamelCase.
  2309. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2310. type: string
  2311. metadata:
  2312. type: object
  2313. spec:
  2314. description: SecretStoreSpec defines the desired state of SecretStore.
  2315. properties:
  2316. conditions:
  2317. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  2318. items:
  2319. description: |-
  2320. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2321. for a ClusterSecretStore instance.
  2322. properties:
  2323. namespaceRegexes:
  2324. description: Choose namespaces by using regex matching
  2325. items:
  2326. type: string
  2327. type: array
  2328. namespaceSelector:
  2329. description: Choose namespace using a labelSelector
  2330. properties:
  2331. matchExpressions:
  2332. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2333. items:
  2334. description: |-
  2335. A label selector requirement is a selector that contains values, a key, and an operator that
  2336. relates the key and values.
  2337. properties:
  2338. key:
  2339. description: key is the label key that the selector applies to.
  2340. type: string
  2341. operator:
  2342. description: |-
  2343. operator represents a key's relationship to a set of values.
  2344. Valid operators are In, NotIn, Exists and DoesNotExist.
  2345. type: string
  2346. values:
  2347. description: |-
  2348. values is an array of string values. If the operator is In or NotIn,
  2349. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2350. the values array must be empty. This array is replaced during a strategic
  2351. merge patch.
  2352. items:
  2353. type: string
  2354. type: array
  2355. x-kubernetes-list-type: atomic
  2356. required:
  2357. - key
  2358. - operator
  2359. type: object
  2360. type: array
  2361. x-kubernetes-list-type: atomic
  2362. matchLabels:
  2363. additionalProperties:
  2364. type: string
  2365. description: |-
  2366. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2367. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2368. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2369. type: object
  2370. type: object
  2371. x-kubernetes-map-type: atomic
  2372. namespaces:
  2373. description: Choose namespaces by name
  2374. items:
  2375. maxLength: 63
  2376. minLength: 1
  2377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2378. type: string
  2379. type: array
  2380. type: object
  2381. type: array
  2382. controller:
  2383. description: |-
  2384. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2385. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2386. type: string
  2387. provider:
  2388. description: Used to configure the provider. Only one provider may be set
  2389. maxProperties: 1
  2390. minProperties: 1
  2391. properties:
  2392. akeyless:
  2393. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2394. properties:
  2395. akeylessGWApiURL:
  2396. description: Akeyless GW API Url from which the secrets to be fetched from.
  2397. type: string
  2398. authSecretRef:
  2399. description: Auth configures how the operator authenticates with Akeyless.
  2400. properties:
  2401. kubernetesAuth:
  2402. description: |-
  2403. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2404. token stored in the named Secret resource.
  2405. properties:
  2406. accessID:
  2407. description: the Akeyless Kubernetes auth-method access-id
  2408. type: string
  2409. k8sConfName:
  2410. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2411. type: string
  2412. secretRef:
  2413. description: |-
  2414. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2415. for authenticating with Akeyless. If a name is specified without a key,
  2416. `token` is the default. If one is not specified, the one bound to
  2417. the controller will be used.
  2418. properties:
  2419. key:
  2420. description: |-
  2421. A key in the referenced Secret.
  2422. Some instances of this field may be defaulted, in others it may be required.
  2423. maxLength: 253
  2424. minLength: 1
  2425. pattern: ^[-._a-zA-Z0-9]+$
  2426. type: string
  2427. name:
  2428. description: The name of the Secret resource being referred to.
  2429. maxLength: 253
  2430. minLength: 1
  2431. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2432. type: string
  2433. namespace:
  2434. description: |-
  2435. The namespace of the Secret resource being referred to.
  2436. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2437. maxLength: 63
  2438. minLength: 1
  2439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2440. type: string
  2441. type: object
  2442. serviceAccountRef:
  2443. description: |-
  2444. Optional service account field containing the name of a kubernetes ServiceAccount.
  2445. If the service account is specified, the service account secret token JWT will be used
  2446. for authenticating with Akeyless. If the service account selector is not supplied,
  2447. the secretRef will be used instead.
  2448. properties:
  2449. audiences:
  2450. description: |-
  2451. Audience specifies the `aud` claim for the service account token
  2452. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2453. then this audiences will be appended to the list
  2454. items:
  2455. type: string
  2456. type: array
  2457. name:
  2458. description: The name of the ServiceAccount resource being referred to.
  2459. maxLength: 253
  2460. minLength: 1
  2461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2462. type: string
  2463. namespace:
  2464. description: |-
  2465. Namespace of the resource being referred to.
  2466. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2467. maxLength: 63
  2468. minLength: 1
  2469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2470. type: string
  2471. required:
  2472. - name
  2473. type: object
  2474. required:
  2475. - accessID
  2476. - k8sConfName
  2477. type: object
  2478. secretRef:
  2479. description: |-
  2480. Reference to a Secret that contains the details
  2481. to authenticate with Akeyless.
  2482. properties:
  2483. accessID:
  2484. description: The SecretAccessID is used for authentication
  2485. properties:
  2486. key:
  2487. description: |-
  2488. A key in the referenced Secret.
  2489. Some instances of this field may be defaulted, in others it may be required.
  2490. maxLength: 253
  2491. minLength: 1
  2492. pattern: ^[-._a-zA-Z0-9]+$
  2493. type: string
  2494. name:
  2495. description: The name of the Secret resource being referred to.
  2496. maxLength: 253
  2497. minLength: 1
  2498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2499. type: string
  2500. namespace:
  2501. description: |-
  2502. The namespace of the Secret resource being referred to.
  2503. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2504. maxLength: 63
  2505. minLength: 1
  2506. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2507. type: string
  2508. type: object
  2509. accessType:
  2510. description: |-
  2511. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2512. In some instances, `key` is a required field.
  2513. properties:
  2514. key:
  2515. description: |-
  2516. A key in the referenced Secret.
  2517. Some instances of this field may be defaulted, in others it may be required.
  2518. maxLength: 253
  2519. minLength: 1
  2520. pattern: ^[-._a-zA-Z0-9]+$
  2521. type: string
  2522. name:
  2523. description: The name of the Secret resource being referred to.
  2524. maxLength: 253
  2525. minLength: 1
  2526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2527. type: string
  2528. namespace:
  2529. description: |-
  2530. The namespace of the Secret resource being referred to.
  2531. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2532. maxLength: 63
  2533. minLength: 1
  2534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2535. type: string
  2536. type: object
  2537. accessTypeParam:
  2538. description: |-
  2539. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2540. In some instances, `key` is a required field.
  2541. properties:
  2542. key:
  2543. description: |-
  2544. A key in the referenced Secret.
  2545. Some instances of this field may be defaulted, in others it may be required.
  2546. maxLength: 253
  2547. minLength: 1
  2548. pattern: ^[-._a-zA-Z0-9]+$
  2549. type: string
  2550. name:
  2551. description: The name of the Secret resource being referred to.
  2552. maxLength: 253
  2553. minLength: 1
  2554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2555. type: string
  2556. namespace:
  2557. description: |-
  2558. The namespace of the Secret resource being referred to.
  2559. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2560. maxLength: 63
  2561. minLength: 1
  2562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2563. type: string
  2564. type: object
  2565. type: object
  2566. type: object
  2567. caBundle:
  2568. description: |-
  2569. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2570. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2571. are used to validate the TLS connection.
  2572. format: byte
  2573. type: string
  2574. caProvider:
  2575. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2576. properties:
  2577. key:
  2578. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2579. maxLength: 253
  2580. minLength: 1
  2581. pattern: ^[-._a-zA-Z0-9]+$
  2582. type: string
  2583. name:
  2584. description: The name of the object located at the provider type.
  2585. maxLength: 253
  2586. minLength: 1
  2587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2588. type: string
  2589. namespace:
  2590. description: |-
  2591. The namespace the Provider type is in.
  2592. Can only be defined when used in a ClusterSecretStore.
  2593. maxLength: 63
  2594. minLength: 1
  2595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2596. type: string
  2597. type:
  2598. description: The type of provider to use such as "Secret", or "ConfigMap".
  2599. enum:
  2600. - Secret
  2601. - ConfigMap
  2602. type: string
  2603. required:
  2604. - name
  2605. - type
  2606. type: object
  2607. required:
  2608. - akeylessGWApiURL
  2609. - authSecretRef
  2610. type: object
  2611. aws:
  2612. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2613. properties:
  2614. additionalRoles:
  2615. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2616. items:
  2617. type: string
  2618. type: array
  2619. auth:
  2620. description: |-
  2621. Auth defines the information necessary to authenticate against AWS
  2622. if not set aws sdk will infer credentials from your environment
  2623. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2624. properties:
  2625. jwt:
  2626. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  2627. properties:
  2628. serviceAccountRef:
  2629. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  2630. properties:
  2631. audiences:
  2632. description: |-
  2633. Audience specifies the `aud` claim for the service account token
  2634. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2635. then this audiences will be appended to the list
  2636. items:
  2637. type: string
  2638. type: array
  2639. name:
  2640. description: The name of the ServiceAccount resource being referred to.
  2641. maxLength: 253
  2642. minLength: 1
  2643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2644. type: string
  2645. namespace:
  2646. description: |-
  2647. Namespace of the resource being referred to.
  2648. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2649. maxLength: 63
  2650. minLength: 1
  2651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2652. type: string
  2653. required:
  2654. - name
  2655. type: object
  2656. type: object
  2657. secretRef:
  2658. description: |-
  2659. AWSAuthSecretRef holds secret references for AWS credentials
  2660. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2661. properties:
  2662. accessKeyIDSecretRef:
  2663. description: The AccessKeyID is used for authentication
  2664. properties:
  2665. key:
  2666. description: |-
  2667. A key in the referenced Secret.
  2668. Some instances of this field may be defaulted, in others it may be required.
  2669. maxLength: 253
  2670. minLength: 1
  2671. pattern: ^[-._a-zA-Z0-9]+$
  2672. type: string
  2673. name:
  2674. description: The name of the Secret resource being referred to.
  2675. maxLength: 253
  2676. minLength: 1
  2677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2678. type: string
  2679. namespace:
  2680. description: |-
  2681. The namespace of the Secret resource being referred to.
  2682. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2683. maxLength: 63
  2684. minLength: 1
  2685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2686. type: string
  2687. type: object
  2688. secretAccessKeySecretRef:
  2689. description: The SecretAccessKey is used for authentication
  2690. properties:
  2691. key:
  2692. description: |-
  2693. A key in the referenced Secret.
  2694. Some instances of this field may be defaulted, in others it may be required.
  2695. maxLength: 253
  2696. minLength: 1
  2697. pattern: ^[-._a-zA-Z0-9]+$
  2698. type: string
  2699. name:
  2700. description: The name of the Secret resource being referred to.
  2701. maxLength: 253
  2702. minLength: 1
  2703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2704. type: string
  2705. namespace:
  2706. description: |-
  2707. The namespace of the Secret resource being referred to.
  2708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2709. maxLength: 63
  2710. minLength: 1
  2711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2712. type: string
  2713. type: object
  2714. sessionTokenSecretRef:
  2715. description: |-
  2716. The SessionToken used for authentication
  2717. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2718. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2719. properties:
  2720. key:
  2721. description: |-
  2722. A key in the referenced Secret.
  2723. Some instances of this field may be defaulted, in others it may be required.
  2724. maxLength: 253
  2725. minLength: 1
  2726. pattern: ^[-._a-zA-Z0-9]+$
  2727. type: string
  2728. name:
  2729. description: The name of the Secret resource being referred to.
  2730. maxLength: 253
  2731. minLength: 1
  2732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2733. type: string
  2734. namespace:
  2735. description: |-
  2736. The namespace of the Secret resource being referred to.
  2737. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2738. maxLength: 63
  2739. minLength: 1
  2740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2741. type: string
  2742. type: object
  2743. type: object
  2744. type: object
  2745. externalID:
  2746. description: AWS External ID set on assumed IAM roles
  2747. type: string
  2748. prefix:
  2749. description: Prefix adds a prefix to all retrieved values.
  2750. type: string
  2751. region:
  2752. description: AWS Region to be used for the provider
  2753. type: string
  2754. role:
  2755. description: Role is a Role ARN which the provider will assume
  2756. type: string
  2757. secretsManager:
  2758. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2759. properties:
  2760. forceDeleteWithoutRecovery:
  2761. description: |-
  2762. Specifies whether to delete the secret without any recovery window. You
  2763. can't use both this parameter and RecoveryWindowInDays in the same call.
  2764. If you don't use either, then by default Secrets Manager uses a 30 day
  2765. recovery window.
  2766. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2767. type: boolean
  2768. recoveryWindowInDays:
  2769. description: |-
  2770. The number of days from 7 to 30 that Secrets Manager waits before
  2771. permanently deleting the secret. You can't use both this parameter and
  2772. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2773. then by default Secrets Manager uses a 30-day recovery window.
  2774. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2775. format: int64
  2776. type: integer
  2777. type: object
  2778. service:
  2779. description: Service defines which service should be used to fetch the secrets
  2780. enum:
  2781. - SecretsManager
  2782. - ParameterStore
  2783. type: string
  2784. sessionTags:
  2785. description: AWS STS assume role session tags
  2786. items:
  2787. description: |-
  2788. Tag is a key-value pair that can be attached to an AWS resource.
  2789. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  2790. properties:
  2791. key:
  2792. type: string
  2793. value:
  2794. type: string
  2795. required:
  2796. - key
  2797. - value
  2798. type: object
  2799. type: array
  2800. transitiveTagKeys:
  2801. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2802. items:
  2803. type: string
  2804. type: array
  2805. required:
  2806. - region
  2807. - service
  2808. type: object
  2809. azurekv:
  2810. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2811. properties:
  2812. authSecretRef:
  2813. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2814. properties:
  2815. clientCertificate:
  2816. description: The Azure ClientCertificate of the service principle used for authentication.
  2817. properties:
  2818. key:
  2819. description: |-
  2820. A key in the referenced Secret.
  2821. Some instances of this field may be defaulted, in others it may be required.
  2822. maxLength: 253
  2823. minLength: 1
  2824. pattern: ^[-._a-zA-Z0-9]+$
  2825. type: string
  2826. name:
  2827. description: The name of the Secret resource being referred to.
  2828. maxLength: 253
  2829. minLength: 1
  2830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2831. type: string
  2832. namespace:
  2833. description: |-
  2834. The namespace of the Secret resource being referred to.
  2835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2836. maxLength: 63
  2837. minLength: 1
  2838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2839. type: string
  2840. type: object
  2841. clientId:
  2842. description: The Azure clientId of the service principle or managed identity used for authentication.
  2843. properties:
  2844. key:
  2845. description: |-
  2846. A key in the referenced Secret.
  2847. Some instances of this field may be defaulted, in others it may be required.
  2848. maxLength: 253
  2849. minLength: 1
  2850. pattern: ^[-._a-zA-Z0-9]+$
  2851. type: string
  2852. name:
  2853. description: The name of the Secret resource being referred to.
  2854. maxLength: 253
  2855. minLength: 1
  2856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2857. type: string
  2858. namespace:
  2859. description: |-
  2860. The namespace of the Secret resource being referred to.
  2861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2862. maxLength: 63
  2863. minLength: 1
  2864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2865. type: string
  2866. type: object
  2867. clientSecret:
  2868. description: The Azure ClientSecret of the service principle used for authentication.
  2869. properties:
  2870. key:
  2871. description: |-
  2872. A key in the referenced Secret.
  2873. Some instances of this field may be defaulted, in others it may be required.
  2874. maxLength: 253
  2875. minLength: 1
  2876. pattern: ^[-._a-zA-Z0-9]+$
  2877. type: string
  2878. name:
  2879. description: The name of the Secret resource being referred to.
  2880. maxLength: 253
  2881. minLength: 1
  2882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2883. type: string
  2884. namespace:
  2885. description: |-
  2886. The namespace of the Secret resource being referred to.
  2887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2888. maxLength: 63
  2889. minLength: 1
  2890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2891. type: string
  2892. type: object
  2893. tenantId:
  2894. description: The Azure tenantId of the managed identity used for authentication.
  2895. properties:
  2896. key:
  2897. description: |-
  2898. A key in the referenced Secret.
  2899. Some instances of this field may be defaulted, in others it may be required.
  2900. maxLength: 253
  2901. minLength: 1
  2902. pattern: ^[-._a-zA-Z0-9]+$
  2903. type: string
  2904. name:
  2905. description: The name of the Secret resource being referred to.
  2906. maxLength: 253
  2907. minLength: 1
  2908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2909. type: string
  2910. namespace:
  2911. description: |-
  2912. The namespace of the Secret resource being referred to.
  2913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2914. maxLength: 63
  2915. minLength: 1
  2916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2917. type: string
  2918. type: object
  2919. type: object
  2920. authType:
  2921. default: ServicePrincipal
  2922. description: |-
  2923. Auth type defines how to authenticate to the keyvault service.
  2924. Valid values are:
  2925. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2926. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2927. enum:
  2928. - ServicePrincipal
  2929. - ManagedIdentity
  2930. - WorkloadIdentity
  2931. type: string
  2932. customCloudConfig:
  2933. description: |-
  2934. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  2935. Required when EnvironmentType is AzureStackCloud.
  2936. Optional for other environment types - useful for Azure China when using Workload Identity
  2937. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  2938. standard China Cloud endpoint (login.chinacloudapi.cn).
  2939. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  2940. configuration is not supported with the legacy go-autorest SDK.
  2941. properties:
  2942. activeDirectoryEndpoint:
  2943. description: |-
  2944. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  2945. Required when using custom cloud configuration
  2946. type: string
  2947. keyVaultDNSSuffix:
  2948. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  2949. type: string
  2950. keyVaultEndpoint:
  2951. description: KeyVaultEndpoint is the Key Vault service endpoint
  2952. type: string
  2953. resourceManagerEndpoint:
  2954. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  2955. type: string
  2956. required:
  2957. - activeDirectoryEndpoint
  2958. type: object
  2959. environmentType:
  2960. default: PublicCloud
  2961. description: |-
  2962. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2963. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2964. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2965. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  2966. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  2967. enum:
  2968. - PublicCloud
  2969. - USGovernmentCloud
  2970. - ChinaCloud
  2971. - GermanCloud
  2972. - AzureStackCloud
  2973. type: string
  2974. identityId:
  2975. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2976. type: string
  2977. serviceAccountRef:
  2978. description: |-
  2979. ServiceAccountRef specified the service account
  2980. that should be used when authenticating with WorkloadIdentity.
  2981. properties:
  2982. audiences:
  2983. description: |-
  2984. Audience specifies the `aud` claim for the service account token
  2985. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2986. then this audiences will be appended to the list
  2987. items:
  2988. type: string
  2989. type: array
  2990. name:
  2991. description: The name of the ServiceAccount resource being referred to.
  2992. maxLength: 253
  2993. minLength: 1
  2994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2995. type: string
  2996. namespace:
  2997. description: |-
  2998. Namespace of the resource being referred to.
  2999. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3000. maxLength: 63
  3001. minLength: 1
  3002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3003. type: string
  3004. required:
  3005. - name
  3006. type: object
  3007. tenantId:
  3008. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3009. type: string
  3010. useAzureSDK:
  3011. default: false
  3012. description: |-
  3013. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3014. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3015. type: boolean
  3016. vaultUrl:
  3017. description: Vault Url from which the secrets to be fetched from.
  3018. type: string
  3019. required:
  3020. - vaultUrl
  3021. type: object
  3022. barbican:
  3023. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3024. properties:
  3025. auth:
  3026. description: BarbicanAuth contains the authentication information for Barbican.
  3027. properties:
  3028. password:
  3029. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3030. properties:
  3031. secretRef:
  3032. description: |-
  3033. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3034. In some instances, `key` is a required field.
  3035. properties:
  3036. key:
  3037. description: |-
  3038. A key in the referenced Secret.
  3039. Some instances of this field may be defaulted, in others it may be required.
  3040. maxLength: 253
  3041. minLength: 1
  3042. pattern: ^[-._a-zA-Z0-9]+$
  3043. type: string
  3044. name:
  3045. description: The name of the Secret resource being referred to.
  3046. maxLength: 253
  3047. minLength: 1
  3048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3049. type: string
  3050. namespace:
  3051. description: |-
  3052. The namespace of the Secret resource being referred to.
  3053. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3054. maxLength: 63
  3055. minLength: 1
  3056. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3057. type: string
  3058. type: object
  3059. required:
  3060. - secretRef
  3061. type: object
  3062. username:
  3063. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3064. maxProperties: 1
  3065. minProperties: 1
  3066. properties:
  3067. secretRef:
  3068. description: |-
  3069. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3070. In some instances, `key` is a required field.
  3071. properties:
  3072. key:
  3073. description: |-
  3074. A key in the referenced Secret.
  3075. Some instances of this field may be defaulted, in others it may be required.
  3076. maxLength: 253
  3077. minLength: 1
  3078. pattern: ^[-._a-zA-Z0-9]+$
  3079. type: string
  3080. name:
  3081. description: The name of the Secret resource being referred to.
  3082. maxLength: 253
  3083. minLength: 1
  3084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3085. type: string
  3086. namespace:
  3087. description: |-
  3088. The namespace of the Secret resource being referred to.
  3089. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3090. maxLength: 63
  3091. minLength: 1
  3092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3093. type: string
  3094. type: object
  3095. value:
  3096. type: string
  3097. type: object
  3098. required:
  3099. - password
  3100. - username
  3101. type: object
  3102. authURL:
  3103. type: string
  3104. domainName:
  3105. type: string
  3106. region:
  3107. type: string
  3108. tenantName:
  3109. type: string
  3110. required:
  3111. - auth
  3112. type: object
  3113. beyondtrust:
  3114. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3115. properties:
  3116. auth:
  3117. description: Auth configures how the operator authenticates with Beyondtrust.
  3118. properties:
  3119. apiKey:
  3120. description: APIKey If not provided then ClientID/ClientSecret become required.
  3121. properties:
  3122. secretRef:
  3123. description: SecretRef references a key in a secret that will be used as value.
  3124. properties:
  3125. key:
  3126. description: |-
  3127. A key in the referenced Secret.
  3128. Some instances of this field may be defaulted, in others it may be required.
  3129. maxLength: 253
  3130. minLength: 1
  3131. pattern: ^[-._a-zA-Z0-9]+$
  3132. type: string
  3133. name:
  3134. description: The name of the Secret resource being referred to.
  3135. maxLength: 253
  3136. minLength: 1
  3137. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3138. type: string
  3139. namespace:
  3140. description: |-
  3141. The namespace of the Secret resource being referred to.
  3142. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3143. maxLength: 63
  3144. minLength: 1
  3145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3146. type: string
  3147. type: object
  3148. value:
  3149. description: Value can be specified directly to set a value without using a secret.
  3150. type: string
  3151. type: object
  3152. certificate:
  3153. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3154. properties:
  3155. secretRef:
  3156. description: SecretRef references a key in a secret that will be used as value.
  3157. properties:
  3158. key:
  3159. description: |-
  3160. A key in the referenced Secret.
  3161. Some instances of this field may be defaulted, in others it may be required.
  3162. maxLength: 253
  3163. minLength: 1
  3164. pattern: ^[-._a-zA-Z0-9]+$
  3165. type: string
  3166. name:
  3167. description: The name of the Secret resource being referred to.
  3168. maxLength: 253
  3169. minLength: 1
  3170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3171. type: string
  3172. namespace:
  3173. description: |-
  3174. The namespace of the Secret resource being referred to.
  3175. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3176. maxLength: 63
  3177. minLength: 1
  3178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3179. type: string
  3180. type: object
  3181. value:
  3182. description: Value can be specified directly to set a value without using a secret.
  3183. type: string
  3184. type: object
  3185. certificateKey:
  3186. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3187. properties:
  3188. secretRef:
  3189. description: SecretRef references a key in a secret that will be used as value.
  3190. properties:
  3191. key:
  3192. description: |-
  3193. A key in the referenced Secret.
  3194. Some instances of this field may be defaulted, in others it may be required.
  3195. maxLength: 253
  3196. minLength: 1
  3197. pattern: ^[-._a-zA-Z0-9]+$
  3198. type: string
  3199. name:
  3200. description: The name of the Secret resource being referred to.
  3201. maxLength: 253
  3202. minLength: 1
  3203. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3204. type: string
  3205. namespace:
  3206. description: |-
  3207. The namespace of the Secret resource being referred to.
  3208. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3209. maxLength: 63
  3210. minLength: 1
  3211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3212. type: string
  3213. type: object
  3214. value:
  3215. description: Value can be specified directly to set a value without using a secret.
  3216. type: string
  3217. type: object
  3218. clientId:
  3219. description: ClientID is the API OAuth Client ID.
  3220. properties:
  3221. secretRef:
  3222. description: SecretRef references a key in a secret that will be used as value.
  3223. properties:
  3224. key:
  3225. description: |-
  3226. A key in the referenced Secret.
  3227. Some instances of this field may be defaulted, in others it may be required.
  3228. maxLength: 253
  3229. minLength: 1
  3230. pattern: ^[-._a-zA-Z0-9]+$
  3231. type: string
  3232. name:
  3233. description: The name of the Secret resource being referred to.
  3234. maxLength: 253
  3235. minLength: 1
  3236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3237. type: string
  3238. namespace:
  3239. description: |-
  3240. The namespace of the Secret resource being referred to.
  3241. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3242. maxLength: 63
  3243. minLength: 1
  3244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3245. type: string
  3246. type: object
  3247. value:
  3248. description: Value can be specified directly to set a value without using a secret.
  3249. type: string
  3250. type: object
  3251. clientSecret:
  3252. description: ClientSecret is the API OAuth Client Secret.
  3253. properties:
  3254. secretRef:
  3255. description: SecretRef references a key in a secret that will be used as value.
  3256. properties:
  3257. key:
  3258. description: |-
  3259. A key in the referenced Secret.
  3260. Some instances of this field may be defaulted, in others it may be required.
  3261. maxLength: 253
  3262. minLength: 1
  3263. pattern: ^[-._a-zA-Z0-9]+$
  3264. type: string
  3265. name:
  3266. description: The name of the Secret resource being referred to.
  3267. maxLength: 253
  3268. minLength: 1
  3269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3270. type: string
  3271. namespace:
  3272. description: |-
  3273. The namespace of the Secret resource being referred to.
  3274. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3275. maxLength: 63
  3276. minLength: 1
  3277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3278. type: string
  3279. type: object
  3280. value:
  3281. description: Value can be specified directly to set a value without using a secret.
  3282. type: string
  3283. type: object
  3284. type: object
  3285. server:
  3286. description: Auth configures how API server works.
  3287. properties:
  3288. apiUrl:
  3289. type: string
  3290. apiVersion:
  3291. type: string
  3292. clientTimeOutSeconds:
  3293. description: Timeout specifies a time limit for requests made by this Client. The timeout includes connection time, any redirects, and reading the response body. Defaults to 45 seconds.
  3294. type: integer
  3295. decrypt:
  3296. default: true
  3297. description: 'When true, the response includes the decrypted password. When false, the password field is omitted. This option only applies to the SECRET retrieval type. Default: true.'
  3298. type: boolean
  3299. retrievalType:
  3300. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3301. type: string
  3302. separator:
  3303. description: A character that separates the folder names.
  3304. type: string
  3305. verifyCA:
  3306. type: boolean
  3307. required:
  3308. - apiUrl
  3309. - verifyCA
  3310. type: object
  3311. required:
  3312. - auth
  3313. - server
  3314. type: object
  3315. bitwardensecretsmanager:
  3316. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3317. properties:
  3318. apiURL:
  3319. type: string
  3320. auth:
  3321. description: |-
  3322. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3323. Make sure that the token being used has permissions on the given secret.
  3324. properties:
  3325. secretRef:
  3326. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3327. properties:
  3328. credentials:
  3329. description: AccessToken used for the bitwarden instance.
  3330. properties:
  3331. key:
  3332. description: |-
  3333. A key in the referenced Secret.
  3334. Some instances of this field may be defaulted, in others it may be required.
  3335. maxLength: 253
  3336. minLength: 1
  3337. pattern: ^[-._a-zA-Z0-9]+$
  3338. type: string
  3339. name:
  3340. description: The name of the Secret resource being referred to.
  3341. maxLength: 253
  3342. minLength: 1
  3343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3344. type: string
  3345. namespace:
  3346. description: |-
  3347. The namespace of the Secret resource being referred to.
  3348. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3349. maxLength: 63
  3350. minLength: 1
  3351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3352. type: string
  3353. type: object
  3354. required:
  3355. - credentials
  3356. type: object
  3357. required:
  3358. - secretRef
  3359. type: object
  3360. bitwardenServerSDKURL:
  3361. type: string
  3362. caBundle:
  3363. description: |-
  3364. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3365. can be performed.
  3366. type: string
  3367. caProvider:
  3368. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3369. properties:
  3370. key:
  3371. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3372. maxLength: 253
  3373. minLength: 1
  3374. pattern: ^[-._a-zA-Z0-9]+$
  3375. type: string
  3376. name:
  3377. description: The name of the object located at the provider type.
  3378. maxLength: 253
  3379. minLength: 1
  3380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3381. type: string
  3382. namespace:
  3383. description: |-
  3384. The namespace the Provider type is in.
  3385. Can only be defined when used in a ClusterSecretStore.
  3386. maxLength: 63
  3387. minLength: 1
  3388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3389. type: string
  3390. type:
  3391. description: The type of provider to use such as "Secret", or "ConfigMap".
  3392. enum:
  3393. - Secret
  3394. - ConfigMap
  3395. type: string
  3396. required:
  3397. - name
  3398. - type
  3399. type: object
  3400. identityURL:
  3401. type: string
  3402. organizationID:
  3403. description: OrganizationID determines which organization this secret store manages.
  3404. type: string
  3405. projectID:
  3406. description: ProjectID determines which project this secret store manages.
  3407. type: string
  3408. required:
  3409. - auth
  3410. - organizationID
  3411. - projectID
  3412. type: object
  3413. chef:
  3414. description: Chef configures this store to sync secrets with chef server
  3415. properties:
  3416. auth:
  3417. description: Auth defines the information necessary to authenticate against chef Server
  3418. properties:
  3419. secretRef:
  3420. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3421. properties:
  3422. privateKeySecretRef:
  3423. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3424. properties:
  3425. key:
  3426. description: |-
  3427. A key in the referenced Secret.
  3428. Some instances of this field may be defaulted, in others it may be required.
  3429. maxLength: 253
  3430. minLength: 1
  3431. pattern: ^[-._a-zA-Z0-9]+$
  3432. type: string
  3433. name:
  3434. description: The name of the Secret resource being referred to.
  3435. maxLength: 253
  3436. minLength: 1
  3437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3438. type: string
  3439. namespace:
  3440. description: |-
  3441. The namespace of the Secret resource being referred to.
  3442. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3443. maxLength: 63
  3444. minLength: 1
  3445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3446. type: string
  3447. type: object
  3448. required:
  3449. - privateKeySecretRef
  3450. type: object
  3451. required:
  3452. - secretRef
  3453. type: object
  3454. serverUrl:
  3455. description: ServerURL is the chef server URL used to connect to. If using orgs you should include your org in the url and terminate the url with a "/"
  3456. type: string
  3457. username:
  3458. description: UserName should be the user ID on the chef server
  3459. type: string
  3460. required:
  3461. - auth
  3462. - serverUrl
  3463. - username
  3464. type: object
  3465. cloudrusm:
  3466. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3467. properties:
  3468. auth:
  3469. description: CSMAuth contains a secretRef for credentials.
  3470. properties:
  3471. secretRef:
  3472. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3473. properties:
  3474. accessKeyIDSecretRef:
  3475. description: The AccessKeyID is used for authentication
  3476. properties:
  3477. key:
  3478. description: |-
  3479. A key in the referenced Secret.
  3480. Some instances of this field may be defaulted, in others it may be required.
  3481. maxLength: 253
  3482. minLength: 1
  3483. pattern: ^[-._a-zA-Z0-9]+$
  3484. type: string
  3485. name:
  3486. description: The name of the Secret resource being referred to.
  3487. maxLength: 253
  3488. minLength: 1
  3489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3490. type: string
  3491. namespace:
  3492. description: |-
  3493. The namespace of the Secret resource being referred to.
  3494. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3495. maxLength: 63
  3496. minLength: 1
  3497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3498. type: string
  3499. type: object
  3500. accessKeySecretSecretRef:
  3501. description: The AccessKeySecret is used for authentication
  3502. properties:
  3503. key:
  3504. description: |-
  3505. A key in the referenced Secret.
  3506. Some instances of this field may be defaulted, in others it may be required.
  3507. maxLength: 253
  3508. minLength: 1
  3509. pattern: ^[-._a-zA-Z0-9]+$
  3510. type: string
  3511. name:
  3512. description: The name of the Secret resource being referred to.
  3513. maxLength: 253
  3514. minLength: 1
  3515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3516. type: string
  3517. namespace:
  3518. description: |-
  3519. The namespace of the Secret resource being referred to.
  3520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3521. maxLength: 63
  3522. minLength: 1
  3523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3524. type: string
  3525. type: object
  3526. required:
  3527. - accessKeyIDSecretRef
  3528. - accessKeySecretSecretRef
  3529. type: object
  3530. type: object
  3531. projectID:
  3532. description: ProjectID is the project, which the secrets are stored in.
  3533. type: string
  3534. required:
  3535. - auth
  3536. type: object
  3537. conjur:
  3538. description: Conjur configures this store to sync secrets using conjur provider
  3539. properties:
  3540. auth:
  3541. description: Defines authentication settings for connecting to Conjur.
  3542. properties:
  3543. apikey:
  3544. description: Authenticates with Conjur using an API key.
  3545. properties:
  3546. account:
  3547. description: Account is the Conjur organization account name.
  3548. type: string
  3549. apiKeyRef:
  3550. description: |-
  3551. A reference to a specific 'key' containing the Conjur API key
  3552. within a Secret resource. In some instances, `key` is a required field.
  3553. properties:
  3554. key:
  3555. description: |-
  3556. A key in the referenced Secret.
  3557. Some instances of this field may be defaulted, in others it may be required.
  3558. maxLength: 253
  3559. minLength: 1
  3560. pattern: ^[-._a-zA-Z0-9]+$
  3561. type: string
  3562. name:
  3563. description: The name of the Secret resource being referred to.
  3564. maxLength: 253
  3565. minLength: 1
  3566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3567. type: string
  3568. namespace:
  3569. description: |-
  3570. The namespace of the Secret resource being referred to.
  3571. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3572. maxLength: 63
  3573. minLength: 1
  3574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3575. type: string
  3576. type: object
  3577. userRef:
  3578. description: |-
  3579. A reference to a specific 'key' containing the Conjur username
  3580. within a Secret resource. In some instances, `key` is a required field.
  3581. properties:
  3582. key:
  3583. description: |-
  3584. A key in the referenced Secret.
  3585. Some instances of this field may be defaulted, in others it may be required.
  3586. maxLength: 253
  3587. minLength: 1
  3588. pattern: ^[-._a-zA-Z0-9]+$
  3589. type: string
  3590. name:
  3591. description: The name of the Secret resource being referred to.
  3592. maxLength: 253
  3593. minLength: 1
  3594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3595. type: string
  3596. namespace:
  3597. description: |-
  3598. The namespace of the Secret resource being referred to.
  3599. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3600. maxLength: 63
  3601. minLength: 1
  3602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3603. type: string
  3604. type: object
  3605. required:
  3606. - account
  3607. - apiKeyRef
  3608. - userRef
  3609. type: object
  3610. jwt:
  3611. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3612. properties:
  3613. account:
  3614. description: Account is the Conjur organization account name.
  3615. type: string
  3616. hostId:
  3617. description: |-
  3618. Optional HostID for JWT authentication. This may be used depending
  3619. on how the Conjur JWT authenticator policy is configured.
  3620. type: string
  3621. secretRef:
  3622. description: |-
  3623. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3624. authenticate with Conjur using the JWT authentication method.
  3625. properties:
  3626. key:
  3627. description: |-
  3628. A key in the referenced Secret.
  3629. Some instances of this field may be defaulted, in others it may be required.
  3630. maxLength: 253
  3631. minLength: 1
  3632. pattern: ^[-._a-zA-Z0-9]+$
  3633. type: string
  3634. name:
  3635. description: The name of the Secret resource being referred to.
  3636. maxLength: 253
  3637. minLength: 1
  3638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3639. type: string
  3640. namespace:
  3641. description: |-
  3642. The namespace of the Secret resource being referred to.
  3643. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3644. maxLength: 63
  3645. minLength: 1
  3646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3647. type: string
  3648. type: object
  3649. serviceAccountRef:
  3650. description: |-
  3651. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3652. a token for with the `TokenRequest` API.
  3653. properties:
  3654. audiences:
  3655. description: |-
  3656. Audience specifies the `aud` claim for the service account token
  3657. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3658. then this audiences will be appended to the list
  3659. items:
  3660. type: string
  3661. type: array
  3662. name:
  3663. description: The name of the ServiceAccount resource being referred to.
  3664. maxLength: 253
  3665. minLength: 1
  3666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3667. type: string
  3668. namespace:
  3669. description: |-
  3670. Namespace of the resource being referred to.
  3671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3672. maxLength: 63
  3673. minLength: 1
  3674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3675. type: string
  3676. required:
  3677. - name
  3678. type: object
  3679. serviceID:
  3680. description: The conjur authn jwt webservice id
  3681. type: string
  3682. required:
  3683. - account
  3684. - serviceID
  3685. type: object
  3686. type: object
  3687. caBundle:
  3688. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3689. type: string
  3690. caProvider:
  3691. description: |-
  3692. Used to provide custom certificate authority (CA) certificates
  3693. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3694. that contains a PEM-encoded certificate.
  3695. properties:
  3696. key:
  3697. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3698. maxLength: 253
  3699. minLength: 1
  3700. pattern: ^[-._a-zA-Z0-9]+$
  3701. type: string
  3702. name:
  3703. description: The name of the object located at the provider type.
  3704. maxLength: 253
  3705. minLength: 1
  3706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3707. type: string
  3708. namespace:
  3709. description: |-
  3710. The namespace the Provider type is in.
  3711. Can only be defined when used in a ClusterSecretStore.
  3712. maxLength: 63
  3713. minLength: 1
  3714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3715. type: string
  3716. type:
  3717. description: The type of provider to use such as "Secret", or "ConfigMap".
  3718. enum:
  3719. - Secret
  3720. - ConfigMap
  3721. type: string
  3722. required:
  3723. - name
  3724. - type
  3725. type: object
  3726. url:
  3727. description: URL is the endpoint of the Conjur instance.
  3728. type: string
  3729. required:
  3730. - auth
  3731. - url
  3732. type: object
  3733. delinea:
  3734. description: |-
  3735. Delinea DevOps Secrets Vault
  3736. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3737. properties:
  3738. clientId:
  3739. description: ClientID is the non-secret part of the credential.
  3740. properties:
  3741. secretRef:
  3742. description: SecretRef references a key in a secret that will be used as value.
  3743. properties:
  3744. key:
  3745. description: |-
  3746. A key in the referenced Secret.
  3747. Some instances of this field may be defaulted, in others it may be required.
  3748. maxLength: 253
  3749. minLength: 1
  3750. pattern: ^[-._a-zA-Z0-9]+$
  3751. type: string
  3752. name:
  3753. description: The name of the Secret resource being referred to.
  3754. maxLength: 253
  3755. minLength: 1
  3756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3757. type: string
  3758. namespace:
  3759. description: |-
  3760. The namespace of the Secret resource being referred to.
  3761. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3762. maxLength: 63
  3763. minLength: 1
  3764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3765. type: string
  3766. type: object
  3767. value:
  3768. description: Value can be specified directly to set a value without using a secret.
  3769. type: string
  3770. type: object
  3771. clientSecret:
  3772. description: ClientSecret is the secret part of the credential.
  3773. properties:
  3774. secretRef:
  3775. description: SecretRef references a key in a secret that will be used as value.
  3776. properties:
  3777. key:
  3778. description: |-
  3779. A key in the referenced Secret.
  3780. Some instances of this field may be defaulted, in others it may be required.
  3781. maxLength: 253
  3782. minLength: 1
  3783. pattern: ^[-._a-zA-Z0-9]+$
  3784. type: string
  3785. name:
  3786. description: The name of the Secret resource being referred to.
  3787. maxLength: 253
  3788. minLength: 1
  3789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3790. type: string
  3791. namespace:
  3792. description: |-
  3793. The namespace of the Secret resource being referred to.
  3794. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3795. maxLength: 63
  3796. minLength: 1
  3797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3798. type: string
  3799. type: object
  3800. value:
  3801. description: Value can be specified directly to set a value without using a secret.
  3802. type: string
  3803. type: object
  3804. tenant:
  3805. description: Tenant is the chosen hostname / site name.
  3806. type: string
  3807. tld:
  3808. description: |-
  3809. TLD is based on the server location that was chosen during provisioning.
  3810. If unset, defaults to "com".
  3811. type: string
  3812. urlTemplate:
  3813. description: |-
  3814. URLTemplate
  3815. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  3816. type: string
  3817. required:
  3818. - clientId
  3819. - clientSecret
  3820. - tenant
  3821. type: object
  3822. doppler:
  3823. description: Doppler configures this store to sync secrets using the Doppler provider
  3824. properties:
  3825. auth:
  3826. description: Auth configures how the Operator authenticates with the Doppler API
  3827. properties:
  3828. oidcConfig:
  3829. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  3830. properties:
  3831. expirationSeconds:
  3832. default: 600
  3833. description: |-
  3834. ExpirationSeconds sets the ServiceAccount token validity duration.
  3835. Defaults to 10 minutes.
  3836. format: int64
  3837. type: integer
  3838. identity:
  3839. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  3840. type: string
  3841. serviceAccountRef:
  3842. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  3843. properties:
  3844. audiences:
  3845. description: |-
  3846. Audience specifies the `aud` claim for the service account token
  3847. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3848. then this audiences will be appended to the list
  3849. items:
  3850. type: string
  3851. type: array
  3852. name:
  3853. description: The name of the ServiceAccount resource being referred to.
  3854. maxLength: 253
  3855. minLength: 1
  3856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3857. type: string
  3858. namespace:
  3859. description: |-
  3860. Namespace of the resource being referred to.
  3861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3862. maxLength: 63
  3863. minLength: 1
  3864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3865. type: string
  3866. required:
  3867. - name
  3868. type: object
  3869. required:
  3870. - identity
  3871. - serviceAccountRef
  3872. type: object
  3873. secretRef:
  3874. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  3875. properties:
  3876. dopplerToken:
  3877. description: |-
  3878. The DopplerToken is used for authentication.
  3879. See https://docs.doppler.com/reference/api#authentication for auth token types.
  3880. The Key attribute defaults to dopplerToken if not specified.
  3881. properties:
  3882. key:
  3883. description: |-
  3884. A key in the referenced Secret.
  3885. Some instances of this field may be defaulted, in others it may be required.
  3886. maxLength: 253
  3887. minLength: 1
  3888. pattern: ^[-._a-zA-Z0-9]+$
  3889. type: string
  3890. name:
  3891. description: The name of the Secret resource being referred to.
  3892. maxLength: 253
  3893. minLength: 1
  3894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3895. type: string
  3896. namespace:
  3897. description: |-
  3898. The namespace of the Secret resource being referred to.
  3899. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3900. maxLength: 63
  3901. minLength: 1
  3902. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3903. type: string
  3904. type: object
  3905. required:
  3906. - dopplerToken
  3907. type: object
  3908. type: object
  3909. x-kubernetes-validations:
  3910. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  3911. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  3912. config:
  3913. description: Doppler config (required if not using a Service Token)
  3914. type: string
  3915. format:
  3916. description: Format enables the downloading of secrets as a file (string)
  3917. enum:
  3918. - json
  3919. - dotnet-json
  3920. - env
  3921. - yaml
  3922. - docker
  3923. type: string
  3924. nameTransformer:
  3925. description: Environment variable compatible name transforms that change secret names to a different format
  3926. enum:
  3927. - upper-camel
  3928. - camel
  3929. - lower-snake
  3930. - tf-var
  3931. - dotnet-env
  3932. - lower-kebab
  3933. type: string
  3934. project:
  3935. description: Doppler project (required if not using a Service Token)
  3936. type: string
  3937. required:
  3938. - auth
  3939. type: object
  3940. dvls:
  3941. description: DVLS configures this store to sync secrets using Devolutions Server provider
  3942. properties:
  3943. auth:
  3944. description: Auth defines the authentication method to use.
  3945. properties:
  3946. secretRef:
  3947. description: SecretRef contains the Application ID and Application Secret for authentication.
  3948. properties:
  3949. appId:
  3950. description: AppID is the reference to the secret containing the Application ID.
  3951. properties:
  3952. key:
  3953. description: |-
  3954. A key in the referenced Secret.
  3955. Some instances of this field may be defaulted, in others it may be required.
  3956. maxLength: 253
  3957. minLength: 1
  3958. pattern: ^[-._a-zA-Z0-9]+$
  3959. type: string
  3960. name:
  3961. description: The name of the Secret resource being referred to.
  3962. maxLength: 253
  3963. minLength: 1
  3964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3965. type: string
  3966. namespace:
  3967. description: |-
  3968. The namespace of the Secret resource being referred to.
  3969. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3970. maxLength: 63
  3971. minLength: 1
  3972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3973. type: string
  3974. type: object
  3975. appSecret:
  3976. description: AppSecret is the reference to the secret containing the Application Secret.
  3977. properties:
  3978. key:
  3979. description: |-
  3980. A key in the referenced Secret.
  3981. Some instances of this field may be defaulted, in others it may be required.
  3982. maxLength: 253
  3983. minLength: 1
  3984. pattern: ^[-._a-zA-Z0-9]+$
  3985. type: string
  3986. name:
  3987. description: The name of the Secret resource being referred to.
  3988. maxLength: 253
  3989. minLength: 1
  3990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3991. type: string
  3992. namespace:
  3993. description: |-
  3994. The namespace of the Secret resource being referred to.
  3995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3996. maxLength: 63
  3997. minLength: 1
  3998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3999. type: string
  4000. type: object
  4001. required:
  4002. - appId
  4003. - appSecret
  4004. type: object
  4005. required:
  4006. - secretRef
  4007. type: object
  4008. insecure:
  4009. description: |-
  4010. Insecure allows connecting to DVLS over plain HTTP.
  4011. This is NOT RECOMMENDED for production use.
  4012. Set to true only if you understand the security implications.
  4013. type: boolean
  4014. serverUrl:
  4015. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4016. type: string
  4017. required:
  4018. - auth
  4019. - serverUrl
  4020. type: object
  4021. fake:
  4022. description: Fake configures a store with static key/value pairs
  4023. properties:
  4024. data:
  4025. items:
  4026. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4027. properties:
  4028. key:
  4029. type: string
  4030. value:
  4031. type: string
  4032. version:
  4033. type: string
  4034. required:
  4035. - key
  4036. - value
  4037. type: object
  4038. type: array
  4039. validationResult:
  4040. description: ValidationResult is defined type for the number of validation results.
  4041. type: integer
  4042. required:
  4043. - data
  4044. type: object
  4045. fortanix:
  4046. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4047. properties:
  4048. apiKey:
  4049. description: APIKey is the API token to access SDKMS Applications.
  4050. properties:
  4051. secretRef:
  4052. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4053. properties:
  4054. key:
  4055. description: |-
  4056. A key in the referenced Secret.
  4057. Some instances of this field may be defaulted, in others it may be required.
  4058. maxLength: 253
  4059. minLength: 1
  4060. pattern: ^[-._a-zA-Z0-9]+$
  4061. type: string
  4062. name:
  4063. description: The name of the Secret resource being referred to.
  4064. maxLength: 253
  4065. minLength: 1
  4066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4067. type: string
  4068. namespace:
  4069. description: |-
  4070. The namespace of the Secret resource being referred to.
  4071. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4072. maxLength: 63
  4073. minLength: 1
  4074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4075. type: string
  4076. type: object
  4077. type: object
  4078. apiUrl:
  4079. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4080. type: string
  4081. type: object
  4082. gcpsm:
  4083. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4084. properties:
  4085. auth:
  4086. description: Auth defines the information necessary to authenticate against GCP
  4087. properties:
  4088. secretRef:
  4089. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4090. properties:
  4091. secretAccessKeySecretRef:
  4092. description: The SecretAccessKey is used for authentication
  4093. properties:
  4094. key:
  4095. description: |-
  4096. A key in the referenced Secret.
  4097. Some instances of this field may be defaulted, in others it may be required.
  4098. maxLength: 253
  4099. minLength: 1
  4100. pattern: ^[-._a-zA-Z0-9]+$
  4101. type: string
  4102. name:
  4103. description: The name of the Secret resource being referred to.
  4104. maxLength: 253
  4105. minLength: 1
  4106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4107. type: string
  4108. namespace:
  4109. description: |-
  4110. The namespace of the Secret resource being referred to.
  4111. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4112. maxLength: 63
  4113. minLength: 1
  4114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4115. type: string
  4116. type: object
  4117. type: object
  4118. workloadIdentity:
  4119. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4120. properties:
  4121. clusterLocation:
  4122. description: |-
  4123. ClusterLocation is the location of the cluster
  4124. If not specified, it fetches information from the metadata server
  4125. type: string
  4126. clusterName:
  4127. description: |-
  4128. ClusterName is the name of the cluster
  4129. If not specified, it fetches information from the metadata server
  4130. type: string
  4131. clusterProjectID:
  4132. description: |-
  4133. ClusterProjectID is the project ID of the cluster
  4134. If not specified, it fetches information from the metadata server
  4135. type: string
  4136. serviceAccountRef:
  4137. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4138. properties:
  4139. audiences:
  4140. description: |-
  4141. Audience specifies the `aud` claim for the service account token
  4142. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4143. then this audiences will be appended to the list
  4144. items:
  4145. type: string
  4146. type: array
  4147. name:
  4148. description: The name of the ServiceAccount resource being referred to.
  4149. maxLength: 253
  4150. minLength: 1
  4151. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4152. type: string
  4153. namespace:
  4154. description: |-
  4155. Namespace of the resource being referred to.
  4156. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4157. maxLength: 63
  4158. minLength: 1
  4159. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4160. type: string
  4161. required:
  4162. - name
  4163. type: object
  4164. required:
  4165. - serviceAccountRef
  4166. type: object
  4167. workloadIdentityFederation:
  4168. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4169. properties:
  4170. audience:
  4171. description: |-
  4172. 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.
  4173. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4174. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4175. type: string
  4176. awsSecurityCredentials:
  4177. description: |-
  4178. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4179. when using the AWS metadata server is not an option.
  4180. properties:
  4181. awsCredentialsSecretRef:
  4182. description: |-
  4183. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4184. Secret should be created with below names for keys
  4185. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4186. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4187. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4188. properties:
  4189. name:
  4190. description: name of the secret.
  4191. maxLength: 253
  4192. minLength: 1
  4193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4194. type: string
  4195. namespace:
  4196. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4197. maxLength: 63
  4198. minLength: 1
  4199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4200. type: string
  4201. required:
  4202. - name
  4203. type: object
  4204. region:
  4205. description: region is for configuring the AWS region to be used.
  4206. example: ap-south-1
  4207. maxLength: 50
  4208. minLength: 1
  4209. pattern: ^[a-z0-9-]+$
  4210. type: string
  4211. required:
  4212. - awsCredentialsSecretRef
  4213. - region
  4214. type: object
  4215. credConfig:
  4216. description: |-
  4217. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4218. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4219. serviceAccountRef must be used by providing operators service account details.
  4220. properties:
  4221. key:
  4222. description: key name holding the external account credential config.
  4223. maxLength: 253
  4224. minLength: 1
  4225. pattern: ^[-._a-zA-Z0-9]+$
  4226. type: string
  4227. name:
  4228. description: name of the configmap.
  4229. maxLength: 253
  4230. minLength: 1
  4231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4232. type: string
  4233. namespace:
  4234. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4235. maxLength: 63
  4236. minLength: 1
  4237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4238. type: string
  4239. required:
  4240. - key
  4241. - name
  4242. type: object
  4243. externalTokenEndpoint:
  4244. description: |-
  4245. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4246. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4247. URL is having the expected value.
  4248. type: string
  4249. serviceAccountRef:
  4250. description: |-
  4251. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4252. when Kubernetes is configured as provider in workload identity pool.
  4253. properties:
  4254. audiences:
  4255. description: |-
  4256. Audience specifies the `aud` claim for the service account token
  4257. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4258. then this audiences will be appended to the list
  4259. items:
  4260. type: string
  4261. type: array
  4262. name:
  4263. description: The name of the ServiceAccount resource being referred to.
  4264. maxLength: 253
  4265. minLength: 1
  4266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4267. type: string
  4268. namespace:
  4269. description: |-
  4270. Namespace of the resource being referred to.
  4271. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4272. maxLength: 63
  4273. minLength: 1
  4274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4275. type: string
  4276. required:
  4277. - name
  4278. type: object
  4279. type: object
  4280. type: object
  4281. location:
  4282. description: Location optionally defines a location for a secret
  4283. type: string
  4284. projectID:
  4285. description: ProjectID project where secret is located
  4286. type: string
  4287. secretVersionSelectionPolicy:
  4288. default: LatestOrFail
  4289. description: |-
  4290. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4291. when "latest" is disabled or destroyed.
  4292. Possible values are:
  4293. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4294. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4295. type: string
  4296. type: object
  4297. github:
  4298. description: |-
  4299. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4300. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4301. properties:
  4302. appID:
  4303. description: appID specifies the Github APP that will be used to authenticate the client
  4304. format: int64
  4305. type: integer
  4306. auth:
  4307. description: auth configures how secret-manager authenticates with a Github instance.
  4308. properties:
  4309. privateKey:
  4310. description: |-
  4311. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4312. In some instances, `key` is a required field.
  4313. properties:
  4314. key:
  4315. description: |-
  4316. A key in the referenced Secret.
  4317. Some instances of this field may be defaulted, in others it may be required.
  4318. maxLength: 253
  4319. minLength: 1
  4320. pattern: ^[-._a-zA-Z0-9]+$
  4321. type: string
  4322. name:
  4323. description: The name of the Secret resource being referred to.
  4324. maxLength: 253
  4325. minLength: 1
  4326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4327. type: string
  4328. namespace:
  4329. description: |-
  4330. The namespace of the Secret resource being referred to.
  4331. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4332. maxLength: 63
  4333. minLength: 1
  4334. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4335. type: string
  4336. type: object
  4337. required:
  4338. - privateKey
  4339. type: object
  4340. environment:
  4341. description: environment will be used to fetch secrets from a particular environment within a github repository
  4342. type: string
  4343. installationID:
  4344. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4345. format: int64
  4346. type: integer
  4347. organization:
  4348. description: organization will be used to fetch secrets from the Github organization
  4349. type: string
  4350. repository:
  4351. description: repository will be used to fetch secrets from the Github repository within an organization
  4352. type: string
  4353. uploadURL:
  4354. description: Upload URL for enterprise instances. Default to URL.
  4355. type: string
  4356. url:
  4357. default: https://github.com/
  4358. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4359. type: string
  4360. required:
  4361. - appID
  4362. - auth
  4363. - installationID
  4364. - organization
  4365. type: object
  4366. gitlab:
  4367. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4368. properties:
  4369. auth:
  4370. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4371. properties:
  4372. SecretRef:
  4373. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4374. properties:
  4375. accessToken:
  4376. description: AccessToken is used for authentication.
  4377. properties:
  4378. key:
  4379. description: |-
  4380. A key in the referenced Secret.
  4381. Some instances of this field may be defaulted, in others it may be required.
  4382. maxLength: 253
  4383. minLength: 1
  4384. pattern: ^[-._a-zA-Z0-9]+$
  4385. type: string
  4386. name:
  4387. description: The name of the Secret resource being referred to.
  4388. maxLength: 253
  4389. minLength: 1
  4390. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4391. type: string
  4392. namespace:
  4393. description: |-
  4394. The namespace of the Secret resource being referred to.
  4395. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4396. maxLength: 63
  4397. minLength: 1
  4398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4399. type: string
  4400. type: object
  4401. type: object
  4402. required:
  4403. - SecretRef
  4404. type: object
  4405. caBundle:
  4406. description: |-
  4407. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4408. can be performed.
  4409. format: byte
  4410. type: string
  4411. caProvider:
  4412. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4413. properties:
  4414. key:
  4415. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4416. maxLength: 253
  4417. minLength: 1
  4418. pattern: ^[-._a-zA-Z0-9]+$
  4419. type: string
  4420. name:
  4421. description: The name of the object located at the provider type.
  4422. maxLength: 253
  4423. minLength: 1
  4424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4425. type: string
  4426. namespace:
  4427. description: |-
  4428. The namespace the Provider type is in.
  4429. Can only be defined when used in a ClusterSecretStore.
  4430. maxLength: 63
  4431. minLength: 1
  4432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4433. type: string
  4434. type:
  4435. description: The type of provider to use such as "Secret", or "ConfigMap".
  4436. enum:
  4437. - Secret
  4438. - ConfigMap
  4439. type: string
  4440. required:
  4441. - name
  4442. - type
  4443. type: object
  4444. environment:
  4445. 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)
  4446. type: string
  4447. groupIDs:
  4448. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4449. items:
  4450. type: string
  4451. type: array
  4452. inheritFromGroups:
  4453. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4454. type: boolean
  4455. projectID:
  4456. description: ProjectID specifies a project where secrets are located.
  4457. type: string
  4458. url:
  4459. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4460. type: string
  4461. required:
  4462. - auth
  4463. type: object
  4464. ibm:
  4465. description: IBM configures this store to sync secrets using IBM Cloud provider
  4466. properties:
  4467. auth:
  4468. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4469. maxProperties: 1
  4470. minProperties: 1
  4471. properties:
  4472. containerAuth:
  4473. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4474. properties:
  4475. iamEndpoint:
  4476. type: string
  4477. profile:
  4478. description: the IBM Trusted Profile
  4479. type: string
  4480. tokenLocation:
  4481. description: Location the token is mounted on the pod
  4482. type: string
  4483. required:
  4484. - profile
  4485. type: object
  4486. secretRef:
  4487. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4488. properties:
  4489. iamEndpoint:
  4490. description: The IAM endpoint used to obain a token
  4491. type: string
  4492. secretApiKeySecretRef:
  4493. description: The SecretAccessKey is used for authentication
  4494. properties:
  4495. key:
  4496. description: |-
  4497. A key in the referenced Secret.
  4498. Some instances of this field may be defaulted, in others it may be required.
  4499. maxLength: 253
  4500. minLength: 1
  4501. pattern: ^[-._a-zA-Z0-9]+$
  4502. type: string
  4503. name:
  4504. description: The name of the Secret resource being referred to.
  4505. maxLength: 253
  4506. minLength: 1
  4507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4508. type: string
  4509. namespace:
  4510. description: |-
  4511. The namespace of the Secret resource being referred to.
  4512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4513. maxLength: 63
  4514. minLength: 1
  4515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4516. type: string
  4517. type: object
  4518. type: object
  4519. type: object
  4520. serviceUrl:
  4521. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4522. type: string
  4523. required:
  4524. - auth
  4525. type: object
  4526. infisical:
  4527. description: Infisical configures this store to sync secrets using the Infisical provider
  4528. properties:
  4529. auth:
  4530. description: Auth configures how the Operator authenticates with the Infisical API
  4531. properties:
  4532. awsAuthCredentials:
  4533. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4534. properties:
  4535. identityId:
  4536. description: |-
  4537. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4538. In some instances, `key` is a required field.
  4539. properties:
  4540. key:
  4541. description: |-
  4542. A key in the referenced Secret.
  4543. Some instances of this field may be defaulted, in others it may be required.
  4544. maxLength: 253
  4545. minLength: 1
  4546. pattern: ^[-._a-zA-Z0-9]+$
  4547. type: string
  4548. name:
  4549. description: The name of the Secret resource being referred to.
  4550. maxLength: 253
  4551. minLength: 1
  4552. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4553. type: string
  4554. namespace:
  4555. description: |-
  4556. The namespace of the Secret resource being referred to.
  4557. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4558. maxLength: 63
  4559. minLength: 1
  4560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4561. type: string
  4562. type: object
  4563. required:
  4564. - identityId
  4565. type: object
  4566. azureAuthCredentials:
  4567. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4568. properties:
  4569. identityId:
  4570. description: |-
  4571. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4572. In some instances, `key` is a required field.
  4573. properties:
  4574. key:
  4575. description: |-
  4576. A key in the referenced Secret.
  4577. Some instances of this field may be defaulted, in others it may be required.
  4578. maxLength: 253
  4579. minLength: 1
  4580. pattern: ^[-._a-zA-Z0-9]+$
  4581. type: string
  4582. name:
  4583. description: The name of the Secret resource being referred to.
  4584. maxLength: 253
  4585. minLength: 1
  4586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4587. type: string
  4588. namespace:
  4589. description: |-
  4590. The namespace of the Secret resource being referred to.
  4591. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4592. maxLength: 63
  4593. minLength: 1
  4594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4595. type: string
  4596. type: object
  4597. resource:
  4598. description: |-
  4599. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4600. In some instances, `key` is a required field.
  4601. properties:
  4602. key:
  4603. description: |-
  4604. A key in the referenced Secret.
  4605. Some instances of this field may be defaulted, in others it may be required.
  4606. maxLength: 253
  4607. minLength: 1
  4608. pattern: ^[-._a-zA-Z0-9]+$
  4609. type: string
  4610. name:
  4611. description: The name of the Secret resource being referred to.
  4612. maxLength: 253
  4613. minLength: 1
  4614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4615. type: string
  4616. namespace:
  4617. description: |-
  4618. The namespace of the Secret resource being referred to.
  4619. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4620. maxLength: 63
  4621. minLength: 1
  4622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4623. type: string
  4624. type: object
  4625. required:
  4626. - identityId
  4627. type: object
  4628. gcpIamAuthCredentials:
  4629. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4630. properties:
  4631. identityId:
  4632. description: |-
  4633. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4634. In some instances, `key` is a required field.
  4635. properties:
  4636. key:
  4637. description: |-
  4638. A key in the referenced Secret.
  4639. Some instances of this field may be defaulted, in others it may be required.
  4640. maxLength: 253
  4641. minLength: 1
  4642. pattern: ^[-._a-zA-Z0-9]+$
  4643. type: string
  4644. name:
  4645. description: The name of the Secret resource being referred to.
  4646. maxLength: 253
  4647. minLength: 1
  4648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4649. type: string
  4650. namespace:
  4651. description: |-
  4652. The namespace of the Secret resource being referred to.
  4653. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4654. maxLength: 63
  4655. minLength: 1
  4656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4657. type: string
  4658. type: object
  4659. serviceAccountKeyFilePath:
  4660. description: |-
  4661. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4662. In some instances, `key` is a required field.
  4663. properties:
  4664. key:
  4665. description: |-
  4666. A key in the referenced Secret.
  4667. Some instances of this field may be defaulted, in others it may be required.
  4668. maxLength: 253
  4669. minLength: 1
  4670. pattern: ^[-._a-zA-Z0-9]+$
  4671. type: string
  4672. name:
  4673. description: The name of the Secret resource being referred to.
  4674. maxLength: 253
  4675. minLength: 1
  4676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4677. type: string
  4678. namespace:
  4679. description: |-
  4680. The namespace of the Secret resource being referred to.
  4681. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4682. maxLength: 63
  4683. minLength: 1
  4684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4685. type: string
  4686. type: object
  4687. required:
  4688. - identityId
  4689. - serviceAccountKeyFilePath
  4690. type: object
  4691. gcpIdTokenAuthCredentials:
  4692. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4693. properties:
  4694. identityId:
  4695. description: |-
  4696. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4697. In some instances, `key` is a required field.
  4698. properties:
  4699. key:
  4700. description: |-
  4701. A key in the referenced Secret.
  4702. Some instances of this field may be defaulted, in others it may be required.
  4703. maxLength: 253
  4704. minLength: 1
  4705. pattern: ^[-._a-zA-Z0-9]+$
  4706. type: string
  4707. name:
  4708. description: The name of the Secret resource being referred to.
  4709. maxLength: 253
  4710. minLength: 1
  4711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4712. type: string
  4713. namespace:
  4714. description: |-
  4715. The namespace of the Secret resource being referred to.
  4716. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4717. maxLength: 63
  4718. minLength: 1
  4719. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4720. type: string
  4721. type: object
  4722. required:
  4723. - identityId
  4724. type: object
  4725. jwtAuthCredentials:
  4726. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4727. properties:
  4728. identityId:
  4729. description: |-
  4730. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4731. In some instances, `key` is a required field.
  4732. properties:
  4733. key:
  4734. description: |-
  4735. A key in the referenced Secret.
  4736. Some instances of this field may be defaulted, in others it may be required.
  4737. maxLength: 253
  4738. minLength: 1
  4739. pattern: ^[-._a-zA-Z0-9]+$
  4740. type: string
  4741. name:
  4742. description: The name of the Secret resource being referred to.
  4743. maxLength: 253
  4744. minLength: 1
  4745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4746. type: string
  4747. namespace:
  4748. description: |-
  4749. The namespace of the Secret resource being referred to.
  4750. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4751. maxLength: 63
  4752. minLength: 1
  4753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4754. type: string
  4755. type: object
  4756. jwt:
  4757. description: |-
  4758. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4759. In some instances, `key` is a required field.
  4760. properties:
  4761. key:
  4762. description: |-
  4763. A key in the referenced Secret.
  4764. Some instances of this field may be defaulted, in others it may be required.
  4765. maxLength: 253
  4766. minLength: 1
  4767. pattern: ^[-._a-zA-Z0-9]+$
  4768. type: string
  4769. name:
  4770. description: The name of the Secret resource being referred to.
  4771. maxLength: 253
  4772. minLength: 1
  4773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4774. type: string
  4775. namespace:
  4776. description: |-
  4777. The namespace of the Secret resource being referred to.
  4778. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4779. maxLength: 63
  4780. minLength: 1
  4781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4782. type: string
  4783. type: object
  4784. required:
  4785. - identityId
  4786. - jwt
  4787. type: object
  4788. kubernetesAuthCredentials:
  4789. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  4790. properties:
  4791. identityId:
  4792. description: |-
  4793. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4794. In some instances, `key` is a required field.
  4795. properties:
  4796. key:
  4797. description: |-
  4798. A key in the referenced Secret.
  4799. Some instances of this field may be defaulted, in others it may be required.
  4800. maxLength: 253
  4801. minLength: 1
  4802. pattern: ^[-._a-zA-Z0-9]+$
  4803. type: string
  4804. name:
  4805. description: The name of the Secret resource being referred to.
  4806. maxLength: 253
  4807. minLength: 1
  4808. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4809. type: string
  4810. namespace:
  4811. description: |-
  4812. The namespace of the Secret resource being referred to.
  4813. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4814. maxLength: 63
  4815. minLength: 1
  4816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4817. type: string
  4818. type: object
  4819. serviceAccountTokenPath:
  4820. description: |-
  4821. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4822. In some instances, `key` is a required field.
  4823. properties:
  4824. key:
  4825. description: |-
  4826. A key in the referenced Secret.
  4827. Some instances of this field may be defaulted, in others it may be required.
  4828. maxLength: 253
  4829. minLength: 1
  4830. pattern: ^[-._a-zA-Z0-9]+$
  4831. type: string
  4832. name:
  4833. description: The name of the Secret resource being referred to.
  4834. maxLength: 253
  4835. minLength: 1
  4836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4837. type: string
  4838. namespace:
  4839. description: |-
  4840. The namespace of the Secret resource being referred to.
  4841. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4842. maxLength: 63
  4843. minLength: 1
  4844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4845. type: string
  4846. type: object
  4847. required:
  4848. - identityId
  4849. type: object
  4850. ldapAuthCredentials:
  4851. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  4852. properties:
  4853. identityId:
  4854. description: |-
  4855. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4856. In some instances, `key` is a required field.
  4857. properties:
  4858. key:
  4859. description: |-
  4860. A key in the referenced Secret.
  4861. Some instances of this field may be defaulted, in others it may be required.
  4862. maxLength: 253
  4863. minLength: 1
  4864. pattern: ^[-._a-zA-Z0-9]+$
  4865. type: string
  4866. name:
  4867. description: The name of the Secret resource being referred to.
  4868. maxLength: 253
  4869. minLength: 1
  4870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4871. type: string
  4872. namespace:
  4873. description: |-
  4874. The namespace of the Secret resource being referred to.
  4875. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4876. maxLength: 63
  4877. minLength: 1
  4878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4879. type: string
  4880. type: object
  4881. ldapPassword:
  4882. description: |-
  4883. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4884. In some instances, `key` is a required field.
  4885. properties:
  4886. key:
  4887. description: |-
  4888. A key in the referenced Secret.
  4889. Some instances of this field may be defaulted, in others it may be required.
  4890. maxLength: 253
  4891. minLength: 1
  4892. pattern: ^[-._a-zA-Z0-9]+$
  4893. type: string
  4894. name:
  4895. description: The name of the Secret resource being referred to.
  4896. maxLength: 253
  4897. minLength: 1
  4898. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4899. type: string
  4900. namespace:
  4901. description: |-
  4902. The namespace of the Secret resource being referred to.
  4903. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4904. maxLength: 63
  4905. minLength: 1
  4906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4907. type: string
  4908. type: object
  4909. ldapUsername:
  4910. description: |-
  4911. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4912. In some instances, `key` is a required field.
  4913. properties:
  4914. key:
  4915. description: |-
  4916. A key in the referenced Secret.
  4917. Some instances of this field may be defaulted, in others it may be required.
  4918. maxLength: 253
  4919. minLength: 1
  4920. pattern: ^[-._a-zA-Z0-9]+$
  4921. type: string
  4922. name:
  4923. description: The name of the Secret resource being referred to.
  4924. maxLength: 253
  4925. minLength: 1
  4926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4927. type: string
  4928. namespace:
  4929. description: |-
  4930. The namespace of the Secret resource being referred to.
  4931. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4932. maxLength: 63
  4933. minLength: 1
  4934. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4935. type: string
  4936. type: object
  4937. required:
  4938. - identityId
  4939. - ldapPassword
  4940. - ldapUsername
  4941. type: object
  4942. ociAuthCredentials:
  4943. description: OciAuthCredentials represents the credentials for OCI authentication.
  4944. properties:
  4945. fingerprint:
  4946. description: |-
  4947. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4948. In some instances, `key` is a required field.
  4949. properties:
  4950. key:
  4951. description: |-
  4952. A key in the referenced Secret.
  4953. Some instances of this field may be defaulted, in others it may be required.
  4954. maxLength: 253
  4955. minLength: 1
  4956. pattern: ^[-._a-zA-Z0-9]+$
  4957. type: string
  4958. name:
  4959. description: The name of the Secret resource being referred to.
  4960. maxLength: 253
  4961. minLength: 1
  4962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4963. type: string
  4964. namespace:
  4965. description: |-
  4966. The namespace of the Secret resource being referred to.
  4967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4968. maxLength: 63
  4969. minLength: 1
  4970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4971. type: string
  4972. type: object
  4973. identityId:
  4974. description: |-
  4975. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4976. In some instances, `key` is a required field.
  4977. properties:
  4978. key:
  4979. description: |-
  4980. A key in the referenced Secret.
  4981. Some instances of this field may be defaulted, in others it may be required.
  4982. maxLength: 253
  4983. minLength: 1
  4984. pattern: ^[-._a-zA-Z0-9]+$
  4985. type: string
  4986. name:
  4987. description: The name of the Secret resource being referred to.
  4988. maxLength: 253
  4989. minLength: 1
  4990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4991. type: string
  4992. namespace:
  4993. description: |-
  4994. The namespace of the Secret resource being referred to.
  4995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4996. maxLength: 63
  4997. minLength: 1
  4998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4999. type: string
  5000. type: object
  5001. privateKey:
  5002. description: |-
  5003. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5004. In some instances, `key` is a required field.
  5005. properties:
  5006. key:
  5007. description: |-
  5008. A key in the referenced Secret.
  5009. Some instances of this field may be defaulted, in others it may be required.
  5010. maxLength: 253
  5011. minLength: 1
  5012. pattern: ^[-._a-zA-Z0-9]+$
  5013. type: string
  5014. name:
  5015. description: The name of the Secret resource being referred to.
  5016. maxLength: 253
  5017. minLength: 1
  5018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5019. type: string
  5020. namespace:
  5021. description: |-
  5022. The namespace of the Secret resource being referred to.
  5023. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5024. maxLength: 63
  5025. minLength: 1
  5026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5027. type: string
  5028. type: object
  5029. privateKeyPassphrase:
  5030. description: |-
  5031. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5032. In some instances, `key` is a required field.
  5033. properties:
  5034. key:
  5035. description: |-
  5036. A key in the referenced Secret.
  5037. Some instances of this field may be defaulted, in others it may be required.
  5038. maxLength: 253
  5039. minLength: 1
  5040. pattern: ^[-._a-zA-Z0-9]+$
  5041. type: string
  5042. name:
  5043. description: The name of the Secret resource being referred to.
  5044. maxLength: 253
  5045. minLength: 1
  5046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5047. type: string
  5048. namespace:
  5049. description: |-
  5050. The namespace of the Secret resource being referred to.
  5051. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5052. maxLength: 63
  5053. minLength: 1
  5054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5055. type: string
  5056. type: object
  5057. region:
  5058. description: |-
  5059. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5060. In some instances, `key` is a required field.
  5061. properties:
  5062. key:
  5063. description: |-
  5064. A key in the referenced Secret.
  5065. Some instances of this field may be defaulted, in others it may be required.
  5066. maxLength: 253
  5067. minLength: 1
  5068. pattern: ^[-._a-zA-Z0-9]+$
  5069. type: string
  5070. name:
  5071. description: The name of the Secret resource being referred to.
  5072. maxLength: 253
  5073. minLength: 1
  5074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5075. type: string
  5076. namespace:
  5077. description: |-
  5078. The namespace of the Secret resource being referred to.
  5079. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5080. maxLength: 63
  5081. minLength: 1
  5082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5083. type: string
  5084. type: object
  5085. tenancyId:
  5086. description: |-
  5087. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5088. In some instances, `key` is a required field.
  5089. properties:
  5090. key:
  5091. description: |-
  5092. A key in the referenced Secret.
  5093. Some instances of this field may be defaulted, in others it may be required.
  5094. maxLength: 253
  5095. minLength: 1
  5096. pattern: ^[-._a-zA-Z0-9]+$
  5097. type: string
  5098. name:
  5099. description: The name of the Secret resource being referred to.
  5100. maxLength: 253
  5101. minLength: 1
  5102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5103. type: string
  5104. namespace:
  5105. description: |-
  5106. The namespace of the Secret resource being referred to.
  5107. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5108. maxLength: 63
  5109. minLength: 1
  5110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5111. type: string
  5112. type: object
  5113. userId:
  5114. description: |-
  5115. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5116. In some instances, `key` is a required field.
  5117. properties:
  5118. key:
  5119. description: |-
  5120. A key in the referenced Secret.
  5121. Some instances of this field may be defaulted, in others it may be required.
  5122. maxLength: 253
  5123. minLength: 1
  5124. pattern: ^[-._a-zA-Z0-9]+$
  5125. type: string
  5126. name:
  5127. description: The name of the Secret resource being referred to.
  5128. maxLength: 253
  5129. minLength: 1
  5130. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5131. type: string
  5132. namespace:
  5133. description: |-
  5134. The namespace of the Secret resource being referred to.
  5135. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5136. maxLength: 63
  5137. minLength: 1
  5138. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5139. type: string
  5140. type: object
  5141. required:
  5142. - fingerprint
  5143. - identityId
  5144. - privateKey
  5145. - region
  5146. - tenancyId
  5147. - userId
  5148. type: object
  5149. tokenAuthCredentials:
  5150. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5151. properties:
  5152. accessToken:
  5153. description: |-
  5154. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5155. In some instances, `key` is a required field.
  5156. properties:
  5157. key:
  5158. description: |-
  5159. A key in the referenced Secret.
  5160. Some instances of this field may be defaulted, in others it may be required.
  5161. maxLength: 253
  5162. minLength: 1
  5163. pattern: ^[-._a-zA-Z0-9]+$
  5164. type: string
  5165. name:
  5166. description: The name of the Secret resource being referred to.
  5167. maxLength: 253
  5168. minLength: 1
  5169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5170. type: string
  5171. namespace:
  5172. description: |-
  5173. The namespace of the Secret resource being referred to.
  5174. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5175. maxLength: 63
  5176. minLength: 1
  5177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5178. type: string
  5179. type: object
  5180. required:
  5181. - accessToken
  5182. type: object
  5183. universalAuthCredentials:
  5184. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5185. properties:
  5186. clientId:
  5187. description: |-
  5188. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5189. In some instances, `key` is a required field.
  5190. properties:
  5191. key:
  5192. description: |-
  5193. A key in the referenced Secret.
  5194. Some instances of this field may be defaulted, in others it may be required.
  5195. maxLength: 253
  5196. minLength: 1
  5197. pattern: ^[-._a-zA-Z0-9]+$
  5198. type: string
  5199. name:
  5200. description: The name of the Secret resource being referred to.
  5201. maxLength: 253
  5202. minLength: 1
  5203. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5204. type: string
  5205. namespace:
  5206. description: |-
  5207. The namespace of the Secret resource being referred to.
  5208. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5209. maxLength: 63
  5210. minLength: 1
  5211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5212. type: string
  5213. type: object
  5214. clientSecret:
  5215. description: |-
  5216. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5217. In some instances, `key` is a required field.
  5218. properties:
  5219. key:
  5220. description: |-
  5221. A key in the referenced Secret.
  5222. Some instances of this field may be defaulted, in others it may be required.
  5223. maxLength: 253
  5224. minLength: 1
  5225. pattern: ^[-._a-zA-Z0-9]+$
  5226. type: string
  5227. name:
  5228. description: The name of the Secret resource being referred to.
  5229. maxLength: 253
  5230. minLength: 1
  5231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5232. type: string
  5233. namespace:
  5234. description: |-
  5235. The namespace of the Secret resource being referred to.
  5236. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5237. maxLength: 63
  5238. minLength: 1
  5239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5240. type: string
  5241. type: object
  5242. required:
  5243. - clientId
  5244. - clientSecret
  5245. type: object
  5246. type: object
  5247. caBundle:
  5248. description: |-
  5249. CABundle is a PEM-encoded CA certificate bundle used to validate
  5250. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5251. format: byte
  5252. type: string
  5253. caProvider:
  5254. description: |-
  5255. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5256. The certificate is used to validate the Infisical server's TLS certificate.
  5257. Mutually exclusive with CABundle.
  5258. properties:
  5259. key:
  5260. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5261. maxLength: 253
  5262. minLength: 1
  5263. pattern: ^[-._a-zA-Z0-9]+$
  5264. type: string
  5265. name:
  5266. description: The name of the object located at the provider type.
  5267. maxLength: 253
  5268. minLength: 1
  5269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5270. type: string
  5271. namespace:
  5272. description: |-
  5273. The namespace the Provider type is in.
  5274. Can only be defined when used in a ClusterSecretStore.
  5275. maxLength: 63
  5276. minLength: 1
  5277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5278. type: string
  5279. type:
  5280. description: The type of provider to use such as "Secret", or "ConfigMap".
  5281. enum:
  5282. - Secret
  5283. - ConfigMap
  5284. type: string
  5285. required:
  5286. - name
  5287. - type
  5288. type: object
  5289. hostAPI:
  5290. default: https://app.infisical.com/api
  5291. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5292. type: string
  5293. secretsScope:
  5294. description: SecretsScope defines the scope of the secrets within the workspace
  5295. properties:
  5296. environmentSlug:
  5297. description: EnvironmentSlug is the required slug identifier for the environment.
  5298. type: string
  5299. expandSecretReferences:
  5300. default: true
  5301. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5302. type: boolean
  5303. projectSlug:
  5304. description: ProjectSlug is the required slug identifier for the project.
  5305. type: string
  5306. recursive:
  5307. default: false
  5308. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5309. type: boolean
  5310. secretsPath:
  5311. default: /
  5312. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5313. type: string
  5314. required:
  5315. - environmentSlug
  5316. - projectSlug
  5317. type: object
  5318. required:
  5319. - auth
  5320. - secretsScope
  5321. type: object
  5322. keepersecurity:
  5323. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5324. properties:
  5325. authRef:
  5326. description: |-
  5327. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5328. In some instances, `key` is a required field.
  5329. properties:
  5330. key:
  5331. description: |-
  5332. A key in the referenced Secret.
  5333. Some instances of this field may be defaulted, in others it may be required.
  5334. maxLength: 253
  5335. minLength: 1
  5336. pattern: ^[-._a-zA-Z0-9]+$
  5337. type: string
  5338. name:
  5339. description: The name of the Secret resource being referred to.
  5340. maxLength: 253
  5341. minLength: 1
  5342. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5343. type: string
  5344. namespace:
  5345. description: |-
  5346. The namespace of the Secret resource being referred to.
  5347. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5348. maxLength: 63
  5349. minLength: 1
  5350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5351. type: string
  5352. type: object
  5353. folderID:
  5354. type: string
  5355. required:
  5356. - authRef
  5357. - folderID
  5358. type: object
  5359. kubernetes:
  5360. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5361. properties:
  5362. auth:
  5363. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5364. maxProperties: 1
  5365. minProperties: 1
  5366. properties:
  5367. cert:
  5368. description: has both clientCert and clientKey as secretKeySelector
  5369. properties:
  5370. clientCert:
  5371. description: |-
  5372. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5373. In some instances, `key` is a required field.
  5374. properties:
  5375. key:
  5376. description: |-
  5377. A key in the referenced Secret.
  5378. Some instances of this field may be defaulted, in others it may be required.
  5379. maxLength: 253
  5380. minLength: 1
  5381. pattern: ^[-._a-zA-Z0-9]+$
  5382. type: string
  5383. name:
  5384. description: The name of the Secret resource being referred to.
  5385. maxLength: 253
  5386. minLength: 1
  5387. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5388. type: string
  5389. namespace:
  5390. description: |-
  5391. The namespace of the Secret resource being referred to.
  5392. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5393. maxLength: 63
  5394. minLength: 1
  5395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5396. type: string
  5397. type: object
  5398. clientKey:
  5399. description: |-
  5400. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5401. In some instances, `key` is a required field.
  5402. properties:
  5403. key:
  5404. description: |-
  5405. A key in the referenced Secret.
  5406. Some instances of this field may be defaulted, in others it may be required.
  5407. maxLength: 253
  5408. minLength: 1
  5409. pattern: ^[-._a-zA-Z0-9]+$
  5410. type: string
  5411. name:
  5412. description: The name of the Secret resource being referred to.
  5413. maxLength: 253
  5414. minLength: 1
  5415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5416. type: string
  5417. namespace:
  5418. description: |-
  5419. The namespace of the Secret resource being referred to.
  5420. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5421. maxLength: 63
  5422. minLength: 1
  5423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5424. type: string
  5425. type: object
  5426. type: object
  5427. serviceAccount:
  5428. description: points to a service account that should be used for authentication
  5429. properties:
  5430. audiences:
  5431. description: |-
  5432. Audience specifies the `aud` claim for the service account token
  5433. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5434. then this audiences will be appended to the list
  5435. items:
  5436. type: string
  5437. type: array
  5438. name:
  5439. description: The name of the ServiceAccount resource being referred to.
  5440. maxLength: 253
  5441. minLength: 1
  5442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5443. type: string
  5444. namespace:
  5445. description: |-
  5446. Namespace of the resource being referred to.
  5447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5448. maxLength: 63
  5449. minLength: 1
  5450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5451. type: string
  5452. required:
  5453. - name
  5454. type: object
  5455. token:
  5456. description: use static token to authenticate with
  5457. properties:
  5458. bearerToken:
  5459. description: |-
  5460. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5461. In some instances, `key` is a required field.
  5462. properties:
  5463. key:
  5464. description: |-
  5465. A key in the referenced Secret.
  5466. Some instances of this field may be defaulted, in others it may be required.
  5467. maxLength: 253
  5468. minLength: 1
  5469. pattern: ^[-._a-zA-Z0-9]+$
  5470. type: string
  5471. name:
  5472. description: The name of the Secret resource being referred to.
  5473. maxLength: 253
  5474. minLength: 1
  5475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5476. type: string
  5477. namespace:
  5478. description: |-
  5479. The namespace of the Secret resource being referred to.
  5480. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5481. maxLength: 63
  5482. minLength: 1
  5483. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5484. type: string
  5485. type: object
  5486. type: object
  5487. type: object
  5488. authRef:
  5489. description: A reference to a secret that contains the auth information.
  5490. properties:
  5491. key:
  5492. description: |-
  5493. A key in the referenced Secret.
  5494. Some instances of this field may be defaulted, in others it may be required.
  5495. maxLength: 253
  5496. minLength: 1
  5497. pattern: ^[-._a-zA-Z0-9]+$
  5498. type: string
  5499. name:
  5500. description: The name of the Secret resource being referred to.
  5501. maxLength: 253
  5502. minLength: 1
  5503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5504. type: string
  5505. namespace:
  5506. description: |-
  5507. The namespace of the Secret resource being referred to.
  5508. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5509. maxLength: 63
  5510. minLength: 1
  5511. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5512. type: string
  5513. type: object
  5514. remoteNamespace:
  5515. default: default
  5516. description: Remote namespace to fetch the secrets from
  5517. maxLength: 63
  5518. minLength: 1
  5519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5520. type: string
  5521. server:
  5522. description: configures the Kubernetes server Address.
  5523. properties:
  5524. caBundle:
  5525. description: CABundle is a base64-encoded CA certificate
  5526. format: byte
  5527. type: string
  5528. caProvider:
  5529. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5530. properties:
  5531. key:
  5532. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5533. maxLength: 253
  5534. minLength: 1
  5535. pattern: ^[-._a-zA-Z0-9]+$
  5536. type: string
  5537. name:
  5538. description: The name of the object located at the provider type.
  5539. maxLength: 253
  5540. minLength: 1
  5541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5542. type: string
  5543. namespace:
  5544. description: |-
  5545. The namespace the Provider type is in.
  5546. Can only be defined when used in a ClusterSecretStore.
  5547. maxLength: 63
  5548. minLength: 1
  5549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5550. type: string
  5551. type:
  5552. description: The type of provider to use such as "Secret", or "ConfigMap".
  5553. enum:
  5554. - Secret
  5555. - ConfigMap
  5556. type: string
  5557. required:
  5558. - name
  5559. - type
  5560. type: object
  5561. url:
  5562. default: kubernetes.default
  5563. description: configures the Kubernetes server Address.
  5564. type: string
  5565. type: object
  5566. type: object
  5567. nebiusmysterybox:
  5568. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5569. properties:
  5570. apiDomain:
  5571. description: NebiusMysterybox API endpoint
  5572. type: string
  5573. auth:
  5574. description: Auth defines parameters to authenticate in MysteryBox
  5575. properties:
  5576. serviceAccountCredsSecretRef:
  5577. description: |-
  5578. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5579. document with service account credentials used to get an IAM token.
  5580. Expected JSON structure:
  5581. {
  5582. "subject-credentials": {
  5583. "alg": "RS256",
  5584. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5585. "kid": "<public-key-id>",
  5586. "iss": "<issuer-service-account-id>",
  5587. "sub": "<subject-service-account-id>"
  5588. }
  5589. }
  5590. properties:
  5591. key:
  5592. description: |-
  5593. A key in the referenced Secret.
  5594. Some instances of this field may be defaulted, in others it may be required.
  5595. maxLength: 253
  5596. minLength: 1
  5597. pattern: ^[-._a-zA-Z0-9]+$
  5598. type: string
  5599. name:
  5600. description: The name of the Secret resource being referred to.
  5601. maxLength: 253
  5602. minLength: 1
  5603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5604. type: string
  5605. namespace:
  5606. description: |-
  5607. The namespace of the Secret resource being referred to.
  5608. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5609. maxLength: 63
  5610. minLength: 1
  5611. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5612. type: string
  5613. type: object
  5614. tokenSecretRef:
  5615. description: Token authenticates with Nebius Mysterybox by presenting a token.
  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. type: object
  5641. x-kubernetes-validations:
  5642. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5643. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5644. caProvider:
  5645. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5646. properties:
  5647. certSecretRef:
  5648. description: |-
  5649. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5650. In some instances, `key` is a required field.
  5651. properties:
  5652. key:
  5653. description: |-
  5654. A key in the referenced Secret.
  5655. Some instances of this field may be defaulted, in others it may be required.
  5656. maxLength: 253
  5657. minLength: 1
  5658. pattern: ^[-._a-zA-Z0-9]+$
  5659. type: string
  5660. name:
  5661. description: The name of the Secret resource being referred to.
  5662. maxLength: 253
  5663. minLength: 1
  5664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5665. type: string
  5666. namespace:
  5667. description: |-
  5668. The namespace of the Secret resource being referred to.
  5669. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5670. maxLength: 63
  5671. minLength: 1
  5672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5673. type: string
  5674. type: object
  5675. type: object
  5676. required:
  5677. - apiDomain
  5678. - auth
  5679. type: object
  5680. ngrok:
  5681. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5682. properties:
  5683. apiUrl:
  5684. default: https://api.ngrok.com
  5685. description: APIURL is the URL of the ngrok API.
  5686. type: string
  5687. auth:
  5688. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5689. maxProperties: 1
  5690. minProperties: 1
  5691. properties:
  5692. apiKey:
  5693. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5694. properties:
  5695. secretRef:
  5696. description: SecretRef is a reference to a secret containing the ngrok API key.
  5697. properties:
  5698. key:
  5699. description: |-
  5700. A key in the referenced Secret.
  5701. Some instances of this field may be defaulted, in others it may be required.
  5702. maxLength: 253
  5703. minLength: 1
  5704. pattern: ^[-._a-zA-Z0-9]+$
  5705. type: string
  5706. name:
  5707. description: The name of the Secret resource being referred to.
  5708. maxLength: 253
  5709. minLength: 1
  5710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5711. type: string
  5712. namespace:
  5713. description: |-
  5714. The namespace of the Secret resource being referred to.
  5715. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5716. maxLength: 63
  5717. minLength: 1
  5718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5719. type: string
  5720. type: object
  5721. type: object
  5722. type: object
  5723. vault:
  5724. description: Vault configures the ngrok vault to sync secrets with.
  5725. properties:
  5726. name:
  5727. description: Name is the name of the ngrok vault to sync secrets with.
  5728. type: string
  5729. required:
  5730. - name
  5731. type: object
  5732. required:
  5733. - auth
  5734. - vault
  5735. type: object
  5736. onboardbase:
  5737. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5738. properties:
  5739. apiHost:
  5740. default: https://public.onboardbase.com/api/v1/
  5741. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5742. type: string
  5743. auth:
  5744. description: Auth configures how the Operator authenticates with the Onboardbase API
  5745. properties:
  5746. apiKeyRef:
  5747. description: |-
  5748. OnboardbaseAPIKey is the APIKey generated by an admin account.
  5749. It is used to recognize and authorize access to a project and environment within onboardbase
  5750. properties:
  5751. key:
  5752. description: |-
  5753. A key in the referenced Secret.
  5754. Some instances of this field may be defaulted, in others it may be required.
  5755. maxLength: 253
  5756. minLength: 1
  5757. pattern: ^[-._a-zA-Z0-9]+$
  5758. type: string
  5759. name:
  5760. description: The name of the Secret resource being referred to.
  5761. maxLength: 253
  5762. minLength: 1
  5763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5764. type: string
  5765. namespace:
  5766. description: |-
  5767. The namespace of the Secret resource being referred to.
  5768. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5769. maxLength: 63
  5770. minLength: 1
  5771. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5772. type: string
  5773. type: object
  5774. passcodeRef:
  5775. description: OnboardbasePasscode is the passcode attached to the API Key
  5776. properties:
  5777. key:
  5778. description: |-
  5779. A key in the referenced Secret.
  5780. Some instances of this field may be defaulted, in others it may be required.
  5781. maxLength: 253
  5782. minLength: 1
  5783. pattern: ^[-._a-zA-Z0-9]+$
  5784. type: string
  5785. name:
  5786. description: The name of the Secret resource being referred to.
  5787. maxLength: 253
  5788. minLength: 1
  5789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5790. type: string
  5791. namespace:
  5792. description: |-
  5793. The namespace of the Secret resource being referred to.
  5794. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5795. maxLength: 63
  5796. minLength: 1
  5797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5798. type: string
  5799. type: object
  5800. required:
  5801. - apiKeyRef
  5802. - passcodeRef
  5803. type: object
  5804. environment:
  5805. default: development
  5806. description: Environment is the name of an environmnent within a project to pull the secrets from
  5807. type: string
  5808. project:
  5809. default: development
  5810. description: Project is an onboardbase project that the secrets should be pulled from
  5811. type: string
  5812. required:
  5813. - apiHost
  5814. - auth
  5815. - environment
  5816. - project
  5817. type: object
  5818. onepassword:
  5819. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  5820. properties:
  5821. auth:
  5822. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  5823. properties:
  5824. secretRef:
  5825. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  5826. properties:
  5827. connectTokenSecretRef:
  5828. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  5829. properties:
  5830. key:
  5831. description: |-
  5832. A key in the referenced Secret.
  5833. Some instances of this field may be defaulted, in others it may be required.
  5834. maxLength: 253
  5835. minLength: 1
  5836. pattern: ^[-._a-zA-Z0-9]+$
  5837. type: string
  5838. name:
  5839. description: The name of the Secret resource being referred to.
  5840. maxLength: 253
  5841. minLength: 1
  5842. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5843. type: string
  5844. namespace:
  5845. description: |-
  5846. The namespace of the Secret resource being referred to.
  5847. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5848. maxLength: 63
  5849. minLength: 1
  5850. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5851. type: string
  5852. type: object
  5853. required:
  5854. - connectTokenSecretRef
  5855. type: object
  5856. required:
  5857. - secretRef
  5858. type: object
  5859. connectHost:
  5860. description: ConnectHost defines the OnePassword Connect Server to connect to
  5861. type: string
  5862. vaults:
  5863. additionalProperties:
  5864. type: integer
  5865. description: Vaults defines which OnePassword vaults to search in which order
  5866. type: object
  5867. required:
  5868. - auth
  5869. - connectHost
  5870. - vaults
  5871. type: object
  5872. onepasswordSDK:
  5873. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  5874. properties:
  5875. auth:
  5876. description: Auth defines the information necessary to authenticate against OnePassword API.
  5877. properties:
  5878. serviceAccountSecretRef:
  5879. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  5880. properties:
  5881. key:
  5882. description: |-
  5883. A key in the referenced Secret.
  5884. Some instances of this field may be defaulted, in others it may be required.
  5885. maxLength: 253
  5886. minLength: 1
  5887. pattern: ^[-._a-zA-Z0-9]+$
  5888. type: string
  5889. name:
  5890. description: The name of the Secret resource being referred to.
  5891. maxLength: 253
  5892. minLength: 1
  5893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5894. type: string
  5895. namespace:
  5896. description: |-
  5897. The namespace of the Secret resource being referred to.
  5898. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5899. maxLength: 63
  5900. minLength: 1
  5901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5902. type: string
  5903. type: object
  5904. required:
  5905. - serviceAccountSecretRef
  5906. type: object
  5907. cache:
  5908. description: |-
  5909. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  5910. When enabled, secrets are cached with the specified TTL.
  5911. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  5912. If omitted, caching is disabled (default).
  5913. cache: {} is a valid option to set.
  5914. properties:
  5915. maxSize:
  5916. default: 100
  5917. description: |-
  5918. MaxSize is the maximum number of secrets to cache.
  5919. When the cache is full, least-recently-used entries are evicted.
  5920. minimum: 1
  5921. type: integer
  5922. ttl:
  5923. default: 5m
  5924. description: |-
  5925. TTL is the time-to-live for cached secrets.
  5926. Format: duration string (e.g., "5m", "1h", "30s")
  5927. type: string
  5928. type: object
  5929. integrationInfo:
  5930. description: |-
  5931. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  5932. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  5933. properties:
  5934. name:
  5935. default: 1Password SDK
  5936. description: Name defaults to "1Password SDK".
  5937. type: string
  5938. version:
  5939. default: v1.0.0
  5940. description: Version defaults to "v1.0.0".
  5941. type: string
  5942. type: object
  5943. vault:
  5944. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  5945. type: string
  5946. required:
  5947. - auth
  5948. - vault
  5949. type: object
  5950. oracle:
  5951. description: Oracle configures this store to sync secrets using Oracle Vault provider
  5952. properties:
  5953. auth:
  5954. description: |-
  5955. Auth configures how secret-manager authenticates with the Oracle Vault.
  5956. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  5957. properties:
  5958. secretRef:
  5959. description: SecretRef to pass through sensitive information.
  5960. properties:
  5961. fingerprint:
  5962. description: Fingerprint is the fingerprint of the API private key.
  5963. properties:
  5964. key:
  5965. description: |-
  5966. A key in the referenced Secret.
  5967. Some instances of this field may be defaulted, in others it may be required.
  5968. maxLength: 253
  5969. minLength: 1
  5970. pattern: ^[-._a-zA-Z0-9]+$
  5971. type: string
  5972. name:
  5973. description: The name of the Secret resource being referred to.
  5974. maxLength: 253
  5975. minLength: 1
  5976. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5977. type: string
  5978. namespace:
  5979. description: |-
  5980. The namespace of the Secret resource being referred to.
  5981. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5982. maxLength: 63
  5983. minLength: 1
  5984. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5985. type: string
  5986. type: object
  5987. privatekey:
  5988. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  5989. properties:
  5990. key:
  5991. description: |-
  5992. A key in the referenced Secret.
  5993. Some instances of this field may be defaulted, in others it may be required.
  5994. maxLength: 253
  5995. minLength: 1
  5996. pattern: ^[-._a-zA-Z0-9]+$
  5997. type: string
  5998. name:
  5999. description: The name of the Secret resource being referred to.
  6000. maxLength: 253
  6001. minLength: 1
  6002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6003. type: string
  6004. namespace:
  6005. description: |-
  6006. The namespace of the Secret resource being referred to.
  6007. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6008. maxLength: 63
  6009. minLength: 1
  6010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6011. type: string
  6012. type: object
  6013. required:
  6014. - fingerprint
  6015. - privatekey
  6016. type: object
  6017. tenancy:
  6018. description: Tenancy is the tenancy OCID where user is located.
  6019. type: string
  6020. user:
  6021. description: User is an access OCID specific to the account.
  6022. type: string
  6023. required:
  6024. - secretRef
  6025. - tenancy
  6026. - user
  6027. type: object
  6028. compartment:
  6029. description: |-
  6030. Compartment is the vault compartment OCID.
  6031. Required for PushSecret
  6032. type: string
  6033. encryptionKey:
  6034. description: |-
  6035. EncryptionKey is the OCID of the encryption key within the vault.
  6036. Required for PushSecret
  6037. type: string
  6038. principalType:
  6039. description: |-
  6040. The type of principal to use for authentication. If left blank, the Auth struct will
  6041. determine the principal type. This optional field must be specified if using
  6042. workload identity.
  6043. enum:
  6044. - ""
  6045. - UserPrincipal
  6046. - InstancePrincipal
  6047. - Workload
  6048. type: string
  6049. region:
  6050. description: Region is the region where vault is located.
  6051. type: string
  6052. serviceAccountRef:
  6053. description: |-
  6054. ServiceAccountRef specified the service account
  6055. that should be used when authenticating with WorkloadIdentity.
  6056. properties:
  6057. audiences:
  6058. description: |-
  6059. Audience specifies the `aud` claim for the service account token
  6060. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6061. then this audiences will be appended to the list
  6062. items:
  6063. type: string
  6064. type: array
  6065. name:
  6066. description: The name of the ServiceAccount resource being referred to.
  6067. maxLength: 253
  6068. minLength: 1
  6069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6070. type: string
  6071. namespace:
  6072. description: |-
  6073. Namespace of the resource being referred to.
  6074. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6075. maxLength: 63
  6076. minLength: 1
  6077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6078. type: string
  6079. required:
  6080. - name
  6081. type: object
  6082. vault:
  6083. description: Vault is the vault's OCID of the specific vault where secret is located.
  6084. type: string
  6085. required:
  6086. - region
  6087. - vault
  6088. type: object
  6089. ovh:
  6090. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6091. properties:
  6092. auth:
  6093. description: Authentication method (mtls or token).
  6094. properties:
  6095. mtls:
  6096. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6097. properties:
  6098. caBundle:
  6099. format: byte
  6100. type: string
  6101. caProvider:
  6102. description: |-
  6103. CAProvider provides a custom certificate authority for accessing the provider's store.
  6104. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6105. properties:
  6106. key:
  6107. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6108. maxLength: 253
  6109. minLength: 1
  6110. pattern: ^[-._a-zA-Z0-9]+$
  6111. type: string
  6112. name:
  6113. description: The name of the object located at the provider type.
  6114. maxLength: 253
  6115. minLength: 1
  6116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6117. type: string
  6118. namespace:
  6119. description: |-
  6120. The namespace the Provider type is in.
  6121. Can only be defined when used in a ClusterSecretStore.
  6122. maxLength: 63
  6123. minLength: 1
  6124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6125. type: string
  6126. type:
  6127. description: The type of provider to use such as "Secret", or "ConfigMap".
  6128. enum:
  6129. - Secret
  6130. - ConfigMap
  6131. type: string
  6132. required:
  6133. - name
  6134. - type
  6135. type: object
  6136. certSecretRef:
  6137. description: |-
  6138. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6139. In some instances, `key` is a required field.
  6140. properties:
  6141. key:
  6142. description: |-
  6143. A key in the referenced Secret.
  6144. Some instances of this field may be defaulted, in others it may be required.
  6145. maxLength: 253
  6146. minLength: 1
  6147. pattern: ^[-._a-zA-Z0-9]+$
  6148. type: string
  6149. name:
  6150. description: The name of the Secret resource being referred to.
  6151. maxLength: 253
  6152. minLength: 1
  6153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6154. type: string
  6155. namespace:
  6156. description: |-
  6157. The namespace of the Secret resource being referred to.
  6158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6159. maxLength: 63
  6160. minLength: 1
  6161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6162. type: string
  6163. type: object
  6164. keySecretRef:
  6165. description: |-
  6166. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6167. In some instances, `key` is a required field.
  6168. properties:
  6169. key:
  6170. description: |-
  6171. A key in the referenced Secret.
  6172. Some instances of this field may be defaulted, in others it may be required.
  6173. maxLength: 253
  6174. minLength: 1
  6175. pattern: ^[-._a-zA-Z0-9]+$
  6176. type: string
  6177. name:
  6178. description: The name of the Secret resource being referred to.
  6179. maxLength: 253
  6180. minLength: 1
  6181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6182. type: string
  6183. namespace:
  6184. description: |-
  6185. The namespace of the Secret resource being referred to.
  6186. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6187. maxLength: 63
  6188. minLength: 1
  6189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6190. type: string
  6191. type: object
  6192. required:
  6193. - certSecretRef
  6194. - keySecretRef
  6195. type: object
  6196. token:
  6197. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6198. properties:
  6199. tokenSecretRef:
  6200. description: |-
  6201. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6202. In some instances, `key` is a required field.
  6203. properties:
  6204. key:
  6205. description: |-
  6206. A key in the referenced Secret.
  6207. Some instances of this field may be defaulted, in others it may be required.
  6208. maxLength: 253
  6209. minLength: 1
  6210. pattern: ^[-._a-zA-Z0-9]+$
  6211. type: string
  6212. name:
  6213. description: The name of the Secret resource being referred to.
  6214. maxLength: 253
  6215. minLength: 1
  6216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6217. type: string
  6218. namespace:
  6219. description: |-
  6220. The namespace of the Secret resource being referred to.
  6221. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6222. maxLength: 63
  6223. minLength: 1
  6224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6225. type: string
  6226. type: object
  6227. required:
  6228. - tokenSecretRef
  6229. type: object
  6230. type: object
  6231. casRequired:
  6232. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6233. type: boolean
  6234. okmsTimeout:
  6235. default: 30
  6236. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6237. format: int32
  6238. minimum: 1
  6239. type: integer
  6240. okmsid:
  6241. description: specifies the OKMS ID.
  6242. type: string
  6243. server:
  6244. description: specifies the OKMS server endpoint.
  6245. type: string
  6246. required:
  6247. - auth
  6248. - okmsid
  6249. - server
  6250. type: object
  6251. passbolt:
  6252. description: |-
  6253. PassboltProvider provides access to Passbolt secrets manager.
  6254. See: https://www.passbolt.com.
  6255. properties:
  6256. auth:
  6257. description: Auth defines the information necessary to authenticate against Passbolt Server
  6258. properties:
  6259. passwordSecretRef:
  6260. description: |-
  6261. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6262. In some instances, `key` is a required field.
  6263. properties:
  6264. key:
  6265. description: |-
  6266. A key in the referenced Secret.
  6267. Some instances of this field may be defaulted, in others it may be required.
  6268. maxLength: 253
  6269. minLength: 1
  6270. pattern: ^[-._a-zA-Z0-9]+$
  6271. type: string
  6272. name:
  6273. description: The name of the Secret resource being referred to.
  6274. maxLength: 253
  6275. minLength: 1
  6276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6277. type: string
  6278. namespace:
  6279. description: |-
  6280. The namespace of the Secret resource being referred to.
  6281. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6282. maxLength: 63
  6283. minLength: 1
  6284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6285. type: string
  6286. type: object
  6287. privateKeySecretRef:
  6288. description: |-
  6289. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6290. In some instances, `key` is a required field.
  6291. properties:
  6292. key:
  6293. description: |-
  6294. A key in the referenced Secret.
  6295. Some instances of this field may be defaulted, in others it may be required.
  6296. maxLength: 253
  6297. minLength: 1
  6298. pattern: ^[-._a-zA-Z0-9]+$
  6299. type: string
  6300. name:
  6301. description: The name of the Secret resource being referred to.
  6302. maxLength: 253
  6303. minLength: 1
  6304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6305. type: string
  6306. namespace:
  6307. description: |-
  6308. The namespace of the Secret resource being referred to.
  6309. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6310. maxLength: 63
  6311. minLength: 1
  6312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6313. type: string
  6314. type: object
  6315. required:
  6316. - passwordSecretRef
  6317. - privateKeySecretRef
  6318. type: object
  6319. host:
  6320. description: Host defines the Passbolt Server to connect to
  6321. type: string
  6322. required:
  6323. - auth
  6324. - host
  6325. type: object
  6326. passworddepot:
  6327. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6328. properties:
  6329. auth:
  6330. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6331. properties:
  6332. secretRef:
  6333. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6334. properties:
  6335. credentials:
  6336. description: Username / Password is used for authentication.
  6337. properties:
  6338. key:
  6339. description: |-
  6340. A key in the referenced Secret.
  6341. Some instances of this field may be defaulted, in others it may be required.
  6342. maxLength: 253
  6343. minLength: 1
  6344. pattern: ^[-._a-zA-Z0-9]+$
  6345. type: string
  6346. name:
  6347. description: The name of the Secret resource being referred to.
  6348. maxLength: 253
  6349. minLength: 1
  6350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6351. type: string
  6352. namespace:
  6353. description: |-
  6354. The namespace of the Secret resource being referred to.
  6355. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6356. maxLength: 63
  6357. minLength: 1
  6358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6359. type: string
  6360. type: object
  6361. type: object
  6362. required:
  6363. - secretRef
  6364. type: object
  6365. database:
  6366. description: Database to use as source
  6367. type: string
  6368. host:
  6369. description: URL configures the Password Depot instance URL.
  6370. type: string
  6371. required:
  6372. - auth
  6373. - database
  6374. - host
  6375. type: object
  6376. previder:
  6377. description: Previder configures this store to sync secrets using the Previder provider
  6378. properties:
  6379. auth:
  6380. description: PreviderAuth contains a secretRef for credentials.
  6381. properties:
  6382. secretRef:
  6383. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6384. properties:
  6385. accessToken:
  6386. description: The AccessToken is used for authentication
  6387. properties:
  6388. key:
  6389. description: |-
  6390. A key in the referenced Secret.
  6391. Some instances of this field may be defaulted, in others it may be required.
  6392. maxLength: 253
  6393. minLength: 1
  6394. pattern: ^[-._a-zA-Z0-9]+$
  6395. type: string
  6396. name:
  6397. description: The name of the Secret resource being referred to.
  6398. maxLength: 253
  6399. minLength: 1
  6400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6401. type: string
  6402. namespace:
  6403. description: |-
  6404. The namespace of the Secret resource being referred to.
  6405. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6406. maxLength: 63
  6407. minLength: 1
  6408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6409. type: string
  6410. type: object
  6411. required:
  6412. - accessToken
  6413. type: object
  6414. type: object
  6415. baseUri:
  6416. type: string
  6417. required:
  6418. - auth
  6419. type: object
  6420. pulumi:
  6421. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6422. properties:
  6423. accessToken:
  6424. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6425. properties:
  6426. secretRef:
  6427. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6428. properties:
  6429. key:
  6430. description: |-
  6431. A key in the referenced Secret.
  6432. Some instances of this field may be defaulted, in others it may be required.
  6433. maxLength: 253
  6434. minLength: 1
  6435. pattern: ^[-._a-zA-Z0-9]+$
  6436. type: string
  6437. name:
  6438. description: The name of the Secret resource being referred to.
  6439. maxLength: 253
  6440. minLength: 1
  6441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6442. type: string
  6443. namespace:
  6444. description: |-
  6445. The namespace of the Secret resource being referred to.
  6446. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6447. maxLength: 63
  6448. minLength: 1
  6449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6450. type: string
  6451. type: object
  6452. type: object
  6453. apiUrl:
  6454. default: https://api.pulumi.com/api/esc
  6455. description: APIURL is the URL of the Pulumi API.
  6456. type: string
  6457. environment:
  6458. description: |-
  6459. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  6460. dynamically retrieved values from supported providers including all major clouds,
  6461. and other Pulumi ESC environments.
  6462. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  6463. type: string
  6464. organization:
  6465. description: |-
  6466. Organization are a space to collaborate on shared projects and stacks.
  6467. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  6468. type: string
  6469. project:
  6470. description: Project is the name of the Pulumi ESC project the environment belongs to.
  6471. type: string
  6472. required:
  6473. - accessToken
  6474. - environment
  6475. - organization
  6476. - project
  6477. type: object
  6478. scaleway:
  6479. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  6480. properties:
  6481. accessKey:
  6482. description: AccessKey is the non-secret part of the api key.
  6483. properties:
  6484. secretRef:
  6485. description: SecretRef references a key in a secret that will be used as value.
  6486. properties:
  6487. key:
  6488. description: |-
  6489. A key in the referenced Secret.
  6490. Some instances of this field may be defaulted, in others it may be required.
  6491. maxLength: 253
  6492. minLength: 1
  6493. pattern: ^[-._a-zA-Z0-9]+$
  6494. type: string
  6495. name:
  6496. description: The name of the Secret resource being referred to.
  6497. maxLength: 253
  6498. minLength: 1
  6499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6500. type: string
  6501. namespace:
  6502. description: |-
  6503. The namespace of the Secret resource being referred to.
  6504. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6505. maxLength: 63
  6506. minLength: 1
  6507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6508. type: string
  6509. type: object
  6510. value:
  6511. description: Value can be specified directly to set a value without using a secret.
  6512. type: string
  6513. type: object
  6514. apiUrl:
  6515. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  6516. type: string
  6517. projectId:
  6518. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  6519. type: string
  6520. region:
  6521. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  6522. type: string
  6523. secretKey:
  6524. description: SecretKey is the non-secret part of the api key.
  6525. properties:
  6526. secretRef:
  6527. description: SecretRef references a key in a secret that will be used as value.
  6528. properties:
  6529. key:
  6530. description: |-
  6531. A key in the referenced Secret.
  6532. Some instances of this field may be defaulted, in others it may be required.
  6533. maxLength: 253
  6534. minLength: 1
  6535. pattern: ^[-._a-zA-Z0-9]+$
  6536. type: string
  6537. name:
  6538. description: The name of the Secret resource being referred to.
  6539. maxLength: 253
  6540. minLength: 1
  6541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6542. type: string
  6543. namespace:
  6544. description: |-
  6545. The namespace of the Secret resource being referred to.
  6546. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6547. maxLength: 63
  6548. minLength: 1
  6549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6550. type: string
  6551. type: object
  6552. value:
  6553. description: Value can be specified directly to set a value without using a secret.
  6554. type: string
  6555. type: object
  6556. required:
  6557. - accessKey
  6558. - projectId
  6559. - region
  6560. - secretKey
  6561. type: object
  6562. secretserver:
  6563. description: |-
  6564. SecretServer configures this store to sync secrets using SecretServer provider
  6565. https://docs.delinea.com/online-help/secret-server/start.htm
  6566. properties:
  6567. caBundle:
  6568. description: |-
  6569. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  6570. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  6571. are used to validate the TLS connection.
  6572. format: byte
  6573. type: string
  6574. caProvider:
  6575. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  6576. properties:
  6577. key:
  6578. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6579. maxLength: 253
  6580. minLength: 1
  6581. pattern: ^[-._a-zA-Z0-9]+$
  6582. type: string
  6583. name:
  6584. description: The name of the object located at the provider type.
  6585. maxLength: 253
  6586. minLength: 1
  6587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6588. type: string
  6589. namespace:
  6590. description: |-
  6591. The namespace the Provider type is in.
  6592. Can only be defined when used in a ClusterSecretStore.
  6593. maxLength: 63
  6594. minLength: 1
  6595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6596. type: string
  6597. type:
  6598. description: The type of provider to use such as "Secret", or "ConfigMap".
  6599. enum:
  6600. - Secret
  6601. - ConfigMap
  6602. type: string
  6603. required:
  6604. - name
  6605. - type
  6606. type: object
  6607. domain:
  6608. description: Domain is the secret server domain.
  6609. type: string
  6610. password:
  6611. description: Password is the secret server account password.
  6612. properties:
  6613. secretRef:
  6614. description: SecretRef references a key in a secret that will be used as value.
  6615. properties:
  6616. key:
  6617. description: |-
  6618. A key in the referenced Secret.
  6619. Some instances of this field may be defaulted, in others it may be required.
  6620. maxLength: 253
  6621. minLength: 1
  6622. pattern: ^[-._a-zA-Z0-9]+$
  6623. type: string
  6624. name:
  6625. description: The name of the Secret resource being referred to.
  6626. maxLength: 253
  6627. minLength: 1
  6628. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6629. type: string
  6630. namespace:
  6631. description: |-
  6632. The namespace of the Secret resource being referred to.
  6633. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6634. maxLength: 63
  6635. minLength: 1
  6636. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6637. type: string
  6638. type: object
  6639. value:
  6640. description: Value can be specified directly to set a value without using a secret.
  6641. type: string
  6642. type: object
  6643. serverURL:
  6644. description: |-
  6645. ServerURL
  6646. URL to your secret server installation
  6647. type: string
  6648. username:
  6649. description: Username is the secret server account username.
  6650. properties:
  6651. secretRef:
  6652. description: SecretRef references a key in a secret that will be used as value.
  6653. properties:
  6654. key:
  6655. description: |-
  6656. A key in the referenced Secret.
  6657. Some instances of this field may be defaulted, in others it may be required.
  6658. maxLength: 253
  6659. minLength: 1
  6660. pattern: ^[-._a-zA-Z0-9]+$
  6661. type: string
  6662. name:
  6663. description: The name of the Secret resource being referred to.
  6664. maxLength: 253
  6665. minLength: 1
  6666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6667. type: string
  6668. namespace:
  6669. description: |-
  6670. The namespace of the Secret resource being referred to.
  6671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6672. maxLength: 63
  6673. minLength: 1
  6674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6675. type: string
  6676. type: object
  6677. value:
  6678. description: Value can be specified directly to set a value without using a secret.
  6679. type: string
  6680. type: object
  6681. required:
  6682. - password
  6683. - serverURL
  6684. - username
  6685. type: object
  6686. senhasegura:
  6687. description: Senhasegura configures this store to sync secrets using senhasegura provider
  6688. properties:
  6689. auth:
  6690. description: Auth defines parameters to authenticate in senhasegura
  6691. properties:
  6692. clientId:
  6693. type: string
  6694. clientSecretSecretRef:
  6695. description: |-
  6696. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6697. In some instances, `key` is a required field.
  6698. properties:
  6699. key:
  6700. description: |-
  6701. A key in the referenced Secret.
  6702. Some instances of this field may be defaulted, in others it may be required.
  6703. maxLength: 253
  6704. minLength: 1
  6705. pattern: ^[-._a-zA-Z0-9]+$
  6706. type: string
  6707. name:
  6708. description: The name of the Secret resource being referred to.
  6709. maxLength: 253
  6710. minLength: 1
  6711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6712. type: string
  6713. namespace:
  6714. description: |-
  6715. The namespace of the Secret resource being referred to.
  6716. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6717. maxLength: 63
  6718. minLength: 1
  6719. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6720. type: string
  6721. type: object
  6722. required:
  6723. - clientId
  6724. - clientSecretSecretRef
  6725. type: object
  6726. ignoreSslCertificate:
  6727. default: false
  6728. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  6729. type: boolean
  6730. module:
  6731. description: Module defines which senhasegura module should be used to get secrets
  6732. type: string
  6733. url:
  6734. description: URL of senhasegura
  6735. type: string
  6736. required:
  6737. - auth
  6738. - module
  6739. - url
  6740. type: object
  6741. vault:
  6742. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  6743. properties:
  6744. auth:
  6745. description: Auth configures how secret-manager authenticates with the Vault server.
  6746. properties:
  6747. appRole:
  6748. description: |-
  6749. AppRole authenticates with Vault using the App Role auth mechanism,
  6750. with the role and secret stored in a Kubernetes Secret resource.
  6751. properties:
  6752. path:
  6753. default: approle
  6754. description: |-
  6755. Path where the App Role authentication backend is mounted
  6756. in Vault, e.g: "approle"
  6757. type: string
  6758. roleId:
  6759. description: |-
  6760. RoleID configured in the App Role authentication backend when setting
  6761. up the authentication backend in Vault.
  6762. type: string
  6763. roleRef:
  6764. description: |-
  6765. Reference to a key in a Secret that contains the App Role ID used
  6766. to authenticate with Vault.
  6767. The `key` field must be specified and denotes which entry within the Secret
  6768. resource is used as the app role id.
  6769. properties:
  6770. key:
  6771. description: |-
  6772. A key in the referenced Secret.
  6773. Some instances of this field may be defaulted, in others it may be required.
  6774. maxLength: 253
  6775. minLength: 1
  6776. pattern: ^[-._a-zA-Z0-9]+$
  6777. type: string
  6778. name:
  6779. description: The name of the Secret resource being referred to.
  6780. maxLength: 253
  6781. minLength: 1
  6782. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6783. type: string
  6784. namespace:
  6785. description: |-
  6786. The namespace of the Secret resource being referred to.
  6787. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6788. maxLength: 63
  6789. minLength: 1
  6790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6791. type: string
  6792. type: object
  6793. secretRef:
  6794. description: |-
  6795. Reference to a key in a Secret that contains the App Role secret used
  6796. to authenticate with Vault.
  6797. The `key` field must be specified and denotes which entry within the Secret
  6798. resource is used as the app role secret.
  6799. properties:
  6800. key:
  6801. description: |-
  6802. A key in the referenced Secret.
  6803. Some instances of this field may be defaulted, in others it may be required.
  6804. maxLength: 253
  6805. minLength: 1
  6806. pattern: ^[-._a-zA-Z0-9]+$
  6807. type: string
  6808. name:
  6809. description: The name of the Secret resource being referred to.
  6810. maxLength: 253
  6811. minLength: 1
  6812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6813. type: string
  6814. namespace:
  6815. description: |-
  6816. The namespace of the Secret resource being referred to.
  6817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6818. maxLength: 63
  6819. minLength: 1
  6820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6821. type: string
  6822. type: object
  6823. required:
  6824. - path
  6825. - secretRef
  6826. type: object
  6827. cert:
  6828. description: |-
  6829. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  6830. Cert authentication method
  6831. properties:
  6832. clientCert:
  6833. description: |-
  6834. ClientCert is a certificate to authenticate using the Cert Vault
  6835. authentication method
  6836. properties:
  6837. key:
  6838. description: |-
  6839. A key in the referenced Secret.
  6840. Some instances of this field may be defaulted, in others it may be required.
  6841. maxLength: 253
  6842. minLength: 1
  6843. pattern: ^[-._a-zA-Z0-9]+$
  6844. type: string
  6845. name:
  6846. description: The name of the Secret resource being referred to.
  6847. maxLength: 253
  6848. minLength: 1
  6849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6850. type: string
  6851. namespace:
  6852. description: |-
  6853. The namespace of the Secret resource being referred to.
  6854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6855. maxLength: 63
  6856. minLength: 1
  6857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6858. type: string
  6859. type: object
  6860. path:
  6861. default: cert
  6862. description: |-
  6863. Path where the Certificate authentication backend is mounted
  6864. in Vault, e.g: "cert"
  6865. type: string
  6866. secretRef:
  6867. description: |-
  6868. SecretRef to a key in a Secret resource containing client private key to
  6869. authenticate with Vault using the Cert authentication method
  6870. properties:
  6871. key:
  6872. description: |-
  6873. A key in the referenced Secret.
  6874. Some instances of this field may be defaulted, in others it may be required.
  6875. maxLength: 253
  6876. minLength: 1
  6877. pattern: ^[-._a-zA-Z0-9]+$
  6878. type: string
  6879. name:
  6880. description: The name of the Secret resource being referred to.
  6881. maxLength: 253
  6882. minLength: 1
  6883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6884. type: string
  6885. namespace:
  6886. description: |-
  6887. The namespace of the Secret resource being referred to.
  6888. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6889. maxLength: 63
  6890. minLength: 1
  6891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6892. type: string
  6893. type: object
  6894. type: object
  6895. gcp:
  6896. description: |-
  6897. Gcp authenticates with Vault using Google Cloud Platform authentication method
  6898. GCP authentication method
  6899. properties:
  6900. location:
  6901. description: Location optionally defines a location/region for the secret
  6902. type: string
  6903. path:
  6904. default: gcp
  6905. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  6906. type: string
  6907. projectID:
  6908. description: Project ID of the Google Cloud Platform project
  6909. type: string
  6910. role:
  6911. 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.
  6912. type: string
  6913. secretRef:
  6914. description: Specify credentials in a Secret object
  6915. properties:
  6916. secretAccessKeySecretRef:
  6917. description: The SecretAccessKey is used for authentication
  6918. properties:
  6919. key:
  6920. description: |-
  6921. A key in the referenced Secret.
  6922. Some instances of this field may be defaulted, in others it may be required.
  6923. maxLength: 253
  6924. minLength: 1
  6925. pattern: ^[-._a-zA-Z0-9]+$
  6926. type: string
  6927. name:
  6928. description: The name of the Secret resource being referred to.
  6929. maxLength: 253
  6930. minLength: 1
  6931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6932. type: string
  6933. namespace:
  6934. description: |-
  6935. The namespace of the Secret resource being referred to.
  6936. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6937. maxLength: 63
  6938. minLength: 1
  6939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6940. type: string
  6941. type: object
  6942. type: object
  6943. serviceAccountRef:
  6944. description: ServiceAccountRef to a service account for impersonation
  6945. properties:
  6946. audiences:
  6947. description: |-
  6948. Audience specifies the `aud` claim for the service account token
  6949. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6950. then this audiences will be appended to the list
  6951. items:
  6952. type: string
  6953. type: array
  6954. name:
  6955. description: The name of the ServiceAccount resource being referred to.
  6956. maxLength: 253
  6957. minLength: 1
  6958. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6959. type: string
  6960. namespace:
  6961. description: |-
  6962. Namespace of the resource being referred to.
  6963. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6964. maxLength: 63
  6965. minLength: 1
  6966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6967. type: string
  6968. required:
  6969. - name
  6970. type: object
  6971. workloadIdentity:
  6972. description: Specify a service account with Workload Identity
  6973. properties:
  6974. clusterLocation:
  6975. description: |-
  6976. ClusterLocation is the location of the cluster
  6977. If not specified, it fetches information from the metadata server
  6978. type: string
  6979. clusterName:
  6980. description: |-
  6981. ClusterName is the name of the cluster
  6982. If not specified, it fetches information from the metadata server
  6983. type: string
  6984. clusterProjectID:
  6985. description: |-
  6986. ClusterProjectID is the project ID of the cluster
  6987. If not specified, it fetches information from the metadata server
  6988. type: string
  6989. serviceAccountRef:
  6990. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  6991. properties:
  6992. audiences:
  6993. description: |-
  6994. Audience specifies the `aud` claim for the service account token
  6995. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6996. then this audiences will be appended to the list
  6997. items:
  6998. type: string
  6999. type: array
  7000. name:
  7001. description: The name of the ServiceAccount resource being referred to.
  7002. maxLength: 253
  7003. minLength: 1
  7004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7005. type: string
  7006. namespace:
  7007. description: |-
  7008. Namespace of the resource being referred to.
  7009. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7010. maxLength: 63
  7011. minLength: 1
  7012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7013. type: string
  7014. required:
  7015. - name
  7016. type: object
  7017. required:
  7018. - serviceAccountRef
  7019. type: object
  7020. required:
  7021. - role
  7022. type: object
  7023. iam:
  7024. description: |-
  7025. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7026. AWS IAM authentication method
  7027. properties:
  7028. externalID:
  7029. description: AWS External ID set on assumed IAM roles
  7030. type: string
  7031. jwt:
  7032. description: Specify a service account with IRSA enabled
  7033. properties:
  7034. serviceAccountRef:
  7035. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7036. properties:
  7037. audiences:
  7038. description: |-
  7039. Audience specifies the `aud` claim for the service account token
  7040. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7041. then this audiences will be appended to the list
  7042. items:
  7043. type: string
  7044. type: array
  7045. name:
  7046. description: The name of the ServiceAccount resource being referred to.
  7047. maxLength: 253
  7048. minLength: 1
  7049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7050. type: string
  7051. namespace:
  7052. description: |-
  7053. Namespace of the resource being referred to.
  7054. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7055. maxLength: 63
  7056. minLength: 1
  7057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7058. type: string
  7059. required:
  7060. - name
  7061. type: object
  7062. type: object
  7063. path:
  7064. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7065. type: string
  7066. region:
  7067. description: AWS region
  7068. type: string
  7069. role:
  7070. description: This is the AWS role to be assumed before talking to vault
  7071. type: string
  7072. secretRef:
  7073. description: Specify credentials in a Secret object
  7074. properties:
  7075. accessKeyIDSecretRef:
  7076. description: The AccessKeyID is used for authentication
  7077. properties:
  7078. key:
  7079. description: |-
  7080. A key in the referenced Secret.
  7081. Some instances of this field may be defaulted, in others it may be required.
  7082. maxLength: 253
  7083. minLength: 1
  7084. pattern: ^[-._a-zA-Z0-9]+$
  7085. type: string
  7086. name:
  7087. description: The name of the Secret resource being referred to.
  7088. maxLength: 253
  7089. minLength: 1
  7090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7091. type: string
  7092. namespace:
  7093. description: |-
  7094. The namespace of the Secret resource being referred to.
  7095. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7096. maxLength: 63
  7097. minLength: 1
  7098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7099. type: string
  7100. type: object
  7101. secretAccessKeySecretRef:
  7102. description: The SecretAccessKey is used for authentication
  7103. properties:
  7104. key:
  7105. description: |-
  7106. A key in the referenced Secret.
  7107. Some instances of this field may be defaulted, in others it may be required.
  7108. maxLength: 253
  7109. minLength: 1
  7110. pattern: ^[-._a-zA-Z0-9]+$
  7111. type: string
  7112. name:
  7113. description: The name of the Secret resource being referred to.
  7114. maxLength: 253
  7115. minLength: 1
  7116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7117. type: string
  7118. namespace:
  7119. description: |-
  7120. The namespace of the Secret resource being referred to.
  7121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7122. maxLength: 63
  7123. minLength: 1
  7124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7125. type: string
  7126. type: object
  7127. sessionTokenSecretRef:
  7128. description: |-
  7129. The SessionToken used for authentication
  7130. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7131. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7132. properties:
  7133. key:
  7134. description: |-
  7135. A key in the referenced Secret.
  7136. Some instances of this field may be defaulted, in others it may be required.
  7137. maxLength: 253
  7138. minLength: 1
  7139. pattern: ^[-._a-zA-Z0-9]+$
  7140. type: string
  7141. name:
  7142. description: The name of the Secret resource being referred to.
  7143. maxLength: 253
  7144. minLength: 1
  7145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7146. type: string
  7147. namespace:
  7148. description: |-
  7149. The namespace of the Secret resource being referred to.
  7150. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7151. maxLength: 63
  7152. minLength: 1
  7153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7154. type: string
  7155. type: object
  7156. type: object
  7157. vaultAwsIamServerID:
  7158. 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'
  7159. type: string
  7160. vaultRole:
  7161. 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
  7162. type: string
  7163. required:
  7164. - vaultRole
  7165. type: object
  7166. jwt:
  7167. description: |-
  7168. Jwt authenticates with Vault by passing role and JWT token using the
  7169. JWT/OIDC authentication method
  7170. properties:
  7171. kubernetesServiceAccountToken:
  7172. description: |-
  7173. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7174. a token for with the `TokenRequest` API.
  7175. properties:
  7176. audiences:
  7177. description: |-
  7178. Optional audiences field that will be used to request a temporary Kubernetes service
  7179. account token for the service account referenced by `serviceAccountRef`.
  7180. Defaults to a single audience `vault` it not specified.
  7181. Deprecated: use serviceAccountRef.Audiences instead
  7182. items:
  7183. type: string
  7184. type: array
  7185. expirationSeconds:
  7186. description: |-
  7187. Optional expiration time in seconds that will be used to request a temporary
  7188. Kubernetes service account token for the service account referenced by
  7189. `serviceAccountRef`.
  7190. Deprecated: this will be removed in the future.
  7191. Defaults to 10 minutes.
  7192. format: int64
  7193. type: integer
  7194. serviceAccountRef:
  7195. description: Service account field containing the name of a kubernetes ServiceAccount.
  7196. properties:
  7197. audiences:
  7198. description: |-
  7199. Audience specifies the `aud` claim for the service account token
  7200. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7201. then this audiences will be appended to the list
  7202. items:
  7203. type: string
  7204. type: array
  7205. name:
  7206. description: The name of the ServiceAccount resource being referred to.
  7207. maxLength: 253
  7208. minLength: 1
  7209. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7210. type: string
  7211. namespace:
  7212. description: |-
  7213. Namespace of the resource being referred to.
  7214. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7215. maxLength: 63
  7216. minLength: 1
  7217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7218. type: string
  7219. required:
  7220. - name
  7221. type: object
  7222. required:
  7223. - serviceAccountRef
  7224. type: object
  7225. path:
  7226. default: jwt
  7227. description: |-
  7228. Path where the JWT authentication backend is mounted
  7229. in Vault, e.g: "jwt"
  7230. type: string
  7231. role:
  7232. description: |-
  7233. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7234. authentication method
  7235. type: string
  7236. secretRef:
  7237. description: |-
  7238. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7239. authenticate with Vault using the JWT/OIDC authentication method.
  7240. properties:
  7241. key:
  7242. description: |-
  7243. A key in the referenced Secret.
  7244. Some instances of this field may be defaulted, in others it may be required.
  7245. maxLength: 253
  7246. minLength: 1
  7247. pattern: ^[-._a-zA-Z0-9]+$
  7248. type: string
  7249. name:
  7250. description: The name of the Secret resource being referred to.
  7251. maxLength: 253
  7252. minLength: 1
  7253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7254. type: string
  7255. namespace:
  7256. description: |-
  7257. The namespace of the Secret resource being referred to.
  7258. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7259. maxLength: 63
  7260. minLength: 1
  7261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7262. type: string
  7263. type: object
  7264. required:
  7265. - path
  7266. type: object
  7267. kubernetes:
  7268. description: |-
  7269. Kubernetes authenticates with Vault by passing the ServiceAccount
  7270. token stored in the named Secret resource to the Vault server.
  7271. properties:
  7272. mountPath:
  7273. default: kubernetes
  7274. description: |-
  7275. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7276. "kubernetes"
  7277. type: string
  7278. role:
  7279. description: |-
  7280. A required field containing the Vault Role to assume. A Role binds a
  7281. Kubernetes ServiceAccount with a set of Vault policies.
  7282. type: string
  7283. secretRef:
  7284. description: |-
  7285. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7286. for authenticating with Vault. If a name is specified without a key,
  7287. `token` is the default. If one is not specified, the one bound to
  7288. the controller will be used.
  7289. properties:
  7290. key:
  7291. description: |-
  7292. A key in the referenced Secret.
  7293. Some instances of this field may be defaulted, in others it may be required.
  7294. maxLength: 253
  7295. minLength: 1
  7296. pattern: ^[-._a-zA-Z0-9]+$
  7297. type: string
  7298. name:
  7299. description: The name of the Secret resource being referred to.
  7300. maxLength: 253
  7301. minLength: 1
  7302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7303. type: string
  7304. namespace:
  7305. description: |-
  7306. The namespace of the Secret resource being referred to.
  7307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7308. maxLength: 63
  7309. minLength: 1
  7310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7311. type: string
  7312. type: object
  7313. serviceAccountRef:
  7314. description: |-
  7315. Optional service account field containing the name of a kubernetes ServiceAccount.
  7316. If the service account is specified, the service account secret token JWT will be used
  7317. for authenticating with Vault. If the service account selector is not supplied,
  7318. the secretRef will be used instead.
  7319. properties:
  7320. audiences:
  7321. description: |-
  7322. Audience specifies the `aud` claim for the service account token
  7323. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7324. then this audiences will be appended to the list
  7325. items:
  7326. type: string
  7327. type: array
  7328. name:
  7329. description: The name of the ServiceAccount resource being referred to.
  7330. maxLength: 253
  7331. minLength: 1
  7332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7333. type: string
  7334. namespace:
  7335. description: |-
  7336. Namespace of the resource being referred to.
  7337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7338. maxLength: 63
  7339. minLength: 1
  7340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7341. type: string
  7342. required:
  7343. - name
  7344. type: object
  7345. required:
  7346. - mountPath
  7347. - role
  7348. type: object
  7349. ldap:
  7350. description: |-
  7351. Ldap authenticates with Vault by passing username/password pair using
  7352. the LDAP authentication method
  7353. properties:
  7354. path:
  7355. default: ldap
  7356. description: |-
  7357. Path where the LDAP authentication backend is mounted
  7358. in Vault, e.g: "ldap"
  7359. type: string
  7360. secretRef:
  7361. description: |-
  7362. SecretRef to a key in a Secret resource containing password for the LDAP
  7363. user used to authenticate with Vault using the LDAP authentication
  7364. method
  7365. properties:
  7366. key:
  7367. description: |-
  7368. A key in the referenced Secret.
  7369. Some instances of this field may be defaulted, in others it may be required.
  7370. maxLength: 253
  7371. minLength: 1
  7372. pattern: ^[-._a-zA-Z0-9]+$
  7373. type: string
  7374. name:
  7375. description: The name of the Secret resource being referred to.
  7376. maxLength: 253
  7377. minLength: 1
  7378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7379. type: string
  7380. namespace:
  7381. description: |-
  7382. The namespace of the Secret resource being referred to.
  7383. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7384. maxLength: 63
  7385. minLength: 1
  7386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7387. type: string
  7388. type: object
  7389. username:
  7390. description: |-
  7391. Username is an LDAP username used to authenticate using the LDAP Vault
  7392. authentication method
  7393. type: string
  7394. required:
  7395. - path
  7396. - username
  7397. type: object
  7398. namespace:
  7399. description: |-
  7400. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  7401. Namespaces is a set of features within Vault Enterprise that allows
  7402. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7403. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7404. This will default to Vault.Namespace field if set, or empty otherwise
  7405. type: string
  7406. tokenSecretRef:
  7407. description: TokenSecretRef authenticates with Vault by presenting a token.
  7408. properties:
  7409. key:
  7410. description: |-
  7411. A key in the referenced Secret.
  7412. Some instances of this field may be defaulted, in others it may be required.
  7413. maxLength: 253
  7414. minLength: 1
  7415. pattern: ^[-._a-zA-Z0-9]+$
  7416. type: string
  7417. name:
  7418. description: The name of the Secret resource being referred to.
  7419. maxLength: 253
  7420. minLength: 1
  7421. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7422. type: string
  7423. namespace:
  7424. description: |-
  7425. The namespace of the Secret resource being referred to.
  7426. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7427. maxLength: 63
  7428. minLength: 1
  7429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7430. type: string
  7431. type: object
  7432. userPass:
  7433. description: UserPass authenticates with Vault by passing username/password pair
  7434. properties:
  7435. path:
  7436. default: userpass
  7437. description: |-
  7438. Path where the UserPassword authentication backend is mounted
  7439. in Vault, e.g: "userpass"
  7440. type: string
  7441. secretRef:
  7442. description: |-
  7443. SecretRef to a key in a Secret resource containing password for the
  7444. user used to authenticate with Vault using the UserPass authentication
  7445. method
  7446. properties:
  7447. key:
  7448. description: |-
  7449. A key in the referenced Secret.
  7450. Some instances of this field may be defaulted, in others it may be required.
  7451. maxLength: 253
  7452. minLength: 1
  7453. pattern: ^[-._a-zA-Z0-9]+$
  7454. type: string
  7455. name:
  7456. description: The name of the Secret resource being referred to.
  7457. maxLength: 253
  7458. minLength: 1
  7459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7460. type: string
  7461. namespace:
  7462. description: |-
  7463. The namespace of the Secret resource being referred to.
  7464. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7465. maxLength: 63
  7466. minLength: 1
  7467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7468. type: string
  7469. type: object
  7470. username:
  7471. description: |-
  7472. Username is a username used to authenticate using the UserPass Vault
  7473. authentication method
  7474. type: string
  7475. required:
  7476. - path
  7477. - username
  7478. type: object
  7479. type: object
  7480. caBundle:
  7481. description: |-
  7482. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7483. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7484. plain HTTP protocol connection. If not set the system root certificates
  7485. are used to validate the TLS connection.
  7486. format: byte
  7487. type: string
  7488. caProvider:
  7489. description: The provider for the CA bundle to use to validate Vault server certificate.
  7490. properties:
  7491. key:
  7492. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7493. maxLength: 253
  7494. minLength: 1
  7495. pattern: ^[-._a-zA-Z0-9]+$
  7496. type: string
  7497. name:
  7498. description: The name of the object located at the provider type.
  7499. maxLength: 253
  7500. minLength: 1
  7501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7502. type: string
  7503. namespace:
  7504. description: |-
  7505. The namespace the Provider type is in.
  7506. Can only be defined when used in a ClusterSecretStore.
  7507. maxLength: 63
  7508. minLength: 1
  7509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7510. type: string
  7511. type:
  7512. description: The type of provider to use such as "Secret", or "ConfigMap".
  7513. enum:
  7514. - Secret
  7515. - ConfigMap
  7516. type: string
  7517. required:
  7518. - name
  7519. - type
  7520. type: object
  7521. checkAndSet:
  7522. description: |-
  7523. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  7524. Only applies to Vault KV v2 stores. When enabled, write operations must include
  7525. the current version of the secret to prevent unintentional overwrites.
  7526. properties:
  7527. required:
  7528. description: |-
  7529. Required when true, all write operations must include a check-and-set parameter.
  7530. This helps prevent unintentional overwrites of secrets.
  7531. type: boolean
  7532. type: object
  7533. forwardInconsistent:
  7534. description: |-
  7535. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7536. leader instead of simply retrying within a loop. This can increase performance if
  7537. the option is enabled serverside.
  7538. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7539. type: boolean
  7540. headers:
  7541. additionalProperties:
  7542. type: string
  7543. description: Headers to be added in Vault request
  7544. type: object
  7545. namespace:
  7546. description: |-
  7547. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7548. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7549. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7550. type: string
  7551. path:
  7552. description: |-
  7553. Path is the mount path of the Vault KV backend endpoint, e.g:
  7554. "secret". The v2 KV secret engine version specific "/data" path suffix
  7555. for fetching secrets from Vault is optional and will be appended
  7556. if not present in specified path.
  7557. type: string
  7558. readYourWrites:
  7559. description: |-
  7560. ReadYourWrites ensures isolated read-after-write semantics by
  7561. providing discovered cluster replication states in each request.
  7562. More information about eventual consistency in Vault can be found here
  7563. https://www.vaultproject.io/docs/enterprise/consistency
  7564. type: boolean
  7565. server:
  7566. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7567. type: string
  7568. tls:
  7569. description: |-
  7570. The configuration used for client side related TLS communication, when the Vault server
  7571. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  7572. This parameter is ignored for plain HTTP protocol connection.
  7573. It's worth noting this configuration is different from the "TLS certificates auth method",
  7574. which is available under the `auth.cert` section.
  7575. properties:
  7576. certSecretRef:
  7577. description: |-
  7578. CertSecretRef is a certificate added to the transport layer
  7579. when communicating with the Vault server.
  7580. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  7581. properties:
  7582. key:
  7583. description: |-
  7584. A key in the referenced Secret.
  7585. Some instances of this field may be defaulted, in others it may be required.
  7586. maxLength: 253
  7587. minLength: 1
  7588. pattern: ^[-._a-zA-Z0-9]+$
  7589. type: string
  7590. name:
  7591. description: The name of the Secret resource being referred to.
  7592. maxLength: 253
  7593. minLength: 1
  7594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7595. type: string
  7596. namespace:
  7597. description: |-
  7598. The namespace of the Secret resource being referred to.
  7599. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7600. maxLength: 63
  7601. minLength: 1
  7602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7603. type: string
  7604. type: object
  7605. keySecretRef:
  7606. description: |-
  7607. KeySecretRef to a key in a Secret resource containing client private key
  7608. added to the transport layer when communicating with the Vault server.
  7609. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  7610. properties:
  7611. key:
  7612. description: |-
  7613. A key in the referenced Secret.
  7614. Some instances of this field may be defaulted, in others it may be required.
  7615. maxLength: 253
  7616. minLength: 1
  7617. pattern: ^[-._a-zA-Z0-9]+$
  7618. type: string
  7619. name:
  7620. description: The name of the Secret resource being referred to.
  7621. maxLength: 253
  7622. minLength: 1
  7623. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7624. type: string
  7625. namespace:
  7626. description: |-
  7627. The namespace of the Secret resource being referred to.
  7628. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7629. maxLength: 63
  7630. minLength: 1
  7631. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7632. type: string
  7633. type: object
  7634. type: object
  7635. version:
  7636. default: v2
  7637. description: |-
  7638. Version is the Vault KV secret engine version. This can be either "v1" or
  7639. "v2". Version defaults to "v2".
  7640. enum:
  7641. - v1
  7642. - v2
  7643. type: string
  7644. required:
  7645. - server
  7646. type: object
  7647. volcengine:
  7648. description: Volcengine configures this store to sync secrets using the Volcengine provider
  7649. properties:
  7650. auth:
  7651. description: |-
  7652. Auth defines the authentication method to use.
  7653. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  7654. properties:
  7655. secretRef:
  7656. description: |-
  7657. SecretRef defines the static credentials to use for authentication.
  7658. If not set, IRSA is used.
  7659. properties:
  7660. accessKeyID:
  7661. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  7662. properties:
  7663. key:
  7664. description: |-
  7665. A key in the referenced Secret.
  7666. Some instances of this field may be defaulted, in others it may be required.
  7667. maxLength: 253
  7668. minLength: 1
  7669. pattern: ^[-._a-zA-Z0-9]+$
  7670. type: string
  7671. name:
  7672. description: The name of the Secret resource being referred to.
  7673. maxLength: 253
  7674. minLength: 1
  7675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7676. type: string
  7677. namespace:
  7678. description: |-
  7679. The namespace of the Secret resource being referred to.
  7680. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7681. maxLength: 63
  7682. minLength: 1
  7683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7684. type: string
  7685. type: object
  7686. secretAccessKey:
  7687. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  7688. properties:
  7689. key:
  7690. description: |-
  7691. A key in the referenced Secret.
  7692. Some instances of this field may be defaulted, in others it may be required.
  7693. maxLength: 253
  7694. minLength: 1
  7695. pattern: ^[-._a-zA-Z0-9]+$
  7696. type: string
  7697. name:
  7698. description: The name of the Secret resource being referred to.
  7699. maxLength: 253
  7700. minLength: 1
  7701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7702. type: string
  7703. namespace:
  7704. description: |-
  7705. The namespace of the Secret resource being referred to.
  7706. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7707. maxLength: 63
  7708. minLength: 1
  7709. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7710. type: string
  7711. type: object
  7712. token:
  7713. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  7714. properties:
  7715. key:
  7716. description: |-
  7717. A key in the referenced Secret.
  7718. Some instances of this field may be defaulted, in others it may be required.
  7719. maxLength: 253
  7720. minLength: 1
  7721. pattern: ^[-._a-zA-Z0-9]+$
  7722. type: string
  7723. name:
  7724. description: The name of the Secret resource being referred to.
  7725. maxLength: 253
  7726. minLength: 1
  7727. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7728. type: string
  7729. namespace:
  7730. description: |-
  7731. The namespace of the Secret resource being referred to.
  7732. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7733. maxLength: 63
  7734. minLength: 1
  7735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7736. type: string
  7737. type: object
  7738. required:
  7739. - accessKeyID
  7740. - secretAccessKey
  7741. type: object
  7742. type: object
  7743. region:
  7744. description: Region specifies the Volcengine region to connect to.
  7745. type: string
  7746. required:
  7747. - region
  7748. type: object
  7749. webhook:
  7750. description: Webhook configures this store to sync secrets using a generic templated webhook
  7751. properties:
  7752. auth:
  7753. description: Auth specifies a authorization protocol. Only one protocol may be set.
  7754. maxProperties: 1
  7755. minProperties: 1
  7756. properties:
  7757. ntlm:
  7758. description: NTLMProtocol configures the store to use NTLM for auth
  7759. properties:
  7760. passwordSecret:
  7761. description: |-
  7762. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7763. In some instances, `key` is a required field.
  7764. properties:
  7765. key:
  7766. description: |-
  7767. A key in the referenced Secret.
  7768. Some instances of this field may be defaulted, in others it may be required.
  7769. maxLength: 253
  7770. minLength: 1
  7771. pattern: ^[-._a-zA-Z0-9]+$
  7772. type: string
  7773. name:
  7774. description: The name of the Secret resource being referred to.
  7775. maxLength: 253
  7776. minLength: 1
  7777. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7778. type: string
  7779. namespace:
  7780. description: |-
  7781. The namespace of the Secret resource being referred to.
  7782. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7783. maxLength: 63
  7784. minLength: 1
  7785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7786. type: string
  7787. type: object
  7788. usernameSecret:
  7789. description: |-
  7790. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7791. In some instances, `key` is a required field.
  7792. properties:
  7793. key:
  7794. description: |-
  7795. A key in the referenced Secret.
  7796. Some instances of this field may be defaulted, in others it may be required.
  7797. maxLength: 253
  7798. minLength: 1
  7799. pattern: ^[-._a-zA-Z0-9]+$
  7800. type: string
  7801. name:
  7802. description: The name of the Secret resource being referred to.
  7803. maxLength: 253
  7804. minLength: 1
  7805. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7806. type: string
  7807. namespace:
  7808. description: |-
  7809. The namespace of the Secret resource being referred to.
  7810. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7811. maxLength: 63
  7812. minLength: 1
  7813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7814. type: string
  7815. type: object
  7816. required:
  7817. - passwordSecret
  7818. - usernameSecret
  7819. type: object
  7820. type: object
  7821. body:
  7822. description: Body
  7823. type: string
  7824. caBundle:
  7825. description: |-
  7826. PEM encoded CA bundle used to validate webhook server certificate. Only used
  7827. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7828. plain HTTP protocol connection. If not set the system root certificates
  7829. are used to validate the TLS connection.
  7830. format: byte
  7831. type: string
  7832. caProvider:
  7833. description: The provider for the CA bundle to use to validate webhook server certificate.
  7834. properties:
  7835. key:
  7836. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7837. maxLength: 253
  7838. minLength: 1
  7839. pattern: ^[-._a-zA-Z0-9]+$
  7840. type: string
  7841. name:
  7842. description: The name of the object located at the provider type.
  7843. maxLength: 253
  7844. minLength: 1
  7845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7846. type: string
  7847. namespace:
  7848. description: The namespace the Provider type is in.
  7849. maxLength: 63
  7850. minLength: 1
  7851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7852. type: string
  7853. type:
  7854. description: The type of provider to use such as "Secret", or "ConfigMap".
  7855. enum:
  7856. - Secret
  7857. - ConfigMap
  7858. type: string
  7859. required:
  7860. - name
  7861. - type
  7862. type: object
  7863. headers:
  7864. additionalProperties:
  7865. type: string
  7866. description: Headers
  7867. type: object
  7868. method:
  7869. description: Webhook Method
  7870. type: string
  7871. result:
  7872. description: Result formatting
  7873. properties:
  7874. jsonPath:
  7875. description: Json path of return value
  7876. type: string
  7877. type: object
  7878. secrets:
  7879. description: |-
  7880. Secrets to fill in templates
  7881. These secrets will be passed to the templating function as key value pairs under the given name
  7882. items:
  7883. description: WebhookSecret defines a secret that will be passed to the webhook request.
  7884. properties:
  7885. name:
  7886. description: Name of this secret in templates
  7887. type: string
  7888. secretRef:
  7889. description: Secret ref to fill in credentials
  7890. properties:
  7891. key:
  7892. description: |-
  7893. A key in the referenced Secret.
  7894. Some instances of this field may be defaulted, in others it may be required.
  7895. maxLength: 253
  7896. minLength: 1
  7897. pattern: ^[-._a-zA-Z0-9]+$
  7898. type: string
  7899. name:
  7900. description: The name of the Secret resource being referred to.
  7901. maxLength: 253
  7902. minLength: 1
  7903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7904. type: string
  7905. namespace:
  7906. description: |-
  7907. The namespace of the Secret resource being referred to.
  7908. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7909. maxLength: 63
  7910. minLength: 1
  7911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7912. type: string
  7913. type: object
  7914. required:
  7915. - name
  7916. - secretRef
  7917. type: object
  7918. type: array
  7919. timeout:
  7920. description: Timeout
  7921. type: string
  7922. url:
  7923. description: Webhook url to call
  7924. type: string
  7925. required:
  7926. - url
  7927. type: object
  7928. yandexcertificatemanager:
  7929. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  7930. properties:
  7931. apiEndpoint:
  7932. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  7933. type: string
  7934. auth:
  7935. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  7936. properties:
  7937. authorizedKeySecretRef:
  7938. description: The authorized key used for authentication
  7939. properties:
  7940. key:
  7941. description: |-
  7942. A key in the referenced Secret.
  7943. Some instances of this field may be defaulted, in others it may be required.
  7944. maxLength: 253
  7945. minLength: 1
  7946. pattern: ^[-._a-zA-Z0-9]+$
  7947. type: string
  7948. name:
  7949. description: The name of the Secret resource being referred to.
  7950. maxLength: 253
  7951. minLength: 1
  7952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7953. type: string
  7954. namespace:
  7955. description: |-
  7956. The namespace of the Secret resource being referred to.
  7957. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7958. maxLength: 63
  7959. minLength: 1
  7960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7961. type: string
  7962. type: object
  7963. type: object
  7964. caProvider:
  7965. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  7966. properties:
  7967. certSecretRef:
  7968. description: |-
  7969. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7970. In some instances, `key` is a required field.
  7971. properties:
  7972. key:
  7973. description: |-
  7974. A key in the referenced Secret.
  7975. Some instances of this field may be defaulted, in others it may be required.
  7976. maxLength: 253
  7977. minLength: 1
  7978. pattern: ^[-._a-zA-Z0-9]+$
  7979. type: string
  7980. name:
  7981. description: The name of the Secret resource being referred to.
  7982. maxLength: 253
  7983. minLength: 1
  7984. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7985. type: string
  7986. namespace:
  7987. description: |-
  7988. The namespace of the Secret resource being referred to.
  7989. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7990. maxLength: 63
  7991. minLength: 1
  7992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7993. type: string
  7994. type: object
  7995. type: object
  7996. fetching:
  7997. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  7998. maxProperties: 1
  7999. minProperties: 1
  8000. properties:
  8001. byID:
  8002. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8003. type: object
  8004. byName:
  8005. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8006. properties:
  8007. folderID:
  8008. description: The folder to fetch secrets from
  8009. type: string
  8010. required:
  8011. - folderID
  8012. type: object
  8013. type: object
  8014. required:
  8015. - auth
  8016. type: object
  8017. yandexlockbox:
  8018. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8019. properties:
  8020. apiEndpoint:
  8021. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8022. type: string
  8023. auth:
  8024. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8025. properties:
  8026. authorizedKeySecretRef:
  8027. description: The authorized key used for authentication
  8028. properties:
  8029. key:
  8030. description: |-
  8031. A key in the referenced Secret.
  8032. Some instances of this field may be defaulted, in others it may be required.
  8033. maxLength: 253
  8034. minLength: 1
  8035. pattern: ^[-._a-zA-Z0-9]+$
  8036. type: string
  8037. name:
  8038. description: The name of the Secret resource being referred to.
  8039. maxLength: 253
  8040. minLength: 1
  8041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8042. type: string
  8043. namespace:
  8044. description: |-
  8045. The namespace of the Secret resource being referred to.
  8046. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8047. maxLength: 63
  8048. minLength: 1
  8049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8050. type: string
  8051. type: object
  8052. type: object
  8053. caProvider:
  8054. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8055. properties:
  8056. certSecretRef:
  8057. description: |-
  8058. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8059. In some instances, `key` is a required field.
  8060. properties:
  8061. key:
  8062. description: |-
  8063. A key in the referenced Secret.
  8064. Some instances of this field may be defaulted, in others it may be required.
  8065. maxLength: 253
  8066. minLength: 1
  8067. pattern: ^[-._a-zA-Z0-9]+$
  8068. type: string
  8069. name:
  8070. description: The name of the Secret resource being referred to.
  8071. maxLength: 253
  8072. minLength: 1
  8073. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8074. type: string
  8075. namespace:
  8076. description: |-
  8077. The namespace of the Secret resource being referred to.
  8078. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8079. maxLength: 63
  8080. minLength: 1
  8081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8082. type: string
  8083. type: object
  8084. type: object
  8085. fetching:
  8086. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8087. maxProperties: 1
  8088. minProperties: 1
  8089. properties:
  8090. byID:
  8091. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8092. type: object
  8093. byName:
  8094. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8095. properties:
  8096. folderID:
  8097. description: The folder to fetch secrets from
  8098. type: string
  8099. required:
  8100. - folderID
  8101. type: object
  8102. type: object
  8103. required:
  8104. - auth
  8105. type: object
  8106. type: object
  8107. refreshInterval:
  8108. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8109. type: integer
  8110. retrySettings:
  8111. description: Used to configure HTTP retries on failures.
  8112. properties:
  8113. maxRetries:
  8114. format: int32
  8115. type: integer
  8116. retryInterval:
  8117. type: string
  8118. type: object
  8119. required:
  8120. - provider
  8121. type: object
  8122. status:
  8123. description: SecretStoreStatus defines the observed state of the SecretStore.
  8124. properties:
  8125. capabilities:
  8126. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8127. type: string
  8128. conditions:
  8129. items:
  8130. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8131. properties:
  8132. lastTransitionTime:
  8133. format: date-time
  8134. type: string
  8135. message:
  8136. type: string
  8137. reason:
  8138. type: string
  8139. status:
  8140. type: string
  8141. type:
  8142. description: SecretStoreConditionType represents the condition of the SecretStore.
  8143. type: string
  8144. required:
  8145. - status
  8146. - type
  8147. type: object
  8148. type: array
  8149. type: object
  8150. type: object
  8151. served: true
  8152. storage: true
  8153. subresources:
  8154. status: {}
  8155. - additionalPrinterColumns:
  8156. - jsonPath: .metadata.creationTimestamp
  8157. name: AGE
  8158. type: date
  8159. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8160. name: Status
  8161. type: string
  8162. - jsonPath: .status.capabilities
  8163. name: Capabilities
  8164. type: string
  8165. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8166. name: Ready
  8167. type: string
  8168. deprecated: true
  8169. name: v1beta1
  8170. schema:
  8171. openAPIV3Schema:
  8172. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8173. properties:
  8174. apiVersion:
  8175. description: |-
  8176. APIVersion defines the versioned schema of this representation of an object.
  8177. Servers should convert recognized schemas to the latest internal value, and
  8178. may reject unrecognized values.
  8179. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8180. type: string
  8181. kind:
  8182. description: |-
  8183. Kind is a string value representing the REST resource this object represents.
  8184. Servers may infer this from the endpoint the client submits requests to.
  8185. Cannot be updated.
  8186. In CamelCase.
  8187. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8188. type: string
  8189. metadata:
  8190. type: object
  8191. spec:
  8192. description: SecretStoreSpec defines the desired state of SecretStore.
  8193. properties:
  8194. conditions:
  8195. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8196. items:
  8197. description: |-
  8198. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8199. for a ClusterSecretStore instance.
  8200. properties:
  8201. namespaceRegexes:
  8202. description: Choose namespaces by using regex matching
  8203. items:
  8204. type: string
  8205. type: array
  8206. namespaceSelector:
  8207. description: Choose namespace using a labelSelector
  8208. properties:
  8209. matchExpressions:
  8210. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8211. items:
  8212. description: |-
  8213. A label selector requirement is a selector that contains values, a key, and an operator that
  8214. relates the key and values.
  8215. properties:
  8216. key:
  8217. description: key is the label key that the selector applies to.
  8218. type: string
  8219. operator:
  8220. description: |-
  8221. operator represents a key's relationship to a set of values.
  8222. Valid operators are In, NotIn, Exists and DoesNotExist.
  8223. type: string
  8224. values:
  8225. description: |-
  8226. values is an array of string values. If the operator is In or NotIn,
  8227. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8228. the values array must be empty. This array is replaced during a strategic
  8229. merge patch.
  8230. items:
  8231. type: string
  8232. type: array
  8233. x-kubernetes-list-type: atomic
  8234. required:
  8235. - key
  8236. - operator
  8237. type: object
  8238. type: array
  8239. x-kubernetes-list-type: atomic
  8240. matchLabels:
  8241. additionalProperties:
  8242. type: string
  8243. description: |-
  8244. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8245. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8246. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8247. type: object
  8248. type: object
  8249. x-kubernetes-map-type: atomic
  8250. namespaces:
  8251. description: Choose namespaces by name
  8252. items:
  8253. maxLength: 63
  8254. minLength: 1
  8255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8256. type: string
  8257. type: array
  8258. type: object
  8259. type: array
  8260. controller:
  8261. description: |-
  8262. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8263. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8264. type: string
  8265. provider:
  8266. description: Used to configure the provider. Only one provider may be set
  8267. maxProperties: 1
  8268. minProperties: 1
  8269. properties:
  8270. akeyless:
  8271. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8272. properties:
  8273. akeylessGWApiURL:
  8274. description: Akeyless GW API Url from which the secrets to be fetched from.
  8275. type: string
  8276. authSecretRef:
  8277. description: Auth configures how the operator authenticates with Akeyless.
  8278. properties:
  8279. kubernetesAuth:
  8280. description: |-
  8281. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8282. token stored in the named Secret resource.
  8283. properties:
  8284. accessID:
  8285. description: the Akeyless Kubernetes auth-method access-id
  8286. type: string
  8287. k8sConfName:
  8288. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8289. type: string
  8290. secretRef:
  8291. description: |-
  8292. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8293. for authenticating with Akeyless. If a name is specified without a key,
  8294. `token` is the default. If one is not specified, the one bound to
  8295. the controller will be used.
  8296. properties:
  8297. key:
  8298. description: |-
  8299. A key in the referenced Secret.
  8300. Some instances of this field may be defaulted, in others it may be required.
  8301. maxLength: 253
  8302. minLength: 1
  8303. pattern: ^[-._a-zA-Z0-9]+$
  8304. type: string
  8305. name:
  8306. description: The name of the Secret resource being referred to.
  8307. maxLength: 253
  8308. minLength: 1
  8309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8310. type: string
  8311. namespace:
  8312. description: |-
  8313. The namespace of the Secret resource being referred to.
  8314. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8315. maxLength: 63
  8316. minLength: 1
  8317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8318. type: string
  8319. type: object
  8320. serviceAccountRef:
  8321. description: |-
  8322. Optional service account field containing the name of a kubernetes ServiceAccount.
  8323. If the service account is specified, the service account secret token JWT will be used
  8324. for authenticating with Akeyless. If the service account selector is not supplied,
  8325. the secretRef will be used instead.
  8326. properties:
  8327. audiences:
  8328. description: |-
  8329. Audience specifies the `aud` claim for the service account token
  8330. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8331. then this audiences will be appended to the list
  8332. items:
  8333. type: string
  8334. type: array
  8335. name:
  8336. description: The name of the ServiceAccount resource being referred to.
  8337. maxLength: 253
  8338. minLength: 1
  8339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8340. type: string
  8341. namespace:
  8342. description: |-
  8343. Namespace of the resource being referred to.
  8344. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8345. maxLength: 63
  8346. minLength: 1
  8347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8348. type: string
  8349. required:
  8350. - name
  8351. type: object
  8352. required:
  8353. - accessID
  8354. - k8sConfName
  8355. type: object
  8356. secretRef:
  8357. description: |-
  8358. Reference to a Secret that contains the details
  8359. to authenticate with Akeyless.
  8360. properties:
  8361. accessID:
  8362. description: The SecretAccessID is used for authentication
  8363. properties:
  8364. key:
  8365. description: |-
  8366. A key in the referenced Secret.
  8367. Some instances of this field may be defaulted, in others it may be required.
  8368. maxLength: 253
  8369. minLength: 1
  8370. pattern: ^[-._a-zA-Z0-9]+$
  8371. type: string
  8372. name:
  8373. description: The name of the Secret resource being referred to.
  8374. maxLength: 253
  8375. minLength: 1
  8376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8377. type: string
  8378. namespace:
  8379. description: |-
  8380. The namespace of the Secret resource being referred to.
  8381. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8382. maxLength: 63
  8383. minLength: 1
  8384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8385. type: string
  8386. type: object
  8387. accessType:
  8388. description: |-
  8389. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8390. In some instances, `key` is a required field.
  8391. properties:
  8392. key:
  8393. description: |-
  8394. A key in the referenced Secret.
  8395. Some instances of this field may be defaulted, in others it may be required.
  8396. maxLength: 253
  8397. minLength: 1
  8398. pattern: ^[-._a-zA-Z0-9]+$
  8399. type: string
  8400. name:
  8401. description: The name of the Secret resource being referred to.
  8402. maxLength: 253
  8403. minLength: 1
  8404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8405. type: string
  8406. namespace:
  8407. description: |-
  8408. The namespace of the Secret resource being referred to.
  8409. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8410. maxLength: 63
  8411. minLength: 1
  8412. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8413. type: string
  8414. type: object
  8415. accessTypeParam:
  8416. description: |-
  8417. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8418. In some instances, `key` is a required field.
  8419. properties:
  8420. key:
  8421. description: |-
  8422. A key in the referenced Secret.
  8423. Some instances of this field may be defaulted, in others it may be required.
  8424. maxLength: 253
  8425. minLength: 1
  8426. pattern: ^[-._a-zA-Z0-9]+$
  8427. type: string
  8428. name:
  8429. description: The name of the Secret resource being referred to.
  8430. maxLength: 253
  8431. minLength: 1
  8432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8433. type: string
  8434. namespace:
  8435. description: |-
  8436. The namespace of the Secret resource being referred to.
  8437. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8438. maxLength: 63
  8439. minLength: 1
  8440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8441. type: string
  8442. type: object
  8443. type: object
  8444. type: object
  8445. caBundle:
  8446. description: |-
  8447. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8448. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8449. are used to validate the TLS connection.
  8450. format: byte
  8451. type: string
  8452. caProvider:
  8453. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8454. properties:
  8455. key:
  8456. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8457. maxLength: 253
  8458. minLength: 1
  8459. pattern: ^[-._a-zA-Z0-9]+$
  8460. type: string
  8461. name:
  8462. description: The name of the object located at the provider type.
  8463. maxLength: 253
  8464. minLength: 1
  8465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8466. type: string
  8467. namespace:
  8468. description: |-
  8469. The namespace the Provider type is in.
  8470. Can only be defined when used in a ClusterSecretStore.
  8471. maxLength: 63
  8472. minLength: 1
  8473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8474. type: string
  8475. type:
  8476. description: The type of provider to use such as "Secret", or "ConfigMap".
  8477. enum:
  8478. - Secret
  8479. - ConfigMap
  8480. type: string
  8481. required:
  8482. - name
  8483. - type
  8484. type: object
  8485. required:
  8486. - akeylessGWApiURL
  8487. - authSecretRef
  8488. type: object
  8489. alibaba:
  8490. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8491. properties:
  8492. auth:
  8493. description: AlibabaAuth contains a secretRef for credentials.
  8494. properties:
  8495. rrsa:
  8496. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  8497. properties:
  8498. oidcProviderArn:
  8499. type: string
  8500. oidcTokenFilePath:
  8501. type: string
  8502. roleArn:
  8503. type: string
  8504. sessionName:
  8505. type: string
  8506. required:
  8507. - oidcProviderArn
  8508. - oidcTokenFilePath
  8509. - roleArn
  8510. - sessionName
  8511. type: object
  8512. secretRef:
  8513. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  8514. properties:
  8515. accessKeyIDSecretRef:
  8516. description: The AccessKeyID is used for authentication
  8517. properties:
  8518. key:
  8519. description: |-
  8520. A key in the referenced Secret.
  8521. Some instances of this field may be defaulted, in others it may be required.
  8522. maxLength: 253
  8523. minLength: 1
  8524. pattern: ^[-._a-zA-Z0-9]+$
  8525. type: string
  8526. name:
  8527. description: The name of the Secret resource being referred to.
  8528. maxLength: 253
  8529. minLength: 1
  8530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8531. type: string
  8532. namespace:
  8533. description: |-
  8534. The namespace of the Secret resource being referred to.
  8535. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8536. maxLength: 63
  8537. minLength: 1
  8538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8539. type: string
  8540. type: object
  8541. accessKeySecretSecretRef:
  8542. description: The AccessKeySecret is used for authentication
  8543. properties:
  8544. key:
  8545. description: |-
  8546. A key in the referenced Secret.
  8547. Some instances of this field may be defaulted, in others it may be required.
  8548. maxLength: 253
  8549. minLength: 1
  8550. pattern: ^[-._a-zA-Z0-9]+$
  8551. type: string
  8552. name:
  8553. description: The name of the Secret resource being referred to.
  8554. maxLength: 253
  8555. minLength: 1
  8556. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8557. type: string
  8558. namespace:
  8559. description: |-
  8560. The namespace of the Secret resource being referred to.
  8561. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8562. maxLength: 63
  8563. minLength: 1
  8564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8565. type: string
  8566. type: object
  8567. required:
  8568. - accessKeyIDSecretRef
  8569. - accessKeySecretSecretRef
  8570. type: object
  8571. type: object
  8572. regionID:
  8573. description: Alibaba Region to be used for the provider
  8574. type: string
  8575. required:
  8576. - auth
  8577. - regionID
  8578. type: object
  8579. aws:
  8580. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  8581. properties:
  8582. additionalRoles:
  8583. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  8584. items:
  8585. type: string
  8586. type: array
  8587. auth:
  8588. description: |-
  8589. Auth defines the information necessary to authenticate against AWS
  8590. if not set aws sdk will infer credentials from your environment
  8591. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  8592. properties:
  8593. jwt:
  8594. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  8595. properties:
  8596. serviceAccountRef:
  8597. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  8598. properties:
  8599. audiences:
  8600. description: |-
  8601. Audience specifies the `aud` claim for the service account token
  8602. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8603. then this audiences will be appended to the list
  8604. items:
  8605. type: string
  8606. type: array
  8607. name:
  8608. description: The name of the ServiceAccount resource being referred to.
  8609. maxLength: 253
  8610. minLength: 1
  8611. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8612. type: string
  8613. namespace:
  8614. description: |-
  8615. Namespace of the resource being referred to.
  8616. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8617. maxLength: 63
  8618. minLength: 1
  8619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8620. type: string
  8621. required:
  8622. - name
  8623. type: object
  8624. type: object
  8625. secretRef:
  8626. description: |-
  8627. AWSAuthSecretRef holds secret references for AWS credentials
  8628. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8629. properties:
  8630. accessKeyIDSecretRef:
  8631. description: The AccessKeyID is used for authentication
  8632. properties:
  8633. key:
  8634. description: |-
  8635. A key in the referenced Secret.
  8636. Some instances of this field may be defaulted, in others it may be required.
  8637. maxLength: 253
  8638. minLength: 1
  8639. pattern: ^[-._a-zA-Z0-9]+$
  8640. type: string
  8641. name:
  8642. description: The name of the Secret resource being referred to.
  8643. maxLength: 253
  8644. minLength: 1
  8645. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8646. type: string
  8647. namespace:
  8648. description: |-
  8649. The namespace of the Secret resource being referred to.
  8650. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8651. maxLength: 63
  8652. minLength: 1
  8653. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8654. type: string
  8655. type: object
  8656. secretAccessKeySecretRef:
  8657. description: The SecretAccessKey is used for authentication
  8658. properties:
  8659. key:
  8660. description: |-
  8661. A key in the referenced Secret.
  8662. Some instances of this field may be defaulted, in others it may be required.
  8663. maxLength: 253
  8664. minLength: 1
  8665. pattern: ^[-._a-zA-Z0-9]+$
  8666. type: string
  8667. name:
  8668. description: The name of the Secret resource being referred to.
  8669. maxLength: 253
  8670. minLength: 1
  8671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8672. type: string
  8673. namespace:
  8674. description: |-
  8675. The namespace of the Secret resource being referred to.
  8676. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8677. maxLength: 63
  8678. minLength: 1
  8679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8680. type: string
  8681. type: object
  8682. sessionTokenSecretRef:
  8683. description: |-
  8684. The SessionToken used for authentication
  8685. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8686. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8687. properties:
  8688. key:
  8689. description: |-
  8690. A key in the referenced Secret.
  8691. Some instances of this field may be defaulted, in others it may be required.
  8692. maxLength: 253
  8693. minLength: 1
  8694. pattern: ^[-._a-zA-Z0-9]+$
  8695. type: string
  8696. name:
  8697. description: The name of the Secret resource being referred to.
  8698. maxLength: 253
  8699. minLength: 1
  8700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8701. type: string
  8702. namespace:
  8703. description: |-
  8704. The namespace of the Secret resource being referred to.
  8705. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8706. maxLength: 63
  8707. minLength: 1
  8708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8709. type: string
  8710. type: object
  8711. type: object
  8712. type: object
  8713. externalID:
  8714. description: AWS External ID set on assumed IAM roles
  8715. type: string
  8716. prefix:
  8717. description: Prefix adds a prefix to all retrieved values.
  8718. type: string
  8719. region:
  8720. description: AWS Region to be used for the provider
  8721. type: string
  8722. role:
  8723. description: Role is a Role ARN which the provider will assume
  8724. type: string
  8725. secretsManager:
  8726. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  8727. properties:
  8728. forceDeleteWithoutRecovery:
  8729. description: |-
  8730. Specifies whether to delete the secret without any recovery window. You
  8731. can't use both this parameter and RecoveryWindowInDays in the same call.
  8732. If you don't use either, then by default Secrets Manager uses a 30 day
  8733. recovery window.
  8734. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  8735. type: boolean
  8736. recoveryWindowInDays:
  8737. description: |-
  8738. The number of days from 7 to 30 that Secrets Manager waits before
  8739. permanently deleting the secret. You can't use both this parameter and
  8740. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  8741. then by default Secrets Manager uses a 30 day recovery window.
  8742. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  8743. format: int64
  8744. type: integer
  8745. type: object
  8746. service:
  8747. description: Service defines which service should be used to fetch the secrets
  8748. enum:
  8749. - SecretsManager
  8750. - ParameterStore
  8751. type: string
  8752. sessionTags:
  8753. description: AWS STS assume role session tags
  8754. items:
  8755. description: Tag defines a tag key and value for AWS resources.
  8756. properties:
  8757. key:
  8758. type: string
  8759. value:
  8760. type: string
  8761. required:
  8762. - key
  8763. - value
  8764. type: object
  8765. type: array
  8766. transitiveTagKeys:
  8767. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  8768. items:
  8769. type: string
  8770. type: array
  8771. required:
  8772. - region
  8773. - service
  8774. type: object
  8775. azurekv:
  8776. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  8777. properties:
  8778. authSecretRef:
  8779. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8780. properties:
  8781. clientCertificate:
  8782. description: The Azure ClientCertificate of the service principle used for authentication.
  8783. properties:
  8784. key:
  8785. description: |-
  8786. A key in the referenced Secret.
  8787. Some instances of this field may be defaulted, in others it may be required.
  8788. maxLength: 253
  8789. minLength: 1
  8790. pattern: ^[-._a-zA-Z0-9]+$
  8791. type: string
  8792. name:
  8793. description: The name of the Secret resource being referred to.
  8794. maxLength: 253
  8795. minLength: 1
  8796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8797. type: string
  8798. namespace:
  8799. description: |-
  8800. The namespace of the Secret resource being referred to.
  8801. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8802. maxLength: 63
  8803. minLength: 1
  8804. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8805. type: string
  8806. type: object
  8807. clientId:
  8808. description: The Azure clientId of the service principle or managed identity used for authentication.
  8809. properties:
  8810. key:
  8811. description: |-
  8812. A key in the referenced Secret.
  8813. Some instances of this field may be defaulted, in others it may be required.
  8814. maxLength: 253
  8815. minLength: 1
  8816. pattern: ^[-._a-zA-Z0-9]+$
  8817. type: string
  8818. name:
  8819. description: The name of the Secret resource being referred to.
  8820. maxLength: 253
  8821. minLength: 1
  8822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8823. type: string
  8824. namespace:
  8825. description: |-
  8826. The namespace of the Secret resource being referred to.
  8827. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8828. maxLength: 63
  8829. minLength: 1
  8830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8831. type: string
  8832. type: object
  8833. clientSecret:
  8834. description: The Azure ClientSecret of the service principle used for authentication.
  8835. properties:
  8836. key:
  8837. description: |-
  8838. A key in the referenced Secret.
  8839. Some instances of this field may be defaulted, in others it may be required.
  8840. maxLength: 253
  8841. minLength: 1
  8842. pattern: ^[-._a-zA-Z0-9]+$
  8843. type: string
  8844. name:
  8845. description: The name of the Secret resource being referred to.
  8846. maxLength: 253
  8847. minLength: 1
  8848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8849. type: string
  8850. namespace:
  8851. description: |-
  8852. The namespace of the Secret resource being referred to.
  8853. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8854. maxLength: 63
  8855. minLength: 1
  8856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8857. type: string
  8858. type: object
  8859. tenantId:
  8860. description: The Azure tenantId of the managed identity used for authentication.
  8861. properties:
  8862. key:
  8863. description: |-
  8864. A key in the referenced Secret.
  8865. Some instances of this field may be defaulted, in others it may be required.
  8866. maxLength: 253
  8867. minLength: 1
  8868. pattern: ^[-._a-zA-Z0-9]+$
  8869. type: string
  8870. name:
  8871. description: The name of the Secret resource being referred to.
  8872. maxLength: 253
  8873. minLength: 1
  8874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8875. type: string
  8876. namespace:
  8877. description: |-
  8878. The namespace of the Secret resource being referred to.
  8879. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8880. maxLength: 63
  8881. minLength: 1
  8882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8883. type: string
  8884. type: object
  8885. type: object
  8886. authType:
  8887. default: ServicePrincipal
  8888. description: |-
  8889. Auth type defines how to authenticate to the keyvault service.
  8890. Valid values are:
  8891. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  8892. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  8893. enum:
  8894. - ServicePrincipal
  8895. - ManagedIdentity
  8896. - WorkloadIdentity
  8897. type: string
  8898. environmentType:
  8899. default: PublicCloud
  8900. description: |-
  8901. EnvironmentType specifies the Azure cloud environment endpoints to use for
  8902. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  8903. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  8904. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  8905. enum:
  8906. - PublicCloud
  8907. - USGovernmentCloud
  8908. - ChinaCloud
  8909. - GermanCloud
  8910. type: string
  8911. identityId:
  8912. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  8913. type: string
  8914. serviceAccountRef:
  8915. description: |-
  8916. ServiceAccountRef specified the service account
  8917. that should be used when authenticating with WorkloadIdentity.
  8918. properties:
  8919. audiences:
  8920. description: |-
  8921. Audience specifies the `aud` claim for the service account token
  8922. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8923. then this audiences will be appended to the list
  8924. items:
  8925. type: string
  8926. type: array
  8927. name:
  8928. description: The name of the ServiceAccount resource being referred to.
  8929. maxLength: 253
  8930. minLength: 1
  8931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8932. type: string
  8933. namespace:
  8934. description: |-
  8935. Namespace of the resource being referred to.
  8936. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8937. maxLength: 63
  8938. minLength: 1
  8939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8940. type: string
  8941. required:
  8942. - name
  8943. type: object
  8944. tenantId:
  8945. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8946. type: string
  8947. vaultUrl:
  8948. description: Vault Url from which the secrets to be fetched from.
  8949. type: string
  8950. required:
  8951. - vaultUrl
  8952. type: object
  8953. beyondtrust:
  8954. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  8955. properties:
  8956. auth:
  8957. description: Auth configures how the operator authenticates with Beyondtrust.
  8958. properties:
  8959. apiKey:
  8960. description: APIKey If not provided then ClientID/ClientSecret become required.
  8961. properties:
  8962. secretRef:
  8963. description: SecretRef references a key in a secret that will be used as value.
  8964. properties:
  8965. key:
  8966. description: |-
  8967. A key in the referenced Secret.
  8968. Some instances of this field may be defaulted, in others it may be required.
  8969. maxLength: 253
  8970. minLength: 1
  8971. pattern: ^[-._a-zA-Z0-9]+$
  8972. type: string
  8973. name:
  8974. description: The name of the Secret resource being referred to.
  8975. maxLength: 253
  8976. minLength: 1
  8977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8978. type: string
  8979. namespace:
  8980. description: |-
  8981. The namespace of the Secret resource being referred to.
  8982. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8983. maxLength: 63
  8984. minLength: 1
  8985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8986. type: string
  8987. type: object
  8988. value:
  8989. description: Value can be specified directly to set a value without using a secret.
  8990. type: string
  8991. type: object
  8992. certificate:
  8993. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  8994. properties:
  8995. secretRef:
  8996. description: SecretRef references a key in a secret that will be used as value.
  8997. properties:
  8998. key:
  8999. description: |-
  9000. A key in the referenced Secret.
  9001. Some instances of this field may be defaulted, in others it may be required.
  9002. maxLength: 253
  9003. minLength: 1
  9004. pattern: ^[-._a-zA-Z0-9]+$
  9005. type: string
  9006. name:
  9007. description: The name of the Secret resource being referred to.
  9008. maxLength: 253
  9009. minLength: 1
  9010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9011. type: string
  9012. namespace:
  9013. description: |-
  9014. The namespace of the Secret resource being referred to.
  9015. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9016. maxLength: 63
  9017. minLength: 1
  9018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9019. type: string
  9020. type: object
  9021. value:
  9022. description: Value can be specified directly to set a value without using a secret.
  9023. type: string
  9024. type: object
  9025. certificateKey:
  9026. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9027. properties:
  9028. secretRef:
  9029. description: SecretRef references a key in a secret that will be used as value.
  9030. properties:
  9031. key:
  9032. description: |-
  9033. A key in the referenced Secret.
  9034. Some instances of this field may be defaulted, in others it may be required.
  9035. maxLength: 253
  9036. minLength: 1
  9037. pattern: ^[-._a-zA-Z0-9]+$
  9038. type: string
  9039. name:
  9040. description: The name of the Secret resource being referred to.
  9041. maxLength: 253
  9042. minLength: 1
  9043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9044. type: string
  9045. namespace:
  9046. description: |-
  9047. The namespace of the Secret resource being referred to.
  9048. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9049. maxLength: 63
  9050. minLength: 1
  9051. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9052. type: string
  9053. type: object
  9054. value:
  9055. description: Value can be specified directly to set a value without using a secret.
  9056. type: string
  9057. type: object
  9058. clientId:
  9059. description: ClientID is the API OAuth Client ID.
  9060. properties:
  9061. secretRef:
  9062. description: SecretRef references a key in a secret that will be used as value.
  9063. properties:
  9064. key:
  9065. description: |-
  9066. A key in the referenced Secret.
  9067. Some instances of this field may be defaulted, in others it may be required.
  9068. maxLength: 253
  9069. minLength: 1
  9070. pattern: ^[-._a-zA-Z0-9]+$
  9071. type: string
  9072. name:
  9073. description: The name of the Secret resource being referred to.
  9074. maxLength: 253
  9075. minLength: 1
  9076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9077. type: string
  9078. namespace:
  9079. description: |-
  9080. The namespace of the Secret resource being referred to.
  9081. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9082. maxLength: 63
  9083. minLength: 1
  9084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9085. type: string
  9086. type: object
  9087. value:
  9088. description: Value can be specified directly to set a value without using a secret.
  9089. type: string
  9090. type: object
  9091. clientSecret:
  9092. description: ClientSecret is the API OAuth Client Secret.
  9093. properties:
  9094. secretRef:
  9095. description: SecretRef references a key in a secret that will be used as value.
  9096. properties:
  9097. key:
  9098. description: |-
  9099. A key in the referenced Secret.
  9100. Some instances of this field may be defaulted, in others it may be required.
  9101. maxLength: 253
  9102. minLength: 1
  9103. pattern: ^[-._a-zA-Z0-9]+$
  9104. type: string
  9105. name:
  9106. description: The name of the Secret resource being referred to.
  9107. maxLength: 253
  9108. minLength: 1
  9109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9110. type: string
  9111. namespace:
  9112. description: |-
  9113. The namespace of the Secret resource being referred to.
  9114. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9115. maxLength: 63
  9116. minLength: 1
  9117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9118. type: string
  9119. type: object
  9120. value:
  9121. description: Value can be specified directly to set a value without using a secret.
  9122. type: string
  9123. type: object
  9124. type: object
  9125. server:
  9126. description: Auth configures how API server works.
  9127. properties:
  9128. apiUrl:
  9129. type: string
  9130. apiVersion:
  9131. type: string
  9132. clientTimeOutSeconds:
  9133. 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.
  9134. type: integer
  9135. decrypt:
  9136. default: true
  9137. 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.'
  9138. type: boolean
  9139. retrievalType:
  9140. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9141. type: string
  9142. separator:
  9143. description: A character that separates the folder names.
  9144. type: string
  9145. verifyCA:
  9146. type: boolean
  9147. required:
  9148. - apiUrl
  9149. - verifyCA
  9150. type: object
  9151. required:
  9152. - auth
  9153. - server
  9154. type: object
  9155. bitwardensecretsmanager:
  9156. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9157. properties:
  9158. apiURL:
  9159. type: string
  9160. auth:
  9161. description: |-
  9162. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9163. Make sure that the token being used has permissions on the given secret.
  9164. properties:
  9165. secretRef:
  9166. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9167. properties:
  9168. credentials:
  9169. description: AccessToken used for the bitwarden instance.
  9170. properties:
  9171. key:
  9172. description: |-
  9173. A key in the referenced Secret.
  9174. Some instances of this field may be defaulted, in others it may be required.
  9175. maxLength: 253
  9176. minLength: 1
  9177. pattern: ^[-._a-zA-Z0-9]+$
  9178. type: string
  9179. name:
  9180. description: The name of the Secret resource being referred to.
  9181. maxLength: 253
  9182. minLength: 1
  9183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9184. type: string
  9185. namespace:
  9186. description: |-
  9187. The namespace of the Secret resource being referred to.
  9188. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9189. maxLength: 63
  9190. minLength: 1
  9191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9192. type: string
  9193. type: object
  9194. required:
  9195. - credentials
  9196. type: object
  9197. required:
  9198. - secretRef
  9199. type: object
  9200. bitwardenServerSDKURL:
  9201. type: string
  9202. caBundle:
  9203. description: |-
  9204. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9205. can be performed.
  9206. type: string
  9207. caProvider:
  9208. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9209. properties:
  9210. key:
  9211. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9212. maxLength: 253
  9213. minLength: 1
  9214. pattern: ^[-._a-zA-Z0-9]+$
  9215. type: string
  9216. name:
  9217. description: The name of the object located at the provider type.
  9218. maxLength: 253
  9219. minLength: 1
  9220. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9221. type: string
  9222. namespace:
  9223. description: |-
  9224. The namespace the Provider type is in.
  9225. Can only be defined when used in a ClusterSecretStore.
  9226. maxLength: 63
  9227. minLength: 1
  9228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9229. type: string
  9230. type:
  9231. description: The type of provider to use such as "Secret", or "ConfigMap".
  9232. enum:
  9233. - Secret
  9234. - ConfigMap
  9235. type: string
  9236. required:
  9237. - name
  9238. - type
  9239. type: object
  9240. identityURL:
  9241. type: string
  9242. organizationID:
  9243. description: OrganizationID determines which organization this secret store manages.
  9244. type: string
  9245. projectID:
  9246. description: ProjectID determines which project this secret store manages.
  9247. type: string
  9248. required:
  9249. - auth
  9250. - organizationID
  9251. - projectID
  9252. type: object
  9253. chef:
  9254. description: Chef configures this store to sync secrets with chef server
  9255. properties:
  9256. auth:
  9257. description: Auth defines the information necessary to authenticate against chef Server
  9258. properties:
  9259. secretRef:
  9260. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9261. properties:
  9262. privateKeySecretRef:
  9263. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9264. properties:
  9265. key:
  9266. description: |-
  9267. A key in the referenced Secret.
  9268. Some instances of this field may be defaulted, in others it may be required.
  9269. maxLength: 253
  9270. minLength: 1
  9271. pattern: ^[-._a-zA-Z0-9]+$
  9272. type: string
  9273. name:
  9274. description: The name of the Secret resource being referred to.
  9275. maxLength: 253
  9276. minLength: 1
  9277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9278. type: string
  9279. namespace:
  9280. description: |-
  9281. The namespace of the Secret resource being referred to.
  9282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9283. maxLength: 63
  9284. minLength: 1
  9285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9286. type: string
  9287. type: object
  9288. required:
  9289. - privateKeySecretRef
  9290. type: object
  9291. required:
  9292. - secretRef
  9293. type: object
  9294. serverUrl:
  9295. 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 "/"
  9296. type: string
  9297. username:
  9298. description: UserName should be the user ID on the chef server
  9299. type: string
  9300. required:
  9301. - auth
  9302. - serverUrl
  9303. - username
  9304. type: object
  9305. cloudrusm:
  9306. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9307. properties:
  9308. auth:
  9309. description: CSMAuth contains a secretRef for credentials.
  9310. properties:
  9311. secretRef:
  9312. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9313. properties:
  9314. accessKeyIDSecretRef:
  9315. description: The AccessKeyID is used for authentication
  9316. properties:
  9317. key:
  9318. description: |-
  9319. A key in the referenced Secret.
  9320. Some instances of this field may be defaulted, in others it may be required.
  9321. maxLength: 253
  9322. minLength: 1
  9323. pattern: ^[-._a-zA-Z0-9]+$
  9324. type: string
  9325. name:
  9326. description: The name of the Secret resource being referred to.
  9327. maxLength: 253
  9328. minLength: 1
  9329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9330. type: string
  9331. namespace:
  9332. description: |-
  9333. The namespace of the Secret resource being referred to.
  9334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9335. maxLength: 63
  9336. minLength: 1
  9337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9338. type: string
  9339. type: object
  9340. accessKeySecretSecretRef:
  9341. description: The AccessKeySecret is used for authentication
  9342. properties:
  9343. key:
  9344. description: |-
  9345. A key in the referenced Secret.
  9346. Some instances of this field may be defaulted, in others it may be required.
  9347. maxLength: 253
  9348. minLength: 1
  9349. pattern: ^[-._a-zA-Z0-9]+$
  9350. type: string
  9351. name:
  9352. description: The name of the Secret resource being referred to.
  9353. maxLength: 253
  9354. minLength: 1
  9355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9356. type: string
  9357. namespace:
  9358. description: |-
  9359. The namespace of the Secret resource being referred to.
  9360. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9361. maxLength: 63
  9362. minLength: 1
  9363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9364. type: string
  9365. type: object
  9366. required:
  9367. - accessKeyIDSecretRef
  9368. - accessKeySecretSecretRef
  9369. type: object
  9370. type: object
  9371. projectID:
  9372. description: ProjectID is the project, which the secrets are stored in.
  9373. type: string
  9374. required:
  9375. - auth
  9376. type: object
  9377. conjur:
  9378. description: Conjur configures this store to sync secrets using conjur provider
  9379. properties:
  9380. auth:
  9381. description: Defines authentication settings for connecting to Conjur.
  9382. properties:
  9383. apikey:
  9384. description: Authenticates with Conjur using an API key.
  9385. properties:
  9386. account:
  9387. description: Account is the Conjur organization account name.
  9388. type: string
  9389. apiKeyRef:
  9390. description: |-
  9391. A reference to a specific 'key' containing the Conjur API key
  9392. within a Secret resource. In some instances, `key` is a required field.
  9393. properties:
  9394. key:
  9395. description: |-
  9396. A key in the referenced Secret.
  9397. Some instances of this field may be defaulted, in others it may be required.
  9398. maxLength: 253
  9399. minLength: 1
  9400. pattern: ^[-._a-zA-Z0-9]+$
  9401. type: string
  9402. name:
  9403. description: The name of the Secret resource being referred to.
  9404. maxLength: 253
  9405. minLength: 1
  9406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9407. type: string
  9408. namespace:
  9409. description: |-
  9410. The namespace of the Secret resource being referred to.
  9411. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9412. maxLength: 63
  9413. minLength: 1
  9414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9415. type: string
  9416. type: object
  9417. userRef:
  9418. description: |-
  9419. A reference to a specific 'key' containing the Conjur username
  9420. within a Secret resource. In some instances, `key` is a required field.
  9421. properties:
  9422. key:
  9423. description: |-
  9424. A key in the referenced Secret.
  9425. Some instances of this field may be defaulted, in others it may be required.
  9426. maxLength: 253
  9427. minLength: 1
  9428. pattern: ^[-._a-zA-Z0-9]+$
  9429. type: string
  9430. name:
  9431. description: The name of the Secret resource being referred to.
  9432. maxLength: 253
  9433. minLength: 1
  9434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9435. type: string
  9436. namespace:
  9437. description: |-
  9438. The namespace of the Secret resource being referred to.
  9439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9440. maxLength: 63
  9441. minLength: 1
  9442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9443. type: string
  9444. type: object
  9445. required:
  9446. - account
  9447. - apiKeyRef
  9448. - userRef
  9449. type: object
  9450. jwt:
  9451. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  9452. properties:
  9453. account:
  9454. description: Account is the Conjur organization account name.
  9455. type: string
  9456. hostId:
  9457. description: |-
  9458. Optional HostID for JWT authentication. This may be used depending
  9459. on how the Conjur JWT authenticator policy is configured.
  9460. type: string
  9461. secretRef:
  9462. description: |-
  9463. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9464. authenticate with Conjur using the JWT authentication method.
  9465. properties:
  9466. key:
  9467. description: |-
  9468. A key in the referenced Secret.
  9469. Some instances of this field may be defaulted, in others it may be required.
  9470. maxLength: 253
  9471. minLength: 1
  9472. pattern: ^[-._a-zA-Z0-9]+$
  9473. type: string
  9474. name:
  9475. description: The name of the Secret resource being referred to.
  9476. maxLength: 253
  9477. minLength: 1
  9478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9479. type: string
  9480. namespace:
  9481. description: |-
  9482. The namespace of the Secret resource being referred to.
  9483. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9484. maxLength: 63
  9485. minLength: 1
  9486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9487. type: string
  9488. type: object
  9489. serviceAccountRef:
  9490. description: |-
  9491. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  9492. a token for with the `TokenRequest` API.
  9493. properties:
  9494. audiences:
  9495. description: |-
  9496. Audience specifies the `aud` claim for the service account token
  9497. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9498. then this audiences will be appended to the list
  9499. items:
  9500. type: string
  9501. type: array
  9502. name:
  9503. description: The name of the ServiceAccount resource being referred to.
  9504. maxLength: 253
  9505. minLength: 1
  9506. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9507. type: string
  9508. namespace:
  9509. description: |-
  9510. Namespace of the resource being referred to.
  9511. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9512. maxLength: 63
  9513. minLength: 1
  9514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9515. type: string
  9516. required:
  9517. - name
  9518. type: object
  9519. serviceID:
  9520. description: The conjur authn jwt webservice id
  9521. type: string
  9522. required:
  9523. - account
  9524. - serviceID
  9525. type: object
  9526. type: object
  9527. caBundle:
  9528. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  9529. type: string
  9530. caProvider:
  9531. description: |-
  9532. Used to provide custom certificate authority (CA) certificates
  9533. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  9534. that contains a PEM-encoded certificate.
  9535. properties:
  9536. key:
  9537. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9538. maxLength: 253
  9539. minLength: 1
  9540. pattern: ^[-._a-zA-Z0-9]+$
  9541. type: string
  9542. name:
  9543. description: The name of the object located at the provider type.
  9544. maxLength: 253
  9545. minLength: 1
  9546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9547. type: string
  9548. namespace:
  9549. description: |-
  9550. The namespace the Provider type is in.
  9551. Can only be defined when used in a ClusterSecretStore.
  9552. maxLength: 63
  9553. minLength: 1
  9554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9555. type: string
  9556. type:
  9557. description: The type of provider to use such as "Secret", or "ConfigMap".
  9558. enum:
  9559. - Secret
  9560. - ConfigMap
  9561. type: string
  9562. required:
  9563. - name
  9564. - type
  9565. type: object
  9566. url:
  9567. description: URL is the endpoint of the Conjur instance.
  9568. type: string
  9569. required:
  9570. - auth
  9571. - url
  9572. type: object
  9573. delinea:
  9574. description: |-
  9575. Delinea DevOps Secrets Vault
  9576. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  9577. properties:
  9578. clientId:
  9579. description: ClientID is the non-secret part of the credential.
  9580. properties:
  9581. secretRef:
  9582. description: SecretRef references a key in a secret that will be used as value.
  9583. properties:
  9584. key:
  9585. description: |-
  9586. A key in the referenced Secret.
  9587. Some instances of this field may be defaulted, in others it may be required.
  9588. maxLength: 253
  9589. minLength: 1
  9590. pattern: ^[-._a-zA-Z0-9]+$
  9591. type: string
  9592. name:
  9593. description: The name of the Secret resource being referred to.
  9594. maxLength: 253
  9595. minLength: 1
  9596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9597. type: string
  9598. namespace:
  9599. description: |-
  9600. The namespace of the Secret resource being referred to.
  9601. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9602. maxLength: 63
  9603. minLength: 1
  9604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9605. type: string
  9606. type: object
  9607. value:
  9608. description: Value can be specified directly to set a value without using a secret.
  9609. type: string
  9610. type: object
  9611. clientSecret:
  9612. description: ClientSecret is the secret part of the credential.
  9613. properties:
  9614. secretRef:
  9615. description: SecretRef references a key in a secret that will be used as value.
  9616. properties:
  9617. key:
  9618. description: |-
  9619. A key in the referenced Secret.
  9620. Some instances of this field may be defaulted, in others it may be required.
  9621. maxLength: 253
  9622. minLength: 1
  9623. pattern: ^[-._a-zA-Z0-9]+$
  9624. type: string
  9625. name:
  9626. description: The name of the Secret resource being referred to.
  9627. maxLength: 253
  9628. minLength: 1
  9629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9630. type: string
  9631. namespace:
  9632. description: |-
  9633. The namespace of the Secret resource being referred to.
  9634. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9635. maxLength: 63
  9636. minLength: 1
  9637. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9638. type: string
  9639. type: object
  9640. value:
  9641. description: Value can be specified directly to set a value without using a secret.
  9642. type: string
  9643. type: object
  9644. tenant:
  9645. description: Tenant is the chosen hostname / site name.
  9646. type: string
  9647. tld:
  9648. description: |-
  9649. TLD is based on the server location that was chosen during provisioning.
  9650. If unset, defaults to "com".
  9651. type: string
  9652. urlTemplate:
  9653. description: |-
  9654. URLTemplate
  9655. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  9656. type: string
  9657. required:
  9658. - clientId
  9659. - clientSecret
  9660. - tenant
  9661. type: object
  9662. device42:
  9663. description: Device42 configures this store to sync secrets using the Device42 provider
  9664. properties:
  9665. auth:
  9666. description: Auth configures how secret-manager authenticates with a Device42 instance.
  9667. properties:
  9668. secretRef:
  9669. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  9670. properties:
  9671. credentials:
  9672. description: Username / Password is used for authentication.
  9673. properties:
  9674. key:
  9675. description: |-
  9676. A key in the referenced Secret.
  9677. Some instances of this field may be defaulted, in others it may be required.
  9678. maxLength: 253
  9679. minLength: 1
  9680. pattern: ^[-._a-zA-Z0-9]+$
  9681. type: string
  9682. name:
  9683. description: The name of the Secret resource being referred to.
  9684. maxLength: 253
  9685. minLength: 1
  9686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9687. type: string
  9688. namespace:
  9689. description: |-
  9690. The namespace of the Secret resource being referred to.
  9691. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9692. maxLength: 63
  9693. minLength: 1
  9694. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9695. type: string
  9696. type: object
  9697. type: object
  9698. required:
  9699. - secretRef
  9700. type: object
  9701. host:
  9702. description: URL configures the Device42 instance URL.
  9703. type: string
  9704. required:
  9705. - auth
  9706. - host
  9707. type: object
  9708. doppler:
  9709. description: Doppler configures this store to sync secrets using the Doppler provider
  9710. properties:
  9711. auth:
  9712. description: Auth configures how the Operator authenticates with the Doppler API
  9713. properties:
  9714. secretRef:
  9715. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  9716. properties:
  9717. dopplerToken:
  9718. description: |-
  9719. The DopplerToken is used for authentication.
  9720. See https://docs.doppler.com/reference/api#authentication for auth token types.
  9721. The Key attribute defaults to dopplerToken if not specified.
  9722. properties:
  9723. key:
  9724. description: |-
  9725. A key in the referenced Secret.
  9726. Some instances of this field may be defaulted, in others it may be required.
  9727. maxLength: 253
  9728. minLength: 1
  9729. pattern: ^[-._a-zA-Z0-9]+$
  9730. type: string
  9731. name:
  9732. description: The name of the Secret resource being referred to.
  9733. maxLength: 253
  9734. minLength: 1
  9735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9736. type: string
  9737. namespace:
  9738. description: |-
  9739. The namespace of the Secret resource being referred to.
  9740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9741. maxLength: 63
  9742. minLength: 1
  9743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9744. type: string
  9745. type: object
  9746. required:
  9747. - dopplerToken
  9748. type: object
  9749. required:
  9750. - secretRef
  9751. type: object
  9752. config:
  9753. description: Doppler config (required if not using a Service Token)
  9754. type: string
  9755. format:
  9756. description: Format enables the downloading of secrets as a file (string)
  9757. enum:
  9758. - json
  9759. - dotnet-json
  9760. - env
  9761. - yaml
  9762. - docker
  9763. type: string
  9764. nameTransformer:
  9765. description: Environment variable compatible name transforms that change secret names to a different format
  9766. enum:
  9767. - upper-camel
  9768. - camel
  9769. - lower-snake
  9770. - tf-var
  9771. - dotnet-env
  9772. - lower-kebab
  9773. type: string
  9774. project:
  9775. description: Doppler project (required if not using a Service Token)
  9776. type: string
  9777. required:
  9778. - auth
  9779. type: object
  9780. fake:
  9781. description: Fake configures a store with static key/value pairs
  9782. properties:
  9783. data:
  9784. items:
  9785. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  9786. properties:
  9787. key:
  9788. type: string
  9789. value:
  9790. type: string
  9791. version:
  9792. type: string
  9793. required:
  9794. - key
  9795. - value
  9796. type: object
  9797. type: array
  9798. required:
  9799. - data
  9800. type: object
  9801. fortanix:
  9802. description: Fortanix configures this store to sync secrets using the Fortanix provider
  9803. properties:
  9804. apiKey:
  9805. description: APIKey is the API token to access SDKMS Applications.
  9806. properties:
  9807. secretRef:
  9808. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  9809. properties:
  9810. key:
  9811. description: |-
  9812. A key in the referenced Secret.
  9813. Some instances of this field may be defaulted, in others it may be required.
  9814. maxLength: 253
  9815. minLength: 1
  9816. pattern: ^[-._a-zA-Z0-9]+$
  9817. type: string
  9818. name:
  9819. description: The name of the Secret resource being referred to.
  9820. maxLength: 253
  9821. minLength: 1
  9822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9823. type: string
  9824. namespace:
  9825. description: |-
  9826. The namespace of the Secret resource being referred to.
  9827. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9828. maxLength: 63
  9829. minLength: 1
  9830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9831. type: string
  9832. type: object
  9833. type: object
  9834. apiUrl:
  9835. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  9836. type: string
  9837. type: object
  9838. gcpsm:
  9839. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  9840. properties:
  9841. auth:
  9842. description: Auth defines the information necessary to authenticate against GCP
  9843. properties:
  9844. secretRef:
  9845. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  9846. properties:
  9847. secretAccessKeySecretRef:
  9848. description: The SecretAccessKey is used for authentication
  9849. properties:
  9850. key:
  9851. description: |-
  9852. A key in the referenced Secret.
  9853. Some instances of this field may be defaulted, in others it may be required.
  9854. maxLength: 253
  9855. minLength: 1
  9856. pattern: ^[-._a-zA-Z0-9]+$
  9857. type: string
  9858. name:
  9859. description: The name of the Secret resource being referred to.
  9860. maxLength: 253
  9861. minLength: 1
  9862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9863. type: string
  9864. namespace:
  9865. description: |-
  9866. The namespace of the Secret resource being referred to.
  9867. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9868. maxLength: 63
  9869. minLength: 1
  9870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9871. type: string
  9872. type: object
  9873. type: object
  9874. workloadIdentity:
  9875. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  9876. properties:
  9877. clusterLocation:
  9878. description: |-
  9879. ClusterLocation is the location of the cluster
  9880. If not specified, it fetches information from the metadata server
  9881. type: string
  9882. clusterName:
  9883. description: |-
  9884. ClusterName is the name of the cluster
  9885. If not specified, it fetches information from the metadata server
  9886. type: string
  9887. clusterProjectID:
  9888. description: |-
  9889. ClusterProjectID is the project ID of the cluster
  9890. If not specified, it fetches information from the metadata server
  9891. type: string
  9892. serviceAccountRef:
  9893. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  9894. properties:
  9895. audiences:
  9896. description: |-
  9897. Audience specifies the `aud` claim for the service account token
  9898. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9899. then this audiences will be appended to the list
  9900. items:
  9901. type: string
  9902. type: array
  9903. name:
  9904. description: The name of the ServiceAccount resource being referred to.
  9905. maxLength: 253
  9906. minLength: 1
  9907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9908. type: string
  9909. namespace:
  9910. description: |-
  9911. Namespace of the resource being referred to.
  9912. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9913. maxLength: 63
  9914. minLength: 1
  9915. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9916. type: string
  9917. required:
  9918. - name
  9919. type: object
  9920. required:
  9921. - serviceAccountRef
  9922. type: object
  9923. type: object
  9924. location:
  9925. description: Location optionally defines a location for a secret
  9926. type: string
  9927. projectID:
  9928. description: ProjectID project where secret is located
  9929. type: string
  9930. type: object
  9931. github:
  9932. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  9933. properties:
  9934. appID:
  9935. description: appID specifies the Github APP that will be used to authenticate the client
  9936. format: int64
  9937. type: integer
  9938. auth:
  9939. description: auth configures how secret-manager authenticates with a Github instance.
  9940. properties:
  9941. privateKey:
  9942. description: |-
  9943. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  9944. In some instances, `key` is a required field.
  9945. properties:
  9946. key:
  9947. description: |-
  9948. A key in the referenced Secret.
  9949. Some instances of this field may be defaulted, in others it may be required.
  9950. maxLength: 253
  9951. minLength: 1
  9952. pattern: ^[-._a-zA-Z0-9]+$
  9953. type: string
  9954. name:
  9955. description: The name of the Secret resource being referred to.
  9956. maxLength: 253
  9957. minLength: 1
  9958. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9959. type: string
  9960. namespace:
  9961. description: |-
  9962. The namespace of the Secret resource being referred to.
  9963. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9964. maxLength: 63
  9965. minLength: 1
  9966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9967. type: string
  9968. type: object
  9969. required:
  9970. - privateKey
  9971. type: object
  9972. environment:
  9973. description: environment will be used to fetch secrets from a particular environment within a github repository
  9974. type: string
  9975. installationID:
  9976. description: installationID specifies the Github APP installation that will be used to authenticate the client
  9977. format: int64
  9978. type: integer
  9979. organization:
  9980. description: organization will be used to fetch secrets from the Github organization
  9981. type: string
  9982. repository:
  9983. description: repository will be used to fetch secrets from the Github repository within an organization
  9984. type: string
  9985. uploadURL:
  9986. description: Upload URL for enterprise instances. Default to URL.
  9987. type: string
  9988. url:
  9989. default: https://github.com/
  9990. description: URL configures the Github instance URL. Defaults to https://github.com/.
  9991. type: string
  9992. required:
  9993. - appID
  9994. - auth
  9995. - installationID
  9996. - organization
  9997. type: object
  9998. gitlab:
  9999. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10000. properties:
  10001. auth:
  10002. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10003. properties:
  10004. SecretRef:
  10005. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10006. properties:
  10007. accessToken:
  10008. description: AccessToken is used for authentication.
  10009. properties:
  10010. key:
  10011. description: |-
  10012. A key in the referenced Secret.
  10013. Some instances of this field may be defaulted, in others it may be required.
  10014. maxLength: 253
  10015. minLength: 1
  10016. pattern: ^[-._a-zA-Z0-9]+$
  10017. type: string
  10018. name:
  10019. description: The name of the Secret resource being referred to.
  10020. maxLength: 253
  10021. minLength: 1
  10022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10023. type: string
  10024. namespace:
  10025. description: |-
  10026. The namespace of the Secret resource being referred to.
  10027. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10028. maxLength: 63
  10029. minLength: 1
  10030. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10031. type: string
  10032. type: object
  10033. type: object
  10034. required:
  10035. - SecretRef
  10036. type: object
  10037. caBundle:
  10038. description: |-
  10039. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10040. can be performed.
  10041. format: byte
  10042. type: string
  10043. caProvider:
  10044. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10045. properties:
  10046. key:
  10047. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10048. maxLength: 253
  10049. minLength: 1
  10050. pattern: ^[-._a-zA-Z0-9]+$
  10051. type: string
  10052. name:
  10053. description: The name of the object located at the provider type.
  10054. maxLength: 253
  10055. minLength: 1
  10056. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10057. type: string
  10058. namespace:
  10059. description: |-
  10060. The namespace the Provider type is in.
  10061. Can only be defined when used in a ClusterSecretStore.
  10062. maxLength: 63
  10063. minLength: 1
  10064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10065. type: string
  10066. type:
  10067. description: The type of provider to use such as "Secret", or "ConfigMap".
  10068. enum:
  10069. - Secret
  10070. - ConfigMap
  10071. type: string
  10072. required:
  10073. - name
  10074. - type
  10075. type: object
  10076. environment:
  10077. 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)
  10078. type: string
  10079. groupIDs:
  10080. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10081. items:
  10082. type: string
  10083. type: array
  10084. inheritFromGroups:
  10085. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10086. type: boolean
  10087. projectID:
  10088. description: ProjectID specifies a project where secrets are located.
  10089. type: string
  10090. url:
  10091. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10092. type: string
  10093. required:
  10094. - auth
  10095. type: object
  10096. ibm:
  10097. description: IBM configures this store to sync secrets using IBM Cloud provider
  10098. properties:
  10099. auth:
  10100. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10101. maxProperties: 1
  10102. minProperties: 1
  10103. properties:
  10104. containerAuth:
  10105. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10106. properties:
  10107. iamEndpoint:
  10108. type: string
  10109. profile:
  10110. description: the IBM Trusted Profile
  10111. type: string
  10112. tokenLocation:
  10113. description: Location the token is mounted on the pod
  10114. type: string
  10115. required:
  10116. - profile
  10117. type: object
  10118. secretRef:
  10119. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10120. properties:
  10121. secretApiKeySecretRef:
  10122. description: The SecretAccessKey is used for authentication
  10123. properties:
  10124. key:
  10125. description: |-
  10126. A key in the referenced Secret.
  10127. Some instances of this field may be defaulted, in others it may be required.
  10128. maxLength: 253
  10129. minLength: 1
  10130. pattern: ^[-._a-zA-Z0-9]+$
  10131. type: string
  10132. name:
  10133. description: The name of the Secret resource being referred to.
  10134. maxLength: 253
  10135. minLength: 1
  10136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10137. type: string
  10138. namespace:
  10139. description: |-
  10140. The namespace of the Secret resource being referred to.
  10141. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10142. maxLength: 63
  10143. minLength: 1
  10144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10145. type: string
  10146. type: object
  10147. type: object
  10148. type: object
  10149. serviceUrl:
  10150. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10151. type: string
  10152. required:
  10153. - auth
  10154. type: object
  10155. infisical:
  10156. description: Infisical configures this store to sync secrets using the Infisical provider
  10157. properties:
  10158. auth:
  10159. description: Auth configures how the Operator authenticates with the Infisical API
  10160. properties:
  10161. universalAuthCredentials:
  10162. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10163. properties:
  10164. clientId:
  10165. description: |-
  10166. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10167. In some instances, `key` is a required field.
  10168. properties:
  10169. key:
  10170. description: |-
  10171. A key in the referenced Secret.
  10172. Some instances of this field may be defaulted, in others it may be required.
  10173. maxLength: 253
  10174. minLength: 1
  10175. pattern: ^[-._a-zA-Z0-9]+$
  10176. type: string
  10177. name:
  10178. description: The name of the Secret resource being referred to.
  10179. maxLength: 253
  10180. minLength: 1
  10181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10182. type: string
  10183. namespace:
  10184. description: |-
  10185. The namespace of the Secret resource being referred to.
  10186. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10187. maxLength: 63
  10188. minLength: 1
  10189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10190. type: string
  10191. type: object
  10192. clientSecret:
  10193. description: |-
  10194. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10195. In some instances, `key` is a required field.
  10196. properties:
  10197. key:
  10198. description: |-
  10199. A key in the referenced Secret.
  10200. Some instances of this field may be defaulted, in others it may be required.
  10201. maxLength: 253
  10202. minLength: 1
  10203. pattern: ^[-._a-zA-Z0-9]+$
  10204. type: string
  10205. name:
  10206. description: The name of the Secret resource being referred to.
  10207. maxLength: 253
  10208. minLength: 1
  10209. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10210. type: string
  10211. namespace:
  10212. description: |-
  10213. The namespace of the Secret resource being referred to.
  10214. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10215. maxLength: 63
  10216. minLength: 1
  10217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10218. type: string
  10219. type: object
  10220. required:
  10221. - clientId
  10222. - clientSecret
  10223. type: object
  10224. type: object
  10225. hostAPI:
  10226. default: https://app.infisical.com/api
  10227. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10228. type: string
  10229. secretsScope:
  10230. description: SecretsScope defines the scope of the secrets within the workspace
  10231. properties:
  10232. environmentSlug:
  10233. description: EnvironmentSlug is the required slug identifier for the environment.
  10234. type: string
  10235. expandSecretReferences:
  10236. default: true
  10237. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10238. type: boolean
  10239. projectSlug:
  10240. description: ProjectSlug is the required slug identifier for the project.
  10241. type: string
  10242. recursive:
  10243. default: false
  10244. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10245. type: boolean
  10246. secretsPath:
  10247. default: /
  10248. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10249. type: string
  10250. required:
  10251. - environmentSlug
  10252. - projectSlug
  10253. type: object
  10254. required:
  10255. - auth
  10256. - secretsScope
  10257. type: object
  10258. keepersecurity:
  10259. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10260. properties:
  10261. authRef:
  10262. description: |-
  10263. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10264. In some instances, `key` is a required field.
  10265. properties:
  10266. key:
  10267. description: |-
  10268. A key in the referenced Secret.
  10269. Some instances of this field may be defaulted, in others it may be required.
  10270. maxLength: 253
  10271. minLength: 1
  10272. pattern: ^[-._a-zA-Z0-9]+$
  10273. type: string
  10274. name:
  10275. description: The name of the Secret resource being referred to.
  10276. maxLength: 253
  10277. minLength: 1
  10278. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10279. type: string
  10280. namespace:
  10281. description: |-
  10282. The namespace of the Secret resource being referred to.
  10283. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10284. maxLength: 63
  10285. minLength: 1
  10286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10287. type: string
  10288. type: object
  10289. folderID:
  10290. type: string
  10291. required:
  10292. - authRef
  10293. - folderID
  10294. type: object
  10295. kubernetes:
  10296. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10297. properties:
  10298. auth:
  10299. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10300. maxProperties: 1
  10301. minProperties: 1
  10302. properties:
  10303. cert:
  10304. description: has both clientCert and clientKey as secretKeySelector
  10305. properties:
  10306. clientCert:
  10307. description: |-
  10308. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10309. In some instances, `key` is a required field.
  10310. properties:
  10311. key:
  10312. description: |-
  10313. A key in the referenced Secret.
  10314. Some instances of this field may be defaulted, in others it may be required.
  10315. maxLength: 253
  10316. minLength: 1
  10317. pattern: ^[-._a-zA-Z0-9]+$
  10318. type: string
  10319. name:
  10320. description: The name of the Secret resource being referred to.
  10321. maxLength: 253
  10322. minLength: 1
  10323. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10324. type: string
  10325. namespace:
  10326. description: |-
  10327. The namespace of the Secret resource being referred to.
  10328. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10329. maxLength: 63
  10330. minLength: 1
  10331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10332. type: string
  10333. type: object
  10334. clientKey:
  10335. description: |-
  10336. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10337. In some instances, `key` is a required field.
  10338. properties:
  10339. key:
  10340. description: |-
  10341. A key in the referenced Secret.
  10342. Some instances of this field may be defaulted, in others it may be required.
  10343. maxLength: 253
  10344. minLength: 1
  10345. pattern: ^[-._a-zA-Z0-9]+$
  10346. type: string
  10347. name:
  10348. description: The name of the Secret resource being referred to.
  10349. maxLength: 253
  10350. minLength: 1
  10351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10352. type: string
  10353. namespace:
  10354. description: |-
  10355. The namespace of the Secret resource being referred to.
  10356. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10357. maxLength: 63
  10358. minLength: 1
  10359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10360. type: string
  10361. type: object
  10362. type: object
  10363. serviceAccount:
  10364. description: points to a service account that should be used for authentication
  10365. properties:
  10366. audiences:
  10367. description: |-
  10368. Audience specifies the `aud` claim for the service account token
  10369. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10370. then this audiences will be appended to the list
  10371. items:
  10372. type: string
  10373. type: array
  10374. name:
  10375. description: The name of the ServiceAccount resource being referred to.
  10376. maxLength: 253
  10377. minLength: 1
  10378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10379. type: string
  10380. namespace:
  10381. description: |-
  10382. Namespace of the resource being referred to.
  10383. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10384. maxLength: 63
  10385. minLength: 1
  10386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10387. type: string
  10388. required:
  10389. - name
  10390. type: object
  10391. token:
  10392. description: use static token to authenticate with
  10393. properties:
  10394. bearerToken:
  10395. description: |-
  10396. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10397. In some instances, `key` is a required field.
  10398. properties:
  10399. key:
  10400. description: |-
  10401. A key in the referenced Secret.
  10402. Some instances of this field may be defaulted, in others it may be required.
  10403. maxLength: 253
  10404. minLength: 1
  10405. pattern: ^[-._a-zA-Z0-9]+$
  10406. type: string
  10407. name:
  10408. description: The name of the Secret resource being referred to.
  10409. maxLength: 253
  10410. minLength: 1
  10411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10412. type: string
  10413. namespace:
  10414. description: |-
  10415. The namespace of the Secret resource being referred to.
  10416. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10417. maxLength: 63
  10418. minLength: 1
  10419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10420. type: string
  10421. type: object
  10422. type: object
  10423. type: object
  10424. authRef:
  10425. description: A reference to a secret that contains the auth information.
  10426. properties:
  10427. key:
  10428. description: |-
  10429. A key in the referenced Secret.
  10430. Some instances of this field may be defaulted, in others it may be required.
  10431. maxLength: 253
  10432. minLength: 1
  10433. pattern: ^[-._a-zA-Z0-9]+$
  10434. type: string
  10435. name:
  10436. description: The name of the Secret resource being referred to.
  10437. maxLength: 253
  10438. minLength: 1
  10439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10440. type: string
  10441. namespace:
  10442. description: |-
  10443. The namespace of the Secret resource being referred to.
  10444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10445. maxLength: 63
  10446. minLength: 1
  10447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10448. type: string
  10449. type: object
  10450. remoteNamespace:
  10451. default: default
  10452. description: Remote namespace to fetch the secrets from
  10453. maxLength: 63
  10454. minLength: 1
  10455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10456. type: string
  10457. server:
  10458. description: configures the Kubernetes server Address.
  10459. properties:
  10460. caBundle:
  10461. description: CABundle is a base64-encoded CA certificate
  10462. format: byte
  10463. type: string
  10464. caProvider:
  10465. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  10466. properties:
  10467. key:
  10468. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10469. maxLength: 253
  10470. minLength: 1
  10471. pattern: ^[-._a-zA-Z0-9]+$
  10472. type: string
  10473. name:
  10474. description: The name of the object located at the provider type.
  10475. maxLength: 253
  10476. minLength: 1
  10477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10478. type: string
  10479. namespace:
  10480. description: |-
  10481. The namespace the Provider type is in.
  10482. Can only be defined when used in a ClusterSecretStore.
  10483. maxLength: 63
  10484. minLength: 1
  10485. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10486. type: string
  10487. type:
  10488. description: The type of provider to use such as "Secret", or "ConfigMap".
  10489. enum:
  10490. - Secret
  10491. - ConfigMap
  10492. type: string
  10493. required:
  10494. - name
  10495. - type
  10496. type: object
  10497. url:
  10498. default: kubernetes.default
  10499. description: configures the Kubernetes server Address.
  10500. type: string
  10501. type: object
  10502. type: object
  10503. onboardbase:
  10504. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  10505. properties:
  10506. apiHost:
  10507. default: https://public.onboardbase.com/api/v1/
  10508. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  10509. type: string
  10510. auth:
  10511. description: Auth configures how the Operator authenticates with the Onboardbase API
  10512. properties:
  10513. apiKeyRef:
  10514. description: |-
  10515. OnboardbaseAPIKey is the APIKey generated by an admin account.
  10516. It is used to recognize and authorize access to a project and environment within onboardbase
  10517. properties:
  10518. key:
  10519. description: |-
  10520. A key in the referenced Secret.
  10521. Some instances of this field may be defaulted, in others it may be required.
  10522. maxLength: 253
  10523. minLength: 1
  10524. pattern: ^[-._a-zA-Z0-9]+$
  10525. type: string
  10526. name:
  10527. description: The name of the Secret resource being referred to.
  10528. maxLength: 253
  10529. minLength: 1
  10530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10531. type: string
  10532. namespace:
  10533. description: |-
  10534. The namespace of the Secret resource being referred to.
  10535. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10536. maxLength: 63
  10537. minLength: 1
  10538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10539. type: string
  10540. type: object
  10541. passcodeRef:
  10542. description: OnboardbasePasscode is the passcode attached to the API Key
  10543. properties:
  10544. key:
  10545. description: |-
  10546. A key in the referenced Secret.
  10547. Some instances of this field may be defaulted, in others it may be required.
  10548. maxLength: 253
  10549. minLength: 1
  10550. pattern: ^[-._a-zA-Z0-9]+$
  10551. type: string
  10552. name:
  10553. description: The name of the Secret resource being referred to.
  10554. maxLength: 253
  10555. minLength: 1
  10556. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10557. type: string
  10558. namespace:
  10559. description: |-
  10560. The namespace of the Secret resource being referred to.
  10561. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10562. maxLength: 63
  10563. minLength: 1
  10564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10565. type: string
  10566. type: object
  10567. required:
  10568. - apiKeyRef
  10569. - passcodeRef
  10570. type: object
  10571. environment:
  10572. default: development
  10573. description: Environment is the name of an environmnent within a project to pull the secrets from
  10574. type: string
  10575. project:
  10576. default: development
  10577. description: Project is an onboardbase project that the secrets should be pulled from
  10578. type: string
  10579. required:
  10580. - apiHost
  10581. - auth
  10582. - environment
  10583. - project
  10584. type: object
  10585. onepassword:
  10586. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  10587. properties:
  10588. auth:
  10589. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  10590. properties:
  10591. secretRef:
  10592. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  10593. properties:
  10594. connectTokenSecretRef:
  10595. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  10596. properties:
  10597. key:
  10598. description: |-
  10599. A key in the referenced Secret.
  10600. Some instances of this field may be defaulted, in others it may be required.
  10601. maxLength: 253
  10602. minLength: 1
  10603. pattern: ^[-._a-zA-Z0-9]+$
  10604. type: string
  10605. name:
  10606. description: The name of the Secret resource being referred to.
  10607. maxLength: 253
  10608. minLength: 1
  10609. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10610. type: string
  10611. namespace:
  10612. description: |-
  10613. The namespace of the Secret resource being referred to.
  10614. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10615. maxLength: 63
  10616. minLength: 1
  10617. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10618. type: string
  10619. type: object
  10620. required:
  10621. - connectTokenSecretRef
  10622. type: object
  10623. required:
  10624. - secretRef
  10625. type: object
  10626. connectHost:
  10627. description: ConnectHost defines the OnePassword Connect Server to connect to
  10628. type: string
  10629. vaults:
  10630. additionalProperties:
  10631. type: integer
  10632. description: Vaults defines which OnePassword vaults to search in which order
  10633. type: object
  10634. required:
  10635. - auth
  10636. - connectHost
  10637. - vaults
  10638. type: object
  10639. oracle:
  10640. description: Oracle configures this store to sync secrets using Oracle Vault provider
  10641. properties:
  10642. auth:
  10643. description: |-
  10644. Auth configures how secret-manager authenticates with the Oracle Vault.
  10645. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  10646. properties:
  10647. secretRef:
  10648. description: SecretRef to pass through sensitive information.
  10649. properties:
  10650. fingerprint:
  10651. description: Fingerprint is the fingerprint of the API private key.
  10652. properties:
  10653. key:
  10654. description: |-
  10655. A key in the referenced Secret.
  10656. Some instances of this field may be defaulted, in others it may be required.
  10657. maxLength: 253
  10658. minLength: 1
  10659. pattern: ^[-._a-zA-Z0-9]+$
  10660. type: string
  10661. name:
  10662. description: The name of the Secret resource being referred to.
  10663. maxLength: 253
  10664. minLength: 1
  10665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10666. type: string
  10667. namespace:
  10668. description: |-
  10669. The namespace of the Secret resource being referred to.
  10670. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10671. maxLength: 63
  10672. minLength: 1
  10673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10674. type: string
  10675. type: object
  10676. privatekey:
  10677. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  10678. properties:
  10679. key:
  10680. description: |-
  10681. A key in the referenced Secret.
  10682. Some instances of this field may be defaulted, in others it may be required.
  10683. maxLength: 253
  10684. minLength: 1
  10685. pattern: ^[-._a-zA-Z0-9]+$
  10686. type: string
  10687. name:
  10688. description: The name of the Secret resource being referred to.
  10689. maxLength: 253
  10690. minLength: 1
  10691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10692. type: string
  10693. namespace:
  10694. description: |-
  10695. The namespace of the Secret resource being referred to.
  10696. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10697. maxLength: 63
  10698. minLength: 1
  10699. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10700. type: string
  10701. type: object
  10702. required:
  10703. - fingerprint
  10704. - privatekey
  10705. type: object
  10706. tenancy:
  10707. description: Tenancy is the tenancy OCID where user is located.
  10708. type: string
  10709. user:
  10710. description: User is an access OCID specific to the account.
  10711. type: string
  10712. required:
  10713. - secretRef
  10714. - tenancy
  10715. - user
  10716. type: object
  10717. compartment:
  10718. description: |-
  10719. Compartment is the vault compartment OCID.
  10720. Required for PushSecret
  10721. type: string
  10722. encryptionKey:
  10723. description: |-
  10724. EncryptionKey is the OCID of the encryption key within the vault.
  10725. Required for PushSecret
  10726. type: string
  10727. principalType:
  10728. description: |-
  10729. The type of principal to use for authentication. If left blank, the Auth struct will
  10730. determine the principal type. This optional field must be specified if using
  10731. workload identity.
  10732. enum:
  10733. - ""
  10734. - UserPrincipal
  10735. - InstancePrincipal
  10736. - Workload
  10737. type: string
  10738. region:
  10739. description: Region is the region where vault is located.
  10740. type: string
  10741. serviceAccountRef:
  10742. description: |-
  10743. ServiceAccountRef specified the service account
  10744. that should be used when authenticating with WorkloadIdentity.
  10745. properties:
  10746. audiences:
  10747. description: |-
  10748. Audience specifies the `aud` claim for the service account token
  10749. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10750. then this audiences will be appended to the list
  10751. items:
  10752. type: string
  10753. type: array
  10754. name:
  10755. description: The name of the ServiceAccount resource being referred to.
  10756. maxLength: 253
  10757. minLength: 1
  10758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10759. type: string
  10760. namespace:
  10761. description: |-
  10762. Namespace of the resource being referred to.
  10763. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10764. maxLength: 63
  10765. minLength: 1
  10766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10767. type: string
  10768. required:
  10769. - name
  10770. type: object
  10771. vault:
  10772. description: Vault is the vault's OCID of the specific vault where secret is located.
  10773. type: string
  10774. required:
  10775. - region
  10776. - vault
  10777. type: object
  10778. passbolt:
  10779. description: PassboltProvider defines configuration for the Passbolt provider.
  10780. properties:
  10781. auth:
  10782. description: Auth defines the information necessary to authenticate against Passbolt Server
  10783. properties:
  10784. passwordSecretRef:
  10785. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  10786. properties:
  10787. key:
  10788. description: |-
  10789. A key in the referenced Secret.
  10790. Some instances of this field may be defaulted, in others it may be required.
  10791. maxLength: 253
  10792. minLength: 1
  10793. pattern: ^[-._a-zA-Z0-9]+$
  10794. type: string
  10795. name:
  10796. description: The name of the Secret resource being referred to.
  10797. maxLength: 253
  10798. minLength: 1
  10799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10800. type: string
  10801. namespace:
  10802. description: |-
  10803. The namespace of the Secret resource being referred to.
  10804. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10805. maxLength: 63
  10806. minLength: 1
  10807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10808. type: string
  10809. type: object
  10810. privateKeySecretRef:
  10811. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  10812. properties:
  10813. key:
  10814. description: |-
  10815. A key in the referenced Secret.
  10816. Some instances of this field may be defaulted, in others it may be required.
  10817. maxLength: 253
  10818. minLength: 1
  10819. pattern: ^[-._a-zA-Z0-9]+$
  10820. type: string
  10821. name:
  10822. description: The name of the Secret resource being referred to.
  10823. maxLength: 253
  10824. minLength: 1
  10825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10826. type: string
  10827. namespace:
  10828. description: |-
  10829. The namespace of the Secret resource being referred to.
  10830. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10831. maxLength: 63
  10832. minLength: 1
  10833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10834. type: string
  10835. type: object
  10836. required:
  10837. - passwordSecretRef
  10838. - privateKeySecretRef
  10839. type: object
  10840. host:
  10841. description: Host defines the Passbolt Server to connect to
  10842. type: string
  10843. required:
  10844. - auth
  10845. - host
  10846. type: object
  10847. passworddepot:
  10848. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  10849. properties:
  10850. auth:
  10851. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  10852. properties:
  10853. secretRef:
  10854. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  10855. properties:
  10856. credentials:
  10857. description: Username / Password is used for authentication.
  10858. properties:
  10859. key:
  10860. description: |-
  10861. A key in the referenced Secret.
  10862. Some instances of this field may be defaulted, in others it may be required.
  10863. maxLength: 253
  10864. minLength: 1
  10865. pattern: ^[-._a-zA-Z0-9]+$
  10866. type: string
  10867. name:
  10868. description: The name of the Secret resource being referred to.
  10869. maxLength: 253
  10870. minLength: 1
  10871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10872. type: string
  10873. namespace:
  10874. description: |-
  10875. The namespace of the Secret resource being referred to.
  10876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10877. maxLength: 63
  10878. minLength: 1
  10879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10880. type: string
  10881. type: object
  10882. type: object
  10883. required:
  10884. - secretRef
  10885. type: object
  10886. database:
  10887. description: Database to use as source
  10888. type: string
  10889. host:
  10890. description: URL configures the Password Depot instance URL.
  10891. type: string
  10892. required:
  10893. - auth
  10894. - database
  10895. - host
  10896. type: object
  10897. previder:
  10898. description: Previder configures this store to sync secrets using the Previder provider
  10899. properties:
  10900. auth:
  10901. description: PreviderAuth contains a secretRef for credentials.
  10902. properties:
  10903. secretRef:
  10904. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  10905. properties:
  10906. accessToken:
  10907. description: The AccessToken is used for authentication
  10908. properties:
  10909. key:
  10910. description: |-
  10911. A key in the referenced Secret.
  10912. Some instances of this field may be defaulted, in others it may be required.
  10913. maxLength: 253
  10914. minLength: 1
  10915. pattern: ^[-._a-zA-Z0-9]+$
  10916. type: string
  10917. name:
  10918. description: The name of the Secret resource being referred to.
  10919. maxLength: 253
  10920. minLength: 1
  10921. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10922. type: string
  10923. namespace:
  10924. description: |-
  10925. The namespace of the Secret resource being referred to.
  10926. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10927. maxLength: 63
  10928. minLength: 1
  10929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10930. type: string
  10931. type: object
  10932. required:
  10933. - accessToken
  10934. type: object
  10935. type: object
  10936. baseUri:
  10937. type: string
  10938. required:
  10939. - auth
  10940. type: object
  10941. pulumi:
  10942. description: Pulumi configures this store to sync secrets using the Pulumi provider
  10943. properties:
  10944. accessToken:
  10945. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  10946. properties:
  10947. secretRef:
  10948. description: SecretRef is a reference to a secret containing the Pulumi API token.
  10949. properties:
  10950. key:
  10951. description: |-
  10952. A key in the referenced Secret.
  10953. Some instances of this field may be defaulted, in others it may be required.
  10954. maxLength: 253
  10955. minLength: 1
  10956. pattern: ^[-._a-zA-Z0-9]+$
  10957. type: string
  10958. name:
  10959. description: The name of the Secret resource being referred to.
  10960. maxLength: 253
  10961. minLength: 1
  10962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10963. type: string
  10964. namespace:
  10965. description: |-
  10966. The namespace of the Secret resource being referred to.
  10967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10968. maxLength: 63
  10969. minLength: 1
  10970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10971. type: string
  10972. type: object
  10973. type: object
  10974. apiUrl:
  10975. default: https://api.pulumi.com/api/esc
  10976. description: APIURL is the URL of the Pulumi API.
  10977. type: string
  10978. environment:
  10979. description: |-
  10980. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  10981. dynamically retrieved values from supported providers including all major clouds,
  10982. and other Pulumi ESC environments.
  10983. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  10984. type: string
  10985. organization:
  10986. description: |-
  10987. Organization are a space to collaborate on shared projects and stacks.
  10988. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  10989. type: string
  10990. project:
  10991. description: Project is the name of the Pulumi ESC project the environment belongs to.
  10992. type: string
  10993. required:
  10994. - accessToken
  10995. - environment
  10996. - organization
  10997. - project
  10998. type: object
  10999. scaleway:
  11000. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11001. properties:
  11002. accessKey:
  11003. description: AccessKey is the non-secret part of the api key.
  11004. properties:
  11005. secretRef:
  11006. description: SecretRef references a key in a secret that will be used as value.
  11007. properties:
  11008. key:
  11009. description: |-
  11010. A key in the referenced Secret.
  11011. Some instances of this field may be defaulted, in others it may be required.
  11012. maxLength: 253
  11013. minLength: 1
  11014. pattern: ^[-._a-zA-Z0-9]+$
  11015. type: string
  11016. name:
  11017. description: The name of the Secret resource being referred to.
  11018. maxLength: 253
  11019. minLength: 1
  11020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11021. type: string
  11022. namespace:
  11023. description: |-
  11024. The namespace of the Secret resource being referred to.
  11025. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11026. maxLength: 63
  11027. minLength: 1
  11028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11029. type: string
  11030. type: object
  11031. value:
  11032. description: Value can be specified directly to set a value without using a secret.
  11033. type: string
  11034. type: object
  11035. apiUrl:
  11036. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11037. type: string
  11038. projectId:
  11039. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11040. type: string
  11041. region:
  11042. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11043. type: string
  11044. secretKey:
  11045. description: SecretKey is the non-secret part of the api key.
  11046. properties:
  11047. secretRef:
  11048. description: SecretRef references a key in a secret that will be used as value.
  11049. properties:
  11050. key:
  11051. description: |-
  11052. A key in the referenced Secret.
  11053. Some instances of this field may be defaulted, in others it may be required.
  11054. maxLength: 253
  11055. minLength: 1
  11056. pattern: ^[-._a-zA-Z0-9]+$
  11057. type: string
  11058. name:
  11059. description: The name of the Secret resource being referred to.
  11060. maxLength: 253
  11061. minLength: 1
  11062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11063. type: string
  11064. namespace:
  11065. description: |-
  11066. The namespace of the Secret resource being referred to.
  11067. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11068. maxLength: 63
  11069. minLength: 1
  11070. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11071. type: string
  11072. type: object
  11073. value:
  11074. description: Value can be specified directly to set a value without using a secret.
  11075. type: string
  11076. type: object
  11077. required:
  11078. - accessKey
  11079. - projectId
  11080. - region
  11081. - secretKey
  11082. type: object
  11083. secretserver:
  11084. description: |-
  11085. SecretServer configures this store to sync secrets using SecretServer provider
  11086. https://docs.delinea.com/online-help/secret-server/start.htm
  11087. properties:
  11088. password:
  11089. description: Password is the secret server account password.
  11090. properties:
  11091. secretRef:
  11092. description: SecretRef references a key in a secret that will be used as value.
  11093. properties:
  11094. key:
  11095. description: |-
  11096. A key in the referenced Secret.
  11097. Some instances of this field may be defaulted, in others it may be required.
  11098. maxLength: 253
  11099. minLength: 1
  11100. pattern: ^[-._a-zA-Z0-9]+$
  11101. type: string
  11102. name:
  11103. description: The name of the Secret resource being referred to.
  11104. maxLength: 253
  11105. minLength: 1
  11106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11107. type: string
  11108. namespace:
  11109. description: |-
  11110. The namespace of the Secret resource being referred to.
  11111. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11112. maxLength: 63
  11113. minLength: 1
  11114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11115. type: string
  11116. type: object
  11117. value:
  11118. description: Value can be specified directly to set a value without using a secret.
  11119. type: string
  11120. type: object
  11121. serverURL:
  11122. description: |-
  11123. ServerURL
  11124. URL to your secret server installation
  11125. type: string
  11126. username:
  11127. description: Username is the secret server account username.
  11128. properties:
  11129. secretRef:
  11130. description: SecretRef references a key in a secret that will be used as value.
  11131. properties:
  11132. key:
  11133. description: |-
  11134. A key in the referenced Secret.
  11135. Some instances of this field may be defaulted, in others it may be required.
  11136. maxLength: 253
  11137. minLength: 1
  11138. pattern: ^[-._a-zA-Z0-9]+$
  11139. type: string
  11140. name:
  11141. description: The name of the Secret resource being referred to.
  11142. maxLength: 253
  11143. minLength: 1
  11144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11145. type: string
  11146. namespace:
  11147. description: |-
  11148. The namespace of the Secret resource being referred to.
  11149. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11150. maxLength: 63
  11151. minLength: 1
  11152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11153. type: string
  11154. type: object
  11155. value:
  11156. description: Value can be specified directly to set a value without using a secret.
  11157. type: string
  11158. type: object
  11159. required:
  11160. - password
  11161. - serverURL
  11162. - username
  11163. type: object
  11164. senhasegura:
  11165. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11166. properties:
  11167. auth:
  11168. description: Auth defines parameters to authenticate in senhasegura
  11169. properties:
  11170. clientId:
  11171. type: string
  11172. clientSecretSecretRef:
  11173. description: |-
  11174. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11175. In some instances, `key` is a required field.
  11176. properties:
  11177. key:
  11178. description: |-
  11179. A key in the referenced Secret.
  11180. Some instances of this field may be defaulted, in others it may be required.
  11181. maxLength: 253
  11182. minLength: 1
  11183. pattern: ^[-._a-zA-Z0-9]+$
  11184. type: string
  11185. name:
  11186. description: The name of the Secret resource being referred to.
  11187. maxLength: 253
  11188. minLength: 1
  11189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11190. type: string
  11191. namespace:
  11192. description: |-
  11193. The namespace of the Secret resource being referred to.
  11194. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11195. maxLength: 63
  11196. minLength: 1
  11197. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11198. type: string
  11199. type: object
  11200. required:
  11201. - clientId
  11202. - clientSecretSecretRef
  11203. type: object
  11204. ignoreSslCertificate:
  11205. default: false
  11206. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11207. type: boolean
  11208. module:
  11209. description: Module defines which senhasegura module should be used to get secrets
  11210. type: string
  11211. url:
  11212. description: URL of senhasegura
  11213. type: string
  11214. required:
  11215. - auth
  11216. - module
  11217. - url
  11218. type: object
  11219. vault:
  11220. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11221. properties:
  11222. auth:
  11223. description: Auth configures how secret-manager authenticates with the Vault server.
  11224. properties:
  11225. appRole:
  11226. description: |-
  11227. AppRole authenticates with Vault using the App Role auth mechanism,
  11228. with the role and secret stored in a Kubernetes Secret resource.
  11229. properties:
  11230. path:
  11231. default: approle
  11232. description: |-
  11233. Path where the App Role authentication backend is mounted
  11234. in Vault, e.g: "approle"
  11235. type: string
  11236. roleId:
  11237. description: |-
  11238. RoleID configured in the App Role authentication backend when setting
  11239. up the authentication backend in Vault.
  11240. type: string
  11241. roleRef:
  11242. description: |-
  11243. Reference to a key in a Secret that contains the App Role ID used
  11244. to authenticate with Vault.
  11245. The `key` field must be specified and denotes which entry within the Secret
  11246. resource is used as the app role id.
  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. secretRef:
  11272. description: |-
  11273. Reference to a key in a Secret that contains the App Role secret used
  11274. to authenticate with Vault.
  11275. The `key` field must be specified and denotes which entry within the Secret
  11276. resource is used as the app role secret.
  11277. properties:
  11278. key:
  11279. description: |-
  11280. A key in the referenced Secret.
  11281. Some instances of this field may be defaulted, in others it may be required.
  11282. maxLength: 253
  11283. minLength: 1
  11284. pattern: ^[-._a-zA-Z0-9]+$
  11285. type: string
  11286. name:
  11287. description: The name of the Secret resource being referred to.
  11288. maxLength: 253
  11289. minLength: 1
  11290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11291. type: string
  11292. namespace:
  11293. description: |-
  11294. The namespace of the Secret resource being referred to.
  11295. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11296. maxLength: 63
  11297. minLength: 1
  11298. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11299. type: string
  11300. type: object
  11301. required:
  11302. - path
  11303. - secretRef
  11304. type: object
  11305. cert:
  11306. description: |-
  11307. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11308. Cert authentication method
  11309. properties:
  11310. clientCert:
  11311. description: |-
  11312. ClientCert is a certificate to authenticate using the Cert Vault
  11313. authentication method
  11314. properties:
  11315. key:
  11316. description: |-
  11317. A key in the referenced Secret.
  11318. Some instances of this field may be defaulted, in others it may be required.
  11319. maxLength: 253
  11320. minLength: 1
  11321. pattern: ^[-._a-zA-Z0-9]+$
  11322. type: string
  11323. name:
  11324. description: The name of the Secret resource being referred to.
  11325. maxLength: 253
  11326. minLength: 1
  11327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11328. type: string
  11329. namespace:
  11330. description: |-
  11331. The namespace of the Secret resource being referred to.
  11332. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11333. maxLength: 63
  11334. minLength: 1
  11335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11336. type: string
  11337. type: object
  11338. secretRef:
  11339. description: |-
  11340. SecretRef to a key in a Secret resource containing client private key to
  11341. authenticate with Vault using the Cert authentication method
  11342. properties:
  11343. key:
  11344. description: |-
  11345. A key in the referenced Secret.
  11346. Some instances of this field may be defaulted, in others it may be required.
  11347. maxLength: 253
  11348. minLength: 1
  11349. pattern: ^[-._a-zA-Z0-9]+$
  11350. type: string
  11351. name:
  11352. description: The name of the Secret resource being referred to.
  11353. maxLength: 253
  11354. minLength: 1
  11355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11356. type: string
  11357. namespace:
  11358. description: |-
  11359. The namespace of the Secret resource being referred to.
  11360. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11361. maxLength: 63
  11362. minLength: 1
  11363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11364. type: string
  11365. type: object
  11366. type: object
  11367. iam:
  11368. description: |-
  11369. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11370. AWS IAM authentication method
  11371. properties:
  11372. externalID:
  11373. description: AWS External ID set on assumed IAM roles
  11374. type: string
  11375. jwt:
  11376. description: Specify a service account with IRSA enabled
  11377. properties:
  11378. serviceAccountRef:
  11379. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  11380. properties:
  11381. audiences:
  11382. description: |-
  11383. Audience specifies the `aud` claim for the service account token
  11384. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11385. then this audiences will be appended to the list
  11386. items:
  11387. type: string
  11388. type: array
  11389. name:
  11390. description: The name of the ServiceAccount resource being referred to.
  11391. maxLength: 253
  11392. minLength: 1
  11393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11394. type: string
  11395. namespace:
  11396. description: |-
  11397. Namespace of the resource being referred to.
  11398. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11399. maxLength: 63
  11400. minLength: 1
  11401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11402. type: string
  11403. required:
  11404. - name
  11405. type: object
  11406. type: object
  11407. path:
  11408. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11409. type: string
  11410. region:
  11411. description: AWS region
  11412. type: string
  11413. role:
  11414. description: This is the AWS role to be assumed before talking to vault
  11415. type: string
  11416. secretRef:
  11417. description: Specify credentials in a Secret object
  11418. properties:
  11419. accessKeyIDSecretRef:
  11420. description: The AccessKeyID is used for authentication
  11421. properties:
  11422. key:
  11423. description: |-
  11424. A key in the referenced Secret.
  11425. Some instances of this field may be defaulted, in others it may be required.
  11426. maxLength: 253
  11427. minLength: 1
  11428. pattern: ^[-._a-zA-Z0-9]+$
  11429. type: string
  11430. name:
  11431. description: The name of the Secret resource being referred to.
  11432. maxLength: 253
  11433. minLength: 1
  11434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11435. type: string
  11436. namespace:
  11437. description: |-
  11438. The namespace of the Secret resource being referred to.
  11439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11440. maxLength: 63
  11441. minLength: 1
  11442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11443. type: string
  11444. type: object
  11445. secretAccessKeySecretRef:
  11446. description: The SecretAccessKey is used for authentication
  11447. properties:
  11448. key:
  11449. description: |-
  11450. A key in the referenced Secret.
  11451. Some instances of this field may be defaulted, in others it may be required.
  11452. maxLength: 253
  11453. minLength: 1
  11454. pattern: ^[-._a-zA-Z0-9]+$
  11455. type: string
  11456. name:
  11457. description: The name of the Secret resource being referred to.
  11458. maxLength: 253
  11459. minLength: 1
  11460. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11461. type: string
  11462. namespace:
  11463. description: |-
  11464. The namespace of the Secret resource being referred to.
  11465. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11466. maxLength: 63
  11467. minLength: 1
  11468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11469. type: string
  11470. type: object
  11471. sessionTokenSecretRef:
  11472. description: |-
  11473. The SessionToken used for authentication
  11474. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11475. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11476. properties:
  11477. key:
  11478. description: |-
  11479. A key in the referenced Secret.
  11480. Some instances of this field may be defaulted, in others it may be required.
  11481. maxLength: 253
  11482. minLength: 1
  11483. pattern: ^[-._a-zA-Z0-9]+$
  11484. type: string
  11485. name:
  11486. description: The name of the Secret resource being referred to.
  11487. maxLength: 253
  11488. minLength: 1
  11489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11490. type: string
  11491. namespace:
  11492. description: |-
  11493. The namespace of the Secret resource being referred to.
  11494. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11495. maxLength: 63
  11496. minLength: 1
  11497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11498. type: string
  11499. type: object
  11500. type: object
  11501. vaultAwsIamServerID:
  11502. 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'
  11503. type: string
  11504. vaultRole:
  11505. 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
  11506. type: string
  11507. required:
  11508. - vaultRole
  11509. type: object
  11510. jwt:
  11511. description: |-
  11512. Jwt authenticates with Vault by passing role and JWT token using the
  11513. JWT/OIDC authentication method
  11514. properties:
  11515. kubernetesServiceAccountToken:
  11516. description: |-
  11517. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  11518. a token for with the `TokenRequest` API.
  11519. properties:
  11520. audiences:
  11521. description: |-
  11522. Optional audiences field that will be used to request a temporary Kubernetes service
  11523. account token for the service account referenced by `serviceAccountRef`.
  11524. Defaults to a single audience `vault` it not specified.
  11525. Deprecated: use serviceAccountRef.Audiences instead
  11526. items:
  11527. type: string
  11528. type: array
  11529. expirationSeconds:
  11530. description: |-
  11531. Optional expiration time in seconds that will be used to request a temporary
  11532. Kubernetes service account token for the service account referenced by
  11533. `serviceAccountRef`.
  11534. Deprecated: this will be removed in the future.
  11535. Defaults to 10 minutes.
  11536. format: int64
  11537. type: integer
  11538. serviceAccountRef:
  11539. description: Service account field containing the name of a kubernetes ServiceAccount.
  11540. properties:
  11541. audiences:
  11542. description: |-
  11543. Audience specifies the `aud` claim for the service account token
  11544. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11545. then this audiences will be appended to the list
  11546. items:
  11547. type: string
  11548. type: array
  11549. name:
  11550. description: The name of the ServiceAccount resource being referred to.
  11551. maxLength: 253
  11552. minLength: 1
  11553. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11554. type: string
  11555. namespace:
  11556. description: |-
  11557. Namespace of the resource being referred to.
  11558. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11559. maxLength: 63
  11560. minLength: 1
  11561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11562. type: string
  11563. required:
  11564. - name
  11565. type: object
  11566. required:
  11567. - serviceAccountRef
  11568. type: object
  11569. path:
  11570. default: jwt
  11571. description: |-
  11572. Path where the JWT authentication backend is mounted
  11573. in Vault, e.g: "jwt"
  11574. type: string
  11575. role:
  11576. description: |-
  11577. Role is a JWT role to authenticate using the JWT/OIDC Vault
  11578. authentication method
  11579. type: string
  11580. secretRef:
  11581. description: |-
  11582. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  11583. authenticate with Vault using the JWT/OIDC authentication method.
  11584. properties:
  11585. key:
  11586. description: |-
  11587. A key in the referenced Secret.
  11588. Some instances of this field may be defaulted, in others it may be required.
  11589. maxLength: 253
  11590. minLength: 1
  11591. pattern: ^[-._a-zA-Z0-9]+$
  11592. type: string
  11593. name:
  11594. description: The name of the Secret resource being referred to.
  11595. maxLength: 253
  11596. minLength: 1
  11597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11598. type: string
  11599. namespace:
  11600. description: |-
  11601. The namespace of the Secret resource being referred to.
  11602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11603. maxLength: 63
  11604. minLength: 1
  11605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11606. type: string
  11607. type: object
  11608. required:
  11609. - path
  11610. type: object
  11611. kubernetes:
  11612. description: |-
  11613. Kubernetes authenticates with Vault by passing the ServiceAccount
  11614. token stored in the named Secret resource to the Vault server.
  11615. properties:
  11616. mountPath:
  11617. default: kubernetes
  11618. description: |-
  11619. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  11620. "kubernetes"
  11621. type: string
  11622. role:
  11623. description: |-
  11624. A required field containing the Vault Role to assume. A Role binds a
  11625. Kubernetes ServiceAccount with a set of Vault policies.
  11626. type: string
  11627. secretRef:
  11628. description: |-
  11629. Optional secret field containing a Kubernetes ServiceAccount JWT used
  11630. for authenticating with Vault. If a name is specified without a key,
  11631. `token` is the default. If one is not specified, the one bound to
  11632. the controller will be used.
  11633. properties:
  11634. key:
  11635. description: |-
  11636. A key in the referenced Secret.
  11637. Some instances of this field may be defaulted, in others it may be required.
  11638. maxLength: 253
  11639. minLength: 1
  11640. pattern: ^[-._a-zA-Z0-9]+$
  11641. type: string
  11642. name:
  11643. description: The name of the Secret resource being referred to.
  11644. maxLength: 253
  11645. minLength: 1
  11646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11647. type: string
  11648. namespace:
  11649. description: |-
  11650. The namespace of the Secret resource being referred to.
  11651. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11652. maxLength: 63
  11653. minLength: 1
  11654. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11655. type: string
  11656. type: object
  11657. serviceAccountRef:
  11658. description: |-
  11659. Optional service account field containing the name of a kubernetes ServiceAccount.
  11660. If the service account is specified, the service account secret token JWT will be used
  11661. for authenticating with Vault. If the service account selector is not supplied,
  11662. the secretRef will be used instead.
  11663. properties:
  11664. audiences:
  11665. description: |-
  11666. Audience specifies the `aud` claim for the service account token
  11667. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11668. then this audiences will be appended to the list
  11669. items:
  11670. type: string
  11671. type: array
  11672. name:
  11673. description: The name of the ServiceAccount resource being referred to.
  11674. maxLength: 253
  11675. minLength: 1
  11676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11677. type: string
  11678. namespace:
  11679. description: |-
  11680. Namespace of the resource being referred to.
  11681. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11682. maxLength: 63
  11683. minLength: 1
  11684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11685. type: string
  11686. required:
  11687. - name
  11688. type: object
  11689. required:
  11690. - mountPath
  11691. - role
  11692. type: object
  11693. ldap:
  11694. description: |-
  11695. Ldap authenticates with Vault by passing username/password pair using
  11696. the LDAP authentication method
  11697. properties:
  11698. path:
  11699. default: ldap
  11700. description: |-
  11701. Path where the LDAP authentication backend is mounted
  11702. in Vault, e.g: "ldap"
  11703. type: string
  11704. secretRef:
  11705. description: |-
  11706. SecretRef to a key in a Secret resource containing password for the LDAP
  11707. user used to authenticate with Vault using the LDAP authentication
  11708. method
  11709. properties:
  11710. key:
  11711. description: |-
  11712. A key in the referenced Secret.
  11713. Some instances of this field may be defaulted, in others it may be required.
  11714. maxLength: 253
  11715. minLength: 1
  11716. pattern: ^[-._a-zA-Z0-9]+$
  11717. type: string
  11718. name:
  11719. description: The name of the Secret resource being referred to.
  11720. maxLength: 253
  11721. minLength: 1
  11722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11723. type: string
  11724. namespace:
  11725. description: |-
  11726. The namespace of the Secret resource being referred to.
  11727. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11728. maxLength: 63
  11729. minLength: 1
  11730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11731. type: string
  11732. type: object
  11733. username:
  11734. description: |-
  11735. Username is an LDAP username used to authenticate using the LDAP Vault
  11736. authentication method
  11737. type: string
  11738. required:
  11739. - path
  11740. - username
  11741. type: object
  11742. namespace:
  11743. description: |-
  11744. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  11745. Namespaces is a set of features within Vault Enterprise that allows
  11746. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11747. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11748. This will default to Vault.Namespace field if set, or empty otherwise
  11749. type: string
  11750. tokenSecretRef:
  11751. description: TokenSecretRef authenticates with Vault by presenting a token.
  11752. properties:
  11753. key:
  11754. description: |-
  11755. A key in the referenced Secret.
  11756. Some instances of this field may be defaulted, in others it may be required.
  11757. maxLength: 253
  11758. minLength: 1
  11759. pattern: ^[-._a-zA-Z0-9]+$
  11760. type: string
  11761. name:
  11762. description: The name of the Secret resource being referred to.
  11763. maxLength: 253
  11764. minLength: 1
  11765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11766. type: string
  11767. namespace:
  11768. description: |-
  11769. The namespace of the Secret resource being referred to.
  11770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11771. maxLength: 63
  11772. minLength: 1
  11773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11774. type: string
  11775. type: object
  11776. userPass:
  11777. description: UserPass authenticates with Vault by passing username/password pair
  11778. properties:
  11779. path:
  11780. default: userpass
  11781. description: |-
  11782. Path where the UserPassword authentication backend is mounted
  11783. in Vault, e.g: "userpass"
  11784. type: string
  11785. secretRef:
  11786. description: |-
  11787. SecretRef to a key in a Secret resource containing password for the
  11788. user used to authenticate with Vault using the UserPass authentication
  11789. method
  11790. properties:
  11791. key:
  11792. description: |-
  11793. A key in the referenced Secret.
  11794. Some instances of this field may be defaulted, in others it may be required.
  11795. maxLength: 253
  11796. minLength: 1
  11797. pattern: ^[-._a-zA-Z0-9]+$
  11798. type: string
  11799. name:
  11800. description: The name of the Secret resource being referred to.
  11801. maxLength: 253
  11802. minLength: 1
  11803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11804. type: string
  11805. namespace:
  11806. description: |-
  11807. The namespace of the Secret resource being referred to.
  11808. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11809. maxLength: 63
  11810. minLength: 1
  11811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11812. type: string
  11813. type: object
  11814. username:
  11815. description: |-
  11816. Username is a username used to authenticate using the UserPass Vault
  11817. authentication method
  11818. type: string
  11819. required:
  11820. - path
  11821. - username
  11822. type: object
  11823. type: object
  11824. caBundle:
  11825. description: |-
  11826. PEM encoded CA bundle used to validate Vault server certificate. Only used
  11827. if the Server URL is using HTTPS protocol. This parameter is ignored for
  11828. plain HTTP protocol connection. If not set the system root certificates
  11829. are used to validate the TLS connection.
  11830. format: byte
  11831. type: string
  11832. caProvider:
  11833. description: The provider for the CA bundle to use to validate Vault server certificate.
  11834. properties:
  11835. key:
  11836. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  11837. maxLength: 253
  11838. minLength: 1
  11839. pattern: ^[-._a-zA-Z0-9]+$
  11840. type: string
  11841. name:
  11842. description: The name of the object located at the provider type.
  11843. maxLength: 253
  11844. minLength: 1
  11845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11846. type: string
  11847. namespace:
  11848. description: |-
  11849. The namespace the Provider type is in.
  11850. Can only be defined when used in a ClusterSecretStore.
  11851. maxLength: 63
  11852. minLength: 1
  11853. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11854. type: string
  11855. type:
  11856. description: The type of provider to use such as "Secret", or "ConfigMap".
  11857. enum:
  11858. - Secret
  11859. - ConfigMap
  11860. type: string
  11861. required:
  11862. - name
  11863. - type
  11864. type: object
  11865. forwardInconsistent:
  11866. description: |-
  11867. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  11868. leader instead of simply retrying within a loop. This can increase performance if
  11869. the option is enabled serverside.
  11870. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  11871. type: boolean
  11872. headers:
  11873. additionalProperties:
  11874. type: string
  11875. description: Headers to be added in Vault request
  11876. type: object
  11877. namespace:
  11878. description: |-
  11879. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  11880. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11881. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11882. type: string
  11883. path:
  11884. description: |-
  11885. Path is the mount path of the Vault KV backend endpoint, e.g:
  11886. "secret". The v2 KV secret engine version specific "/data" path suffix
  11887. for fetching secrets from Vault is optional and will be appended
  11888. if not present in specified path.
  11889. type: string
  11890. readYourWrites:
  11891. description: |-
  11892. ReadYourWrites ensures isolated read-after-write semantics by
  11893. providing discovered cluster replication states in each request.
  11894. More information about eventual consistency in Vault can be found here
  11895. https://www.vaultproject.io/docs/enterprise/consistency
  11896. type: boolean
  11897. server:
  11898. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  11899. type: string
  11900. tls:
  11901. description: |-
  11902. The configuration used for client side related TLS communication, when the Vault server
  11903. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  11904. This parameter is ignored for plain HTTP protocol connection.
  11905. It's worth noting this configuration is different from the "TLS certificates auth method",
  11906. which is available under the `auth.cert` section.
  11907. properties:
  11908. certSecretRef:
  11909. description: |-
  11910. CertSecretRef is a certificate added to the transport layer
  11911. when communicating with the Vault server.
  11912. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  11913. properties:
  11914. key:
  11915. description: |-
  11916. A key in the referenced Secret.
  11917. Some instances of this field may be defaulted, in others it may be required.
  11918. maxLength: 253
  11919. minLength: 1
  11920. pattern: ^[-._a-zA-Z0-9]+$
  11921. type: string
  11922. name:
  11923. description: The name of the Secret resource being referred to.
  11924. maxLength: 253
  11925. minLength: 1
  11926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11927. type: string
  11928. namespace:
  11929. description: |-
  11930. The namespace of the Secret resource being referred to.
  11931. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11932. maxLength: 63
  11933. minLength: 1
  11934. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11935. type: string
  11936. type: object
  11937. keySecretRef:
  11938. description: |-
  11939. KeySecretRef to a key in a Secret resource containing client private key
  11940. added to the transport layer when communicating with the Vault server.
  11941. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  11942. properties:
  11943. key:
  11944. description: |-
  11945. A key in the referenced Secret.
  11946. Some instances of this field may be defaulted, in others it may be required.
  11947. maxLength: 253
  11948. minLength: 1
  11949. pattern: ^[-._a-zA-Z0-9]+$
  11950. type: string
  11951. name:
  11952. description: The name of the Secret resource being referred to.
  11953. maxLength: 253
  11954. minLength: 1
  11955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11956. type: string
  11957. namespace:
  11958. description: |-
  11959. The namespace of the Secret resource being referred to.
  11960. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11961. maxLength: 63
  11962. minLength: 1
  11963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11964. type: string
  11965. type: object
  11966. type: object
  11967. version:
  11968. default: v2
  11969. description: |-
  11970. Version is the Vault KV secret engine version. This can be either "v1" or
  11971. "v2". Version defaults to "v2".
  11972. enum:
  11973. - v1
  11974. - v2
  11975. type: string
  11976. required:
  11977. - server
  11978. type: object
  11979. webhook:
  11980. description: Webhook configures this store to sync secrets using a generic templated webhook
  11981. properties:
  11982. auth:
  11983. description: Auth specifies a authorization protocol. Only one protocol may be set.
  11984. maxProperties: 1
  11985. minProperties: 1
  11986. properties:
  11987. ntlm:
  11988. description: NTLMProtocol configures the store to use NTLM for auth
  11989. properties:
  11990. passwordSecret:
  11991. description: |-
  11992. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11993. In some instances, `key` is a required field.
  11994. properties:
  11995. key:
  11996. description: |-
  11997. A key in the referenced Secret.
  11998. Some instances of this field may be defaulted, in others it may be required.
  11999. maxLength: 253
  12000. minLength: 1
  12001. pattern: ^[-._a-zA-Z0-9]+$
  12002. type: string
  12003. name:
  12004. description: The name of the Secret resource being referred to.
  12005. maxLength: 253
  12006. minLength: 1
  12007. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12008. type: string
  12009. namespace:
  12010. description: |-
  12011. The namespace of the Secret resource being referred to.
  12012. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12013. maxLength: 63
  12014. minLength: 1
  12015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12016. type: string
  12017. type: object
  12018. usernameSecret:
  12019. description: |-
  12020. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12021. In some instances, `key` is a required field.
  12022. properties:
  12023. key:
  12024. description: |-
  12025. A key in the referenced Secret.
  12026. Some instances of this field may be defaulted, in others it may be required.
  12027. maxLength: 253
  12028. minLength: 1
  12029. pattern: ^[-._a-zA-Z0-9]+$
  12030. type: string
  12031. name:
  12032. description: The name of the Secret resource being referred to.
  12033. maxLength: 253
  12034. minLength: 1
  12035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12036. type: string
  12037. namespace:
  12038. description: |-
  12039. The namespace of the Secret resource being referred to.
  12040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12041. maxLength: 63
  12042. minLength: 1
  12043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12044. type: string
  12045. type: object
  12046. required:
  12047. - passwordSecret
  12048. - usernameSecret
  12049. type: object
  12050. type: object
  12051. body:
  12052. description: Body
  12053. type: string
  12054. caBundle:
  12055. description: |-
  12056. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12057. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12058. plain HTTP protocol connection. If not set the system root certificates
  12059. are used to validate the TLS connection.
  12060. format: byte
  12061. type: string
  12062. caProvider:
  12063. description: The provider for the CA bundle to use to validate webhook server certificate.
  12064. properties:
  12065. key:
  12066. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12067. maxLength: 253
  12068. minLength: 1
  12069. pattern: ^[-._a-zA-Z0-9]+$
  12070. type: string
  12071. name:
  12072. description: The name of the object located at the provider type.
  12073. maxLength: 253
  12074. minLength: 1
  12075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12076. type: string
  12077. namespace:
  12078. description: The namespace the Provider type is in.
  12079. maxLength: 63
  12080. minLength: 1
  12081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12082. type: string
  12083. type:
  12084. description: The type of provider to use such as "Secret", or "ConfigMap".
  12085. enum:
  12086. - Secret
  12087. - ConfigMap
  12088. type: string
  12089. required:
  12090. - name
  12091. - type
  12092. type: object
  12093. headers:
  12094. additionalProperties:
  12095. type: string
  12096. description: Headers
  12097. type: object
  12098. method:
  12099. description: Webhook Method
  12100. type: string
  12101. result:
  12102. description: Result formatting
  12103. properties:
  12104. jsonPath:
  12105. description: Json path of return value
  12106. type: string
  12107. type: object
  12108. secrets:
  12109. description: |-
  12110. Secrets to fill in templates
  12111. These secrets will be passed to the templating function as key value pairs under the given name
  12112. items:
  12113. description: WebhookSecret defines a secret to be used in webhook templates.
  12114. properties:
  12115. name:
  12116. description: Name of this secret in templates
  12117. type: string
  12118. secretRef:
  12119. description: Secret ref to fill in credentials
  12120. properties:
  12121. key:
  12122. description: |-
  12123. A key in the referenced Secret.
  12124. Some instances of this field may be defaulted, in others it may be required.
  12125. maxLength: 253
  12126. minLength: 1
  12127. pattern: ^[-._a-zA-Z0-9]+$
  12128. type: string
  12129. name:
  12130. description: The name of the Secret resource being referred to.
  12131. maxLength: 253
  12132. minLength: 1
  12133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12134. type: string
  12135. namespace:
  12136. description: |-
  12137. The namespace of the Secret resource being referred to.
  12138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12139. maxLength: 63
  12140. minLength: 1
  12141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12142. type: string
  12143. type: object
  12144. required:
  12145. - name
  12146. - secretRef
  12147. type: object
  12148. type: array
  12149. timeout:
  12150. description: Timeout
  12151. type: string
  12152. url:
  12153. description: Webhook url to call
  12154. type: string
  12155. required:
  12156. - result
  12157. - url
  12158. type: object
  12159. yandexcertificatemanager:
  12160. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12161. properties:
  12162. apiEndpoint:
  12163. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12164. type: string
  12165. auth:
  12166. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12167. properties:
  12168. authorizedKeySecretRef:
  12169. description: The authorized key used for authentication
  12170. properties:
  12171. key:
  12172. description: |-
  12173. A key in the referenced Secret.
  12174. Some instances of this field may be defaulted, in others it may be required.
  12175. maxLength: 253
  12176. minLength: 1
  12177. pattern: ^[-._a-zA-Z0-9]+$
  12178. type: string
  12179. name:
  12180. description: The name of the Secret resource being referred to.
  12181. maxLength: 253
  12182. minLength: 1
  12183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12184. type: string
  12185. namespace:
  12186. description: |-
  12187. The namespace of the Secret resource being referred to.
  12188. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12189. maxLength: 63
  12190. minLength: 1
  12191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12192. type: string
  12193. type: object
  12194. type: object
  12195. caProvider:
  12196. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12197. properties:
  12198. certSecretRef:
  12199. description: |-
  12200. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12201. In some instances, `key` is a required field.
  12202. properties:
  12203. key:
  12204. description: |-
  12205. A key in the referenced Secret.
  12206. Some instances of this field may be defaulted, in others it may be required.
  12207. maxLength: 253
  12208. minLength: 1
  12209. pattern: ^[-._a-zA-Z0-9]+$
  12210. type: string
  12211. name:
  12212. description: The name of the Secret resource being referred to.
  12213. maxLength: 253
  12214. minLength: 1
  12215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12216. type: string
  12217. namespace:
  12218. description: |-
  12219. The namespace of the Secret resource being referred to.
  12220. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12221. maxLength: 63
  12222. minLength: 1
  12223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12224. type: string
  12225. type: object
  12226. type: object
  12227. required:
  12228. - auth
  12229. type: object
  12230. yandexlockbox:
  12231. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12232. properties:
  12233. apiEndpoint:
  12234. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12235. type: string
  12236. auth:
  12237. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12238. properties:
  12239. authorizedKeySecretRef:
  12240. description: The authorized key used for authentication
  12241. properties:
  12242. key:
  12243. description: |-
  12244. A key in the referenced Secret.
  12245. Some instances of this field may be defaulted, in others it may be required.
  12246. maxLength: 253
  12247. minLength: 1
  12248. pattern: ^[-._a-zA-Z0-9]+$
  12249. type: string
  12250. name:
  12251. description: The name of the Secret resource being referred to.
  12252. maxLength: 253
  12253. minLength: 1
  12254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12255. type: string
  12256. namespace:
  12257. description: |-
  12258. The namespace of the Secret resource being referred to.
  12259. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12260. maxLength: 63
  12261. minLength: 1
  12262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12263. type: string
  12264. type: object
  12265. type: object
  12266. caProvider:
  12267. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12268. properties:
  12269. certSecretRef:
  12270. description: |-
  12271. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12272. In some instances, `key` is a required field.
  12273. properties:
  12274. key:
  12275. description: |-
  12276. A key in the referenced Secret.
  12277. Some instances of this field may be defaulted, in others it may be required.
  12278. maxLength: 253
  12279. minLength: 1
  12280. pattern: ^[-._a-zA-Z0-9]+$
  12281. type: string
  12282. name:
  12283. description: The name of the Secret resource being referred to.
  12284. maxLength: 253
  12285. minLength: 1
  12286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12287. type: string
  12288. namespace:
  12289. description: |-
  12290. The namespace of the Secret resource being referred to.
  12291. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12292. maxLength: 63
  12293. minLength: 1
  12294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12295. type: string
  12296. type: object
  12297. type: object
  12298. required:
  12299. - auth
  12300. type: object
  12301. type: object
  12302. refreshInterval:
  12303. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12304. type: integer
  12305. retrySettings:
  12306. description: Used to configure HTTP retries on failures.
  12307. properties:
  12308. maxRetries:
  12309. description: MaxRetries is the maximum number of retry attempts.
  12310. format: int32
  12311. type: integer
  12312. retryInterval:
  12313. description: RetryInterval is the interval between retry attempts.
  12314. type: string
  12315. type: object
  12316. required:
  12317. - provider
  12318. type: object
  12319. status:
  12320. description: SecretStoreStatus defines the observed state of the SecretStore.
  12321. properties:
  12322. capabilities:
  12323. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12324. type: string
  12325. conditions:
  12326. items:
  12327. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12328. properties:
  12329. lastTransitionTime:
  12330. format: date-time
  12331. type: string
  12332. message:
  12333. type: string
  12334. reason:
  12335. type: string
  12336. status:
  12337. type: string
  12338. type:
  12339. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12340. type: string
  12341. required:
  12342. - status
  12343. - type
  12344. type: object
  12345. type: array
  12346. type: object
  12347. type: object
  12348. served: false
  12349. storage: false
  12350. subresources:
  12351. status: {}
  12352. ---
  12353. apiVersion: apiextensions.k8s.io/v1
  12354. kind: CustomResourceDefinition
  12355. metadata:
  12356. annotations:
  12357. controller-gen.kubebuilder.io/version: v0.19.0
  12358. labels:
  12359. external-secrets.io/component: controller
  12360. name: externalsecrets.external-secrets.io
  12361. spec:
  12362. group: external-secrets.io
  12363. names:
  12364. categories:
  12365. - external-secrets
  12366. kind: ExternalSecret
  12367. listKind: ExternalSecretList
  12368. plural: externalsecrets
  12369. shortNames:
  12370. - es
  12371. singular: externalsecret
  12372. scope: Namespaced
  12373. versions:
  12374. - additionalPrinterColumns:
  12375. - jsonPath: .spec.secretStoreRef.kind
  12376. name: StoreType
  12377. type: string
  12378. - jsonPath: .spec.secretStoreRef.name
  12379. name: Store
  12380. type: string
  12381. - jsonPath: .spec.refreshInterval
  12382. name: Refresh Interval
  12383. type: string
  12384. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  12385. name: Status
  12386. type: string
  12387. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12388. name: Ready
  12389. type: string
  12390. - jsonPath: .status.refreshTime
  12391. name: Last Sync
  12392. type: date
  12393. name: v1
  12394. schema:
  12395. openAPIV3Schema:
  12396. description: |-
  12397. ExternalSecret is the Schema for the external-secrets API.
  12398. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  12399. properties:
  12400. apiVersion:
  12401. description: |-
  12402. APIVersion defines the versioned schema of this representation of an object.
  12403. Servers should convert recognized schemas to the latest internal value, and
  12404. may reject unrecognized values.
  12405. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12406. type: string
  12407. kind:
  12408. description: |-
  12409. Kind is a string value representing the REST resource this object represents.
  12410. Servers may infer this from the endpoint the client submits requests to.
  12411. Cannot be updated.
  12412. In CamelCase.
  12413. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12414. type: string
  12415. metadata:
  12416. type: object
  12417. spec:
  12418. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  12419. properties:
  12420. data:
  12421. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  12422. items:
  12423. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  12424. properties:
  12425. remoteRef:
  12426. description: |-
  12427. RemoteRef points to the remote secret and defines
  12428. which secret (version/property/..) to fetch.
  12429. properties:
  12430. conversionStrategy:
  12431. default: Default
  12432. description: Used to define a conversion Strategy
  12433. enum:
  12434. - Default
  12435. - Unicode
  12436. type: string
  12437. decodingStrategy:
  12438. default: None
  12439. description: Used to define a decoding Strategy
  12440. enum:
  12441. - Auto
  12442. - Base64
  12443. - Base64URL
  12444. - None
  12445. type: string
  12446. key:
  12447. description: Key is the key used in the Provider, mandatory
  12448. type: string
  12449. metadataPolicy:
  12450. default: None
  12451. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12452. enum:
  12453. - None
  12454. - Fetch
  12455. type: string
  12456. nullBytePolicy:
  12457. default: Ignore
  12458. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12459. enum:
  12460. - Ignore
  12461. - Fail
  12462. type: string
  12463. property:
  12464. description: Used to select a specific property of the Provider value (if a map), if supported
  12465. type: string
  12466. version:
  12467. description: Used to select a specific version of the Provider value, if supported
  12468. type: string
  12469. required:
  12470. - key
  12471. type: object
  12472. secretKey:
  12473. description: The key in the Kubernetes Secret to store the value.
  12474. maxLength: 253
  12475. minLength: 1
  12476. pattern: ^[-._a-zA-Z0-9]+$
  12477. type: string
  12478. sourceRef:
  12479. description: |-
  12480. SourceRef allows you to override the source
  12481. from which the value will be pulled.
  12482. maxProperties: 1
  12483. minProperties: 1
  12484. properties:
  12485. generatorRef:
  12486. description: |-
  12487. GeneratorRef points to a generator custom resource.
  12488. Deprecated: The generatorRef is not implemented in .data[].
  12489. this will be removed with v1.
  12490. properties:
  12491. apiVersion:
  12492. default: generators.external-secrets.io/v1alpha1
  12493. description: Specify the apiVersion of the generator resource
  12494. type: string
  12495. kind:
  12496. description: Specify the Kind of the generator resource
  12497. enum:
  12498. - ACRAccessToken
  12499. - ClusterGenerator
  12500. - CloudsmithAccessToken
  12501. - ECRAuthorizationToken
  12502. - Fake
  12503. - GCRAccessToken
  12504. - GithubAccessToken
  12505. - QuayAccessToken
  12506. - Password
  12507. - SSHKey
  12508. - STSSessionToken
  12509. - UUID
  12510. - VaultDynamicSecret
  12511. - Webhook
  12512. - Grafana
  12513. - MFA
  12514. type: string
  12515. name:
  12516. description: Specify the name of the generator resource
  12517. maxLength: 253
  12518. minLength: 1
  12519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12520. type: string
  12521. required:
  12522. - kind
  12523. - name
  12524. type: object
  12525. storeRef:
  12526. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12527. properties:
  12528. kind:
  12529. description: |-
  12530. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12531. Defaults to `SecretStore`
  12532. enum:
  12533. - SecretStore
  12534. - ClusterSecretStore
  12535. type: string
  12536. name:
  12537. description: Name of the SecretStore resource
  12538. maxLength: 253
  12539. minLength: 1
  12540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12541. type: string
  12542. type: object
  12543. type: object
  12544. required:
  12545. - remoteRef
  12546. - secretKey
  12547. type: object
  12548. type: array
  12549. dataFrom:
  12550. description: |-
  12551. DataFrom is used to fetch all properties from a specific Provider data
  12552. If multiple entries are specified, the Secret keys are merged in the specified order
  12553. items:
  12554. description: |-
  12555. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  12556. when using DataFrom to fetch multiple values from a Provider.
  12557. properties:
  12558. extract:
  12559. description: |-
  12560. Used to extract multiple key/value pairs from one secret
  12561. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12562. properties:
  12563. conversionStrategy:
  12564. default: Default
  12565. description: Used to define a conversion Strategy
  12566. enum:
  12567. - Default
  12568. - Unicode
  12569. type: string
  12570. decodingStrategy:
  12571. default: None
  12572. description: Used to define a decoding Strategy
  12573. enum:
  12574. - Auto
  12575. - Base64
  12576. - Base64URL
  12577. - None
  12578. type: string
  12579. key:
  12580. description: Key is the key used in the Provider, mandatory
  12581. type: string
  12582. metadataPolicy:
  12583. default: None
  12584. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12585. enum:
  12586. - None
  12587. - Fetch
  12588. type: string
  12589. nullBytePolicy:
  12590. default: Ignore
  12591. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12592. enum:
  12593. - Ignore
  12594. - Fail
  12595. type: string
  12596. property:
  12597. description: Used to select a specific property of the Provider value (if a map), if supported
  12598. type: string
  12599. version:
  12600. description: Used to select a specific version of the Provider value, if supported
  12601. type: string
  12602. required:
  12603. - key
  12604. type: object
  12605. find:
  12606. description: |-
  12607. Used to find secrets based on tags or regular expressions
  12608. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12609. properties:
  12610. conversionStrategy:
  12611. default: Default
  12612. description: Used to define a conversion Strategy
  12613. enum:
  12614. - Default
  12615. - Unicode
  12616. type: string
  12617. decodingStrategy:
  12618. default: None
  12619. description: Used to define a decoding Strategy
  12620. enum:
  12621. - Auto
  12622. - Base64
  12623. - Base64URL
  12624. - None
  12625. type: string
  12626. name:
  12627. description: Finds secrets based on the name.
  12628. properties:
  12629. regexp:
  12630. description: Finds secrets base
  12631. type: string
  12632. type: object
  12633. nullBytePolicy:
  12634. default: Ignore
  12635. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  12636. enum:
  12637. - Ignore
  12638. - Fail
  12639. type: string
  12640. path:
  12641. description: A root path to start the find operations.
  12642. type: string
  12643. tags:
  12644. additionalProperties:
  12645. type: string
  12646. description: Find secrets based on tags.
  12647. type: object
  12648. type: object
  12649. rewrite:
  12650. description: |-
  12651. Used to rewrite secret Keys after getting them from the secret Provider
  12652. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  12653. items:
  12654. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  12655. maxProperties: 1
  12656. minProperties: 1
  12657. properties:
  12658. merge:
  12659. description: |-
  12660. Used to merge key/values in one single Secret
  12661. The resulting key will contain all values from the specified secrets
  12662. properties:
  12663. conflictPolicy:
  12664. default: Error
  12665. description: Used to define the policy to use in conflict resolution.
  12666. enum:
  12667. - Ignore
  12668. - Error
  12669. type: string
  12670. into:
  12671. default: ""
  12672. description: |-
  12673. Used to define the target key of the merge operation.
  12674. Required if strategy is JSON. Ignored otherwise.
  12675. type: string
  12676. priority:
  12677. description: Used to define key priority in conflict resolution.
  12678. items:
  12679. type: string
  12680. type: array
  12681. priorityPolicy:
  12682. default: Strict
  12683. description: Used to define the policy when a key in the priority list does not exist in the input.
  12684. enum:
  12685. - IgnoreNotFound
  12686. - Strict
  12687. type: string
  12688. strategy:
  12689. default: Extract
  12690. description: Used to define the strategy to use in the merge operation.
  12691. enum:
  12692. - Extract
  12693. - JSON
  12694. type: string
  12695. type: object
  12696. regexp:
  12697. description: |-
  12698. Used to rewrite with regular expressions.
  12699. The resulting key will be the output of a regexp.ReplaceAll operation.
  12700. properties:
  12701. source:
  12702. description: Used to define the regular expression of a re.Compiler.
  12703. type: string
  12704. target:
  12705. description: Used to define the target pattern of a ReplaceAll operation.
  12706. type: string
  12707. required:
  12708. - source
  12709. - target
  12710. type: object
  12711. transform:
  12712. description: |-
  12713. Used to apply string transformation on the secrets.
  12714. The resulting key will be the output of the template applied by the operation.
  12715. properties:
  12716. template:
  12717. description: |-
  12718. Used to define the template to apply on the secret name.
  12719. `.value ` will specify the secret name in the template.
  12720. type: string
  12721. required:
  12722. - template
  12723. type: object
  12724. type: object
  12725. type: array
  12726. sourceRef:
  12727. description: |-
  12728. SourceRef points to a store or generator
  12729. which contains secret values ready to use.
  12730. Use this in combination with Extract or Find pull values out of
  12731. a specific SecretStore.
  12732. When sourceRef points to a generator Extract or Find is not supported.
  12733. The generator returns a static map of values
  12734. maxProperties: 1
  12735. minProperties: 1
  12736. properties:
  12737. generatorRef:
  12738. description: GeneratorRef points to a generator custom resource.
  12739. properties:
  12740. apiVersion:
  12741. default: generators.external-secrets.io/v1alpha1
  12742. description: Specify the apiVersion of the generator resource
  12743. type: string
  12744. kind:
  12745. description: Specify the Kind of the generator resource
  12746. enum:
  12747. - ACRAccessToken
  12748. - ClusterGenerator
  12749. - CloudsmithAccessToken
  12750. - ECRAuthorizationToken
  12751. - Fake
  12752. - GCRAccessToken
  12753. - GithubAccessToken
  12754. - QuayAccessToken
  12755. - Password
  12756. - SSHKey
  12757. - STSSessionToken
  12758. - UUID
  12759. - VaultDynamicSecret
  12760. - Webhook
  12761. - Grafana
  12762. - MFA
  12763. type: string
  12764. name:
  12765. description: Specify the name of the generator resource
  12766. maxLength: 253
  12767. minLength: 1
  12768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12769. type: string
  12770. required:
  12771. - kind
  12772. - name
  12773. type: object
  12774. storeRef:
  12775. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12776. properties:
  12777. kind:
  12778. description: |-
  12779. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12780. Defaults to `SecretStore`
  12781. enum:
  12782. - SecretStore
  12783. - ClusterSecretStore
  12784. type: string
  12785. name:
  12786. description: Name of the SecretStore resource
  12787. maxLength: 253
  12788. minLength: 1
  12789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12790. type: string
  12791. type: object
  12792. type: object
  12793. type: object
  12794. type: array
  12795. refreshInterval:
  12796. default: 1h0m0s
  12797. description: |-
  12798. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  12799. specified as Golang Duration strings.
  12800. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  12801. Example values: "1h0m0s", "2h30m0s", "10m0s"
  12802. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  12803. type: string
  12804. refreshPolicy:
  12805. description: |-
  12806. RefreshPolicy determines how the ExternalSecret should be refreshed:
  12807. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  12808. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  12809. No periodic updates occur if refreshInterval is 0.
  12810. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  12811. enum:
  12812. - CreatedOnce
  12813. - Periodic
  12814. - OnChange
  12815. type: string
  12816. secretStoreRef:
  12817. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12818. properties:
  12819. kind:
  12820. description: |-
  12821. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12822. Defaults to `SecretStore`
  12823. enum:
  12824. - SecretStore
  12825. - ClusterSecretStore
  12826. type: string
  12827. name:
  12828. description: Name of the SecretStore resource
  12829. maxLength: 253
  12830. minLength: 1
  12831. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12832. type: string
  12833. type: object
  12834. target:
  12835. default:
  12836. creationPolicy: Owner
  12837. deletionPolicy: Retain
  12838. description: |-
  12839. ExternalSecretTarget defines the Kubernetes Secret to be created,
  12840. there can be only one target per ExternalSecret.
  12841. properties:
  12842. creationPolicy:
  12843. default: Owner
  12844. description: |-
  12845. CreationPolicy defines rules on how to create the resulting Secret.
  12846. Defaults to "Owner"
  12847. enum:
  12848. - Owner
  12849. - Orphan
  12850. - Merge
  12851. - None
  12852. type: string
  12853. deletionPolicy:
  12854. default: Retain
  12855. description: |-
  12856. DeletionPolicy defines rules on how to delete the resulting Secret.
  12857. Defaults to "Retain"
  12858. enum:
  12859. - Delete
  12860. - Merge
  12861. - Retain
  12862. type: string
  12863. immutable:
  12864. description: Immutable defines if the final secret will be immutable
  12865. type: boolean
  12866. manifest:
  12867. description: |-
  12868. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  12869. When specified, ExternalSecret will create the resource type defined here
  12870. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  12871. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  12872. properties:
  12873. apiVersion:
  12874. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  12875. minLength: 1
  12876. type: string
  12877. kind:
  12878. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  12879. minLength: 1
  12880. type: string
  12881. required:
  12882. - apiVersion
  12883. - kind
  12884. type: object
  12885. name:
  12886. description: |-
  12887. The name of the Secret resource to be managed.
  12888. Defaults to the .metadata.name of the ExternalSecret resource
  12889. maxLength: 253
  12890. minLength: 1
  12891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12892. type: string
  12893. template:
  12894. description: Template defines a blueprint for the created Secret resource.
  12895. properties:
  12896. data:
  12897. additionalProperties:
  12898. type: string
  12899. type: object
  12900. engineVersion:
  12901. default: v2
  12902. description: |-
  12903. EngineVersion specifies the template engine version
  12904. that should be used to compile/execute the
  12905. template specified in .data and .templateFrom[].
  12906. enum:
  12907. - v2
  12908. type: string
  12909. mergePolicy:
  12910. default: Replace
  12911. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  12912. enum:
  12913. - Replace
  12914. - Merge
  12915. type: string
  12916. metadata:
  12917. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  12918. properties:
  12919. annotations:
  12920. additionalProperties:
  12921. type: string
  12922. type: object
  12923. finalizers:
  12924. items:
  12925. type: string
  12926. type: array
  12927. labels:
  12928. additionalProperties:
  12929. type: string
  12930. type: object
  12931. type: object
  12932. templateFrom:
  12933. items:
  12934. description: |-
  12935. TemplateFrom specifies a source for templates.
  12936. Each item in the list can either reference a ConfigMap or a Secret resource.
  12937. properties:
  12938. configMap:
  12939. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  12940. properties:
  12941. items:
  12942. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  12943. items:
  12944. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  12945. properties:
  12946. key:
  12947. description: A key in the ConfigMap/Secret
  12948. maxLength: 253
  12949. minLength: 1
  12950. pattern: ^[-._a-zA-Z0-9]+$
  12951. type: string
  12952. templateAs:
  12953. default: Values
  12954. description: TemplateScope specifies how the template keys should be interpreted.
  12955. enum:
  12956. - Values
  12957. - KeysAndValues
  12958. type: string
  12959. required:
  12960. - key
  12961. type: object
  12962. type: array
  12963. name:
  12964. description: The name of the ConfigMap/Secret resource
  12965. maxLength: 253
  12966. minLength: 1
  12967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12968. type: string
  12969. required:
  12970. - items
  12971. - name
  12972. type: object
  12973. literal:
  12974. type: string
  12975. secret:
  12976. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  12977. properties:
  12978. items:
  12979. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  12980. items:
  12981. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  12982. properties:
  12983. key:
  12984. description: A key in the ConfigMap/Secret
  12985. maxLength: 253
  12986. minLength: 1
  12987. pattern: ^[-._a-zA-Z0-9]+$
  12988. type: string
  12989. templateAs:
  12990. default: Values
  12991. description: TemplateScope specifies how the template keys should be interpreted.
  12992. enum:
  12993. - Values
  12994. - KeysAndValues
  12995. type: string
  12996. required:
  12997. - key
  12998. type: object
  12999. type: array
  13000. name:
  13001. description: The name of the ConfigMap/Secret resource
  13002. maxLength: 253
  13003. minLength: 1
  13004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13005. type: string
  13006. required:
  13007. - items
  13008. - name
  13009. type: object
  13010. target:
  13011. default: Data
  13012. description: |-
  13013. Target specifies where to place the template result.
  13014. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13015. For custom resources (when spec.target.manifest is set), this supports
  13016. nested paths like "spec.database.config" or "data".
  13017. type: string
  13018. type: object
  13019. type: array
  13020. type:
  13021. type: string
  13022. type: object
  13023. type: object
  13024. type: object
  13025. status:
  13026. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13027. properties:
  13028. binding:
  13029. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13030. properties:
  13031. name:
  13032. default: ""
  13033. description: |-
  13034. Name of the referent.
  13035. This field is effectively required, but due to backwards compatibility is
  13036. allowed to be empty. Instances of this type with an empty value here are
  13037. almost certainly wrong.
  13038. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13039. type: string
  13040. type: object
  13041. x-kubernetes-map-type: atomic
  13042. conditions:
  13043. items:
  13044. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13045. properties:
  13046. lastTransitionTime:
  13047. format: date-time
  13048. type: string
  13049. message:
  13050. type: string
  13051. reason:
  13052. type: string
  13053. status:
  13054. type: string
  13055. type:
  13056. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13057. enum:
  13058. - Ready
  13059. - Deleted
  13060. type: string
  13061. required:
  13062. - status
  13063. - type
  13064. type: object
  13065. type: array
  13066. refreshTime:
  13067. description: |-
  13068. refreshTime is the time and date the external secret was fetched and
  13069. the target secret updated
  13070. format: date-time
  13071. nullable: true
  13072. type: string
  13073. syncedResourceVersion:
  13074. description: SyncedResourceVersion keeps track of the last synced version
  13075. type: string
  13076. type: object
  13077. type: object
  13078. selectableFields:
  13079. - jsonPath: .spec.secretStoreRef.name
  13080. - jsonPath: .spec.secretStoreRef.kind
  13081. - jsonPath: .spec.target.name
  13082. - jsonPath: .spec.refreshInterval
  13083. served: true
  13084. storage: true
  13085. subresources:
  13086. status: {}
  13087. - additionalPrinterColumns:
  13088. - jsonPath: .spec.secretStoreRef.kind
  13089. name: StoreType
  13090. type: string
  13091. - jsonPath: .spec.secretStoreRef.name
  13092. name: Store
  13093. type: string
  13094. - jsonPath: .spec.refreshInterval
  13095. name: Refresh Interval
  13096. type: string
  13097. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13098. name: Status
  13099. type: string
  13100. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13101. name: Ready
  13102. type: string
  13103. - jsonPath: .status.refreshTime
  13104. name: Last Sync
  13105. type: date
  13106. deprecated: true
  13107. name: v1beta1
  13108. schema:
  13109. openAPIV3Schema:
  13110. description: ExternalSecret is the schema for the external-secrets API.
  13111. properties:
  13112. apiVersion:
  13113. description: |-
  13114. APIVersion defines the versioned schema of this representation of an object.
  13115. Servers should convert recognized schemas to the latest internal value, and
  13116. may reject unrecognized values.
  13117. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13118. type: string
  13119. kind:
  13120. description: |-
  13121. Kind is a string value representing the REST resource this object represents.
  13122. Servers may infer this from the endpoint the client submits requests to.
  13123. Cannot be updated.
  13124. In CamelCase.
  13125. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13126. type: string
  13127. metadata:
  13128. type: object
  13129. spec:
  13130. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13131. properties:
  13132. data:
  13133. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13134. items:
  13135. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13136. properties:
  13137. remoteRef:
  13138. description: |-
  13139. RemoteRef points to the remote secret and defines
  13140. which secret (version/property/..) to fetch.
  13141. properties:
  13142. conversionStrategy:
  13143. default: Default
  13144. description: Used to define a conversion Strategy
  13145. enum:
  13146. - Default
  13147. - Unicode
  13148. type: string
  13149. decodingStrategy:
  13150. default: None
  13151. description: Used to define a decoding Strategy
  13152. enum:
  13153. - Auto
  13154. - Base64
  13155. - Base64URL
  13156. - None
  13157. type: string
  13158. key:
  13159. description: Key is the key used in the Provider, mandatory
  13160. type: string
  13161. metadataPolicy:
  13162. default: None
  13163. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13164. enum:
  13165. - None
  13166. - Fetch
  13167. type: string
  13168. property:
  13169. description: Used to select a specific property of the Provider value (if a map), if supported
  13170. type: string
  13171. version:
  13172. description: Used to select a specific version of the Provider value, if supported
  13173. type: string
  13174. required:
  13175. - key
  13176. type: object
  13177. secretKey:
  13178. description: The key in the Kubernetes Secret to store the value.
  13179. maxLength: 253
  13180. minLength: 1
  13181. pattern: ^[-._a-zA-Z0-9]+$
  13182. type: string
  13183. sourceRef:
  13184. description: |-
  13185. SourceRef allows you to override the source
  13186. from which the value will be pulled.
  13187. maxProperties: 1
  13188. minProperties: 1
  13189. properties:
  13190. generatorRef:
  13191. description: |-
  13192. GeneratorRef points to a generator custom resource.
  13193. Deprecated: The generatorRef is not implemented in .data[].
  13194. this will be removed with v1.
  13195. properties:
  13196. apiVersion:
  13197. default: generators.external-secrets.io/v1alpha1
  13198. description: Specify the apiVersion of the generator resource
  13199. type: string
  13200. kind:
  13201. description: Specify the Kind of the generator resource
  13202. enum:
  13203. - ACRAccessToken
  13204. - ClusterGenerator
  13205. - ECRAuthorizationToken
  13206. - Fake
  13207. - GCRAccessToken
  13208. - GithubAccessToken
  13209. - QuayAccessToken
  13210. - Password
  13211. - SSHKey
  13212. - STSSessionToken
  13213. - UUID
  13214. - VaultDynamicSecret
  13215. - Webhook
  13216. - Grafana
  13217. type: string
  13218. name:
  13219. description: Specify the name of the generator resource
  13220. maxLength: 253
  13221. minLength: 1
  13222. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13223. type: string
  13224. required:
  13225. - kind
  13226. - name
  13227. type: object
  13228. storeRef:
  13229. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13230. properties:
  13231. kind:
  13232. description: |-
  13233. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13234. Defaults to `SecretStore`
  13235. enum:
  13236. - SecretStore
  13237. - ClusterSecretStore
  13238. type: string
  13239. name:
  13240. description: Name of the SecretStore resource
  13241. maxLength: 253
  13242. minLength: 1
  13243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13244. type: string
  13245. type: object
  13246. type: object
  13247. required:
  13248. - remoteRef
  13249. - secretKey
  13250. type: object
  13251. type: array
  13252. dataFrom:
  13253. description: |-
  13254. DataFrom is used to fetch all properties from a specific Provider data
  13255. If multiple entries are specified, the Secret keys are merged in the specified order
  13256. items:
  13257. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13258. properties:
  13259. extract:
  13260. description: |-
  13261. Used to extract multiple key/value pairs from one secret
  13262. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13263. properties:
  13264. conversionStrategy:
  13265. default: Default
  13266. description: Used to define a conversion Strategy
  13267. enum:
  13268. - Default
  13269. - Unicode
  13270. type: string
  13271. decodingStrategy:
  13272. default: None
  13273. description: Used to define a decoding Strategy
  13274. enum:
  13275. - Auto
  13276. - Base64
  13277. - Base64URL
  13278. - None
  13279. type: string
  13280. key:
  13281. description: Key is the key used in the Provider, mandatory
  13282. type: string
  13283. metadataPolicy:
  13284. default: None
  13285. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13286. enum:
  13287. - None
  13288. - Fetch
  13289. type: string
  13290. property:
  13291. description: Used to select a specific property of the Provider value (if a map), if supported
  13292. type: string
  13293. version:
  13294. description: Used to select a specific version of the Provider value, if supported
  13295. type: string
  13296. required:
  13297. - key
  13298. type: object
  13299. find:
  13300. description: |-
  13301. Used to find secrets based on tags or regular expressions
  13302. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13303. properties:
  13304. conversionStrategy:
  13305. default: Default
  13306. description: Used to define a conversion Strategy
  13307. enum:
  13308. - Default
  13309. - Unicode
  13310. type: string
  13311. decodingStrategy:
  13312. default: None
  13313. description: Used to define a decoding Strategy
  13314. enum:
  13315. - Auto
  13316. - Base64
  13317. - Base64URL
  13318. - None
  13319. type: string
  13320. name:
  13321. description: Finds secrets based on the name.
  13322. properties:
  13323. regexp:
  13324. description: Finds secrets base
  13325. type: string
  13326. type: object
  13327. path:
  13328. description: A root path to start the find operations.
  13329. type: string
  13330. tags:
  13331. additionalProperties:
  13332. type: string
  13333. description: Find secrets based on tags.
  13334. type: object
  13335. type: object
  13336. rewrite:
  13337. description: |-
  13338. Used to rewrite secret Keys after getting them from the secret Provider
  13339. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13340. items:
  13341. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  13342. maxProperties: 1
  13343. minProperties: 1
  13344. properties:
  13345. regexp:
  13346. description: |-
  13347. Used to rewrite with regular expressions.
  13348. The resulting key will be the output of a regexp.ReplaceAll operation.
  13349. properties:
  13350. source:
  13351. description: Used to define the regular expression of a re.Compiler.
  13352. type: string
  13353. target:
  13354. description: Used to define the target pattern of a ReplaceAll operation.
  13355. type: string
  13356. required:
  13357. - source
  13358. - target
  13359. type: object
  13360. transform:
  13361. description: |-
  13362. Used to apply string transformation on the secrets.
  13363. The resulting key will be the output of the template applied by the operation.
  13364. properties:
  13365. template:
  13366. description: |-
  13367. Used to define the template to apply on the secret name.
  13368. `.value ` will specify the secret name in the template.
  13369. type: string
  13370. required:
  13371. - template
  13372. type: object
  13373. type: object
  13374. type: array
  13375. sourceRef:
  13376. description: |-
  13377. SourceRef points to a store or generator
  13378. which contains secret values ready to use.
  13379. Use this in combination with Extract or Find pull values out of
  13380. a specific SecretStore.
  13381. When sourceRef points to a generator Extract or Find is not supported.
  13382. The generator returns a static map of values
  13383. maxProperties: 1
  13384. minProperties: 1
  13385. properties:
  13386. generatorRef:
  13387. description: GeneratorRef points to a generator custom resource.
  13388. properties:
  13389. apiVersion:
  13390. default: generators.external-secrets.io/v1alpha1
  13391. description: Specify the apiVersion of the generator resource
  13392. type: string
  13393. kind:
  13394. description: Specify the Kind of the generator resource
  13395. enum:
  13396. - ACRAccessToken
  13397. - ClusterGenerator
  13398. - ECRAuthorizationToken
  13399. - Fake
  13400. - GCRAccessToken
  13401. - GithubAccessToken
  13402. - QuayAccessToken
  13403. - Password
  13404. - SSHKey
  13405. - STSSessionToken
  13406. - UUID
  13407. - VaultDynamicSecret
  13408. - Webhook
  13409. - Grafana
  13410. type: string
  13411. name:
  13412. description: Specify the name of the generator resource
  13413. maxLength: 253
  13414. minLength: 1
  13415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13416. type: string
  13417. required:
  13418. - kind
  13419. - name
  13420. type: object
  13421. storeRef:
  13422. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13423. properties:
  13424. kind:
  13425. description: |-
  13426. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13427. Defaults to `SecretStore`
  13428. enum:
  13429. - SecretStore
  13430. - ClusterSecretStore
  13431. type: string
  13432. name:
  13433. description: Name of the SecretStore resource
  13434. maxLength: 253
  13435. minLength: 1
  13436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13437. type: string
  13438. type: object
  13439. type: object
  13440. type: object
  13441. type: array
  13442. refreshInterval:
  13443. default: 1h0m0s
  13444. description: |-
  13445. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13446. specified as Golang Duration strings.
  13447. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13448. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13449. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13450. type: string
  13451. refreshPolicy:
  13452. description: |-
  13453. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13454. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13455. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13456. No periodic updates occur if refreshInterval is 0.
  13457. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13458. enum:
  13459. - CreatedOnce
  13460. - Periodic
  13461. - OnChange
  13462. type: string
  13463. secretStoreRef:
  13464. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13465. properties:
  13466. kind:
  13467. description: |-
  13468. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13469. Defaults to `SecretStore`
  13470. enum:
  13471. - SecretStore
  13472. - ClusterSecretStore
  13473. type: string
  13474. name:
  13475. description: Name of the SecretStore resource
  13476. maxLength: 253
  13477. minLength: 1
  13478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13479. type: string
  13480. type: object
  13481. target:
  13482. default:
  13483. creationPolicy: Owner
  13484. deletionPolicy: Retain
  13485. description: |-
  13486. ExternalSecretTarget defines the Kubernetes Secret to be created
  13487. There can be only one target per ExternalSecret.
  13488. properties:
  13489. creationPolicy:
  13490. default: Owner
  13491. description: |-
  13492. CreationPolicy defines rules on how to create the resulting Secret.
  13493. Defaults to "Owner"
  13494. enum:
  13495. - Owner
  13496. - Orphan
  13497. - Merge
  13498. - None
  13499. type: string
  13500. deletionPolicy:
  13501. default: Retain
  13502. description: |-
  13503. DeletionPolicy defines rules on how to delete the resulting Secret.
  13504. Defaults to "Retain"
  13505. enum:
  13506. - Delete
  13507. - Merge
  13508. - Retain
  13509. type: string
  13510. immutable:
  13511. description: Immutable defines if the final secret will be immutable
  13512. type: boolean
  13513. name:
  13514. description: |-
  13515. The name of the Secret resource to be managed.
  13516. Defaults to the .metadata.name of the ExternalSecret resource
  13517. maxLength: 253
  13518. minLength: 1
  13519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13520. type: string
  13521. template:
  13522. description: Template defines a blueprint for the created Secret resource.
  13523. properties:
  13524. data:
  13525. additionalProperties:
  13526. type: string
  13527. type: object
  13528. engineVersion:
  13529. default: v2
  13530. description: |-
  13531. EngineVersion specifies the template engine version
  13532. that should be used to compile/execute the
  13533. template specified in .data and .templateFrom[].
  13534. enum:
  13535. - v2
  13536. type: string
  13537. mergePolicy:
  13538. default: Replace
  13539. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  13540. enum:
  13541. - Replace
  13542. - Merge
  13543. type: string
  13544. metadata:
  13545. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13546. properties:
  13547. annotations:
  13548. additionalProperties:
  13549. type: string
  13550. type: object
  13551. labels:
  13552. additionalProperties:
  13553. type: string
  13554. type: object
  13555. type: object
  13556. templateFrom:
  13557. items:
  13558. description: TemplateFrom defines a source for template data.
  13559. properties:
  13560. configMap:
  13561. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13562. properties:
  13563. items:
  13564. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13565. items:
  13566. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13567. properties:
  13568. key:
  13569. description: A key in the ConfigMap/Secret
  13570. maxLength: 253
  13571. minLength: 1
  13572. pattern: ^[-._a-zA-Z0-9]+$
  13573. type: string
  13574. templateAs:
  13575. default: Values
  13576. description: TemplateScope defines the scope of the template when processing template data.
  13577. enum:
  13578. - Values
  13579. - KeysAndValues
  13580. type: string
  13581. required:
  13582. - key
  13583. type: object
  13584. type: array
  13585. name:
  13586. description: The name of the ConfigMap/Secret resource
  13587. maxLength: 253
  13588. minLength: 1
  13589. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13590. type: string
  13591. required:
  13592. - items
  13593. - name
  13594. type: object
  13595. literal:
  13596. type: string
  13597. secret:
  13598. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13599. properties:
  13600. items:
  13601. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13602. items:
  13603. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13604. properties:
  13605. key:
  13606. description: A key in the ConfigMap/Secret
  13607. maxLength: 253
  13608. minLength: 1
  13609. pattern: ^[-._a-zA-Z0-9]+$
  13610. type: string
  13611. templateAs:
  13612. default: Values
  13613. description: TemplateScope defines the scope of the template when processing template data.
  13614. enum:
  13615. - Values
  13616. - KeysAndValues
  13617. type: string
  13618. required:
  13619. - key
  13620. type: object
  13621. type: array
  13622. name:
  13623. description: The name of the ConfigMap/Secret resource
  13624. maxLength: 253
  13625. minLength: 1
  13626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13627. type: string
  13628. required:
  13629. - items
  13630. - name
  13631. type: object
  13632. target:
  13633. default: Data
  13634. description: TemplateTarget defines the target field where the template result will be stored.
  13635. enum:
  13636. - Data
  13637. - Annotations
  13638. - Labels
  13639. type: string
  13640. type: object
  13641. type: array
  13642. type:
  13643. type: string
  13644. type: object
  13645. type: object
  13646. type: object
  13647. status:
  13648. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13649. properties:
  13650. binding:
  13651. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13652. properties:
  13653. name:
  13654. default: ""
  13655. description: |-
  13656. Name of the referent.
  13657. This field is effectively required, but due to backwards compatibility is
  13658. allowed to be empty. Instances of this type with an empty value here are
  13659. almost certainly wrong.
  13660. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13661. type: string
  13662. type: object
  13663. x-kubernetes-map-type: atomic
  13664. conditions:
  13665. items:
  13666. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  13667. properties:
  13668. lastTransitionTime:
  13669. format: date-time
  13670. type: string
  13671. message:
  13672. type: string
  13673. reason:
  13674. type: string
  13675. status:
  13676. type: string
  13677. type:
  13678. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  13679. type: string
  13680. required:
  13681. - status
  13682. - type
  13683. type: object
  13684. type: array
  13685. refreshTime:
  13686. description: |-
  13687. refreshTime is the time and date the external secret was fetched and
  13688. the target secret updated
  13689. format: date-time
  13690. nullable: true
  13691. type: string
  13692. syncedResourceVersion:
  13693. description: SyncedResourceVersion keeps track of the last synced version
  13694. type: string
  13695. type: object
  13696. type: object
  13697. served: false
  13698. storage: false
  13699. subresources:
  13700. status: {}
  13701. ---
  13702. apiVersion: apiextensions.k8s.io/v1
  13703. kind: CustomResourceDefinition
  13704. metadata:
  13705. annotations:
  13706. controller-gen.kubebuilder.io/version: v0.19.0
  13707. labels:
  13708. external-secrets.io/component: controller
  13709. name: pushsecrets.external-secrets.io
  13710. spec:
  13711. group: external-secrets.io
  13712. names:
  13713. categories:
  13714. - external-secrets
  13715. kind: PushSecret
  13716. listKind: PushSecretList
  13717. plural: pushsecrets
  13718. shortNames:
  13719. - ps
  13720. singular: pushsecret
  13721. scope: Namespaced
  13722. versions:
  13723. - additionalPrinterColumns:
  13724. - jsonPath: .metadata.creationTimestamp
  13725. name: AGE
  13726. type: date
  13727. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13728. name: Status
  13729. type: string
  13730. - jsonPath: .status.refreshTime
  13731. name: Last Sync
  13732. type: date
  13733. name: v1alpha1
  13734. schema:
  13735. openAPIV3Schema:
  13736. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  13737. properties:
  13738. apiVersion:
  13739. description: |-
  13740. APIVersion defines the versioned schema of this representation of an object.
  13741. Servers should convert recognized schemas to the latest internal value, and
  13742. may reject unrecognized values.
  13743. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13744. type: string
  13745. kind:
  13746. description: |-
  13747. Kind is a string value representing the REST resource this object represents.
  13748. Servers may infer this from the endpoint the client submits requests to.
  13749. Cannot be updated.
  13750. In CamelCase.
  13751. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13752. type: string
  13753. metadata:
  13754. type: object
  13755. spec:
  13756. description: PushSecretSpec configures the behavior of the PushSecret.
  13757. properties:
  13758. data:
  13759. description: Secret Data that should be pushed to providers
  13760. items:
  13761. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  13762. properties:
  13763. conversionStrategy:
  13764. default: None
  13765. description: Used to define a conversion Strategy for the secret keys
  13766. enum:
  13767. - None
  13768. - ReverseUnicode
  13769. type: string
  13770. match:
  13771. description: Match a given Secret Key to be pushed to the provider.
  13772. properties:
  13773. remoteRef:
  13774. description: Remote Refs to push to providers.
  13775. properties:
  13776. property:
  13777. description: Name of the property in the resulting secret
  13778. type: string
  13779. remoteKey:
  13780. description: Name of the resulting provider secret.
  13781. type: string
  13782. required:
  13783. - remoteKey
  13784. type: object
  13785. secretKey:
  13786. description: Secret Key to be pushed
  13787. type: string
  13788. required:
  13789. - remoteRef
  13790. type: object
  13791. metadata:
  13792. description: |-
  13793. Metadata is metadata attached to the secret.
  13794. The structure of metadata is provider specific, please look it up in the provider documentation.
  13795. x-kubernetes-preserve-unknown-fields: true
  13796. required:
  13797. - match
  13798. type: object
  13799. type: array
  13800. dataTo:
  13801. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  13802. items:
  13803. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  13804. properties:
  13805. conversionStrategy:
  13806. default: None
  13807. description: Used to define a conversion Strategy for the secret keys
  13808. enum:
  13809. - None
  13810. - ReverseUnicode
  13811. type: string
  13812. match:
  13813. description: |-
  13814. Match pattern for selecting keys from the source Secret.
  13815. If not specified, all keys are selected.
  13816. properties:
  13817. regexp:
  13818. description: |-
  13819. Regexp matches keys by regular expression.
  13820. If not specified, all keys are matched.
  13821. type: string
  13822. type: object
  13823. metadata:
  13824. description: |-
  13825. Metadata is metadata attached to the secret.
  13826. The structure of metadata is provider specific, please look it up in the provider documentation.
  13827. x-kubernetes-preserve-unknown-fields: true
  13828. remoteKey:
  13829. description: |-
  13830. RemoteKey is the name of the single provider secret that will receive ALL
  13831. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  13832. When set, per-key expansion is skipped and a single push is performed.
  13833. The provider's store prefix (if any) is still prepended to this value.
  13834. When not set, each matched key is pushed as its own individual provider secret.
  13835. type: string
  13836. rewrite:
  13837. description: |-
  13838. Rewrite operations to transform keys before pushing to the provider.
  13839. Operations are applied sequentially.
  13840. items:
  13841. description: PushSecretRewrite defines how to transform secret keys before pushing.
  13842. properties:
  13843. regexp:
  13844. description: Used to rewrite with regular expressions.
  13845. properties:
  13846. source:
  13847. description: Used to define the regular expression of a re.Compiler.
  13848. type: string
  13849. target:
  13850. description: Used to define the target pattern of a ReplaceAll operation.
  13851. type: string
  13852. required:
  13853. - source
  13854. - target
  13855. type: object
  13856. transform:
  13857. description: Used to apply string transformation on the secrets.
  13858. properties:
  13859. template:
  13860. description: |-
  13861. Used to define the template to apply on the secret name.
  13862. `.value ` will specify the secret name in the template.
  13863. type: string
  13864. required:
  13865. - template
  13866. type: object
  13867. type: object
  13868. x-kubernetes-validations:
  13869. - message: exactly one of regexp or transform must be set
  13870. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  13871. type: array
  13872. storeRef:
  13873. description: StoreRef specifies which SecretStore to push to. Required.
  13874. properties:
  13875. kind:
  13876. default: SecretStore
  13877. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13878. enum:
  13879. - SecretStore
  13880. - ClusterSecretStore
  13881. type: string
  13882. labelSelector:
  13883. description: Optionally, sync to secret stores with label selector
  13884. properties:
  13885. matchExpressions:
  13886. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  13887. items:
  13888. description: |-
  13889. A label selector requirement is a selector that contains values, a key, and an operator that
  13890. relates the key and values.
  13891. properties:
  13892. key:
  13893. description: key is the label key that the selector applies to.
  13894. type: string
  13895. operator:
  13896. description: |-
  13897. operator represents a key's relationship to a set of values.
  13898. Valid operators are In, NotIn, Exists and DoesNotExist.
  13899. type: string
  13900. values:
  13901. description: |-
  13902. values is an array of string values. If the operator is In or NotIn,
  13903. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  13904. the values array must be empty. This array is replaced during a strategic
  13905. merge patch.
  13906. items:
  13907. type: string
  13908. type: array
  13909. x-kubernetes-list-type: atomic
  13910. required:
  13911. - key
  13912. - operator
  13913. type: object
  13914. type: array
  13915. x-kubernetes-list-type: atomic
  13916. matchLabels:
  13917. additionalProperties:
  13918. type: string
  13919. description: |-
  13920. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  13921. map is equivalent to an element of matchExpressions, whose key field is "key", the
  13922. operator is "In", and the values array contains only "value". The requirements are ANDed.
  13923. type: object
  13924. type: object
  13925. x-kubernetes-map-type: atomic
  13926. name:
  13927. description: Optionally, sync to the SecretStore of the given name
  13928. maxLength: 253
  13929. minLength: 1
  13930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13931. type: string
  13932. type: object
  13933. type: object
  13934. x-kubernetes-validations:
  13935. - message: storeRef must specify either name or labelSelector
  13936. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  13937. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  13938. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  13939. type: array
  13940. deletionPolicy:
  13941. default: None
  13942. description: Deletion Policy to handle Secrets in the provider.
  13943. enum:
  13944. - Delete
  13945. - None
  13946. type: string
  13947. refreshInterval:
  13948. default: 1h0m0s
  13949. description: The Interval to which External Secrets will try to push a secret definition
  13950. type: string
  13951. secretStoreRefs:
  13952. items:
  13953. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  13954. properties:
  13955. kind:
  13956. default: SecretStore
  13957. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13958. enum:
  13959. - SecretStore
  13960. - ClusterSecretStore
  13961. type: string
  13962. labelSelector:
  13963. description: Optionally, sync to secret stores with label selector
  13964. properties:
  13965. matchExpressions:
  13966. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  13967. items:
  13968. description: |-
  13969. A label selector requirement is a selector that contains values, a key, and an operator that
  13970. relates the key and values.
  13971. properties:
  13972. key:
  13973. description: key is the label key that the selector applies to.
  13974. type: string
  13975. operator:
  13976. description: |-
  13977. operator represents a key's relationship to a set of values.
  13978. Valid operators are In, NotIn, Exists and DoesNotExist.
  13979. type: string
  13980. values:
  13981. description: |-
  13982. values is an array of string values. If the operator is In or NotIn,
  13983. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  13984. the values array must be empty. This array is replaced during a strategic
  13985. merge patch.
  13986. items:
  13987. type: string
  13988. type: array
  13989. x-kubernetes-list-type: atomic
  13990. required:
  13991. - key
  13992. - operator
  13993. type: object
  13994. type: array
  13995. x-kubernetes-list-type: atomic
  13996. matchLabels:
  13997. additionalProperties:
  13998. type: string
  13999. description: |-
  14000. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14001. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14002. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14003. type: object
  14004. type: object
  14005. x-kubernetes-map-type: atomic
  14006. name:
  14007. description: Optionally, sync to the SecretStore of the given name
  14008. maxLength: 253
  14009. minLength: 1
  14010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14011. type: string
  14012. type: object
  14013. type: array
  14014. selector:
  14015. description: The Secret Selector (k8s source) for the Push Secret
  14016. maxProperties: 1
  14017. minProperties: 1
  14018. properties:
  14019. generatorRef:
  14020. description: Point to a generator to create a Secret.
  14021. properties:
  14022. apiVersion:
  14023. default: generators.external-secrets.io/v1alpha1
  14024. description: Specify the apiVersion of the generator resource
  14025. type: string
  14026. kind:
  14027. description: Specify the Kind of the generator resource
  14028. enum:
  14029. - ACRAccessToken
  14030. - ClusterGenerator
  14031. - CloudsmithAccessToken
  14032. - ECRAuthorizationToken
  14033. - Fake
  14034. - GCRAccessToken
  14035. - GithubAccessToken
  14036. - QuayAccessToken
  14037. - Password
  14038. - SSHKey
  14039. - STSSessionToken
  14040. - UUID
  14041. - VaultDynamicSecret
  14042. - Webhook
  14043. - Grafana
  14044. - MFA
  14045. type: string
  14046. name:
  14047. description: Specify the name of the generator resource
  14048. maxLength: 253
  14049. minLength: 1
  14050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14051. type: string
  14052. required:
  14053. - kind
  14054. - name
  14055. type: object
  14056. secret:
  14057. description: Select a Secret to Push.
  14058. properties:
  14059. name:
  14060. description: |-
  14061. Name of the Secret.
  14062. The Secret must exist in the same namespace as the PushSecret manifest.
  14063. maxLength: 253
  14064. minLength: 1
  14065. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14066. type: string
  14067. selector:
  14068. description: Selector chooses secrets using a labelSelector.
  14069. properties:
  14070. matchExpressions:
  14071. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14072. items:
  14073. description: |-
  14074. A label selector requirement is a selector that contains values, a key, and an operator that
  14075. relates the key and values.
  14076. properties:
  14077. key:
  14078. description: key is the label key that the selector applies to.
  14079. type: string
  14080. operator:
  14081. description: |-
  14082. operator represents a key's relationship to a set of values.
  14083. Valid operators are In, NotIn, Exists and DoesNotExist.
  14084. type: string
  14085. values:
  14086. description: |-
  14087. values is an array of string values. If the operator is In or NotIn,
  14088. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14089. the values array must be empty. This array is replaced during a strategic
  14090. merge patch.
  14091. items:
  14092. type: string
  14093. type: array
  14094. x-kubernetes-list-type: atomic
  14095. required:
  14096. - key
  14097. - operator
  14098. type: object
  14099. type: array
  14100. x-kubernetes-list-type: atomic
  14101. matchLabels:
  14102. additionalProperties:
  14103. type: string
  14104. description: |-
  14105. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14106. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14107. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14108. type: object
  14109. type: object
  14110. x-kubernetes-map-type: atomic
  14111. type: object
  14112. type: object
  14113. template:
  14114. description: Template defines a blueprint for the created Secret resource.
  14115. properties:
  14116. data:
  14117. additionalProperties:
  14118. type: string
  14119. type: object
  14120. engineVersion:
  14121. default: v2
  14122. description: |-
  14123. EngineVersion specifies the template engine version
  14124. that should be used to compile/execute the
  14125. template specified in .data and .templateFrom[].
  14126. enum:
  14127. - v2
  14128. type: string
  14129. mergePolicy:
  14130. default: Replace
  14131. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14132. enum:
  14133. - Replace
  14134. - Merge
  14135. type: string
  14136. metadata:
  14137. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14138. properties:
  14139. annotations:
  14140. additionalProperties:
  14141. type: string
  14142. type: object
  14143. finalizers:
  14144. items:
  14145. type: string
  14146. type: array
  14147. labels:
  14148. additionalProperties:
  14149. type: string
  14150. type: object
  14151. type: object
  14152. templateFrom:
  14153. items:
  14154. description: |-
  14155. TemplateFrom specifies a source for templates.
  14156. Each item in the list can either reference a ConfigMap or a Secret resource.
  14157. properties:
  14158. configMap:
  14159. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14160. properties:
  14161. items:
  14162. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14163. items:
  14164. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14165. properties:
  14166. key:
  14167. description: A key in the ConfigMap/Secret
  14168. maxLength: 253
  14169. minLength: 1
  14170. pattern: ^[-._a-zA-Z0-9]+$
  14171. type: string
  14172. templateAs:
  14173. default: Values
  14174. description: TemplateScope specifies how the template keys should be interpreted.
  14175. enum:
  14176. - Values
  14177. - KeysAndValues
  14178. type: string
  14179. required:
  14180. - key
  14181. type: object
  14182. type: array
  14183. name:
  14184. description: The name of the ConfigMap/Secret resource
  14185. maxLength: 253
  14186. minLength: 1
  14187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14188. type: string
  14189. required:
  14190. - items
  14191. - name
  14192. type: object
  14193. literal:
  14194. type: string
  14195. secret:
  14196. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14197. properties:
  14198. items:
  14199. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14200. items:
  14201. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14202. properties:
  14203. key:
  14204. description: A key in the ConfigMap/Secret
  14205. maxLength: 253
  14206. minLength: 1
  14207. pattern: ^[-._a-zA-Z0-9]+$
  14208. type: string
  14209. templateAs:
  14210. default: Values
  14211. description: TemplateScope specifies how the template keys should be interpreted.
  14212. enum:
  14213. - Values
  14214. - KeysAndValues
  14215. type: string
  14216. required:
  14217. - key
  14218. type: object
  14219. type: array
  14220. name:
  14221. description: The name of the ConfigMap/Secret resource
  14222. maxLength: 253
  14223. minLength: 1
  14224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14225. type: string
  14226. required:
  14227. - items
  14228. - name
  14229. type: object
  14230. target:
  14231. default: Data
  14232. description: |-
  14233. Target specifies where to place the template result.
  14234. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14235. For custom resources (when spec.target.manifest is set), this supports
  14236. nested paths like "spec.database.config" or "data".
  14237. type: string
  14238. type: object
  14239. type: array
  14240. type:
  14241. type: string
  14242. type: object
  14243. updatePolicy:
  14244. default: Replace
  14245. description: UpdatePolicy to handle Secrets in the provider.
  14246. enum:
  14247. - Replace
  14248. - IfNotExists
  14249. type: string
  14250. required:
  14251. - secretStoreRefs
  14252. - selector
  14253. type: object
  14254. status:
  14255. description: PushSecretStatus indicates the history of the status of PushSecret.
  14256. properties:
  14257. conditions:
  14258. items:
  14259. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14260. properties:
  14261. lastTransitionTime:
  14262. format: date-time
  14263. type: string
  14264. message:
  14265. type: string
  14266. reason:
  14267. type: string
  14268. status:
  14269. type: string
  14270. type:
  14271. description: PushSecretConditionType indicates the condition of the PushSecret.
  14272. type: string
  14273. required:
  14274. - status
  14275. - type
  14276. type: object
  14277. type: array
  14278. refreshTime:
  14279. description: |-
  14280. refreshTime is the time and date the external secret was fetched and
  14281. the target secret updated
  14282. format: date-time
  14283. nullable: true
  14284. type: string
  14285. syncedPushSecrets:
  14286. additionalProperties:
  14287. additionalProperties:
  14288. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14289. properties:
  14290. conversionStrategy:
  14291. default: None
  14292. description: Used to define a conversion Strategy for the secret keys
  14293. enum:
  14294. - None
  14295. - ReverseUnicode
  14296. type: string
  14297. match:
  14298. description: Match a given Secret Key to be pushed to the provider.
  14299. properties:
  14300. remoteRef:
  14301. description: Remote Refs to push to providers.
  14302. properties:
  14303. property:
  14304. description: Name of the property in the resulting secret
  14305. type: string
  14306. remoteKey:
  14307. description: Name of the resulting provider secret.
  14308. type: string
  14309. required:
  14310. - remoteKey
  14311. type: object
  14312. secretKey:
  14313. description: Secret Key to be pushed
  14314. type: string
  14315. required:
  14316. - remoteRef
  14317. type: object
  14318. metadata:
  14319. description: |-
  14320. Metadata is metadata attached to the secret.
  14321. The structure of metadata is provider specific, please look it up in the provider documentation.
  14322. x-kubernetes-preserve-unknown-fields: true
  14323. required:
  14324. - match
  14325. type: object
  14326. type: object
  14327. description: |-
  14328. Synced PushSecrets, including secrets that already exist in provider.
  14329. Matches secret stores to PushSecretData that was stored to that secret store.
  14330. type: object
  14331. syncedResourceVersion:
  14332. description: SyncedResourceVersion keeps track of the last synced version.
  14333. type: string
  14334. type: object
  14335. type: object
  14336. served: true
  14337. storage: true
  14338. subresources:
  14339. status: {}
  14340. ---
  14341. apiVersion: apiextensions.k8s.io/v1
  14342. kind: CustomResourceDefinition
  14343. metadata:
  14344. annotations:
  14345. controller-gen.kubebuilder.io/version: v0.19.0
  14346. labels:
  14347. external-secrets.io/component: controller
  14348. name: secretstores.external-secrets.io
  14349. spec:
  14350. group: external-secrets.io
  14351. names:
  14352. categories:
  14353. - external-secrets
  14354. kind: SecretStore
  14355. listKind: SecretStoreList
  14356. plural: secretstores
  14357. shortNames:
  14358. - ss
  14359. singular: secretstore
  14360. scope: Namespaced
  14361. versions:
  14362. - additionalPrinterColumns:
  14363. - jsonPath: .metadata.creationTimestamp
  14364. name: AGE
  14365. type: date
  14366. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14367. name: Status
  14368. type: string
  14369. - jsonPath: .status.capabilities
  14370. name: Capabilities
  14371. type: string
  14372. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14373. name: Ready
  14374. type: string
  14375. name: v1
  14376. schema:
  14377. openAPIV3Schema:
  14378. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  14379. properties:
  14380. apiVersion:
  14381. description: |-
  14382. APIVersion defines the versioned schema of this representation of an object.
  14383. Servers should convert recognized schemas to the latest internal value, and
  14384. may reject unrecognized values.
  14385. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14386. type: string
  14387. kind:
  14388. description: |-
  14389. Kind is a string value representing the REST resource this object represents.
  14390. Servers may infer this from the endpoint the client submits requests to.
  14391. Cannot be updated.
  14392. In CamelCase.
  14393. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14394. type: string
  14395. metadata:
  14396. type: object
  14397. spec:
  14398. description: SecretStoreSpec defines the desired state of SecretStore.
  14399. properties:
  14400. conditions:
  14401. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  14402. items:
  14403. description: |-
  14404. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  14405. for a ClusterSecretStore instance.
  14406. properties:
  14407. namespaceRegexes:
  14408. description: Choose namespaces by using regex matching
  14409. items:
  14410. type: string
  14411. type: array
  14412. namespaceSelector:
  14413. description: Choose namespace using a labelSelector
  14414. properties:
  14415. matchExpressions:
  14416. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14417. items:
  14418. description: |-
  14419. A label selector requirement is a selector that contains values, a key, and an operator that
  14420. relates the key and values.
  14421. properties:
  14422. key:
  14423. description: key is the label key that the selector applies to.
  14424. type: string
  14425. operator:
  14426. description: |-
  14427. operator represents a key's relationship to a set of values.
  14428. Valid operators are In, NotIn, Exists and DoesNotExist.
  14429. type: string
  14430. values:
  14431. description: |-
  14432. values is an array of string values. If the operator is In or NotIn,
  14433. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14434. the values array must be empty. This array is replaced during a strategic
  14435. merge patch.
  14436. items:
  14437. type: string
  14438. type: array
  14439. x-kubernetes-list-type: atomic
  14440. required:
  14441. - key
  14442. - operator
  14443. type: object
  14444. type: array
  14445. x-kubernetes-list-type: atomic
  14446. matchLabels:
  14447. additionalProperties:
  14448. type: string
  14449. description: |-
  14450. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14451. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14452. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14453. type: object
  14454. type: object
  14455. x-kubernetes-map-type: atomic
  14456. namespaces:
  14457. description: Choose namespaces by name
  14458. items:
  14459. maxLength: 63
  14460. minLength: 1
  14461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14462. type: string
  14463. type: array
  14464. type: object
  14465. type: array
  14466. controller:
  14467. description: |-
  14468. Used to select the correct ESO controller (think: ingress.ingressClassName)
  14469. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  14470. type: string
  14471. provider:
  14472. description: Used to configure the provider. Only one provider may be set
  14473. maxProperties: 1
  14474. minProperties: 1
  14475. properties:
  14476. akeyless:
  14477. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  14478. properties:
  14479. akeylessGWApiURL:
  14480. description: Akeyless GW API Url from which the secrets to be fetched from.
  14481. type: string
  14482. authSecretRef:
  14483. description: Auth configures how the operator authenticates with Akeyless.
  14484. properties:
  14485. kubernetesAuth:
  14486. description: |-
  14487. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  14488. token stored in the named Secret resource.
  14489. properties:
  14490. accessID:
  14491. description: the Akeyless Kubernetes auth-method access-id
  14492. type: string
  14493. k8sConfName:
  14494. description: Kubernetes-auth configuration name in Akeyless-Gateway
  14495. type: string
  14496. secretRef:
  14497. description: |-
  14498. Optional secret field containing a Kubernetes ServiceAccount JWT used
  14499. for authenticating with Akeyless. If a name is specified without a key,
  14500. `token` is the default. If one is not specified, the one bound to
  14501. the controller will be used.
  14502. properties:
  14503. key:
  14504. description: |-
  14505. A key in the referenced Secret.
  14506. Some instances of this field may be defaulted, in others it may be required.
  14507. maxLength: 253
  14508. minLength: 1
  14509. pattern: ^[-._a-zA-Z0-9]+$
  14510. type: string
  14511. name:
  14512. description: The name of the Secret resource being referred to.
  14513. maxLength: 253
  14514. minLength: 1
  14515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14516. type: string
  14517. namespace:
  14518. description: |-
  14519. The namespace of the Secret resource being referred to.
  14520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14521. maxLength: 63
  14522. minLength: 1
  14523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14524. type: string
  14525. type: object
  14526. serviceAccountRef:
  14527. description: |-
  14528. Optional service account field containing the name of a kubernetes ServiceAccount.
  14529. If the service account is specified, the service account secret token JWT will be used
  14530. for authenticating with Akeyless. If the service account selector is not supplied,
  14531. the secretRef will be used instead.
  14532. properties:
  14533. audiences:
  14534. description: |-
  14535. Audience specifies the `aud` claim for the service account token
  14536. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14537. then this audiences will be appended to the list
  14538. items:
  14539. type: string
  14540. type: array
  14541. name:
  14542. description: The name of the ServiceAccount resource being referred to.
  14543. maxLength: 253
  14544. minLength: 1
  14545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14546. type: string
  14547. namespace:
  14548. description: |-
  14549. Namespace of the resource being referred to.
  14550. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14551. maxLength: 63
  14552. minLength: 1
  14553. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14554. type: string
  14555. required:
  14556. - name
  14557. type: object
  14558. required:
  14559. - accessID
  14560. - k8sConfName
  14561. type: object
  14562. secretRef:
  14563. description: |-
  14564. Reference to a Secret that contains the details
  14565. to authenticate with Akeyless.
  14566. properties:
  14567. accessID:
  14568. description: The SecretAccessID is used for authentication
  14569. properties:
  14570. key:
  14571. description: |-
  14572. A key in the referenced Secret.
  14573. Some instances of this field may be defaulted, in others it may be required.
  14574. maxLength: 253
  14575. minLength: 1
  14576. pattern: ^[-._a-zA-Z0-9]+$
  14577. type: string
  14578. name:
  14579. description: The name of the Secret resource being referred to.
  14580. maxLength: 253
  14581. minLength: 1
  14582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14583. type: string
  14584. namespace:
  14585. description: |-
  14586. The namespace of the Secret resource being referred to.
  14587. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14588. maxLength: 63
  14589. minLength: 1
  14590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14591. type: string
  14592. type: object
  14593. accessType:
  14594. description: |-
  14595. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14596. In some instances, `key` is a required field.
  14597. properties:
  14598. key:
  14599. description: |-
  14600. A key in the referenced Secret.
  14601. Some instances of this field may be defaulted, in others it may be required.
  14602. maxLength: 253
  14603. minLength: 1
  14604. pattern: ^[-._a-zA-Z0-9]+$
  14605. type: string
  14606. name:
  14607. description: The name of the Secret resource being referred to.
  14608. maxLength: 253
  14609. minLength: 1
  14610. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14611. type: string
  14612. namespace:
  14613. description: |-
  14614. The namespace of the Secret resource being referred to.
  14615. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14616. maxLength: 63
  14617. minLength: 1
  14618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14619. type: string
  14620. type: object
  14621. accessTypeParam:
  14622. description: |-
  14623. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14624. In some instances, `key` is a required field.
  14625. properties:
  14626. key:
  14627. description: |-
  14628. A key in the referenced Secret.
  14629. Some instances of this field may be defaulted, in others it may be required.
  14630. maxLength: 253
  14631. minLength: 1
  14632. pattern: ^[-._a-zA-Z0-9]+$
  14633. type: string
  14634. name:
  14635. description: The name of the Secret resource being referred to.
  14636. maxLength: 253
  14637. minLength: 1
  14638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14639. type: string
  14640. namespace:
  14641. description: |-
  14642. The namespace of the Secret resource being referred to.
  14643. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14644. maxLength: 63
  14645. minLength: 1
  14646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14647. type: string
  14648. type: object
  14649. type: object
  14650. type: object
  14651. caBundle:
  14652. description: |-
  14653. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  14654. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  14655. are used to validate the TLS connection.
  14656. format: byte
  14657. type: string
  14658. caProvider:
  14659. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  14660. properties:
  14661. key:
  14662. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  14663. maxLength: 253
  14664. minLength: 1
  14665. pattern: ^[-._a-zA-Z0-9]+$
  14666. type: string
  14667. name:
  14668. description: The name of the object located at the provider type.
  14669. maxLength: 253
  14670. minLength: 1
  14671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14672. type: string
  14673. namespace:
  14674. description: |-
  14675. The namespace the Provider type is in.
  14676. Can only be defined when used in a ClusterSecretStore.
  14677. maxLength: 63
  14678. minLength: 1
  14679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14680. type: string
  14681. type:
  14682. description: The type of provider to use such as "Secret", or "ConfigMap".
  14683. enum:
  14684. - Secret
  14685. - ConfigMap
  14686. type: string
  14687. required:
  14688. - name
  14689. - type
  14690. type: object
  14691. required:
  14692. - akeylessGWApiURL
  14693. - authSecretRef
  14694. type: object
  14695. aws:
  14696. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  14697. properties:
  14698. additionalRoles:
  14699. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  14700. items:
  14701. type: string
  14702. type: array
  14703. auth:
  14704. description: |-
  14705. Auth defines the information necessary to authenticate against AWS
  14706. if not set aws sdk will infer credentials from your environment
  14707. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  14708. properties:
  14709. jwt:
  14710. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  14711. properties:
  14712. serviceAccountRef:
  14713. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  14714. properties:
  14715. audiences:
  14716. description: |-
  14717. Audience specifies the `aud` claim for the service account token
  14718. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14719. then this audiences will be appended to the list
  14720. items:
  14721. type: string
  14722. type: array
  14723. name:
  14724. description: The name of the ServiceAccount resource being referred to.
  14725. maxLength: 253
  14726. minLength: 1
  14727. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14728. type: string
  14729. namespace:
  14730. description: |-
  14731. Namespace of the resource being referred to.
  14732. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14733. maxLength: 63
  14734. minLength: 1
  14735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14736. type: string
  14737. required:
  14738. - name
  14739. type: object
  14740. type: object
  14741. secretRef:
  14742. description: |-
  14743. AWSAuthSecretRef holds secret references for AWS credentials
  14744. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  14745. properties:
  14746. accessKeyIDSecretRef:
  14747. description: The AccessKeyID is used for authentication
  14748. properties:
  14749. key:
  14750. description: |-
  14751. A key in the referenced Secret.
  14752. Some instances of this field may be defaulted, in others it may be required.
  14753. maxLength: 253
  14754. minLength: 1
  14755. pattern: ^[-._a-zA-Z0-9]+$
  14756. type: string
  14757. name:
  14758. description: The name of the Secret resource being referred to.
  14759. maxLength: 253
  14760. minLength: 1
  14761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14762. type: string
  14763. namespace:
  14764. description: |-
  14765. The namespace of the Secret resource being referred to.
  14766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14767. maxLength: 63
  14768. minLength: 1
  14769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14770. type: string
  14771. type: object
  14772. secretAccessKeySecretRef:
  14773. description: The SecretAccessKey is used for authentication
  14774. properties:
  14775. key:
  14776. description: |-
  14777. A key in the referenced Secret.
  14778. Some instances of this field may be defaulted, in others it may be required.
  14779. maxLength: 253
  14780. minLength: 1
  14781. pattern: ^[-._a-zA-Z0-9]+$
  14782. type: string
  14783. name:
  14784. description: The name of the Secret resource being referred to.
  14785. maxLength: 253
  14786. minLength: 1
  14787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14788. type: string
  14789. namespace:
  14790. description: |-
  14791. The namespace of the Secret resource being referred to.
  14792. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14793. maxLength: 63
  14794. minLength: 1
  14795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14796. type: string
  14797. type: object
  14798. sessionTokenSecretRef:
  14799. description: |-
  14800. The SessionToken used for authentication
  14801. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  14802. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  14803. properties:
  14804. key:
  14805. description: |-
  14806. A key in the referenced Secret.
  14807. Some instances of this field may be defaulted, in others it may be required.
  14808. maxLength: 253
  14809. minLength: 1
  14810. pattern: ^[-._a-zA-Z0-9]+$
  14811. type: string
  14812. name:
  14813. description: The name of the Secret resource being referred to.
  14814. maxLength: 253
  14815. minLength: 1
  14816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14817. type: string
  14818. namespace:
  14819. description: |-
  14820. The namespace of the Secret resource being referred to.
  14821. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14822. maxLength: 63
  14823. minLength: 1
  14824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14825. type: string
  14826. type: object
  14827. type: object
  14828. type: object
  14829. externalID:
  14830. description: AWS External ID set on assumed IAM roles
  14831. type: string
  14832. prefix:
  14833. description: Prefix adds a prefix to all retrieved values.
  14834. type: string
  14835. region:
  14836. description: AWS Region to be used for the provider
  14837. type: string
  14838. role:
  14839. description: Role is a Role ARN which the provider will assume
  14840. type: string
  14841. secretsManager:
  14842. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  14843. properties:
  14844. forceDeleteWithoutRecovery:
  14845. description: |-
  14846. Specifies whether to delete the secret without any recovery window. You
  14847. can't use both this parameter and RecoveryWindowInDays in the same call.
  14848. If you don't use either, then by default Secrets Manager uses a 30 day
  14849. recovery window.
  14850. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  14851. type: boolean
  14852. recoveryWindowInDays:
  14853. description: |-
  14854. The number of days from 7 to 30 that Secrets Manager waits before
  14855. permanently deleting the secret. You can't use both this parameter and
  14856. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  14857. then by default Secrets Manager uses a 30-day recovery window.
  14858. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  14859. format: int64
  14860. type: integer
  14861. type: object
  14862. service:
  14863. description: Service defines which service should be used to fetch the secrets
  14864. enum:
  14865. - SecretsManager
  14866. - ParameterStore
  14867. type: string
  14868. sessionTags:
  14869. description: AWS STS assume role session tags
  14870. items:
  14871. description: |-
  14872. Tag is a key-value pair that can be attached to an AWS resource.
  14873. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  14874. properties:
  14875. key:
  14876. type: string
  14877. value:
  14878. type: string
  14879. required:
  14880. - key
  14881. - value
  14882. type: object
  14883. type: array
  14884. transitiveTagKeys:
  14885. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  14886. items:
  14887. type: string
  14888. type: array
  14889. required:
  14890. - region
  14891. - service
  14892. type: object
  14893. azurekv:
  14894. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  14895. properties:
  14896. authSecretRef:
  14897. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  14898. properties:
  14899. clientCertificate:
  14900. description: The Azure ClientCertificate of the service principle used for authentication.
  14901. properties:
  14902. key:
  14903. description: |-
  14904. A key in the referenced Secret.
  14905. Some instances of this field may be defaulted, in others it may be required.
  14906. maxLength: 253
  14907. minLength: 1
  14908. pattern: ^[-._a-zA-Z0-9]+$
  14909. type: string
  14910. name:
  14911. description: The name of the Secret resource being referred to.
  14912. maxLength: 253
  14913. minLength: 1
  14914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14915. type: string
  14916. namespace:
  14917. description: |-
  14918. The namespace of the Secret resource being referred to.
  14919. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14920. maxLength: 63
  14921. minLength: 1
  14922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14923. type: string
  14924. type: object
  14925. clientId:
  14926. description: The Azure clientId of the service principle or managed identity used for authentication.
  14927. properties:
  14928. key:
  14929. description: |-
  14930. A key in the referenced Secret.
  14931. Some instances of this field may be defaulted, in others it may be required.
  14932. maxLength: 253
  14933. minLength: 1
  14934. pattern: ^[-._a-zA-Z0-9]+$
  14935. type: string
  14936. name:
  14937. description: The name of the Secret resource being referred to.
  14938. maxLength: 253
  14939. minLength: 1
  14940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14941. type: string
  14942. namespace:
  14943. description: |-
  14944. The namespace of the Secret resource being referred to.
  14945. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14946. maxLength: 63
  14947. minLength: 1
  14948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14949. type: string
  14950. type: object
  14951. clientSecret:
  14952. description: The Azure ClientSecret of the service principle used for authentication.
  14953. properties:
  14954. key:
  14955. description: |-
  14956. A key in the referenced Secret.
  14957. Some instances of this field may be defaulted, in others it may be required.
  14958. maxLength: 253
  14959. minLength: 1
  14960. pattern: ^[-._a-zA-Z0-9]+$
  14961. type: string
  14962. name:
  14963. description: The name of the Secret resource being referred to.
  14964. maxLength: 253
  14965. minLength: 1
  14966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14967. type: string
  14968. namespace:
  14969. description: |-
  14970. The namespace of the Secret resource being referred to.
  14971. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14972. maxLength: 63
  14973. minLength: 1
  14974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14975. type: string
  14976. type: object
  14977. tenantId:
  14978. description: The Azure tenantId of the managed identity used for authentication.
  14979. properties:
  14980. key:
  14981. description: |-
  14982. A key in the referenced Secret.
  14983. Some instances of this field may be defaulted, in others it may be required.
  14984. maxLength: 253
  14985. minLength: 1
  14986. pattern: ^[-._a-zA-Z0-9]+$
  14987. type: string
  14988. name:
  14989. description: The name of the Secret resource being referred to.
  14990. maxLength: 253
  14991. minLength: 1
  14992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14993. type: string
  14994. namespace:
  14995. description: |-
  14996. The namespace of the Secret resource being referred to.
  14997. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14998. maxLength: 63
  14999. minLength: 1
  15000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15001. type: string
  15002. type: object
  15003. type: object
  15004. authType:
  15005. default: ServicePrincipal
  15006. description: |-
  15007. Auth type defines how to authenticate to the keyvault service.
  15008. Valid values are:
  15009. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15010. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15011. enum:
  15012. - ServicePrincipal
  15013. - ManagedIdentity
  15014. - WorkloadIdentity
  15015. type: string
  15016. customCloudConfig:
  15017. description: |-
  15018. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15019. Required when EnvironmentType is AzureStackCloud.
  15020. Optional for other environment types - useful for Azure China when using Workload Identity
  15021. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15022. standard China Cloud endpoint (login.chinacloudapi.cn).
  15023. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15024. configuration is not supported with the legacy go-autorest SDK.
  15025. properties:
  15026. activeDirectoryEndpoint:
  15027. description: |-
  15028. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15029. Required when using custom cloud configuration
  15030. type: string
  15031. keyVaultDNSSuffix:
  15032. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15033. type: string
  15034. keyVaultEndpoint:
  15035. description: KeyVaultEndpoint is the Key Vault service endpoint
  15036. type: string
  15037. resourceManagerEndpoint:
  15038. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15039. type: string
  15040. required:
  15041. - activeDirectoryEndpoint
  15042. type: object
  15043. environmentType:
  15044. default: PublicCloud
  15045. description: |-
  15046. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15047. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15048. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15049. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15050. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15051. enum:
  15052. - PublicCloud
  15053. - USGovernmentCloud
  15054. - ChinaCloud
  15055. - GermanCloud
  15056. - AzureStackCloud
  15057. type: string
  15058. identityId:
  15059. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15060. type: string
  15061. serviceAccountRef:
  15062. description: |-
  15063. ServiceAccountRef specified the service account
  15064. that should be used when authenticating with WorkloadIdentity.
  15065. properties:
  15066. audiences:
  15067. description: |-
  15068. Audience specifies the `aud` claim for the service account token
  15069. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15070. then this audiences will be appended to the list
  15071. items:
  15072. type: string
  15073. type: array
  15074. name:
  15075. description: The name of the ServiceAccount resource being referred to.
  15076. maxLength: 253
  15077. minLength: 1
  15078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15079. type: string
  15080. namespace:
  15081. description: |-
  15082. Namespace of the resource being referred to.
  15083. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15084. maxLength: 63
  15085. minLength: 1
  15086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15087. type: string
  15088. required:
  15089. - name
  15090. type: object
  15091. tenantId:
  15092. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15093. type: string
  15094. useAzureSDK:
  15095. default: false
  15096. description: |-
  15097. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15098. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15099. type: boolean
  15100. vaultUrl:
  15101. description: Vault Url from which the secrets to be fetched from.
  15102. type: string
  15103. required:
  15104. - vaultUrl
  15105. type: object
  15106. barbican:
  15107. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15108. properties:
  15109. auth:
  15110. description: BarbicanAuth contains the authentication information for Barbican.
  15111. properties:
  15112. password:
  15113. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15114. properties:
  15115. secretRef:
  15116. description: |-
  15117. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15118. In some instances, `key` is a required field.
  15119. properties:
  15120. key:
  15121. description: |-
  15122. A key in the referenced Secret.
  15123. Some instances of this field may be defaulted, in others it may be required.
  15124. maxLength: 253
  15125. minLength: 1
  15126. pattern: ^[-._a-zA-Z0-9]+$
  15127. type: string
  15128. name:
  15129. description: The name of the Secret resource being referred to.
  15130. maxLength: 253
  15131. minLength: 1
  15132. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15133. type: string
  15134. namespace:
  15135. description: |-
  15136. The namespace of the Secret resource being referred to.
  15137. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15138. maxLength: 63
  15139. minLength: 1
  15140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15141. type: string
  15142. type: object
  15143. required:
  15144. - secretRef
  15145. type: object
  15146. username:
  15147. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15148. maxProperties: 1
  15149. minProperties: 1
  15150. properties:
  15151. secretRef:
  15152. description: |-
  15153. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15154. In some instances, `key` is a required field.
  15155. properties:
  15156. key:
  15157. description: |-
  15158. A key in the referenced Secret.
  15159. Some instances of this field may be defaulted, in others it may be required.
  15160. maxLength: 253
  15161. minLength: 1
  15162. pattern: ^[-._a-zA-Z0-9]+$
  15163. type: string
  15164. name:
  15165. description: The name of the Secret resource being referred to.
  15166. maxLength: 253
  15167. minLength: 1
  15168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15169. type: string
  15170. namespace:
  15171. description: |-
  15172. The namespace of the Secret resource being referred to.
  15173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15174. maxLength: 63
  15175. minLength: 1
  15176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15177. type: string
  15178. type: object
  15179. value:
  15180. type: string
  15181. type: object
  15182. required:
  15183. - password
  15184. - username
  15185. type: object
  15186. authURL:
  15187. type: string
  15188. domainName:
  15189. type: string
  15190. region:
  15191. type: string
  15192. tenantName:
  15193. type: string
  15194. required:
  15195. - auth
  15196. type: object
  15197. beyondtrust:
  15198. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15199. properties:
  15200. auth:
  15201. description: Auth configures how the operator authenticates with Beyondtrust.
  15202. properties:
  15203. apiKey:
  15204. description: APIKey If not provided then ClientID/ClientSecret become required.
  15205. properties:
  15206. secretRef:
  15207. description: SecretRef references a key in a secret that will be used as value.
  15208. properties:
  15209. key:
  15210. description: |-
  15211. A key in the referenced Secret.
  15212. Some instances of this field may be defaulted, in others it may be required.
  15213. maxLength: 253
  15214. minLength: 1
  15215. pattern: ^[-._a-zA-Z0-9]+$
  15216. type: string
  15217. name:
  15218. description: The name of the Secret resource being referred to.
  15219. maxLength: 253
  15220. minLength: 1
  15221. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15222. type: string
  15223. namespace:
  15224. description: |-
  15225. The namespace of the Secret resource being referred to.
  15226. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15227. maxLength: 63
  15228. minLength: 1
  15229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15230. type: string
  15231. type: object
  15232. value:
  15233. description: Value can be specified directly to set a value without using a secret.
  15234. type: string
  15235. type: object
  15236. certificate:
  15237. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15238. properties:
  15239. secretRef:
  15240. description: SecretRef references a key in a secret that will be used as value.
  15241. properties:
  15242. key:
  15243. description: |-
  15244. A key in the referenced Secret.
  15245. Some instances of this field may be defaulted, in others it may be required.
  15246. maxLength: 253
  15247. minLength: 1
  15248. pattern: ^[-._a-zA-Z0-9]+$
  15249. type: string
  15250. name:
  15251. description: The name of the Secret resource being referred to.
  15252. maxLength: 253
  15253. minLength: 1
  15254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15255. type: string
  15256. namespace:
  15257. description: |-
  15258. The namespace of the Secret resource being referred to.
  15259. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15260. maxLength: 63
  15261. minLength: 1
  15262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15263. type: string
  15264. type: object
  15265. value:
  15266. description: Value can be specified directly to set a value without using a secret.
  15267. type: string
  15268. type: object
  15269. certificateKey:
  15270. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15271. properties:
  15272. secretRef:
  15273. description: SecretRef references a key in a secret that will be used as value.
  15274. properties:
  15275. key:
  15276. description: |-
  15277. A key in the referenced Secret.
  15278. Some instances of this field may be defaulted, in others it may be required.
  15279. maxLength: 253
  15280. minLength: 1
  15281. pattern: ^[-._a-zA-Z0-9]+$
  15282. type: string
  15283. name:
  15284. description: The name of the Secret resource being referred to.
  15285. maxLength: 253
  15286. minLength: 1
  15287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15288. type: string
  15289. namespace:
  15290. description: |-
  15291. The namespace of the Secret resource being referred to.
  15292. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15293. maxLength: 63
  15294. minLength: 1
  15295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15296. type: string
  15297. type: object
  15298. value:
  15299. description: Value can be specified directly to set a value without using a secret.
  15300. type: string
  15301. type: object
  15302. clientId:
  15303. description: ClientID is the API OAuth Client ID.
  15304. properties:
  15305. secretRef:
  15306. description: SecretRef references a key in a secret that will be used as value.
  15307. properties:
  15308. key:
  15309. description: |-
  15310. A key in the referenced Secret.
  15311. Some instances of this field may be defaulted, in others it may be required.
  15312. maxLength: 253
  15313. minLength: 1
  15314. pattern: ^[-._a-zA-Z0-9]+$
  15315. type: string
  15316. name:
  15317. description: The name of the Secret resource being referred to.
  15318. maxLength: 253
  15319. minLength: 1
  15320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15321. type: string
  15322. namespace:
  15323. description: |-
  15324. The namespace of the Secret resource being referred to.
  15325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15326. maxLength: 63
  15327. minLength: 1
  15328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15329. type: string
  15330. type: object
  15331. value:
  15332. description: Value can be specified directly to set a value without using a secret.
  15333. type: string
  15334. type: object
  15335. clientSecret:
  15336. description: ClientSecret is the API OAuth Client Secret.
  15337. properties:
  15338. secretRef:
  15339. description: SecretRef references a key in a secret that will be used as value.
  15340. properties:
  15341. key:
  15342. description: |-
  15343. A key in the referenced Secret.
  15344. Some instances of this field may be defaulted, in others it may be required.
  15345. maxLength: 253
  15346. minLength: 1
  15347. pattern: ^[-._a-zA-Z0-9]+$
  15348. type: string
  15349. name:
  15350. description: The name of the Secret resource being referred to.
  15351. maxLength: 253
  15352. minLength: 1
  15353. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15354. type: string
  15355. namespace:
  15356. description: |-
  15357. The namespace of the Secret resource being referred to.
  15358. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15359. maxLength: 63
  15360. minLength: 1
  15361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15362. type: string
  15363. type: object
  15364. value:
  15365. description: Value can be specified directly to set a value without using a secret.
  15366. type: string
  15367. type: object
  15368. type: object
  15369. server:
  15370. description: Auth configures how API server works.
  15371. properties:
  15372. apiUrl:
  15373. type: string
  15374. apiVersion:
  15375. type: string
  15376. clientTimeOutSeconds:
  15377. 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.
  15378. type: integer
  15379. decrypt:
  15380. default: true
  15381. 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.'
  15382. type: boolean
  15383. retrievalType:
  15384. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  15385. type: string
  15386. separator:
  15387. description: A character that separates the folder names.
  15388. type: string
  15389. verifyCA:
  15390. type: boolean
  15391. required:
  15392. - apiUrl
  15393. - verifyCA
  15394. type: object
  15395. required:
  15396. - auth
  15397. - server
  15398. type: object
  15399. bitwardensecretsmanager:
  15400. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  15401. properties:
  15402. apiURL:
  15403. type: string
  15404. auth:
  15405. description: |-
  15406. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  15407. Make sure that the token being used has permissions on the given secret.
  15408. properties:
  15409. secretRef:
  15410. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  15411. properties:
  15412. credentials:
  15413. description: AccessToken used for the bitwarden instance.
  15414. properties:
  15415. key:
  15416. description: |-
  15417. A key in the referenced Secret.
  15418. Some instances of this field may be defaulted, in others it may be required.
  15419. maxLength: 253
  15420. minLength: 1
  15421. pattern: ^[-._a-zA-Z0-9]+$
  15422. type: string
  15423. name:
  15424. description: The name of the Secret resource being referred to.
  15425. maxLength: 253
  15426. minLength: 1
  15427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15428. type: string
  15429. namespace:
  15430. description: |-
  15431. The namespace of the Secret resource being referred to.
  15432. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15433. maxLength: 63
  15434. minLength: 1
  15435. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15436. type: string
  15437. type: object
  15438. required:
  15439. - credentials
  15440. type: object
  15441. required:
  15442. - secretRef
  15443. type: object
  15444. bitwardenServerSDKURL:
  15445. type: string
  15446. caBundle:
  15447. description: |-
  15448. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  15449. can be performed.
  15450. type: string
  15451. caProvider:
  15452. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  15453. properties:
  15454. key:
  15455. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15456. maxLength: 253
  15457. minLength: 1
  15458. pattern: ^[-._a-zA-Z0-9]+$
  15459. type: string
  15460. name:
  15461. description: The name of the object located at the provider type.
  15462. maxLength: 253
  15463. minLength: 1
  15464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15465. type: string
  15466. namespace:
  15467. description: |-
  15468. The namespace the Provider type is in.
  15469. Can only be defined when used in a ClusterSecretStore.
  15470. maxLength: 63
  15471. minLength: 1
  15472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15473. type: string
  15474. type:
  15475. description: The type of provider to use such as "Secret", or "ConfigMap".
  15476. enum:
  15477. - Secret
  15478. - ConfigMap
  15479. type: string
  15480. required:
  15481. - name
  15482. - type
  15483. type: object
  15484. identityURL:
  15485. type: string
  15486. organizationID:
  15487. description: OrganizationID determines which organization this secret store manages.
  15488. type: string
  15489. projectID:
  15490. description: ProjectID determines which project this secret store manages.
  15491. type: string
  15492. required:
  15493. - auth
  15494. - organizationID
  15495. - projectID
  15496. type: object
  15497. chef:
  15498. description: Chef configures this store to sync secrets with chef server
  15499. properties:
  15500. auth:
  15501. description: Auth defines the information necessary to authenticate against chef Server
  15502. properties:
  15503. secretRef:
  15504. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  15505. properties:
  15506. privateKeySecretRef:
  15507. description: SecretKey is the Signing Key in PEM format, used for authentication.
  15508. properties:
  15509. key:
  15510. description: |-
  15511. A key in the referenced Secret.
  15512. Some instances of this field may be defaulted, in others it may be required.
  15513. maxLength: 253
  15514. minLength: 1
  15515. pattern: ^[-._a-zA-Z0-9]+$
  15516. type: string
  15517. name:
  15518. description: The name of the Secret resource being referred to.
  15519. maxLength: 253
  15520. minLength: 1
  15521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15522. type: string
  15523. namespace:
  15524. description: |-
  15525. The namespace of the Secret resource being referred to.
  15526. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15527. maxLength: 63
  15528. minLength: 1
  15529. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15530. type: string
  15531. type: object
  15532. required:
  15533. - privateKeySecretRef
  15534. type: object
  15535. required:
  15536. - secretRef
  15537. type: object
  15538. serverUrl:
  15539. 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 "/"
  15540. type: string
  15541. username:
  15542. description: UserName should be the user ID on the chef server
  15543. type: string
  15544. required:
  15545. - auth
  15546. - serverUrl
  15547. - username
  15548. type: object
  15549. cloudrusm:
  15550. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  15551. properties:
  15552. auth:
  15553. description: CSMAuth contains a secretRef for credentials.
  15554. properties:
  15555. secretRef:
  15556. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  15557. properties:
  15558. accessKeyIDSecretRef:
  15559. description: The AccessKeyID is used for authentication
  15560. properties:
  15561. key:
  15562. description: |-
  15563. A key in the referenced Secret.
  15564. Some instances of this field may be defaulted, in others it may be required.
  15565. maxLength: 253
  15566. minLength: 1
  15567. pattern: ^[-._a-zA-Z0-9]+$
  15568. type: string
  15569. name:
  15570. description: The name of the Secret resource being referred to.
  15571. maxLength: 253
  15572. minLength: 1
  15573. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15574. type: string
  15575. namespace:
  15576. description: |-
  15577. The namespace of the Secret resource being referred to.
  15578. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15579. maxLength: 63
  15580. minLength: 1
  15581. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15582. type: string
  15583. type: object
  15584. accessKeySecretSecretRef:
  15585. description: The AccessKeySecret is used for authentication
  15586. properties:
  15587. key:
  15588. description: |-
  15589. A key in the referenced Secret.
  15590. Some instances of this field may be defaulted, in others it may be required.
  15591. maxLength: 253
  15592. minLength: 1
  15593. pattern: ^[-._a-zA-Z0-9]+$
  15594. type: string
  15595. name:
  15596. description: The name of the Secret resource being referred to.
  15597. maxLength: 253
  15598. minLength: 1
  15599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15600. type: string
  15601. namespace:
  15602. description: |-
  15603. The namespace of the Secret resource being referred to.
  15604. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15605. maxLength: 63
  15606. minLength: 1
  15607. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15608. type: string
  15609. type: object
  15610. required:
  15611. - accessKeyIDSecretRef
  15612. - accessKeySecretSecretRef
  15613. type: object
  15614. type: object
  15615. projectID:
  15616. description: ProjectID is the project, which the secrets are stored in.
  15617. type: string
  15618. required:
  15619. - auth
  15620. type: object
  15621. conjur:
  15622. description: Conjur configures this store to sync secrets using conjur provider
  15623. properties:
  15624. auth:
  15625. description: Defines authentication settings for connecting to Conjur.
  15626. properties:
  15627. apikey:
  15628. description: Authenticates with Conjur using an API key.
  15629. properties:
  15630. account:
  15631. description: Account is the Conjur organization account name.
  15632. type: string
  15633. apiKeyRef:
  15634. description: |-
  15635. A reference to a specific 'key' containing the Conjur API key
  15636. within a Secret resource. In some instances, `key` is a required field.
  15637. properties:
  15638. key:
  15639. description: |-
  15640. A key in the referenced Secret.
  15641. Some instances of this field may be defaulted, in others it may be required.
  15642. maxLength: 253
  15643. minLength: 1
  15644. pattern: ^[-._a-zA-Z0-9]+$
  15645. type: string
  15646. name:
  15647. description: The name of the Secret resource being referred to.
  15648. maxLength: 253
  15649. minLength: 1
  15650. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15651. type: string
  15652. namespace:
  15653. description: |-
  15654. The namespace of the Secret resource being referred to.
  15655. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15656. maxLength: 63
  15657. minLength: 1
  15658. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15659. type: string
  15660. type: object
  15661. userRef:
  15662. description: |-
  15663. A reference to a specific 'key' containing the Conjur username
  15664. within a Secret resource. In some instances, `key` is a required field.
  15665. properties:
  15666. key:
  15667. description: |-
  15668. A key in the referenced Secret.
  15669. Some instances of this field may be defaulted, in others it may be required.
  15670. maxLength: 253
  15671. minLength: 1
  15672. pattern: ^[-._a-zA-Z0-9]+$
  15673. type: string
  15674. name:
  15675. description: The name of the Secret resource being referred to.
  15676. maxLength: 253
  15677. minLength: 1
  15678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15679. type: string
  15680. namespace:
  15681. description: |-
  15682. The namespace of the Secret resource being referred to.
  15683. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15684. maxLength: 63
  15685. minLength: 1
  15686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15687. type: string
  15688. type: object
  15689. required:
  15690. - account
  15691. - apiKeyRef
  15692. - userRef
  15693. type: object
  15694. jwt:
  15695. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  15696. properties:
  15697. account:
  15698. description: Account is the Conjur organization account name.
  15699. type: string
  15700. hostId:
  15701. description: |-
  15702. Optional HostID for JWT authentication. This may be used depending
  15703. on how the Conjur JWT authenticator policy is configured.
  15704. type: string
  15705. secretRef:
  15706. description: |-
  15707. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  15708. authenticate with Conjur using the JWT authentication method.
  15709. properties:
  15710. key:
  15711. description: |-
  15712. A key in the referenced Secret.
  15713. Some instances of this field may be defaulted, in others it may be required.
  15714. maxLength: 253
  15715. minLength: 1
  15716. pattern: ^[-._a-zA-Z0-9]+$
  15717. type: string
  15718. name:
  15719. description: The name of the Secret resource being referred to.
  15720. maxLength: 253
  15721. minLength: 1
  15722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15723. type: string
  15724. namespace:
  15725. description: |-
  15726. The namespace of the Secret resource being referred to.
  15727. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15728. maxLength: 63
  15729. minLength: 1
  15730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15731. type: string
  15732. type: object
  15733. serviceAccountRef:
  15734. description: |-
  15735. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  15736. a token for with the `TokenRequest` API.
  15737. properties:
  15738. audiences:
  15739. description: |-
  15740. Audience specifies the `aud` claim for the service account token
  15741. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15742. then this audiences will be appended to the list
  15743. items:
  15744. type: string
  15745. type: array
  15746. name:
  15747. description: The name of the ServiceAccount resource being referred to.
  15748. maxLength: 253
  15749. minLength: 1
  15750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15751. type: string
  15752. namespace:
  15753. description: |-
  15754. Namespace of the resource being referred to.
  15755. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15756. maxLength: 63
  15757. minLength: 1
  15758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15759. type: string
  15760. required:
  15761. - name
  15762. type: object
  15763. serviceID:
  15764. description: The conjur authn jwt webservice id
  15765. type: string
  15766. required:
  15767. - account
  15768. - serviceID
  15769. type: object
  15770. type: object
  15771. caBundle:
  15772. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  15773. type: string
  15774. caProvider:
  15775. description: |-
  15776. Used to provide custom certificate authority (CA) certificates
  15777. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  15778. that contains a PEM-encoded certificate.
  15779. properties:
  15780. key:
  15781. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15782. maxLength: 253
  15783. minLength: 1
  15784. pattern: ^[-._a-zA-Z0-9]+$
  15785. type: string
  15786. name:
  15787. description: The name of the object located at the provider type.
  15788. maxLength: 253
  15789. minLength: 1
  15790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15791. type: string
  15792. namespace:
  15793. description: |-
  15794. The namespace the Provider type is in.
  15795. Can only be defined when used in a ClusterSecretStore.
  15796. maxLength: 63
  15797. minLength: 1
  15798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15799. type: string
  15800. type:
  15801. description: The type of provider to use such as "Secret", or "ConfigMap".
  15802. enum:
  15803. - Secret
  15804. - ConfigMap
  15805. type: string
  15806. required:
  15807. - name
  15808. - type
  15809. type: object
  15810. url:
  15811. description: URL is the endpoint of the Conjur instance.
  15812. type: string
  15813. required:
  15814. - auth
  15815. - url
  15816. type: object
  15817. delinea:
  15818. description: |-
  15819. Delinea DevOps Secrets Vault
  15820. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  15821. properties:
  15822. clientId:
  15823. description: ClientID is the non-secret part of the credential.
  15824. properties:
  15825. secretRef:
  15826. description: SecretRef references a key in a secret that will be used as value.
  15827. properties:
  15828. key:
  15829. description: |-
  15830. A key in the referenced Secret.
  15831. Some instances of this field may be defaulted, in others it may be required.
  15832. maxLength: 253
  15833. minLength: 1
  15834. pattern: ^[-._a-zA-Z0-9]+$
  15835. type: string
  15836. name:
  15837. description: The name of the Secret resource being referred to.
  15838. maxLength: 253
  15839. minLength: 1
  15840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15841. type: string
  15842. namespace:
  15843. description: |-
  15844. The namespace of the Secret resource being referred to.
  15845. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15846. maxLength: 63
  15847. minLength: 1
  15848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15849. type: string
  15850. type: object
  15851. value:
  15852. description: Value can be specified directly to set a value without using a secret.
  15853. type: string
  15854. type: object
  15855. clientSecret:
  15856. description: ClientSecret is the secret part of the credential.
  15857. properties:
  15858. secretRef:
  15859. description: SecretRef references a key in a secret that will be used as value.
  15860. properties:
  15861. key:
  15862. description: |-
  15863. A key in the referenced Secret.
  15864. Some instances of this field may be defaulted, in others it may be required.
  15865. maxLength: 253
  15866. minLength: 1
  15867. pattern: ^[-._a-zA-Z0-9]+$
  15868. type: string
  15869. name:
  15870. description: The name of the Secret resource being referred to.
  15871. maxLength: 253
  15872. minLength: 1
  15873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15874. type: string
  15875. namespace:
  15876. description: |-
  15877. The namespace of the Secret resource being referred to.
  15878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15879. maxLength: 63
  15880. minLength: 1
  15881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15882. type: string
  15883. type: object
  15884. value:
  15885. description: Value can be specified directly to set a value without using a secret.
  15886. type: string
  15887. type: object
  15888. tenant:
  15889. description: Tenant is the chosen hostname / site name.
  15890. type: string
  15891. tld:
  15892. description: |-
  15893. TLD is based on the server location that was chosen during provisioning.
  15894. If unset, defaults to "com".
  15895. type: string
  15896. urlTemplate:
  15897. description: |-
  15898. URLTemplate
  15899. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  15900. type: string
  15901. required:
  15902. - clientId
  15903. - clientSecret
  15904. - tenant
  15905. type: object
  15906. doppler:
  15907. description: Doppler configures this store to sync secrets using the Doppler provider
  15908. properties:
  15909. auth:
  15910. description: Auth configures how the Operator authenticates with the Doppler API
  15911. properties:
  15912. oidcConfig:
  15913. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  15914. properties:
  15915. expirationSeconds:
  15916. default: 600
  15917. description: |-
  15918. ExpirationSeconds sets the ServiceAccount token validity duration.
  15919. Defaults to 10 minutes.
  15920. format: int64
  15921. type: integer
  15922. identity:
  15923. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  15924. type: string
  15925. serviceAccountRef:
  15926. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  15927. properties:
  15928. audiences:
  15929. description: |-
  15930. Audience specifies the `aud` claim for the service account token
  15931. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15932. then this audiences will be appended to the list
  15933. items:
  15934. type: string
  15935. type: array
  15936. name:
  15937. description: The name of the ServiceAccount resource being referred to.
  15938. maxLength: 253
  15939. minLength: 1
  15940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15941. type: string
  15942. namespace:
  15943. description: |-
  15944. Namespace of the resource being referred to.
  15945. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15946. maxLength: 63
  15947. minLength: 1
  15948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15949. type: string
  15950. required:
  15951. - name
  15952. type: object
  15953. required:
  15954. - identity
  15955. - serviceAccountRef
  15956. type: object
  15957. secretRef:
  15958. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  15959. properties:
  15960. dopplerToken:
  15961. description: |-
  15962. The DopplerToken is used for authentication.
  15963. See https://docs.doppler.com/reference/api#authentication for auth token types.
  15964. The Key attribute defaults to dopplerToken if not specified.
  15965. properties:
  15966. key:
  15967. description: |-
  15968. A key in the referenced Secret.
  15969. Some instances of this field may be defaulted, in others it may be required.
  15970. maxLength: 253
  15971. minLength: 1
  15972. pattern: ^[-._a-zA-Z0-9]+$
  15973. type: string
  15974. name:
  15975. description: The name of the Secret resource being referred to.
  15976. maxLength: 253
  15977. minLength: 1
  15978. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15979. type: string
  15980. namespace:
  15981. description: |-
  15982. The namespace of the Secret resource being referred to.
  15983. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15984. maxLength: 63
  15985. minLength: 1
  15986. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15987. type: string
  15988. type: object
  15989. required:
  15990. - dopplerToken
  15991. type: object
  15992. type: object
  15993. x-kubernetes-validations:
  15994. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  15995. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  15996. config:
  15997. description: Doppler config (required if not using a Service Token)
  15998. type: string
  15999. format:
  16000. description: Format enables the downloading of secrets as a file (string)
  16001. enum:
  16002. - json
  16003. - dotnet-json
  16004. - env
  16005. - yaml
  16006. - docker
  16007. type: string
  16008. nameTransformer:
  16009. description: Environment variable compatible name transforms that change secret names to a different format
  16010. enum:
  16011. - upper-camel
  16012. - camel
  16013. - lower-snake
  16014. - tf-var
  16015. - dotnet-env
  16016. - lower-kebab
  16017. type: string
  16018. project:
  16019. description: Doppler project (required if not using a Service Token)
  16020. type: string
  16021. required:
  16022. - auth
  16023. type: object
  16024. dvls:
  16025. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16026. properties:
  16027. auth:
  16028. description: Auth defines the authentication method to use.
  16029. properties:
  16030. secretRef:
  16031. description: SecretRef contains the Application ID and Application Secret for authentication.
  16032. properties:
  16033. appId:
  16034. description: AppID is the reference to the secret containing the Application ID.
  16035. properties:
  16036. key:
  16037. description: |-
  16038. A key in the referenced Secret.
  16039. Some instances of this field may be defaulted, in others it may be required.
  16040. maxLength: 253
  16041. minLength: 1
  16042. pattern: ^[-._a-zA-Z0-9]+$
  16043. type: string
  16044. name:
  16045. description: The name of the Secret resource being referred to.
  16046. maxLength: 253
  16047. minLength: 1
  16048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16049. type: string
  16050. namespace:
  16051. description: |-
  16052. The namespace of the Secret resource being referred to.
  16053. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16054. maxLength: 63
  16055. minLength: 1
  16056. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16057. type: string
  16058. type: object
  16059. appSecret:
  16060. description: AppSecret is the reference to the secret containing the Application Secret.
  16061. properties:
  16062. key:
  16063. description: |-
  16064. A key in the referenced Secret.
  16065. Some instances of this field may be defaulted, in others it may be required.
  16066. maxLength: 253
  16067. minLength: 1
  16068. pattern: ^[-._a-zA-Z0-9]+$
  16069. type: string
  16070. name:
  16071. description: The name of the Secret resource being referred to.
  16072. maxLength: 253
  16073. minLength: 1
  16074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16075. type: string
  16076. namespace:
  16077. description: |-
  16078. The namespace of the Secret resource being referred to.
  16079. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16080. maxLength: 63
  16081. minLength: 1
  16082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16083. type: string
  16084. type: object
  16085. required:
  16086. - appId
  16087. - appSecret
  16088. type: object
  16089. required:
  16090. - secretRef
  16091. type: object
  16092. insecure:
  16093. description: |-
  16094. Insecure allows connecting to DVLS over plain HTTP.
  16095. This is NOT RECOMMENDED for production use.
  16096. Set to true only if you understand the security implications.
  16097. type: boolean
  16098. serverUrl:
  16099. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16100. type: string
  16101. required:
  16102. - auth
  16103. - serverUrl
  16104. type: object
  16105. fake:
  16106. description: Fake configures a store with static key/value pairs
  16107. properties:
  16108. data:
  16109. items:
  16110. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16111. properties:
  16112. key:
  16113. type: string
  16114. value:
  16115. type: string
  16116. version:
  16117. type: string
  16118. required:
  16119. - key
  16120. - value
  16121. type: object
  16122. type: array
  16123. validationResult:
  16124. description: ValidationResult is defined type for the number of validation results.
  16125. type: integer
  16126. required:
  16127. - data
  16128. type: object
  16129. fortanix:
  16130. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16131. properties:
  16132. apiKey:
  16133. description: APIKey is the API token to access SDKMS Applications.
  16134. properties:
  16135. secretRef:
  16136. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16137. properties:
  16138. key:
  16139. description: |-
  16140. A key in the referenced Secret.
  16141. Some instances of this field may be defaulted, in others it may be required.
  16142. maxLength: 253
  16143. minLength: 1
  16144. pattern: ^[-._a-zA-Z0-9]+$
  16145. type: string
  16146. name:
  16147. description: The name of the Secret resource being referred to.
  16148. maxLength: 253
  16149. minLength: 1
  16150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16151. type: string
  16152. namespace:
  16153. description: |-
  16154. The namespace of the Secret resource being referred to.
  16155. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16156. maxLength: 63
  16157. minLength: 1
  16158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16159. type: string
  16160. type: object
  16161. type: object
  16162. apiUrl:
  16163. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  16164. type: string
  16165. type: object
  16166. gcpsm:
  16167. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  16168. properties:
  16169. auth:
  16170. description: Auth defines the information necessary to authenticate against GCP
  16171. properties:
  16172. secretRef:
  16173. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  16174. properties:
  16175. secretAccessKeySecretRef:
  16176. description: The SecretAccessKey is used for authentication
  16177. properties:
  16178. key:
  16179. description: |-
  16180. A key in the referenced Secret.
  16181. Some instances of this field may be defaulted, in others it may be required.
  16182. maxLength: 253
  16183. minLength: 1
  16184. pattern: ^[-._a-zA-Z0-9]+$
  16185. type: string
  16186. name:
  16187. description: The name of the Secret resource being referred to.
  16188. maxLength: 253
  16189. minLength: 1
  16190. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16191. type: string
  16192. namespace:
  16193. description: |-
  16194. The namespace of the Secret resource being referred to.
  16195. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16196. maxLength: 63
  16197. minLength: 1
  16198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16199. type: string
  16200. type: object
  16201. type: object
  16202. workloadIdentity:
  16203. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  16204. properties:
  16205. clusterLocation:
  16206. description: |-
  16207. ClusterLocation is the location of the cluster
  16208. If not specified, it fetches information from the metadata server
  16209. type: string
  16210. clusterName:
  16211. description: |-
  16212. ClusterName is the name of the cluster
  16213. If not specified, it fetches information from the metadata server
  16214. type: string
  16215. clusterProjectID:
  16216. description: |-
  16217. ClusterProjectID is the project ID of the cluster
  16218. If not specified, it fetches information from the metadata server
  16219. type: string
  16220. serviceAccountRef:
  16221. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  16222. properties:
  16223. audiences:
  16224. description: |-
  16225. Audience specifies the `aud` claim for the service account token
  16226. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16227. then this audiences will be appended to the list
  16228. items:
  16229. type: string
  16230. type: array
  16231. name:
  16232. description: The name of the ServiceAccount resource being referred to.
  16233. maxLength: 253
  16234. minLength: 1
  16235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16236. type: string
  16237. namespace:
  16238. description: |-
  16239. Namespace of the resource being referred to.
  16240. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16241. maxLength: 63
  16242. minLength: 1
  16243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16244. type: string
  16245. required:
  16246. - name
  16247. type: object
  16248. required:
  16249. - serviceAccountRef
  16250. type: object
  16251. workloadIdentityFederation:
  16252. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  16253. properties:
  16254. audience:
  16255. description: |-
  16256. 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.
  16257. If specified, Audience found in the external account credential config will be overridden with the configured value.
  16258. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  16259. type: string
  16260. awsSecurityCredentials:
  16261. description: |-
  16262. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  16263. when using the AWS metadata server is not an option.
  16264. properties:
  16265. awsCredentialsSecretRef:
  16266. description: |-
  16267. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  16268. Secret should be created with below names for keys
  16269. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  16270. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  16271. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  16272. properties:
  16273. name:
  16274. description: name of the secret.
  16275. maxLength: 253
  16276. minLength: 1
  16277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16278. type: string
  16279. namespace:
  16280. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  16281. maxLength: 63
  16282. minLength: 1
  16283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16284. type: string
  16285. required:
  16286. - name
  16287. type: object
  16288. region:
  16289. description: region is for configuring the AWS region to be used.
  16290. example: ap-south-1
  16291. maxLength: 50
  16292. minLength: 1
  16293. pattern: ^[a-z0-9-]+$
  16294. type: string
  16295. required:
  16296. - awsCredentialsSecretRef
  16297. - region
  16298. type: object
  16299. credConfig:
  16300. description: |-
  16301. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  16302. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  16303. serviceAccountRef must be used by providing operators service account details.
  16304. properties:
  16305. key:
  16306. description: key name holding the external account credential config.
  16307. maxLength: 253
  16308. minLength: 1
  16309. pattern: ^[-._a-zA-Z0-9]+$
  16310. type: string
  16311. name:
  16312. description: name of the configmap.
  16313. maxLength: 253
  16314. minLength: 1
  16315. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16316. type: string
  16317. namespace:
  16318. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  16319. maxLength: 63
  16320. minLength: 1
  16321. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16322. type: string
  16323. required:
  16324. - key
  16325. - name
  16326. type: object
  16327. externalTokenEndpoint:
  16328. description: |-
  16329. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  16330. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  16331. URL is having the expected value.
  16332. type: string
  16333. serviceAccountRef:
  16334. description: |-
  16335. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  16336. when Kubernetes is configured as provider in workload identity pool.
  16337. properties:
  16338. audiences:
  16339. description: |-
  16340. Audience specifies the `aud` claim for the service account token
  16341. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16342. then this audiences will be appended to the list
  16343. items:
  16344. type: string
  16345. type: array
  16346. name:
  16347. description: The name of the ServiceAccount resource being referred to.
  16348. maxLength: 253
  16349. minLength: 1
  16350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16351. type: string
  16352. namespace:
  16353. description: |-
  16354. Namespace of the resource being referred to.
  16355. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16356. maxLength: 63
  16357. minLength: 1
  16358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16359. type: string
  16360. required:
  16361. - name
  16362. type: object
  16363. type: object
  16364. type: object
  16365. location:
  16366. description: Location optionally defines a location for a secret
  16367. type: string
  16368. projectID:
  16369. description: ProjectID project where secret is located
  16370. type: string
  16371. secretVersionSelectionPolicy:
  16372. default: LatestOrFail
  16373. description: |-
  16374. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  16375. when "latest" is disabled or destroyed.
  16376. Possible values are:
  16377. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  16378. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  16379. type: string
  16380. type: object
  16381. github:
  16382. description: |-
  16383. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  16384. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  16385. properties:
  16386. appID:
  16387. description: appID specifies the Github APP that will be used to authenticate the client
  16388. format: int64
  16389. type: integer
  16390. auth:
  16391. description: auth configures how secret-manager authenticates with a Github instance.
  16392. properties:
  16393. privateKey:
  16394. description: |-
  16395. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16396. In some instances, `key` is a required field.
  16397. properties:
  16398. key:
  16399. description: |-
  16400. A key in the referenced Secret.
  16401. Some instances of this field may be defaulted, in others it may be required.
  16402. maxLength: 253
  16403. minLength: 1
  16404. pattern: ^[-._a-zA-Z0-9]+$
  16405. type: string
  16406. name:
  16407. description: The name of the Secret resource being referred to.
  16408. maxLength: 253
  16409. minLength: 1
  16410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16411. type: string
  16412. namespace:
  16413. description: |-
  16414. The namespace of the Secret resource being referred to.
  16415. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16416. maxLength: 63
  16417. minLength: 1
  16418. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16419. type: string
  16420. type: object
  16421. required:
  16422. - privateKey
  16423. type: object
  16424. environment:
  16425. description: environment will be used to fetch secrets from a particular environment within a github repository
  16426. type: string
  16427. installationID:
  16428. description: installationID specifies the Github APP installation that will be used to authenticate the client
  16429. format: int64
  16430. type: integer
  16431. organization:
  16432. description: organization will be used to fetch secrets from the Github organization
  16433. type: string
  16434. repository:
  16435. description: repository will be used to fetch secrets from the Github repository within an organization
  16436. type: string
  16437. uploadURL:
  16438. description: Upload URL for enterprise instances. Default to URL.
  16439. type: string
  16440. url:
  16441. default: https://github.com/
  16442. description: URL configures the Github instance URL. Defaults to https://github.com/.
  16443. type: string
  16444. required:
  16445. - appID
  16446. - auth
  16447. - installationID
  16448. - organization
  16449. type: object
  16450. gitlab:
  16451. description: GitLab configures this store to sync secrets using GitLab Variables provider
  16452. properties:
  16453. auth:
  16454. description: Auth configures how secret-manager authenticates with a GitLab instance.
  16455. properties:
  16456. SecretRef:
  16457. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  16458. properties:
  16459. accessToken:
  16460. description: AccessToken is used for authentication.
  16461. properties:
  16462. key:
  16463. description: |-
  16464. A key in the referenced Secret.
  16465. Some instances of this field may be defaulted, in others it may be required.
  16466. maxLength: 253
  16467. minLength: 1
  16468. pattern: ^[-._a-zA-Z0-9]+$
  16469. type: string
  16470. name:
  16471. description: The name of the Secret resource being referred to.
  16472. maxLength: 253
  16473. minLength: 1
  16474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16475. type: string
  16476. namespace:
  16477. description: |-
  16478. The namespace of the Secret resource being referred to.
  16479. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16480. maxLength: 63
  16481. minLength: 1
  16482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16483. type: string
  16484. type: object
  16485. type: object
  16486. required:
  16487. - SecretRef
  16488. type: object
  16489. caBundle:
  16490. description: |-
  16491. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16492. can be performed.
  16493. format: byte
  16494. type: string
  16495. caProvider:
  16496. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16497. properties:
  16498. key:
  16499. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16500. maxLength: 253
  16501. minLength: 1
  16502. pattern: ^[-._a-zA-Z0-9]+$
  16503. type: string
  16504. name:
  16505. description: The name of the object located at the provider type.
  16506. maxLength: 253
  16507. minLength: 1
  16508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16509. type: string
  16510. namespace:
  16511. description: |-
  16512. The namespace the Provider type is in.
  16513. Can only be defined when used in a ClusterSecretStore.
  16514. maxLength: 63
  16515. minLength: 1
  16516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16517. type: string
  16518. type:
  16519. description: The type of provider to use such as "Secret", or "ConfigMap".
  16520. enum:
  16521. - Secret
  16522. - ConfigMap
  16523. type: string
  16524. required:
  16525. - name
  16526. - type
  16527. type: object
  16528. environment:
  16529. 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)
  16530. type: string
  16531. groupIDs:
  16532. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  16533. items:
  16534. type: string
  16535. type: array
  16536. inheritFromGroups:
  16537. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  16538. type: boolean
  16539. projectID:
  16540. description: ProjectID specifies a project where secrets are located.
  16541. type: string
  16542. url:
  16543. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  16544. type: string
  16545. required:
  16546. - auth
  16547. type: object
  16548. ibm:
  16549. description: IBM configures this store to sync secrets using IBM Cloud provider
  16550. properties:
  16551. auth:
  16552. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  16553. maxProperties: 1
  16554. minProperties: 1
  16555. properties:
  16556. containerAuth:
  16557. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  16558. properties:
  16559. iamEndpoint:
  16560. type: string
  16561. profile:
  16562. description: the IBM Trusted Profile
  16563. type: string
  16564. tokenLocation:
  16565. description: Location the token is mounted on the pod
  16566. type: string
  16567. required:
  16568. - profile
  16569. type: object
  16570. secretRef:
  16571. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  16572. properties:
  16573. iamEndpoint:
  16574. description: The IAM endpoint used to obain a token
  16575. type: string
  16576. secretApiKeySecretRef:
  16577. description: The SecretAccessKey is used for authentication
  16578. properties:
  16579. key:
  16580. description: |-
  16581. A key in the referenced Secret.
  16582. Some instances of this field may be defaulted, in others it may be required.
  16583. maxLength: 253
  16584. minLength: 1
  16585. pattern: ^[-._a-zA-Z0-9]+$
  16586. type: string
  16587. name:
  16588. description: The name of the Secret resource being referred to.
  16589. maxLength: 253
  16590. minLength: 1
  16591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16592. type: string
  16593. namespace:
  16594. description: |-
  16595. The namespace of the Secret resource being referred to.
  16596. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16597. maxLength: 63
  16598. minLength: 1
  16599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16600. type: string
  16601. type: object
  16602. type: object
  16603. type: object
  16604. serviceUrl:
  16605. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  16606. type: string
  16607. required:
  16608. - auth
  16609. type: object
  16610. infisical:
  16611. description: Infisical configures this store to sync secrets using the Infisical provider
  16612. properties:
  16613. auth:
  16614. description: Auth configures how the Operator authenticates with the Infisical API
  16615. properties:
  16616. awsAuthCredentials:
  16617. description: AwsAuthCredentials represents the credentials for AWS authentication.
  16618. properties:
  16619. identityId:
  16620. description: |-
  16621. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16622. In some instances, `key` is a required field.
  16623. properties:
  16624. key:
  16625. description: |-
  16626. A key in the referenced Secret.
  16627. Some instances of this field may be defaulted, in others it may be required.
  16628. maxLength: 253
  16629. minLength: 1
  16630. pattern: ^[-._a-zA-Z0-9]+$
  16631. type: string
  16632. name:
  16633. description: The name of the Secret resource being referred to.
  16634. maxLength: 253
  16635. minLength: 1
  16636. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16637. type: string
  16638. namespace:
  16639. description: |-
  16640. The namespace of the Secret resource being referred to.
  16641. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16642. maxLength: 63
  16643. minLength: 1
  16644. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16645. type: string
  16646. type: object
  16647. required:
  16648. - identityId
  16649. type: object
  16650. azureAuthCredentials:
  16651. description: AzureAuthCredentials represents the credentials for Azure authentication.
  16652. properties:
  16653. identityId:
  16654. description: |-
  16655. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16656. In some instances, `key` is a required field.
  16657. properties:
  16658. key:
  16659. description: |-
  16660. A key in the referenced Secret.
  16661. Some instances of this field may be defaulted, in others it may be required.
  16662. maxLength: 253
  16663. minLength: 1
  16664. pattern: ^[-._a-zA-Z0-9]+$
  16665. type: string
  16666. name:
  16667. description: The name of the Secret resource being referred to.
  16668. maxLength: 253
  16669. minLength: 1
  16670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16671. type: string
  16672. namespace:
  16673. description: |-
  16674. The namespace of the Secret resource being referred to.
  16675. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16676. maxLength: 63
  16677. minLength: 1
  16678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16679. type: string
  16680. type: object
  16681. resource:
  16682. description: |-
  16683. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16684. In some instances, `key` is a required field.
  16685. properties:
  16686. key:
  16687. description: |-
  16688. A key in the referenced Secret.
  16689. Some instances of this field may be defaulted, in others it may be required.
  16690. maxLength: 253
  16691. minLength: 1
  16692. pattern: ^[-._a-zA-Z0-9]+$
  16693. type: string
  16694. name:
  16695. description: The name of the Secret resource being referred to.
  16696. maxLength: 253
  16697. minLength: 1
  16698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16699. type: string
  16700. namespace:
  16701. description: |-
  16702. The namespace of the Secret resource being referred to.
  16703. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16704. maxLength: 63
  16705. minLength: 1
  16706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16707. type: string
  16708. type: object
  16709. required:
  16710. - identityId
  16711. type: object
  16712. gcpIamAuthCredentials:
  16713. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  16714. properties:
  16715. identityId:
  16716. description: |-
  16717. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16718. In some instances, `key` is a required field.
  16719. properties:
  16720. key:
  16721. description: |-
  16722. A key in the referenced Secret.
  16723. Some instances of this field may be defaulted, in others it may be required.
  16724. maxLength: 253
  16725. minLength: 1
  16726. pattern: ^[-._a-zA-Z0-9]+$
  16727. type: string
  16728. name:
  16729. description: The name of the Secret resource being referred to.
  16730. maxLength: 253
  16731. minLength: 1
  16732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16733. type: string
  16734. namespace:
  16735. description: |-
  16736. The namespace of the Secret resource being referred to.
  16737. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16738. maxLength: 63
  16739. minLength: 1
  16740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16741. type: string
  16742. type: object
  16743. serviceAccountKeyFilePath:
  16744. description: |-
  16745. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16746. In some instances, `key` is a required field.
  16747. properties:
  16748. key:
  16749. description: |-
  16750. A key in the referenced Secret.
  16751. Some instances of this field may be defaulted, in others it may be required.
  16752. maxLength: 253
  16753. minLength: 1
  16754. pattern: ^[-._a-zA-Z0-9]+$
  16755. type: string
  16756. name:
  16757. description: The name of the Secret resource being referred to.
  16758. maxLength: 253
  16759. minLength: 1
  16760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16761. type: string
  16762. namespace:
  16763. description: |-
  16764. The namespace of the Secret resource being referred to.
  16765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16766. maxLength: 63
  16767. minLength: 1
  16768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16769. type: string
  16770. type: object
  16771. required:
  16772. - identityId
  16773. - serviceAccountKeyFilePath
  16774. type: object
  16775. gcpIdTokenAuthCredentials:
  16776. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  16777. properties:
  16778. identityId:
  16779. description: |-
  16780. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16781. In some instances, `key` is a required field.
  16782. properties:
  16783. key:
  16784. description: |-
  16785. A key in the referenced Secret.
  16786. Some instances of this field may be defaulted, in others it may be required.
  16787. maxLength: 253
  16788. minLength: 1
  16789. pattern: ^[-._a-zA-Z0-9]+$
  16790. type: string
  16791. name:
  16792. description: The name of the Secret resource being referred to.
  16793. maxLength: 253
  16794. minLength: 1
  16795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16796. type: string
  16797. namespace:
  16798. description: |-
  16799. The namespace of the Secret resource being referred to.
  16800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16801. maxLength: 63
  16802. minLength: 1
  16803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16804. type: string
  16805. type: object
  16806. required:
  16807. - identityId
  16808. type: object
  16809. jwtAuthCredentials:
  16810. description: JwtAuthCredentials represents the credentials for JWT authentication.
  16811. properties:
  16812. identityId:
  16813. description: |-
  16814. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16815. In some instances, `key` is a required field.
  16816. properties:
  16817. key:
  16818. description: |-
  16819. A key in the referenced Secret.
  16820. Some instances of this field may be defaulted, in others it may be required.
  16821. maxLength: 253
  16822. minLength: 1
  16823. pattern: ^[-._a-zA-Z0-9]+$
  16824. type: string
  16825. name:
  16826. description: The name of the Secret resource being referred to.
  16827. maxLength: 253
  16828. minLength: 1
  16829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16830. type: string
  16831. namespace:
  16832. description: |-
  16833. The namespace of the Secret resource being referred to.
  16834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16835. maxLength: 63
  16836. minLength: 1
  16837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16838. type: string
  16839. type: object
  16840. jwt:
  16841. description: |-
  16842. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16843. In some instances, `key` is a required field.
  16844. properties:
  16845. key:
  16846. description: |-
  16847. A key in the referenced Secret.
  16848. Some instances of this field may be defaulted, in others it may be required.
  16849. maxLength: 253
  16850. minLength: 1
  16851. pattern: ^[-._a-zA-Z0-9]+$
  16852. type: string
  16853. name:
  16854. description: The name of the Secret resource being referred to.
  16855. maxLength: 253
  16856. minLength: 1
  16857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16858. type: string
  16859. namespace:
  16860. description: |-
  16861. The namespace of the Secret resource being referred to.
  16862. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16863. maxLength: 63
  16864. minLength: 1
  16865. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16866. type: string
  16867. type: object
  16868. required:
  16869. - identityId
  16870. - jwt
  16871. type: object
  16872. kubernetesAuthCredentials:
  16873. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  16874. properties:
  16875. identityId:
  16876. description: |-
  16877. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16878. In some instances, `key` is a required field.
  16879. properties:
  16880. key:
  16881. description: |-
  16882. A key in the referenced Secret.
  16883. Some instances of this field may be defaulted, in others it may be required.
  16884. maxLength: 253
  16885. minLength: 1
  16886. pattern: ^[-._a-zA-Z0-9]+$
  16887. type: string
  16888. name:
  16889. description: The name of the Secret resource being referred to.
  16890. maxLength: 253
  16891. minLength: 1
  16892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16893. type: string
  16894. namespace:
  16895. description: |-
  16896. The namespace of the Secret resource being referred to.
  16897. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16898. maxLength: 63
  16899. minLength: 1
  16900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16901. type: string
  16902. type: object
  16903. serviceAccountTokenPath:
  16904. description: |-
  16905. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16906. In some instances, `key` is a required field.
  16907. properties:
  16908. key:
  16909. description: |-
  16910. A key in the referenced Secret.
  16911. Some instances of this field may be defaulted, in others it may be required.
  16912. maxLength: 253
  16913. minLength: 1
  16914. pattern: ^[-._a-zA-Z0-9]+$
  16915. type: string
  16916. name:
  16917. description: The name of the Secret resource being referred to.
  16918. maxLength: 253
  16919. minLength: 1
  16920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16921. type: string
  16922. namespace:
  16923. description: |-
  16924. The namespace of the Secret resource being referred to.
  16925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16926. maxLength: 63
  16927. minLength: 1
  16928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16929. type: string
  16930. type: object
  16931. required:
  16932. - identityId
  16933. type: object
  16934. ldapAuthCredentials:
  16935. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  16936. properties:
  16937. identityId:
  16938. description: |-
  16939. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16940. In some instances, `key` is a required field.
  16941. properties:
  16942. key:
  16943. description: |-
  16944. A key in the referenced Secret.
  16945. Some instances of this field may be defaulted, in others it may be required.
  16946. maxLength: 253
  16947. minLength: 1
  16948. pattern: ^[-._a-zA-Z0-9]+$
  16949. type: string
  16950. name:
  16951. description: The name of the Secret resource being referred to.
  16952. maxLength: 253
  16953. minLength: 1
  16954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16955. type: string
  16956. namespace:
  16957. description: |-
  16958. The namespace of the Secret resource being referred to.
  16959. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16960. maxLength: 63
  16961. minLength: 1
  16962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16963. type: string
  16964. type: object
  16965. ldapPassword:
  16966. description: |-
  16967. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16968. In some instances, `key` is a required field.
  16969. properties:
  16970. key:
  16971. description: |-
  16972. A key in the referenced Secret.
  16973. Some instances of this field may be defaulted, in others it may be required.
  16974. maxLength: 253
  16975. minLength: 1
  16976. pattern: ^[-._a-zA-Z0-9]+$
  16977. type: string
  16978. name:
  16979. description: The name of the Secret resource being referred to.
  16980. maxLength: 253
  16981. minLength: 1
  16982. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16983. type: string
  16984. namespace:
  16985. description: |-
  16986. The namespace of the Secret resource being referred to.
  16987. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16988. maxLength: 63
  16989. minLength: 1
  16990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16991. type: string
  16992. type: object
  16993. ldapUsername:
  16994. description: |-
  16995. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16996. In some instances, `key` is a required field.
  16997. properties:
  16998. key:
  16999. description: |-
  17000. A key in the referenced Secret.
  17001. Some instances of this field may be defaulted, in others it may be required.
  17002. maxLength: 253
  17003. minLength: 1
  17004. pattern: ^[-._a-zA-Z0-9]+$
  17005. type: string
  17006. name:
  17007. description: The name of the Secret resource being referred to.
  17008. maxLength: 253
  17009. minLength: 1
  17010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17011. type: string
  17012. namespace:
  17013. description: |-
  17014. The namespace of the Secret resource being referred to.
  17015. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17016. maxLength: 63
  17017. minLength: 1
  17018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17019. type: string
  17020. type: object
  17021. required:
  17022. - identityId
  17023. - ldapPassword
  17024. - ldapUsername
  17025. type: object
  17026. ociAuthCredentials:
  17027. description: OciAuthCredentials represents the credentials for OCI authentication.
  17028. properties:
  17029. fingerprint:
  17030. description: |-
  17031. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17032. In some instances, `key` is a required field.
  17033. properties:
  17034. key:
  17035. description: |-
  17036. A key in the referenced Secret.
  17037. Some instances of this field may be defaulted, in others it may be required.
  17038. maxLength: 253
  17039. minLength: 1
  17040. pattern: ^[-._a-zA-Z0-9]+$
  17041. type: string
  17042. name:
  17043. description: The name of the Secret resource being referred to.
  17044. maxLength: 253
  17045. minLength: 1
  17046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17047. type: string
  17048. namespace:
  17049. description: |-
  17050. The namespace of the Secret resource being referred to.
  17051. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17052. maxLength: 63
  17053. minLength: 1
  17054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17055. type: string
  17056. type: object
  17057. identityId:
  17058. description: |-
  17059. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17060. In some instances, `key` is a required field.
  17061. properties:
  17062. key:
  17063. description: |-
  17064. A key in the referenced Secret.
  17065. Some instances of this field may be defaulted, in others it may be required.
  17066. maxLength: 253
  17067. minLength: 1
  17068. pattern: ^[-._a-zA-Z0-9]+$
  17069. type: string
  17070. name:
  17071. description: The name of the Secret resource being referred to.
  17072. maxLength: 253
  17073. minLength: 1
  17074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17075. type: string
  17076. namespace:
  17077. description: |-
  17078. The namespace of the Secret resource being referred to.
  17079. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17080. maxLength: 63
  17081. minLength: 1
  17082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17083. type: string
  17084. type: object
  17085. privateKey:
  17086. description: |-
  17087. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17088. In some instances, `key` is a required field.
  17089. properties:
  17090. key:
  17091. description: |-
  17092. A key in the referenced Secret.
  17093. Some instances of this field may be defaulted, in others it may be required.
  17094. maxLength: 253
  17095. minLength: 1
  17096. pattern: ^[-._a-zA-Z0-9]+$
  17097. type: string
  17098. name:
  17099. description: The name of the Secret resource being referred to.
  17100. maxLength: 253
  17101. minLength: 1
  17102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17103. type: string
  17104. namespace:
  17105. description: |-
  17106. The namespace of the Secret resource being referred to.
  17107. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17108. maxLength: 63
  17109. minLength: 1
  17110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17111. type: string
  17112. type: object
  17113. privateKeyPassphrase:
  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. region:
  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. tenancyId:
  17170. description: |-
  17171. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17172. In some instances, `key` is a required field.
  17173. properties:
  17174. key:
  17175. description: |-
  17176. A key in the referenced Secret.
  17177. Some instances of this field may be defaulted, in others it may be required.
  17178. maxLength: 253
  17179. minLength: 1
  17180. pattern: ^[-._a-zA-Z0-9]+$
  17181. type: string
  17182. name:
  17183. description: The name of the Secret resource being referred to.
  17184. maxLength: 253
  17185. minLength: 1
  17186. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17187. type: string
  17188. namespace:
  17189. description: |-
  17190. The namespace of the Secret resource being referred to.
  17191. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17192. maxLength: 63
  17193. minLength: 1
  17194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17195. type: string
  17196. type: object
  17197. userId:
  17198. description: |-
  17199. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17200. In some instances, `key` is a required field.
  17201. properties:
  17202. key:
  17203. description: |-
  17204. A key in the referenced Secret.
  17205. Some instances of this field may be defaulted, in others it may be required.
  17206. maxLength: 253
  17207. minLength: 1
  17208. pattern: ^[-._a-zA-Z0-9]+$
  17209. type: string
  17210. name:
  17211. description: The name of the Secret resource being referred to.
  17212. maxLength: 253
  17213. minLength: 1
  17214. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17215. type: string
  17216. namespace:
  17217. description: |-
  17218. The namespace of the Secret resource being referred to.
  17219. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17220. maxLength: 63
  17221. minLength: 1
  17222. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17223. type: string
  17224. type: object
  17225. required:
  17226. - fingerprint
  17227. - identityId
  17228. - privateKey
  17229. - region
  17230. - tenancyId
  17231. - userId
  17232. type: object
  17233. tokenAuthCredentials:
  17234. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  17235. properties:
  17236. accessToken:
  17237. description: |-
  17238. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17239. In some instances, `key` is a required field.
  17240. properties:
  17241. key:
  17242. description: |-
  17243. A key in the referenced Secret.
  17244. Some instances of this field may be defaulted, in others it may be required.
  17245. maxLength: 253
  17246. minLength: 1
  17247. pattern: ^[-._a-zA-Z0-9]+$
  17248. type: string
  17249. name:
  17250. description: The name of the Secret resource being referred to.
  17251. maxLength: 253
  17252. minLength: 1
  17253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17254. type: string
  17255. namespace:
  17256. description: |-
  17257. The namespace of the Secret resource being referred to.
  17258. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17259. maxLength: 63
  17260. minLength: 1
  17261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17262. type: string
  17263. type: object
  17264. required:
  17265. - accessToken
  17266. type: object
  17267. universalAuthCredentials:
  17268. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  17269. properties:
  17270. clientId:
  17271. description: |-
  17272. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17273. In some instances, `key` is a required field.
  17274. properties:
  17275. key:
  17276. description: |-
  17277. A key in the referenced Secret.
  17278. Some instances of this field may be defaulted, in others it may be required.
  17279. maxLength: 253
  17280. minLength: 1
  17281. pattern: ^[-._a-zA-Z0-9]+$
  17282. type: string
  17283. name:
  17284. description: The name of the Secret resource being referred to.
  17285. maxLength: 253
  17286. minLength: 1
  17287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17288. type: string
  17289. namespace:
  17290. description: |-
  17291. The namespace of the Secret resource being referred to.
  17292. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17293. maxLength: 63
  17294. minLength: 1
  17295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17296. type: string
  17297. type: object
  17298. clientSecret:
  17299. description: |-
  17300. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17301. In some instances, `key` is a required field.
  17302. properties:
  17303. key:
  17304. description: |-
  17305. A key in the referenced Secret.
  17306. Some instances of this field may be defaulted, in others it may be required.
  17307. maxLength: 253
  17308. minLength: 1
  17309. pattern: ^[-._a-zA-Z0-9]+$
  17310. type: string
  17311. name:
  17312. description: The name of the Secret resource being referred to.
  17313. maxLength: 253
  17314. minLength: 1
  17315. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17316. type: string
  17317. namespace:
  17318. description: |-
  17319. The namespace of the Secret resource being referred to.
  17320. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17321. maxLength: 63
  17322. minLength: 1
  17323. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17324. type: string
  17325. type: object
  17326. required:
  17327. - clientId
  17328. - clientSecret
  17329. type: object
  17330. type: object
  17331. caBundle:
  17332. description: |-
  17333. CABundle is a PEM-encoded CA certificate bundle used to validate
  17334. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  17335. format: byte
  17336. type: string
  17337. caProvider:
  17338. description: |-
  17339. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  17340. The certificate is used to validate the Infisical server's TLS certificate.
  17341. Mutually exclusive with CABundle.
  17342. properties:
  17343. key:
  17344. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17345. maxLength: 253
  17346. minLength: 1
  17347. pattern: ^[-._a-zA-Z0-9]+$
  17348. type: string
  17349. name:
  17350. description: The name of the object located at the provider type.
  17351. maxLength: 253
  17352. minLength: 1
  17353. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17354. type: string
  17355. namespace:
  17356. description: |-
  17357. The namespace the Provider type is in.
  17358. Can only be defined when used in a ClusterSecretStore.
  17359. maxLength: 63
  17360. minLength: 1
  17361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17362. type: string
  17363. type:
  17364. description: The type of provider to use such as "Secret", or "ConfigMap".
  17365. enum:
  17366. - Secret
  17367. - ConfigMap
  17368. type: string
  17369. required:
  17370. - name
  17371. - type
  17372. type: object
  17373. hostAPI:
  17374. default: https://app.infisical.com/api
  17375. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  17376. type: string
  17377. secretsScope:
  17378. description: SecretsScope defines the scope of the secrets within the workspace
  17379. properties:
  17380. environmentSlug:
  17381. description: EnvironmentSlug is the required slug identifier for the environment.
  17382. type: string
  17383. expandSecretReferences:
  17384. default: true
  17385. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  17386. type: boolean
  17387. projectSlug:
  17388. description: ProjectSlug is the required slug identifier for the project.
  17389. type: string
  17390. recursive:
  17391. default: false
  17392. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  17393. type: boolean
  17394. secretsPath:
  17395. default: /
  17396. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  17397. type: string
  17398. required:
  17399. - environmentSlug
  17400. - projectSlug
  17401. type: object
  17402. required:
  17403. - auth
  17404. - secretsScope
  17405. type: object
  17406. keepersecurity:
  17407. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  17408. properties:
  17409. authRef:
  17410. description: |-
  17411. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17412. In some instances, `key` is a required field.
  17413. properties:
  17414. key:
  17415. description: |-
  17416. A key in the referenced Secret.
  17417. Some instances of this field may be defaulted, in others it may be required.
  17418. maxLength: 253
  17419. minLength: 1
  17420. pattern: ^[-._a-zA-Z0-9]+$
  17421. type: string
  17422. name:
  17423. description: The name of the Secret resource being referred to.
  17424. maxLength: 253
  17425. minLength: 1
  17426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17427. type: string
  17428. namespace:
  17429. description: |-
  17430. The namespace of the Secret resource being referred to.
  17431. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17432. maxLength: 63
  17433. minLength: 1
  17434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17435. type: string
  17436. type: object
  17437. folderID:
  17438. type: string
  17439. required:
  17440. - authRef
  17441. - folderID
  17442. type: object
  17443. kubernetes:
  17444. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  17445. properties:
  17446. auth:
  17447. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  17448. maxProperties: 1
  17449. minProperties: 1
  17450. properties:
  17451. cert:
  17452. description: has both clientCert and clientKey as secretKeySelector
  17453. properties:
  17454. clientCert:
  17455. description: |-
  17456. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17457. In some instances, `key` is a required field.
  17458. properties:
  17459. key:
  17460. description: |-
  17461. A key in the referenced Secret.
  17462. Some instances of this field may be defaulted, in others it may be required.
  17463. maxLength: 253
  17464. minLength: 1
  17465. pattern: ^[-._a-zA-Z0-9]+$
  17466. type: string
  17467. name:
  17468. description: The name of the Secret resource being referred to.
  17469. maxLength: 253
  17470. minLength: 1
  17471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17472. type: string
  17473. namespace:
  17474. description: |-
  17475. The namespace of the Secret resource being referred to.
  17476. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17477. maxLength: 63
  17478. minLength: 1
  17479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17480. type: string
  17481. type: object
  17482. clientKey:
  17483. description: |-
  17484. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17485. In some instances, `key` is a required field.
  17486. properties:
  17487. key:
  17488. description: |-
  17489. A key in the referenced Secret.
  17490. Some instances of this field may be defaulted, in others it may be required.
  17491. maxLength: 253
  17492. minLength: 1
  17493. pattern: ^[-._a-zA-Z0-9]+$
  17494. type: string
  17495. name:
  17496. description: The name of the Secret resource being referred to.
  17497. maxLength: 253
  17498. minLength: 1
  17499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17500. type: string
  17501. namespace:
  17502. description: |-
  17503. The namespace of the Secret resource being referred to.
  17504. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17505. maxLength: 63
  17506. minLength: 1
  17507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17508. type: string
  17509. type: object
  17510. type: object
  17511. serviceAccount:
  17512. description: points to a service account that should be used for authentication
  17513. properties:
  17514. audiences:
  17515. description: |-
  17516. Audience specifies the `aud` claim for the service account token
  17517. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17518. then this audiences will be appended to the list
  17519. items:
  17520. type: string
  17521. type: array
  17522. name:
  17523. description: The name of the ServiceAccount resource being referred to.
  17524. maxLength: 253
  17525. minLength: 1
  17526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17527. type: string
  17528. namespace:
  17529. description: |-
  17530. Namespace of the resource being referred to.
  17531. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17532. maxLength: 63
  17533. minLength: 1
  17534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17535. type: string
  17536. required:
  17537. - name
  17538. type: object
  17539. token:
  17540. description: use static token to authenticate with
  17541. properties:
  17542. bearerToken:
  17543. description: |-
  17544. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17545. In some instances, `key` is a required field.
  17546. properties:
  17547. key:
  17548. description: |-
  17549. A key in the referenced Secret.
  17550. Some instances of this field may be defaulted, in others it may be required.
  17551. maxLength: 253
  17552. minLength: 1
  17553. pattern: ^[-._a-zA-Z0-9]+$
  17554. type: string
  17555. name:
  17556. description: The name of the Secret resource being referred to.
  17557. maxLength: 253
  17558. minLength: 1
  17559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17560. type: string
  17561. namespace:
  17562. description: |-
  17563. The namespace of the Secret resource being referred to.
  17564. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17565. maxLength: 63
  17566. minLength: 1
  17567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17568. type: string
  17569. type: object
  17570. type: object
  17571. type: object
  17572. authRef:
  17573. description: A reference to a secret that contains the auth information.
  17574. properties:
  17575. key:
  17576. description: |-
  17577. A key in the referenced Secret.
  17578. Some instances of this field may be defaulted, in others it may be required.
  17579. maxLength: 253
  17580. minLength: 1
  17581. pattern: ^[-._a-zA-Z0-9]+$
  17582. type: string
  17583. name:
  17584. description: The name of the Secret resource being referred to.
  17585. maxLength: 253
  17586. minLength: 1
  17587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17588. type: string
  17589. namespace:
  17590. description: |-
  17591. The namespace of the Secret resource being referred to.
  17592. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17593. maxLength: 63
  17594. minLength: 1
  17595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17596. type: string
  17597. type: object
  17598. remoteNamespace:
  17599. default: default
  17600. description: Remote namespace to fetch the secrets from
  17601. maxLength: 63
  17602. minLength: 1
  17603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17604. type: string
  17605. server:
  17606. description: configures the Kubernetes server Address.
  17607. properties:
  17608. caBundle:
  17609. description: CABundle is a base64-encoded CA certificate
  17610. format: byte
  17611. type: string
  17612. caProvider:
  17613. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  17614. properties:
  17615. key:
  17616. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17617. maxLength: 253
  17618. minLength: 1
  17619. pattern: ^[-._a-zA-Z0-9]+$
  17620. type: string
  17621. name:
  17622. description: The name of the object located at the provider type.
  17623. maxLength: 253
  17624. minLength: 1
  17625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17626. type: string
  17627. namespace:
  17628. description: |-
  17629. The namespace the Provider type is in.
  17630. Can only be defined when used in a ClusterSecretStore.
  17631. maxLength: 63
  17632. minLength: 1
  17633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17634. type: string
  17635. type:
  17636. description: The type of provider to use such as "Secret", or "ConfigMap".
  17637. enum:
  17638. - Secret
  17639. - ConfigMap
  17640. type: string
  17641. required:
  17642. - name
  17643. - type
  17644. type: object
  17645. url:
  17646. default: kubernetes.default
  17647. description: configures the Kubernetes server Address.
  17648. type: string
  17649. type: object
  17650. type: object
  17651. nebiusmysterybox:
  17652. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  17653. properties:
  17654. apiDomain:
  17655. description: NebiusMysterybox API endpoint
  17656. type: string
  17657. auth:
  17658. description: Auth defines parameters to authenticate in MysteryBox
  17659. properties:
  17660. serviceAccountCredsSecretRef:
  17661. description: |-
  17662. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  17663. document with service account credentials used to get an IAM token.
  17664. Expected JSON structure:
  17665. {
  17666. "subject-credentials": {
  17667. "alg": "RS256",
  17668. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  17669. "kid": "<public-key-id>",
  17670. "iss": "<issuer-service-account-id>",
  17671. "sub": "<subject-service-account-id>"
  17672. }
  17673. }
  17674. properties:
  17675. key:
  17676. description: |-
  17677. A key in the referenced Secret.
  17678. Some instances of this field may be defaulted, in others it may be required.
  17679. maxLength: 253
  17680. minLength: 1
  17681. pattern: ^[-._a-zA-Z0-9]+$
  17682. type: string
  17683. name:
  17684. description: The name of the Secret resource being referred to.
  17685. maxLength: 253
  17686. minLength: 1
  17687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17688. type: string
  17689. namespace:
  17690. description: |-
  17691. The namespace of the Secret resource being referred to.
  17692. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17693. maxLength: 63
  17694. minLength: 1
  17695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17696. type: string
  17697. type: object
  17698. tokenSecretRef:
  17699. description: Token authenticates with Nebius Mysterybox by presenting a token.
  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. type: object
  17725. x-kubernetes-validations:
  17726. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  17727. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  17728. caProvider:
  17729. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  17730. properties:
  17731. certSecretRef:
  17732. description: |-
  17733. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17734. In some instances, `key` is a required field.
  17735. properties:
  17736. key:
  17737. description: |-
  17738. A key in the referenced Secret.
  17739. Some instances of this field may be defaulted, in others it may be required.
  17740. maxLength: 253
  17741. minLength: 1
  17742. pattern: ^[-._a-zA-Z0-9]+$
  17743. type: string
  17744. name:
  17745. description: The name of the Secret resource being referred to.
  17746. maxLength: 253
  17747. minLength: 1
  17748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17749. type: string
  17750. namespace:
  17751. description: |-
  17752. The namespace of the Secret resource being referred to.
  17753. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17754. maxLength: 63
  17755. minLength: 1
  17756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17757. type: string
  17758. type: object
  17759. type: object
  17760. required:
  17761. - apiDomain
  17762. - auth
  17763. type: object
  17764. ngrok:
  17765. description: Ngrok configures this store to sync secrets using the ngrok provider.
  17766. properties:
  17767. apiUrl:
  17768. default: https://api.ngrok.com
  17769. description: APIURL is the URL of the ngrok API.
  17770. type: string
  17771. auth:
  17772. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  17773. maxProperties: 1
  17774. minProperties: 1
  17775. properties:
  17776. apiKey:
  17777. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  17778. properties:
  17779. secretRef:
  17780. description: SecretRef is a reference to a secret containing the ngrok API key.
  17781. properties:
  17782. key:
  17783. description: |-
  17784. A key in the referenced Secret.
  17785. Some instances of this field may be defaulted, in others it may be required.
  17786. maxLength: 253
  17787. minLength: 1
  17788. pattern: ^[-._a-zA-Z0-9]+$
  17789. type: string
  17790. name:
  17791. description: The name of the Secret resource being referred to.
  17792. maxLength: 253
  17793. minLength: 1
  17794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17795. type: string
  17796. namespace:
  17797. description: |-
  17798. The namespace of the Secret resource being referred to.
  17799. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17800. maxLength: 63
  17801. minLength: 1
  17802. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17803. type: string
  17804. type: object
  17805. type: object
  17806. type: object
  17807. vault:
  17808. description: Vault configures the ngrok vault to sync secrets with.
  17809. properties:
  17810. name:
  17811. description: Name is the name of the ngrok vault to sync secrets with.
  17812. type: string
  17813. required:
  17814. - name
  17815. type: object
  17816. required:
  17817. - auth
  17818. - vault
  17819. type: object
  17820. onboardbase:
  17821. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  17822. properties:
  17823. apiHost:
  17824. default: https://public.onboardbase.com/api/v1/
  17825. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  17826. type: string
  17827. auth:
  17828. description: Auth configures how the Operator authenticates with the Onboardbase API
  17829. properties:
  17830. apiKeyRef:
  17831. description: |-
  17832. OnboardbaseAPIKey is the APIKey generated by an admin account.
  17833. It is used to recognize and authorize access to a project and environment within onboardbase
  17834. properties:
  17835. key:
  17836. description: |-
  17837. A key in the referenced Secret.
  17838. Some instances of this field may be defaulted, in others it may be required.
  17839. maxLength: 253
  17840. minLength: 1
  17841. pattern: ^[-._a-zA-Z0-9]+$
  17842. type: string
  17843. name:
  17844. description: The name of the Secret resource being referred to.
  17845. maxLength: 253
  17846. minLength: 1
  17847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17848. type: string
  17849. namespace:
  17850. description: |-
  17851. The namespace of the Secret resource being referred to.
  17852. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17853. maxLength: 63
  17854. minLength: 1
  17855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17856. type: string
  17857. type: object
  17858. passcodeRef:
  17859. description: OnboardbasePasscode is the passcode attached to the API Key
  17860. properties:
  17861. key:
  17862. description: |-
  17863. A key in the referenced Secret.
  17864. Some instances of this field may be defaulted, in others it may be required.
  17865. maxLength: 253
  17866. minLength: 1
  17867. pattern: ^[-._a-zA-Z0-9]+$
  17868. type: string
  17869. name:
  17870. description: The name of the Secret resource being referred to.
  17871. maxLength: 253
  17872. minLength: 1
  17873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17874. type: string
  17875. namespace:
  17876. description: |-
  17877. The namespace of the Secret resource being referred to.
  17878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17879. maxLength: 63
  17880. minLength: 1
  17881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17882. type: string
  17883. type: object
  17884. required:
  17885. - apiKeyRef
  17886. - passcodeRef
  17887. type: object
  17888. environment:
  17889. default: development
  17890. description: Environment is the name of an environmnent within a project to pull the secrets from
  17891. type: string
  17892. project:
  17893. default: development
  17894. description: Project is an onboardbase project that the secrets should be pulled from
  17895. type: string
  17896. required:
  17897. - apiHost
  17898. - auth
  17899. - environment
  17900. - project
  17901. type: object
  17902. onepassword:
  17903. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  17904. properties:
  17905. auth:
  17906. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  17907. properties:
  17908. secretRef:
  17909. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  17910. properties:
  17911. connectTokenSecretRef:
  17912. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  17913. properties:
  17914. key:
  17915. description: |-
  17916. A key in the referenced Secret.
  17917. Some instances of this field may be defaulted, in others it may be required.
  17918. maxLength: 253
  17919. minLength: 1
  17920. pattern: ^[-._a-zA-Z0-9]+$
  17921. type: string
  17922. name:
  17923. description: The name of the Secret resource being referred to.
  17924. maxLength: 253
  17925. minLength: 1
  17926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17927. type: string
  17928. namespace:
  17929. description: |-
  17930. The namespace of the Secret resource being referred to.
  17931. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17932. maxLength: 63
  17933. minLength: 1
  17934. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17935. type: string
  17936. type: object
  17937. required:
  17938. - connectTokenSecretRef
  17939. type: object
  17940. required:
  17941. - secretRef
  17942. type: object
  17943. connectHost:
  17944. description: ConnectHost defines the OnePassword Connect Server to connect to
  17945. type: string
  17946. vaults:
  17947. additionalProperties:
  17948. type: integer
  17949. description: Vaults defines which OnePassword vaults to search in which order
  17950. type: object
  17951. required:
  17952. - auth
  17953. - connectHost
  17954. - vaults
  17955. type: object
  17956. onepasswordSDK:
  17957. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  17958. properties:
  17959. auth:
  17960. description: Auth defines the information necessary to authenticate against OnePassword API.
  17961. properties:
  17962. serviceAccountSecretRef:
  17963. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  17964. properties:
  17965. key:
  17966. description: |-
  17967. A key in the referenced Secret.
  17968. Some instances of this field may be defaulted, in others it may be required.
  17969. maxLength: 253
  17970. minLength: 1
  17971. pattern: ^[-._a-zA-Z0-9]+$
  17972. type: string
  17973. name:
  17974. description: The name of the Secret resource being referred to.
  17975. maxLength: 253
  17976. minLength: 1
  17977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17978. type: string
  17979. namespace:
  17980. description: |-
  17981. The namespace of the Secret resource being referred to.
  17982. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17983. maxLength: 63
  17984. minLength: 1
  17985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17986. type: string
  17987. type: object
  17988. required:
  17989. - serviceAccountSecretRef
  17990. type: object
  17991. cache:
  17992. description: |-
  17993. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  17994. When enabled, secrets are cached with the specified TTL.
  17995. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  17996. If omitted, caching is disabled (default).
  17997. cache: {} is a valid option to set.
  17998. properties:
  17999. maxSize:
  18000. default: 100
  18001. description: |-
  18002. MaxSize is the maximum number of secrets to cache.
  18003. When the cache is full, least-recently-used entries are evicted.
  18004. minimum: 1
  18005. type: integer
  18006. ttl:
  18007. default: 5m
  18008. description: |-
  18009. TTL is the time-to-live for cached secrets.
  18010. Format: duration string (e.g., "5m", "1h", "30s")
  18011. type: string
  18012. type: object
  18013. integrationInfo:
  18014. description: |-
  18015. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18016. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18017. properties:
  18018. name:
  18019. default: 1Password SDK
  18020. description: Name defaults to "1Password SDK".
  18021. type: string
  18022. version:
  18023. default: v1.0.0
  18024. description: Version defaults to "v1.0.0".
  18025. type: string
  18026. type: object
  18027. vault:
  18028. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18029. type: string
  18030. required:
  18031. - auth
  18032. - vault
  18033. type: object
  18034. oracle:
  18035. description: Oracle configures this store to sync secrets using Oracle Vault provider
  18036. properties:
  18037. auth:
  18038. description: |-
  18039. Auth configures how secret-manager authenticates with the Oracle Vault.
  18040. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  18041. properties:
  18042. secretRef:
  18043. description: SecretRef to pass through sensitive information.
  18044. properties:
  18045. fingerprint:
  18046. description: Fingerprint is the fingerprint of the API private key.
  18047. properties:
  18048. key:
  18049. description: |-
  18050. A key in the referenced Secret.
  18051. Some instances of this field may be defaulted, in others it may be required.
  18052. maxLength: 253
  18053. minLength: 1
  18054. pattern: ^[-._a-zA-Z0-9]+$
  18055. type: string
  18056. name:
  18057. description: The name of the Secret resource being referred to.
  18058. maxLength: 253
  18059. minLength: 1
  18060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18061. type: string
  18062. namespace:
  18063. description: |-
  18064. The namespace of the Secret resource being referred to.
  18065. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18066. maxLength: 63
  18067. minLength: 1
  18068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18069. type: string
  18070. type: object
  18071. privatekey:
  18072. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  18073. properties:
  18074. key:
  18075. description: |-
  18076. A key in the referenced Secret.
  18077. Some instances of this field may be defaulted, in others it may be required.
  18078. maxLength: 253
  18079. minLength: 1
  18080. pattern: ^[-._a-zA-Z0-9]+$
  18081. type: string
  18082. name:
  18083. description: The name of the Secret resource being referred to.
  18084. maxLength: 253
  18085. minLength: 1
  18086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18087. type: string
  18088. namespace:
  18089. description: |-
  18090. The namespace of the Secret resource being referred to.
  18091. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18092. maxLength: 63
  18093. minLength: 1
  18094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18095. type: string
  18096. type: object
  18097. required:
  18098. - fingerprint
  18099. - privatekey
  18100. type: object
  18101. tenancy:
  18102. description: Tenancy is the tenancy OCID where user is located.
  18103. type: string
  18104. user:
  18105. description: User is an access OCID specific to the account.
  18106. type: string
  18107. required:
  18108. - secretRef
  18109. - tenancy
  18110. - user
  18111. type: object
  18112. compartment:
  18113. description: |-
  18114. Compartment is the vault compartment OCID.
  18115. Required for PushSecret
  18116. type: string
  18117. encryptionKey:
  18118. description: |-
  18119. EncryptionKey is the OCID of the encryption key within the vault.
  18120. Required for PushSecret
  18121. type: string
  18122. principalType:
  18123. description: |-
  18124. The type of principal to use for authentication. If left blank, the Auth struct will
  18125. determine the principal type. This optional field must be specified if using
  18126. workload identity.
  18127. enum:
  18128. - ""
  18129. - UserPrincipal
  18130. - InstancePrincipal
  18131. - Workload
  18132. type: string
  18133. region:
  18134. description: Region is the region where vault is located.
  18135. type: string
  18136. serviceAccountRef:
  18137. description: |-
  18138. ServiceAccountRef specified the service account
  18139. that should be used when authenticating with WorkloadIdentity.
  18140. properties:
  18141. audiences:
  18142. description: |-
  18143. Audience specifies the `aud` claim for the service account token
  18144. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18145. then this audiences will be appended to the list
  18146. items:
  18147. type: string
  18148. type: array
  18149. name:
  18150. description: The name of the ServiceAccount resource being referred to.
  18151. maxLength: 253
  18152. minLength: 1
  18153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18154. type: string
  18155. namespace:
  18156. description: |-
  18157. Namespace of the resource being referred to.
  18158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18159. maxLength: 63
  18160. minLength: 1
  18161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18162. type: string
  18163. required:
  18164. - name
  18165. type: object
  18166. vault:
  18167. description: Vault is the vault's OCID of the specific vault where secret is located.
  18168. type: string
  18169. required:
  18170. - region
  18171. - vault
  18172. type: object
  18173. ovh:
  18174. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  18175. properties:
  18176. auth:
  18177. description: Authentication method (mtls or token).
  18178. properties:
  18179. mtls:
  18180. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  18181. properties:
  18182. caBundle:
  18183. format: byte
  18184. type: string
  18185. caProvider:
  18186. description: |-
  18187. CAProvider provides a custom certificate authority for accessing the provider's store.
  18188. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  18189. properties:
  18190. key:
  18191. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18192. maxLength: 253
  18193. minLength: 1
  18194. pattern: ^[-._a-zA-Z0-9]+$
  18195. type: string
  18196. name:
  18197. description: The name of the object located at the provider type.
  18198. maxLength: 253
  18199. minLength: 1
  18200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18201. type: string
  18202. namespace:
  18203. description: |-
  18204. The namespace the Provider type is in.
  18205. Can only be defined when used in a ClusterSecretStore.
  18206. maxLength: 63
  18207. minLength: 1
  18208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18209. type: string
  18210. type:
  18211. description: The type of provider to use such as "Secret", or "ConfigMap".
  18212. enum:
  18213. - Secret
  18214. - ConfigMap
  18215. type: string
  18216. required:
  18217. - name
  18218. - type
  18219. type: object
  18220. certSecretRef:
  18221. description: |-
  18222. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18223. In some instances, `key` is a required field.
  18224. properties:
  18225. key:
  18226. description: |-
  18227. A key in the referenced Secret.
  18228. Some instances of this field may be defaulted, in others it may be required.
  18229. maxLength: 253
  18230. minLength: 1
  18231. pattern: ^[-._a-zA-Z0-9]+$
  18232. type: string
  18233. name:
  18234. description: The name of the Secret resource being referred to.
  18235. maxLength: 253
  18236. minLength: 1
  18237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18238. type: string
  18239. namespace:
  18240. description: |-
  18241. The namespace of the Secret resource being referred to.
  18242. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18243. maxLength: 63
  18244. minLength: 1
  18245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18246. type: string
  18247. type: object
  18248. keySecretRef:
  18249. description: |-
  18250. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18251. In some instances, `key` is a required field.
  18252. properties:
  18253. key:
  18254. description: |-
  18255. A key in the referenced Secret.
  18256. Some instances of this field may be defaulted, in others it may be required.
  18257. maxLength: 253
  18258. minLength: 1
  18259. pattern: ^[-._a-zA-Z0-9]+$
  18260. type: string
  18261. name:
  18262. description: The name of the Secret resource being referred to.
  18263. maxLength: 253
  18264. minLength: 1
  18265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18266. type: string
  18267. namespace:
  18268. description: |-
  18269. The namespace of the Secret resource being referred to.
  18270. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18271. maxLength: 63
  18272. minLength: 1
  18273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18274. type: string
  18275. type: object
  18276. required:
  18277. - certSecretRef
  18278. - keySecretRef
  18279. type: object
  18280. token:
  18281. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  18282. properties:
  18283. tokenSecretRef:
  18284. description: |-
  18285. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18286. In some instances, `key` is a required field.
  18287. properties:
  18288. key:
  18289. description: |-
  18290. A key in the referenced Secret.
  18291. Some instances of this field may be defaulted, in others it may be required.
  18292. maxLength: 253
  18293. minLength: 1
  18294. pattern: ^[-._a-zA-Z0-9]+$
  18295. type: string
  18296. name:
  18297. description: The name of the Secret resource being referred to.
  18298. maxLength: 253
  18299. minLength: 1
  18300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18301. type: string
  18302. namespace:
  18303. description: |-
  18304. The namespace of the Secret resource being referred to.
  18305. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18306. maxLength: 63
  18307. minLength: 1
  18308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18309. type: string
  18310. type: object
  18311. required:
  18312. - tokenSecretRef
  18313. type: object
  18314. type: object
  18315. casRequired:
  18316. description: 'Enables or disables check-and-set (CAS) (default: false).'
  18317. type: boolean
  18318. okmsTimeout:
  18319. default: 30
  18320. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  18321. format: int32
  18322. minimum: 1
  18323. type: integer
  18324. okmsid:
  18325. description: specifies the OKMS ID.
  18326. type: string
  18327. server:
  18328. description: specifies the OKMS server endpoint.
  18329. type: string
  18330. required:
  18331. - auth
  18332. - okmsid
  18333. - server
  18334. type: object
  18335. passbolt:
  18336. description: |-
  18337. PassboltProvider provides access to Passbolt secrets manager.
  18338. See: https://www.passbolt.com.
  18339. properties:
  18340. auth:
  18341. description: Auth defines the information necessary to authenticate against Passbolt Server
  18342. properties:
  18343. passwordSecretRef:
  18344. description: |-
  18345. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18346. In some instances, `key` is a required field.
  18347. properties:
  18348. key:
  18349. description: |-
  18350. A key in the referenced Secret.
  18351. Some instances of this field may be defaulted, in others it may be required.
  18352. maxLength: 253
  18353. minLength: 1
  18354. pattern: ^[-._a-zA-Z0-9]+$
  18355. type: string
  18356. name:
  18357. description: The name of the Secret resource being referred to.
  18358. maxLength: 253
  18359. minLength: 1
  18360. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18361. type: string
  18362. namespace:
  18363. description: |-
  18364. The namespace of the Secret resource being referred to.
  18365. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18366. maxLength: 63
  18367. minLength: 1
  18368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18369. type: string
  18370. type: object
  18371. privateKeySecretRef:
  18372. description: |-
  18373. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18374. In some instances, `key` is a required field.
  18375. properties:
  18376. key:
  18377. description: |-
  18378. A key in the referenced Secret.
  18379. Some instances of this field may be defaulted, in others it may be required.
  18380. maxLength: 253
  18381. minLength: 1
  18382. pattern: ^[-._a-zA-Z0-9]+$
  18383. type: string
  18384. name:
  18385. description: The name of the Secret resource being referred to.
  18386. maxLength: 253
  18387. minLength: 1
  18388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18389. type: string
  18390. namespace:
  18391. description: |-
  18392. The namespace of the Secret resource being referred to.
  18393. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18394. maxLength: 63
  18395. minLength: 1
  18396. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18397. type: string
  18398. type: object
  18399. required:
  18400. - passwordSecretRef
  18401. - privateKeySecretRef
  18402. type: object
  18403. host:
  18404. description: Host defines the Passbolt Server to connect to
  18405. type: string
  18406. required:
  18407. - auth
  18408. - host
  18409. type: object
  18410. passworddepot:
  18411. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  18412. properties:
  18413. auth:
  18414. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  18415. properties:
  18416. secretRef:
  18417. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  18418. properties:
  18419. credentials:
  18420. description: Username / Password is used for authentication.
  18421. properties:
  18422. key:
  18423. description: |-
  18424. A key in the referenced Secret.
  18425. Some instances of this field may be defaulted, in others it may be required.
  18426. maxLength: 253
  18427. minLength: 1
  18428. pattern: ^[-._a-zA-Z0-9]+$
  18429. type: string
  18430. name:
  18431. description: The name of the Secret resource being referred to.
  18432. maxLength: 253
  18433. minLength: 1
  18434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18435. type: string
  18436. namespace:
  18437. description: |-
  18438. The namespace of the Secret resource being referred to.
  18439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18440. maxLength: 63
  18441. minLength: 1
  18442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18443. type: string
  18444. type: object
  18445. type: object
  18446. required:
  18447. - secretRef
  18448. type: object
  18449. database:
  18450. description: Database to use as source
  18451. type: string
  18452. host:
  18453. description: URL configures the Password Depot instance URL.
  18454. type: string
  18455. required:
  18456. - auth
  18457. - database
  18458. - host
  18459. type: object
  18460. previder:
  18461. description: Previder configures this store to sync secrets using the Previder provider
  18462. properties:
  18463. auth:
  18464. description: PreviderAuth contains a secretRef for credentials.
  18465. properties:
  18466. secretRef:
  18467. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  18468. properties:
  18469. accessToken:
  18470. description: The AccessToken is 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. - accessToken
  18497. type: object
  18498. type: object
  18499. baseUri:
  18500. type: string
  18501. required:
  18502. - auth
  18503. type: object
  18504. pulumi:
  18505. description: Pulumi configures this store to sync secrets using the Pulumi provider
  18506. properties:
  18507. accessToken:
  18508. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  18509. properties:
  18510. secretRef:
  18511. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18512. properties:
  18513. key:
  18514. description: |-
  18515. A key in the referenced Secret.
  18516. Some instances of this field may be defaulted, in others it may be required.
  18517. maxLength: 253
  18518. minLength: 1
  18519. pattern: ^[-._a-zA-Z0-9]+$
  18520. type: string
  18521. name:
  18522. description: The name of the Secret resource being referred to.
  18523. maxLength: 253
  18524. minLength: 1
  18525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18526. type: string
  18527. namespace:
  18528. description: |-
  18529. The namespace of the Secret resource being referred to.
  18530. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18531. maxLength: 63
  18532. minLength: 1
  18533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18534. type: string
  18535. type: object
  18536. type: object
  18537. apiUrl:
  18538. default: https://api.pulumi.com/api/esc
  18539. description: APIURL is the URL of the Pulumi API.
  18540. type: string
  18541. environment:
  18542. description: |-
  18543. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  18544. dynamically retrieved values from supported providers including all major clouds,
  18545. and other Pulumi ESC environments.
  18546. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  18547. type: string
  18548. organization:
  18549. description: |-
  18550. Organization are a space to collaborate on shared projects and stacks.
  18551. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  18552. type: string
  18553. project:
  18554. description: Project is the name of the Pulumi ESC project the environment belongs to.
  18555. type: string
  18556. required:
  18557. - accessToken
  18558. - environment
  18559. - organization
  18560. - project
  18561. type: object
  18562. scaleway:
  18563. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  18564. properties:
  18565. accessKey:
  18566. description: AccessKey is the non-secret part of the api key.
  18567. properties:
  18568. secretRef:
  18569. description: SecretRef references a key in a secret that will be used as value.
  18570. properties:
  18571. key:
  18572. description: |-
  18573. A key in the referenced Secret.
  18574. Some instances of this field may be defaulted, in others it may be required.
  18575. maxLength: 253
  18576. minLength: 1
  18577. pattern: ^[-._a-zA-Z0-9]+$
  18578. type: string
  18579. name:
  18580. description: The name of the Secret resource being referred to.
  18581. maxLength: 253
  18582. minLength: 1
  18583. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18584. type: string
  18585. namespace:
  18586. description: |-
  18587. The namespace of the Secret resource being referred to.
  18588. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18589. maxLength: 63
  18590. minLength: 1
  18591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18592. type: string
  18593. type: object
  18594. value:
  18595. description: Value can be specified directly to set a value without using a secret.
  18596. type: string
  18597. type: object
  18598. apiUrl:
  18599. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  18600. type: string
  18601. projectId:
  18602. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  18603. type: string
  18604. region:
  18605. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  18606. type: string
  18607. secretKey:
  18608. description: SecretKey is the non-secret part of the api key.
  18609. properties:
  18610. secretRef:
  18611. description: SecretRef references a key in a secret that will be used as value.
  18612. properties:
  18613. key:
  18614. description: |-
  18615. A key in the referenced Secret.
  18616. Some instances of this field may be defaulted, in others it may be required.
  18617. maxLength: 253
  18618. minLength: 1
  18619. pattern: ^[-._a-zA-Z0-9]+$
  18620. type: string
  18621. name:
  18622. description: The name of the Secret resource being referred to.
  18623. maxLength: 253
  18624. minLength: 1
  18625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18626. type: string
  18627. namespace:
  18628. description: |-
  18629. The namespace of the Secret resource being referred to.
  18630. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18631. maxLength: 63
  18632. minLength: 1
  18633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18634. type: string
  18635. type: object
  18636. value:
  18637. description: Value can be specified directly to set a value without using a secret.
  18638. type: string
  18639. type: object
  18640. required:
  18641. - accessKey
  18642. - projectId
  18643. - region
  18644. - secretKey
  18645. type: object
  18646. secretserver:
  18647. description: |-
  18648. SecretServer configures this store to sync secrets using SecretServer provider
  18649. https://docs.delinea.com/online-help/secret-server/start.htm
  18650. properties:
  18651. caBundle:
  18652. description: |-
  18653. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  18654. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  18655. are used to validate the TLS connection.
  18656. format: byte
  18657. type: string
  18658. caProvider:
  18659. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  18660. properties:
  18661. key:
  18662. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18663. maxLength: 253
  18664. minLength: 1
  18665. pattern: ^[-._a-zA-Z0-9]+$
  18666. type: string
  18667. name:
  18668. description: The name of the object located at the provider type.
  18669. maxLength: 253
  18670. minLength: 1
  18671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18672. type: string
  18673. namespace:
  18674. description: |-
  18675. The namespace the Provider type is in.
  18676. Can only be defined when used in a ClusterSecretStore.
  18677. maxLength: 63
  18678. minLength: 1
  18679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18680. type: string
  18681. type:
  18682. description: The type of provider to use such as "Secret", or "ConfigMap".
  18683. enum:
  18684. - Secret
  18685. - ConfigMap
  18686. type: string
  18687. required:
  18688. - name
  18689. - type
  18690. type: object
  18691. domain:
  18692. description: Domain is the secret server domain.
  18693. type: string
  18694. password:
  18695. description: Password is the secret server account password.
  18696. properties:
  18697. secretRef:
  18698. description: SecretRef references a key in a secret that will be used as value.
  18699. properties:
  18700. key:
  18701. description: |-
  18702. A key in the referenced Secret.
  18703. Some instances of this field may be defaulted, in others it may be required.
  18704. maxLength: 253
  18705. minLength: 1
  18706. pattern: ^[-._a-zA-Z0-9]+$
  18707. type: string
  18708. name:
  18709. description: The name of the Secret resource being referred to.
  18710. maxLength: 253
  18711. minLength: 1
  18712. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18713. type: string
  18714. namespace:
  18715. description: |-
  18716. The namespace of the Secret resource being referred to.
  18717. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18718. maxLength: 63
  18719. minLength: 1
  18720. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18721. type: string
  18722. type: object
  18723. value:
  18724. description: Value can be specified directly to set a value without using a secret.
  18725. type: string
  18726. type: object
  18727. serverURL:
  18728. description: |-
  18729. ServerURL
  18730. URL to your secret server installation
  18731. type: string
  18732. username:
  18733. description: Username is the secret server account username.
  18734. properties:
  18735. secretRef:
  18736. description: SecretRef references a key in a secret that will be used as value.
  18737. properties:
  18738. key:
  18739. description: |-
  18740. A key in the referenced Secret.
  18741. Some instances of this field may be defaulted, in others it may be required.
  18742. maxLength: 253
  18743. minLength: 1
  18744. pattern: ^[-._a-zA-Z0-9]+$
  18745. type: string
  18746. name:
  18747. description: The name of the Secret resource being referred to.
  18748. maxLength: 253
  18749. minLength: 1
  18750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18751. type: string
  18752. namespace:
  18753. description: |-
  18754. The namespace of the Secret resource being referred to.
  18755. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18756. maxLength: 63
  18757. minLength: 1
  18758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18759. type: string
  18760. type: object
  18761. value:
  18762. description: Value can be specified directly to set a value without using a secret.
  18763. type: string
  18764. type: object
  18765. required:
  18766. - password
  18767. - serverURL
  18768. - username
  18769. type: object
  18770. senhasegura:
  18771. description: Senhasegura configures this store to sync secrets using senhasegura provider
  18772. properties:
  18773. auth:
  18774. description: Auth defines parameters to authenticate in senhasegura
  18775. properties:
  18776. clientId:
  18777. type: string
  18778. clientSecretSecretRef:
  18779. description: |-
  18780. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18781. In some instances, `key` is a required field.
  18782. properties:
  18783. key:
  18784. description: |-
  18785. A key in the referenced Secret.
  18786. Some instances of this field may be defaulted, in others it may be required.
  18787. maxLength: 253
  18788. minLength: 1
  18789. pattern: ^[-._a-zA-Z0-9]+$
  18790. type: string
  18791. name:
  18792. description: The name of the Secret resource being referred to.
  18793. maxLength: 253
  18794. minLength: 1
  18795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18796. type: string
  18797. namespace:
  18798. description: |-
  18799. The namespace of the Secret resource being referred to.
  18800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18801. maxLength: 63
  18802. minLength: 1
  18803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18804. type: string
  18805. type: object
  18806. required:
  18807. - clientId
  18808. - clientSecretSecretRef
  18809. type: object
  18810. ignoreSslCertificate:
  18811. default: false
  18812. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  18813. type: boolean
  18814. module:
  18815. description: Module defines which senhasegura module should be used to get secrets
  18816. type: string
  18817. url:
  18818. description: URL of senhasegura
  18819. type: string
  18820. required:
  18821. - auth
  18822. - module
  18823. - url
  18824. type: object
  18825. vault:
  18826. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  18827. properties:
  18828. auth:
  18829. description: Auth configures how secret-manager authenticates with the Vault server.
  18830. properties:
  18831. appRole:
  18832. description: |-
  18833. AppRole authenticates with Vault using the App Role auth mechanism,
  18834. with the role and secret stored in a Kubernetes Secret resource.
  18835. properties:
  18836. path:
  18837. default: approle
  18838. description: |-
  18839. Path where the App Role authentication backend is mounted
  18840. in Vault, e.g: "approle"
  18841. type: string
  18842. roleId:
  18843. description: |-
  18844. RoleID configured in the App Role authentication backend when setting
  18845. up the authentication backend in Vault.
  18846. type: string
  18847. roleRef:
  18848. description: |-
  18849. Reference to a key in a Secret that contains the App Role ID used
  18850. to authenticate with Vault.
  18851. The `key` field must be specified and denotes which entry within the Secret
  18852. resource is used as the app role id.
  18853. properties:
  18854. key:
  18855. description: |-
  18856. A key in the referenced Secret.
  18857. Some instances of this field may be defaulted, in others it may be required.
  18858. maxLength: 253
  18859. minLength: 1
  18860. pattern: ^[-._a-zA-Z0-9]+$
  18861. type: string
  18862. name:
  18863. description: The name of the Secret resource being referred to.
  18864. maxLength: 253
  18865. minLength: 1
  18866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18867. type: string
  18868. namespace:
  18869. description: |-
  18870. The namespace of the Secret resource being referred to.
  18871. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18872. maxLength: 63
  18873. minLength: 1
  18874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18875. type: string
  18876. type: object
  18877. secretRef:
  18878. description: |-
  18879. Reference to a key in a Secret that contains the App Role secret used
  18880. to authenticate with Vault.
  18881. The `key` field must be specified and denotes which entry within the Secret
  18882. resource is used as the app role secret.
  18883. properties:
  18884. key:
  18885. description: |-
  18886. A key in the referenced Secret.
  18887. Some instances of this field may be defaulted, in others it may be required.
  18888. maxLength: 253
  18889. minLength: 1
  18890. pattern: ^[-._a-zA-Z0-9]+$
  18891. type: string
  18892. name:
  18893. description: The name of the Secret resource being referred to.
  18894. maxLength: 253
  18895. minLength: 1
  18896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18897. type: string
  18898. namespace:
  18899. description: |-
  18900. The namespace of the Secret resource being referred to.
  18901. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18902. maxLength: 63
  18903. minLength: 1
  18904. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18905. type: string
  18906. type: object
  18907. required:
  18908. - path
  18909. - secretRef
  18910. type: object
  18911. cert:
  18912. description: |-
  18913. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  18914. Cert authentication method
  18915. properties:
  18916. clientCert:
  18917. description: |-
  18918. ClientCert is a certificate to authenticate using the Cert Vault
  18919. authentication method
  18920. properties:
  18921. key:
  18922. description: |-
  18923. A key in the referenced Secret.
  18924. Some instances of this field may be defaulted, in others it may be required.
  18925. maxLength: 253
  18926. minLength: 1
  18927. pattern: ^[-._a-zA-Z0-9]+$
  18928. type: string
  18929. name:
  18930. description: The name of the Secret resource being referred to.
  18931. maxLength: 253
  18932. minLength: 1
  18933. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18934. type: string
  18935. namespace:
  18936. description: |-
  18937. The namespace of the Secret resource being referred to.
  18938. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18939. maxLength: 63
  18940. minLength: 1
  18941. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18942. type: string
  18943. type: object
  18944. path:
  18945. default: cert
  18946. description: |-
  18947. Path where the Certificate authentication backend is mounted
  18948. in Vault, e.g: "cert"
  18949. type: string
  18950. secretRef:
  18951. description: |-
  18952. SecretRef to a key in a Secret resource containing client private key to
  18953. authenticate with Vault using the Cert authentication method
  18954. properties:
  18955. key:
  18956. description: |-
  18957. A key in the referenced Secret.
  18958. Some instances of this field may be defaulted, in others it may be required.
  18959. maxLength: 253
  18960. minLength: 1
  18961. pattern: ^[-._a-zA-Z0-9]+$
  18962. type: string
  18963. name:
  18964. description: The name of the Secret resource being referred to.
  18965. maxLength: 253
  18966. minLength: 1
  18967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18968. type: string
  18969. namespace:
  18970. description: |-
  18971. The namespace of the Secret resource being referred to.
  18972. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18973. maxLength: 63
  18974. minLength: 1
  18975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18976. type: string
  18977. type: object
  18978. type: object
  18979. gcp:
  18980. description: |-
  18981. Gcp authenticates with Vault using Google Cloud Platform authentication method
  18982. GCP authentication method
  18983. properties:
  18984. location:
  18985. description: Location optionally defines a location/region for the secret
  18986. type: string
  18987. path:
  18988. default: gcp
  18989. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  18990. type: string
  18991. projectID:
  18992. description: Project ID of the Google Cloud Platform project
  18993. type: string
  18994. role:
  18995. 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.
  18996. type: string
  18997. secretRef:
  18998. description: Specify credentials in a Secret object
  18999. properties:
  19000. secretAccessKeySecretRef:
  19001. description: The SecretAccessKey is used for authentication
  19002. properties:
  19003. key:
  19004. description: |-
  19005. A key in the referenced Secret.
  19006. Some instances of this field may be defaulted, in others it may be required.
  19007. maxLength: 253
  19008. minLength: 1
  19009. pattern: ^[-._a-zA-Z0-9]+$
  19010. type: string
  19011. name:
  19012. description: The name of the Secret resource being referred to.
  19013. maxLength: 253
  19014. minLength: 1
  19015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19016. type: string
  19017. namespace:
  19018. description: |-
  19019. The namespace of the Secret resource being referred to.
  19020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19021. maxLength: 63
  19022. minLength: 1
  19023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19024. type: string
  19025. type: object
  19026. type: object
  19027. serviceAccountRef:
  19028. description: ServiceAccountRef to a service account for impersonation
  19029. properties:
  19030. audiences:
  19031. description: |-
  19032. Audience specifies the `aud` claim for the service account token
  19033. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19034. then this audiences will be appended to the list
  19035. items:
  19036. type: string
  19037. type: array
  19038. name:
  19039. description: The name of the ServiceAccount resource being referred to.
  19040. maxLength: 253
  19041. minLength: 1
  19042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19043. type: string
  19044. namespace:
  19045. description: |-
  19046. Namespace of the resource being referred to.
  19047. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19048. maxLength: 63
  19049. minLength: 1
  19050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19051. type: string
  19052. required:
  19053. - name
  19054. type: object
  19055. workloadIdentity:
  19056. description: Specify a service account with Workload Identity
  19057. properties:
  19058. clusterLocation:
  19059. description: |-
  19060. ClusterLocation is the location of the cluster
  19061. If not specified, it fetches information from the metadata server
  19062. type: string
  19063. clusterName:
  19064. description: |-
  19065. ClusterName is the name of the cluster
  19066. If not specified, it fetches information from the metadata server
  19067. type: string
  19068. clusterProjectID:
  19069. description: |-
  19070. ClusterProjectID is the project ID of the cluster
  19071. If not specified, it fetches information from the metadata server
  19072. type: string
  19073. serviceAccountRef:
  19074. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19075. properties:
  19076. audiences:
  19077. description: |-
  19078. Audience specifies the `aud` claim for the service account token
  19079. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19080. then this audiences will be appended to the list
  19081. items:
  19082. type: string
  19083. type: array
  19084. name:
  19085. description: The name of the ServiceAccount resource being referred to.
  19086. maxLength: 253
  19087. minLength: 1
  19088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19089. type: string
  19090. namespace:
  19091. description: |-
  19092. Namespace of the resource being referred to.
  19093. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19094. maxLength: 63
  19095. minLength: 1
  19096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19097. type: string
  19098. required:
  19099. - name
  19100. type: object
  19101. required:
  19102. - serviceAccountRef
  19103. type: object
  19104. required:
  19105. - role
  19106. type: object
  19107. iam:
  19108. description: |-
  19109. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  19110. AWS IAM authentication method
  19111. properties:
  19112. externalID:
  19113. description: AWS External ID set on assumed IAM roles
  19114. type: string
  19115. jwt:
  19116. description: Specify a service account with IRSA enabled
  19117. properties:
  19118. serviceAccountRef:
  19119. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19120. properties:
  19121. audiences:
  19122. description: |-
  19123. Audience specifies the `aud` claim for the service account token
  19124. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19125. then this audiences will be appended to the list
  19126. items:
  19127. type: string
  19128. type: array
  19129. name:
  19130. description: The name of the ServiceAccount resource being referred to.
  19131. maxLength: 253
  19132. minLength: 1
  19133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19134. type: string
  19135. namespace:
  19136. description: |-
  19137. Namespace of the resource being referred to.
  19138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19139. maxLength: 63
  19140. minLength: 1
  19141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19142. type: string
  19143. required:
  19144. - name
  19145. type: object
  19146. type: object
  19147. path:
  19148. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  19149. type: string
  19150. region:
  19151. description: AWS region
  19152. type: string
  19153. role:
  19154. description: This is the AWS role to be assumed before talking to vault
  19155. type: string
  19156. secretRef:
  19157. description: Specify credentials in a Secret object
  19158. properties:
  19159. accessKeyIDSecretRef:
  19160. description: The AccessKeyID is used for authentication
  19161. properties:
  19162. key:
  19163. description: |-
  19164. A key in the referenced Secret.
  19165. Some instances of this field may be defaulted, in others it may be required.
  19166. maxLength: 253
  19167. minLength: 1
  19168. pattern: ^[-._a-zA-Z0-9]+$
  19169. type: string
  19170. name:
  19171. description: The name of the Secret resource being referred to.
  19172. maxLength: 253
  19173. minLength: 1
  19174. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19175. type: string
  19176. namespace:
  19177. description: |-
  19178. The namespace of the Secret resource being referred to.
  19179. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19180. maxLength: 63
  19181. minLength: 1
  19182. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19183. type: string
  19184. type: object
  19185. secretAccessKeySecretRef:
  19186. description: The SecretAccessKey is used for authentication
  19187. properties:
  19188. key:
  19189. description: |-
  19190. A key in the referenced Secret.
  19191. Some instances of this field may be defaulted, in others it may be required.
  19192. maxLength: 253
  19193. minLength: 1
  19194. pattern: ^[-._a-zA-Z0-9]+$
  19195. type: string
  19196. name:
  19197. description: The name of the Secret resource being referred to.
  19198. maxLength: 253
  19199. minLength: 1
  19200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19201. type: string
  19202. namespace:
  19203. description: |-
  19204. The namespace of the Secret resource being referred to.
  19205. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19206. maxLength: 63
  19207. minLength: 1
  19208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19209. type: string
  19210. type: object
  19211. sessionTokenSecretRef:
  19212. description: |-
  19213. The SessionToken used for authentication
  19214. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  19215. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  19216. properties:
  19217. key:
  19218. description: |-
  19219. A key in the referenced Secret.
  19220. Some instances of this field may be defaulted, in others it may be required.
  19221. maxLength: 253
  19222. minLength: 1
  19223. pattern: ^[-._a-zA-Z0-9]+$
  19224. type: string
  19225. name:
  19226. description: The name of the Secret resource being referred to.
  19227. maxLength: 253
  19228. minLength: 1
  19229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19230. type: string
  19231. namespace:
  19232. description: |-
  19233. The namespace of the Secret resource being referred to.
  19234. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19235. maxLength: 63
  19236. minLength: 1
  19237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19238. type: string
  19239. type: object
  19240. type: object
  19241. vaultAwsIamServerID:
  19242. 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'
  19243. type: string
  19244. vaultRole:
  19245. 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
  19246. type: string
  19247. required:
  19248. - vaultRole
  19249. type: object
  19250. jwt:
  19251. description: |-
  19252. Jwt authenticates with Vault by passing role and JWT token using the
  19253. JWT/OIDC authentication method
  19254. properties:
  19255. kubernetesServiceAccountToken:
  19256. description: |-
  19257. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  19258. a token for with the `TokenRequest` API.
  19259. properties:
  19260. audiences:
  19261. description: |-
  19262. Optional audiences field that will be used to request a temporary Kubernetes service
  19263. account token for the service account referenced by `serviceAccountRef`.
  19264. Defaults to a single audience `vault` it not specified.
  19265. Deprecated: use serviceAccountRef.Audiences instead
  19266. items:
  19267. type: string
  19268. type: array
  19269. expirationSeconds:
  19270. description: |-
  19271. Optional expiration time in seconds that will be used to request a temporary
  19272. Kubernetes service account token for the service account referenced by
  19273. `serviceAccountRef`.
  19274. Deprecated: this will be removed in the future.
  19275. Defaults to 10 minutes.
  19276. format: int64
  19277. type: integer
  19278. serviceAccountRef:
  19279. description: Service account field containing the name of a kubernetes ServiceAccount.
  19280. properties:
  19281. audiences:
  19282. description: |-
  19283. Audience specifies the `aud` claim for the service account token
  19284. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19285. then this audiences will be appended to the list
  19286. items:
  19287. type: string
  19288. type: array
  19289. name:
  19290. description: The name of the ServiceAccount resource being referred to.
  19291. maxLength: 253
  19292. minLength: 1
  19293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19294. type: string
  19295. namespace:
  19296. description: |-
  19297. Namespace of the resource being referred to.
  19298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19299. maxLength: 63
  19300. minLength: 1
  19301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19302. type: string
  19303. required:
  19304. - name
  19305. type: object
  19306. required:
  19307. - serviceAccountRef
  19308. type: object
  19309. path:
  19310. default: jwt
  19311. description: |-
  19312. Path where the JWT authentication backend is mounted
  19313. in Vault, e.g: "jwt"
  19314. type: string
  19315. role:
  19316. description: |-
  19317. Role is a JWT role to authenticate using the JWT/OIDC Vault
  19318. authentication method
  19319. type: string
  19320. secretRef:
  19321. description: |-
  19322. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  19323. authenticate with Vault using the JWT/OIDC authentication method.
  19324. properties:
  19325. key:
  19326. description: |-
  19327. A key in the referenced Secret.
  19328. Some instances of this field may be defaulted, in others it may be required.
  19329. maxLength: 253
  19330. minLength: 1
  19331. pattern: ^[-._a-zA-Z0-9]+$
  19332. type: string
  19333. name:
  19334. description: The name of the Secret resource being referred to.
  19335. maxLength: 253
  19336. minLength: 1
  19337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19338. type: string
  19339. namespace:
  19340. description: |-
  19341. The namespace of the Secret resource being referred to.
  19342. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19343. maxLength: 63
  19344. minLength: 1
  19345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19346. type: string
  19347. type: object
  19348. required:
  19349. - path
  19350. type: object
  19351. kubernetes:
  19352. description: |-
  19353. Kubernetes authenticates with Vault by passing the ServiceAccount
  19354. token stored in the named Secret resource to the Vault server.
  19355. properties:
  19356. mountPath:
  19357. default: kubernetes
  19358. description: |-
  19359. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  19360. "kubernetes"
  19361. type: string
  19362. role:
  19363. description: |-
  19364. A required field containing the Vault Role to assume. A Role binds a
  19365. Kubernetes ServiceAccount with a set of Vault policies.
  19366. type: string
  19367. secretRef:
  19368. description: |-
  19369. Optional secret field containing a Kubernetes ServiceAccount JWT used
  19370. for authenticating with Vault. If a name is specified without a key,
  19371. `token` is the default. If one is not specified, the one bound to
  19372. the controller will be used.
  19373. properties:
  19374. key:
  19375. description: |-
  19376. A key in the referenced Secret.
  19377. Some instances of this field may be defaulted, in others it may be required.
  19378. maxLength: 253
  19379. minLength: 1
  19380. pattern: ^[-._a-zA-Z0-9]+$
  19381. type: string
  19382. name:
  19383. description: The name of the Secret resource being referred to.
  19384. maxLength: 253
  19385. minLength: 1
  19386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19387. type: string
  19388. namespace:
  19389. description: |-
  19390. The namespace of the Secret resource being referred to.
  19391. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19392. maxLength: 63
  19393. minLength: 1
  19394. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19395. type: string
  19396. type: object
  19397. serviceAccountRef:
  19398. description: |-
  19399. Optional service account field containing the name of a kubernetes ServiceAccount.
  19400. If the service account is specified, the service account secret token JWT will be used
  19401. for authenticating with Vault. If the service account selector is not supplied,
  19402. the secretRef will be used instead.
  19403. properties:
  19404. audiences:
  19405. description: |-
  19406. Audience specifies the `aud` claim for the service account token
  19407. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19408. then this audiences will be appended to the list
  19409. items:
  19410. type: string
  19411. type: array
  19412. name:
  19413. description: The name of the ServiceAccount resource being referred to.
  19414. maxLength: 253
  19415. minLength: 1
  19416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19417. type: string
  19418. namespace:
  19419. description: |-
  19420. Namespace of the resource being referred to.
  19421. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19422. maxLength: 63
  19423. minLength: 1
  19424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19425. type: string
  19426. required:
  19427. - name
  19428. type: object
  19429. required:
  19430. - mountPath
  19431. - role
  19432. type: object
  19433. ldap:
  19434. description: |-
  19435. Ldap authenticates with Vault by passing username/password pair using
  19436. the LDAP authentication method
  19437. properties:
  19438. path:
  19439. default: ldap
  19440. description: |-
  19441. Path where the LDAP authentication backend is mounted
  19442. in Vault, e.g: "ldap"
  19443. type: string
  19444. secretRef:
  19445. description: |-
  19446. SecretRef to a key in a Secret resource containing password for the LDAP
  19447. user used to authenticate with Vault using the LDAP authentication
  19448. method
  19449. properties:
  19450. key:
  19451. description: |-
  19452. A key in the referenced Secret.
  19453. Some instances of this field may be defaulted, in others it may be required.
  19454. maxLength: 253
  19455. minLength: 1
  19456. pattern: ^[-._a-zA-Z0-9]+$
  19457. type: string
  19458. name:
  19459. description: The name of the Secret resource being referred to.
  19460. maxLength: 253
  19461. minLength: 1
  19462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19463. type: string
  19464. namespace:
  19465. description: |-
  19466. The namespace of the Secret resource being referred to.
  19467. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19468. maxLength: 63
  19469. minLength: 1
  19470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19471. type: string
  19472. type: object
  19473. username:
  19474. description: |-
  19475. Username is an LDAP username used to authenticate using the LDAP Vault
  19476. authentication method
  19477. type: string
  19478. required:
  19479. - path
  19480. - username
  19481. type: object
  19482. namespace:
  19483. description: |-
  19484. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  19485. Namespaces is a set of features within Vault Enterprise that allows
  19486. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19487. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19488. This will default to Vault.Namespace field if set, or empty otherwise
  19489. type: string
  19490. tokenSecretRef:
  19491. description: TokenSecretRef authenticates with Vault by presenting a token.
  19492. properties:
  19493. key:
  19494. description: |-
  19495. A key in the referenced Secret.
  19496. Some instances of this field may be defaulted, in others it may be required.
  19497. maxLength: 253
  19498. minLength: 1
  19499. pattern: ^[-._a-zA-Z0-9]+$
  19500. type: string
  19501. name:
  19502. description: The name of the Secret resource being referred to.
  19503. maxLength: 253
  19504. minLength: 1
  19505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19506. type: string
  19507. namespace:
  19508. description: |-
  19509. The namespace of the Secret resource being referred to.
  19510. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19511. maxLength: 63
  19512. minLength: 1
  19513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19514. type: string
  19515. type: object
  19516. userPass:
  19517. description: UserPass authenticates with Vault by passing username/password pair
  19518. properties:
  19519. path:
  19520. default: userpass
  19521. description: |-
  19522. Path where the UserPassword authentication backend is mounted
  19523. in Vault, e.g: "userpass"
  19524. type: string
  19525. secretRef:
  19526. description: |-
  19527. SecretRef to a key in a Secret resource containing password for the
  19528. user used to authenticate with Vault using the UserPass authentication
  19529. method
  19530. properties:
  19531. key:
  19532. description: |-
  19533. A key in the referenced Secret.
  19534. Some instances of this field may be defaulted, in others it may be required.
  19535. maxLength: 253
  19536. minLength: 1
  19537. pattern: ^[-._a-zA-Z0-9]+$
  19538. type: string
  19539. name:
  19540. description: The name of the Secret resource being referred to.
  19541. maxLength: 253
  19542. minLength: 1
  19543. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19544. type: string
  19545. namespace:
  19546. description: |-
  19547. The namespace of the Secret resource being referred to.
  19548. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19549. maxLength: 63
  19550. minLength: 1
  19551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19552. type: string
  19553. type: object
  19554. username:
  19555. description: |-
  19556. Username is a username used to authenticate using the UserPass Vault
  19557. authentication method
  19558. type: string
  19559. required:
  19560. - path
  19561. - username
  19562. type: object
  19563. type: object
  19564. caBundle:
  19565. description: |-
  19566. PEM encoded CA bundle used to validate Vault server certificate. Only used
  19567. if the Server URL is using HTTPS protocol. This parameter is ignored for
  19568. plain HTTP protocol connection. If not set the system root certificates
  19569. are used to validate the TLS connection.
  19570. format: byte
  19571. type: string
  19572. caProvider:
  19573. description: The provider for the CA bundle to use to validate Vault server certificate.
  19574. properties:
  19575. key:
  19576. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19577. maxLength: 253
  19578. minLength: 1
  19579. pattern: ^[-._a-zA-Z0-9]+$
  19580. type: string
  19581. name:
  19582. description: The name of the object located at the provider type.
  19583. maxLength: 253
  19584. minLength: 1
  19585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19586. type: string
  19587. namespace:
  19588. description: |-
  19589. The namespace the Provider type is in.
  19590. Can only be defined when used in a ClusterSecretStore.
  19591. maxLength: 63
  19592. minLength: 1
  19593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19594. type: string
  19595. type:
  19596. description: The type of provider to use such as "Secret", or "ConfigMap".
  19597. enum:
  19598. - Secret
  19599. - ConfigMap
  19600. type: string
  19601. required:
  19602. - name
  19603. - type
  19604. type: object
  19605. checkAndSet:
  19606. description: |-
  19607. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  19608. Only applies to Vault KV v2 stores. When enabled, write operations must include
  19609. the current version of the secret to prevent unintentional overwrites.
  19610. properties:
  19611. required:
  19612. description: |-
  19613. Required when true, all write operations must include a check-and-set parameter.
  19614. This helps prevent unintentional overwrites of secrets.
  19615. type: boolean
  19616. type: object
  19617. forwardInconsistent:
  19618. description: |-
  19619. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  19620. leader instead of simply retrying within a loop. This can increase performance if
  19621. the option is enabled serverside.
  19622. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  19623. type: boolean
  19624. headers:
  19625. additionalProperties:
  19626. type: string
  19627. description: Headers to be added in Vault request
  19628. type: object
  19629. namespace:
  19630. description: |-
  19631. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  19632. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19633. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19634. type: string
  19635. path:
  19636. description: |-
  19637. Path is the mount path of the Vault KV backend endpoint, e.g:
  19638. "secret". The v2 KV secret engine version specific "/data" path suffix
  19639. for fetching secrets from Vault is optional and will be appended
  19640. if not present in specified path.
  19641. type: string
  19642. readYourWrites:
  19643. description: |-
  19644. ReadYourWrites ensures isolated read-after-write semantics by
  19645. providing discovered cluster replication states in each request.
  19646. More information about eventual consistency in Vault can be found here
  19647. https://www.vaultproject.io/docs/enterprise/consistency
  19648. type: boolean
  19649. server:
  19650. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  19651. type: string
  19652. tls:
  19653. description: |-
  19654. The configuration used for client side related TLS communication, when the Vault server
  19655. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  19656. This parameter is ignored for plain HTTP protocol connection.
  19657. It's worth noting this configuration is different from the "TLS certificates auth method",
  19658. which is available under the `auth.cert` section.
  19659. properties:
  19660. certSecretRef:
  19661. description: |-
  19662. CertSecretRef is a certificate added to the transport layer
  19663. when communicating with the Vault server.
  19664. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  19665. properties:
  19666. key:
  19667. description: |-
  19668. A key in the referenced Secret.
  19669. Some instances of this field may be defaulted, in others it may be required.
  19670. maxLength: 253
  19671. minLength: 1
  19672. pattern: ^[-._a-zA-Z0-9]+$
  19673. type: string
  19674. name:
  19675. description: The name of the Secret resource being referred to.
  19676. maxLength: 253
  19677. minLength: 1
  19678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19679. type: string
  19680. namespace:
  19681. description: |-
  19682. The namespace of the Secret resource being referred to.
  19683. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19684. maxLength: 63
  19685. minLength: 1
  19686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19687. type: string
  19688. type: object
  19689. keySecretRef:
  19690. description: |-
  19691. KeySecretRef to a key in a Secret resource containing client private key
  19692. added to the transport layer when communicating with the Vault server.
  19693. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  19694. properties:
  19695. key:
  19696. description: |-
  19697. A key in the referenced Secret.
  19698. Some instances of this field may be defaulted, in others it may be required.
  19699. maxLength: 253
  19700. minLength: 1
  19701. pattern: ^[-._a-zA-Z0-9]+$
  19702. type: string
  19703. name:
  19704. description: The name of the Secret resource being referred to.
  19705. maxLength: 253
  19706. minLength: 1
  19707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19708. type: string
  19709. namespace:
  19710. description: |-
  19711. The namespace of the Secret resource being referred to.
  19712. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19713. maxLength: 63
  19714. minLength: 1
  19715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19716. type: string
  19717. type: object
  19718. type: object
  19719. version:
  19720. default: v2
  19721. description: |-
  19722. Version is the Vault KV secret engine version. This can be either "v1" or
  19723. "v2". Version defaults to "v2".
  19724. enum:
  19725. - v1
  19726. - v2
  19727. type: string
  19728. required:
  19729. - server
  19730. type: object
  19731. volcengine:
  19732. description: Volcengine configures this store to sync secrets using the Volcengine provider
  19733. properties:
  19734. auth:
  19735. description: |-
  19736. Auth defines the authentication method to use.
  19737. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  19738. properties:
  19739. secretRef:
  19740. description: |-
  19741. SecretRef defines the static credentials to use for authentication.
  19742. If not set, IRSA is used.
  19743. properties:
  19744. accessKeyID:
  19745. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  19746. properties:
  19747. key:
  19748. description: |-
  19749. A key in the referenced Secret.
  19750. Some instances of this field may be defaulted, in others it may be required.
  19751. maxLength: 253
  19752. minLength: 1
  19753. pattern: ^[-._a-zA-Z0-9]+$
  19754. type: string
  19755. name:
  19756. description: The name of the Secret resource being referred to.
  19757. maxLength: 253
  19758. minLength: 1
  19759. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19760. type: string
  19761. namespace:
  19762. description: |-
  19763. The namespace of the Secret resource being referred to.
  19764. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19765. maxLength: 63
  19766. minLength: 1
  19767. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19768. type: string
  19769. type: object
  19770. secretAccessKey:
  19771. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  19772. properties:
  19773. key:
  19774. description: |-
  19775. A key in the referenced Secret.
  19776. Some instances of this field may be defaulted, in others it may be required.
  19777. maxLength: 253
  19778. minLength: 1
  19779. pattern: ^[-._a-zA-Z0-9]+$
  19780. type: string
  19781. name:
  19782. description: The name of the Secret resource being referred to.
  19783. maxLength: 253
  19784. minLength: 1
  19785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19786. type: string
  19787. namespace:
  19788. description: |-
  19789. The namespace of the Secret resource being referred to.
  19790. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19791. maxLength: 63
  19792. minLength: 1
  19793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19794. type: string
  19795. type: object
  19796. token:
  19797. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  19798. properties:
  19799. key:
  19800. description: |-
  19801. A key in the referenced Secret.
  19802. Some instances of this field may be defaulted, in others it may be required.
  19803. maxLength: 253
  19804. minLength: 1
  19805. pattern: ^[-._a-zA-Z0-9]+$
  19806. type: string
  19807. name:
  19808. description: The name of the Secret resource being referred to.
  19809. maxLength: 253
  19810. minLength: 1
  19811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19812. type: string
  19813. namespace:
  19814. description: |-
  19815. The namespace of the Secret resource being referred to.
  19816. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19817. maxLength: 63
  19818. minLength: 1
  19819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19820. type: string
  19821. type: object
  19822. required:
  19823. - accessKeyID
  19824. - secretAccessKey
  19825. type: object
  19826. type: object
  19827. region:
  19828. description: Region specifies the Volcengine region to connect to.
  19829. type: string
  19830. required:
  19831. - region
  19832. type: object
  19833. webhook:
  19834. description: Webhook configures this store to sync secrets using a generic templated webhook
  19835. properties:
  19836. auth:
  19837. description: Auth specifies a authorization protocol. Only one protocol may be set.
  19838. maxProperties: 1
  19839. minProperties: 1
  19840. properties:
  19841. ntlm:
  19842. description: NTLMProtocol configures the store to use NTLM for auth
  19843. properties:
  19844. passwordSecret:
  19845. description: |-
  19846. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19847. In some instances, `key` is a required field.
  19848. properties:
  19849. key:
  19850. description: |-
  19851. A key in the referenced Secret.
  19852. Some instances of this field may be defaulted, in others it may be required.
  19853. maxLength: 253
  19854. minLength: 1
  19855. pattern: ^[-._a-zA-Z0-9]+$
  19856. type: string
  19857. name:
  19858. description: The name of the Secret resource being referred to.
  19859. maxLength: 253
  19860. minLength: 1
  19861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19862. type: string
  19863. namespace:
  19864. description: |-
  19865. The namespace of the Secret resource being referred to.
  19866. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19867. maxLength: 63
  19868. minLength: 1
  19869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19870. type: string
  19871. type: object
  19872. usernameSecret:
  19873. description: |-
  19874. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19875. In some instances, `key` is a required field.
  19876. properties:
  19877. key:
  19878. description: |-
  19879. A key in the referenced Secret.
  19880. Some instances of this field may be defaulted, in others it may be required.
  19881. maxLength: 253
  19882. minLength: 1
  19883. pattern: ^[-._a-zA-Z0-9]+$
  19884. type: string
  19885. name:
  19886. description: The name of the Secret resource being referred to.
  19887. maxLength: 253
  19888. minLength: 1
  19889. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19890. type: string
  19891. namespace:
  19892. description: |-
  19893. The namespace of the Secret resource being referred to.
  19894. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19895. maxLength: 63
  19896. minLength: 1
  19897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19898. type: string
  19899. type: object
  19900. required:
  19901. - passwordSecret
  19902. - usernameSecret
  19903. type: object
  19904. type: object
  19905. body:
  19906. description: Body
  19907. type: string
  19908. caBundle:
  19909. description: |-
  19910. PEM encoded CA bundle used to validate webhook server certificate. Only used
  19911. if the Server URL is using HTTPS protocol. This parameter is ignored for
  19912. plain HTTP protocol connection. If not set the system root certificates
  19913. are used to validate the TLS connection.
  19914. format: byte
  19915. type: string
  19916. caProvider:
  19917. description: The provider for the CA bundle to use to validate webhook server certificate.
  19918. properties:
  19919. key:
  19920. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19921. maxLength: 253
  19922. minLength: 1
  19923. pattern: ^[-._a-zA-Z0-9]+$
  19924. type: string
  19925. name:
  19926. description: The name of the object located at the provider type.
  19927. maxLength: 253
  19928. minLength: 1
  19929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19930. type: string
  19931. namespace:
  19932. description: The namespace the Provider type is in.
  19933. maxLength: 63
  19934. minLength: 1
  19935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19936. type: string
  19937. type:
  19938. description: The type of provider to use such as "Secret", or "ConfigMap".
  19939. enum:
  19940. - Secret
  19941. - ConfigMap
  19942. type: string
  19943. required:
  19944. - name
  19945. - type
  19946. type: object
  19947. headers:
  19948. additionalProperties:
  19949. type: string
  19950. description: Headers
  19951. type: object
  19952. method:
  19953. description: Webhook Method
  19954. type: string
  19955. result:
  19956. description: Result formatting
  19957. properties:
  19958. jsonPath:
  19959. description: Json path of return value
  19960. type: string
  19961. type: object
  19962. secrets:
  19963. description: |-
  19964. Secrets to fill in templates
  19965. These secrets will be passed to the templating function as key value pairs under the given name
  19966. items:
  19967. description: WebhookSecret defines a secret that will be passed to the webhook request.
  19968. properties:
  19969. name:
  19970. description: Name of this secret in templates
  19971. type: string
  19972. secretRef:
  19973. description: Secret ref to fill in credentials
  19974. properties:
  19975. key:
  19976. description: |-
  19977. A key in the referenced Secret.
  19978. Some instances of this field may be defaulted, in others it may be required.
  19979. maxLength: 253
  19980. minLength: 1
  19981. pattern: ^[-._a-zA-Z0-9]+$
  19982. type: string
  19983. name:
  19984. description: The name of the Secret resource being referred to.
  19985. maxLength: 253
  19986. minLength: 1
  19987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19988. type: string
  19989. namespace:
  19990. description: |-
  19991. The namespace of the Secret resource being referred to.
  19992. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19993. maxLength: 63
  19994. minLength: 1
  19995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19996. type: string
  19997. type: object
  19998. required:
  19999. - name
  20000. - secretRef
  20001. type: object
  20002. type: array
  20003. timeout:
  20004. description: Timeout
  20005. type: string
  20006. url:
  20007. description: Webhook url to call
  20008. type: string
  20009. required:
  20010. - url
  20011. type: object
  20012. yandexcertificatemanager:
  20013. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  20014. properties:
  20015. apiEndpoint:
  20016. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20017. type: string
  20018. auth:
  20019. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20020. properties:
  20021. authorizedKeySecretRef:
  20022. description: The authorized key used for authentication
  20023. properties:
  20024. key:
  20025. description: |-
  20026. A key in the referenced Secret.
  20027. Some instances of this field may be defaulted, in others it may be required.
  20028. maxLength: 253
  20029. minLength: 1
  20030. pattern: ^[-._a-zA-Z0-9]+$
  20031. type: string
  20032. name:
  20033. description: The name of the Secret resource being referred to.
  20034. maxLength: 253
  20035. minLength: 1
  20036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20037. type: string
  20038. namespace:
  20039. description: |-
  20040. The namespace of the Secret resource being referred to.
  20041. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20042. maxLength: 63
  20043. minLength: 1
  20044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20045. type: string
  20046. type: object
  20047. type: object
  20048. caProvider:
  20049. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20050. properties:
  20051. certSecretRef:
  20052. description: |-
  20053. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20054. In some instances, `key` is a required field.
  20055. properties:
  20056. key:
  20057. description: |-
  20058. A key in the referenced Secret.
  20059. Some instances of this field may be defaulted, in others it may be required.
  20060. maxLength: 253
  20061. minLength: 1
  20062. pattern: ^[-._a-zA-Z0-9]+$
  20063. type: string
  20064. name:
  20065. description: The name of the Secret resource being referred to.
  20066. maxLength: 253
  20067. minLength: 1
  20068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20069. type: string
  20070. namespace:
  20071. description: |-
  20072. The namespace of the Secret resource being referred to.
  20073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20074. maxLength: 63
  20075. minLength: 1
  20076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20077. type: string
  20078. type: object
  20079. type: object
  20080. fetching:
  20081. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  20082. maxProperties: 1
  20083. minProperties: 1
  20084. properties:
  20085. byID:
  20086. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20087. type: object
  20088. byName:
  20089. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20090. properties:
  20091. folderID:
  20092. description: The folder to fetch secrets from
  20093. type: string
  20094. required:
  20095. - folderID
  20096. type: object
  20097. type: object
  20098. required:
  20099. - auth
  20100. type: object
  20101. yandexlockbox:
  20102. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  20103. properties:
  20104. apiEndpoint:
  20105. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20106. type: string
  20107. auth:
  20108. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20109. properties:
  20110. authorizedKeySecretRef:
  20111. description: The authorized key used for authentication
  20112. properties:
  20113. key:
  20114. description: |-
  20115. A key in the referenced Secret.
  20116. Some instances of this field may be defaulted, in others it may be required.
  20117. maxLength: 253
  20118. minLength: 1
  20119. pattern: ^[-._a-zA-Z0-9]+$
  20120. type: string
  20121. name:
  20122. description: The name of the Secret resource being referred to.
  20123. maxLength: 253
  20124. minLength: 1
  20125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20126. type: string
  20127. namespace:
  20128. description: |-
  20129. The namespace of the Secret resource being referred to.
  20130. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20131. maxLength: 63
  20132. minLength: 1
  20133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20134. type: string
  20135. type: object
  20136. type: object
  20137. caProvider:
  20138. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20139. properties:
  20140. certSecretRef:
  20141. description: |-
  20142. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20143. In some instances, `key` is a required field.
  20144. properties:
  20145. key:
  20146. description: |-
  20147. A key in the referenced Secret.
  20148. Some instances of this field may be defaulted, in others it may be required.
  20149. maxLength: 253
  20150. minLength: 1
  20151. pattern: ^[-._a-zA-Z0-9]+$
  20152. type: string
  20153. name:
  20154. description: The name of the Secret resource being referred to.
  20155. maxLength: 253
  20156. minLength: 1
  20157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20158. type: string
  20159. namespace:
  20160. description: |-
  20161. The namespace of the Secret resource being referred to.
  20162. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20163. maxLength: 63
  20164. minLength: 1
  20165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20166. type: string
  20167. type: object
  20168. type: object
  20169. fetching:
  20170. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  20171. maxProperties: 1
  20172. minProperties: 1
  20173. properties:
  20174. byID:
  20175. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20176. type: object
  20177. byName:
  20178. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20179. properties:
  20180. folderID:
  20181. description: The folder to fetch secrets from
  20182. type: string
  20183. required:
  20184. - folderID
  20185. type: object
  20186. type: object
  20187. required:
  20188. - auth
  20189. type: object
  20190. type: object
  20191. refreshInterval:
  20192. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  20193. type: integer
  20194. retrySettings:
  20195. description: Used to configure HTTP retries on failures.
  20196. properties:
  20197. maxRetries:
  20198. format: int32
  20199. type: integer
  20200. retryInterval:
  20201. type: string
  20202. type: object
  20203. required:
  20204. - provider
  20205. type: object
  20206. status:
  20207. description: SecretStoreStatus defines the observed state of the SecretStore.
  20208. properties:
  20209. capabilities:
  20210. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  20211. type: string
  20212. conditions:
  20213. items:
  20214. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  20215. properties:
  20216. lastTransitionTime:
  20217. format: date-time
  20218. type: string
  20219. message:
  20220. type: string
  20221. reason:
  20222. type: string
  20223. status:
  20224. type: string
  20225. type:
  20226. description: SecretStoreConditionType represents the condition of the SecretStore.
  20227. type: string
  20228. required:
  20229. - status
  20230. - type
  20231. type: object
  20232. type: array
  20233. type: object
  20234. type: object
  20235. served: true
  20236. storage: true
  20237. subresources:
  20238. status: {}
  20239. - additionalPrinterColumns:
  20240. - jsonPath: .metadata.creationTimestamp
  20241. name: AGE
  20242. type: date
  20243. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  20244. name: Status
  20245. type: string
  20246. - jsonPath: .status.capabilities
  20247. name: Capabilities
  20248. type: string
  20249. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20250. name: Ready
  20251. type: string
  20252. deprecated: true
  20253. name: v1beta1
  20254. schema:
  20255. openAPIV3Schema:
  20256. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  20257. properties:
  20258. apiVersion:
  20259. description: |-
  20260. APIVersion defines the versioned schema of this representation of an object.
  20261. Servers should convert recognized schemas to the latest internal value, and
  20262. may reject unrecognized values.
  20263. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  20264. type: string
  20265. kind:
  20266. description: |-
  20267. Kind is a string value representing the REST resource this object represents.
  20268. Servers may infer this from the endpoint the client submits requests to.
  20269. Cannot be updated.
  20270. In CamelCase.
  20271. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  20272. type: string
  20273. metadata:
  20274. type: object
  20275. spec:
  20276. description: SecretStoreSpec defines the desired state of SecretStore.
  20277. properties:
  20278. conditions:
  20279. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  20280. items:
  20281. description: |-
  20282. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  20283. for a ClusterSecretStore instance.
  20284. properties:
  20285. namespaceRegexes:
  20286. description: Choose namespaces by using regex matching
  20287. items:
  20288. type: string
  20289. type: array
  20290. namespaceSelector:
  20291. description: Choose namespace using a labelSelector
  20292. properties:
  20293. matchExpressions:
  20294. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  20295. items:
  20296. description: |-
  20297. A label selector requirement is a selector that contains values, a key, and an operator that
  20298. relates the key and values.
  20299. properties:
  20300. key:
  20301. description: key is the label key that the selector applies to.
  20302. type: string
  20303. operator:
  20304. description: |-
  20305. operator represents a key's relationship to a set of values.
  20306. Valid operators are In, NotIn, Exists and DoesNotExist.
  20307. type: string
  20308. values:
  20309. description: |-
  20310. values is an array of string values. If the operator is In or NotIn,
  20311. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  20312. the values array must be empty. This array is replaced during a strategic
  20313. merge patch.
  20314. items:
  20315. type: string
  20316. type: array
  20317. x-kubernetes-list-type: atomic
  20318. required:
  20319. - key
  20320. - operator
  20321. type: object
  20322. type: array
  20323. x-kubernetes-list-type: atomic
  20324. matchLabels:
  20325. additionalProperties:
  20326. type: string
  20327. description: |-
  20328. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  20329. map is equivalent to an element of matchExpressions, whose key field is "key", the
  20330. operator is "In", and the values array contains only "value". The requirements are ANDed.
  20331. type: object
  20332. type: object
  20333. x-kubernetes-map-type: atomic
  20334. namespaces:
  20335. description: Choose namespaces by name
  20336. items:
  20337. maxLength: 63
  20338. minLength: 1
  20339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20340. type: string
  20341. type: array
  20342. type: object
  20343. type: array
  20344. controller:
  20345. description: |-
  20346. Used to select the correct ESO controller (think: ingress.ingressClassName)
  20347. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  20348. type: string
  20349. provider:
  20350. description: Used to configure the provider. Only one provider may be set
  20351. maxProperties: 1
  20352. minProperties: 1
  20353. properties:
  20354. akeyless:
  20355. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  20356. properties:
  20357. akeylessGWApiURL:
  20358. description: Akeyless GW API Url from which the secrets to be fetched from.
  20359. type: string
  20360. authSecretRef:
  20361. description: Auth configures how the operator authenticates with Akeyless.
  20362. properties:
  20363. kubernetesAuth:
  20364. description: |-
  20365. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  20366. token stored in the named Secret resource.
  20367. properties:
  20368. accessID:
  20369. description: the Akeyless Kubernetes auth-method access-id
  20370. type: string
  20371. k8sConfName:
  20372. description: Kubernetes-auth configuration name in Akeyless-Gateway
  20373. type: string
  20374. secretRef:
  20375. description: |-
  20376. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20377. for authenticating with Akeyless. If a name is specified without a key,
  20378. `token` is the default. If one is not specified, the one bound to
  20379. the controller will be used.
  20380. properties:
  20381. key:
  20382. description: |-
  20383. A key in the referenced Secret.
  20384. Some instances of this field may be defaulted, in others it may be required.
  20385. maxLength: 253
  20386. minLength: 1
  20387. pattern: ^[-._a-zA-Z0-9]+$
  20388. type: string
  20389. name:
  20390. description: The name of the Secret resource being referred to.
  20391. maxLength: 253
  20392. minLength: 1
  20393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20394. type: string
  20395. namespace:
  20396. description: |-
  20397. The namespace of the Secret resource being referred to.
  20398. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20399. maxLength: 63
  20400. minLength: 1
  20401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20402. type: string
  20403. type: object
  20404. serviceAccountRef:
  20405. description: |-
  20406. Optional service account field containing the name of a kubernetes ServiceAccount.
  20407. If the service account is specified, the service account secret token JWT will be used
  20408. for authenticating with Akeyless. If the service account selector is not supplied,
  20409. the secretRef will be used instead.
  20410. properties:
  20411. audiences:
  20412. description: |-
  20413. Audience specifies the `aud` claim for the service account token
  20414. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20415. then this audiences will be appended to the list
  20416. items:
  20417. type: string
  20418. type: array
  20419. name:
  20420. description: The name of the ServiceAccount resource being referred to.
  20421. maxLength: 253
  20422. minLength: 1
  20423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20424. type: string
  20425. namespace:
  20426. description: |-
  20427. Namespace of the resource being referred to.
  20428. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20429. maxLength: 63
  20430. minLength: 1
  20431. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20432. type: string
  20433. required:
  20434. - name
  20435. type: object
  20436. required:
  20437. - accessID
  20438. - k8sConfName
  20439. type: object
  20440. secretRef:
  20441. description: |-
  20442. Reference to a Secret that contains the details
  20443. to authenticate with Akeyless.
  20444. properties:
  20445. accessID:
  20446. description: The SecretAccessID is used for authentication
  20447. properties:
  20448. key:
  20449. description: |-
  20450. A key in the referenced Secret.
  20451. Some instances of this field may be defaulted, in others it may be required.
  20452. maxLength: 253
  20453. minLength: 1
  20454. pattern: ^[-._a-zA-Z0-9]+$
  20455. type: string
  20456. name:
  20457. description: The name of the Secret resource being referred to.
  20458. maxLength: 253
  20459. minLength: 1
  20460. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20461. type: string
  20462. namespace:
  20463. description: |-
  20464. The namespace of the Secret resource being referred to.
  20465. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20466. maxLength: 63
  20467. minLength: 1
  20468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20469. type: string
  20470. type: object
  20471. accessType:
  20472. description: |-
  20473. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20474. In some instances, `key` is a required field.
  20475. properties:
  20476. key:
  20477. description: |-
  20478. A key in the referenced Secret.
  20479. Some instances of this field may be defaulted, in others it may be required.
  20480. maxLength: 253
  20481. minLength: 1
  20482. pattern: ^[-._a-zA-Z0-9]+$
  20483. type: string
  20484. name:
  20485. description: The name of the Secret resource being referred to.
  20486. maxLength: 253
  20487. minLength: 1
  20488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20489. type: string
  20490. namespace:
  20491. description: |-
  20492. The namespace of the Secret resource being referred to.
  20493. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20494. maxLength: 63
  20495. minLength: 1
  20496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20497. type: string
  20498. type: object
  20499. accessTypeParam:
  20500. description: |-
  20501. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20502. In some instances, `key` is a required field.
  20503. properties:
  20504. key:
  20505. description: |-
  20506. A key in the referenced Secret.
  20507. Some instances of this field may be defaulted, in others it may be required.
  20508. maxLength: 253
  20509. minLength: 1
  20510. pattern: ^[-._a-zA-Z0-9]+$
  20511. type: string
  20512. name:
  20513. description: The name of the Secret resource being referred to.
  20514. maxLength: 253
  20515. minLength: 1
  20516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20517. type: string
  20518. namespace:
  20519. description: |-
  20520. The namespace of the Secret resource being referred to.
  20521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20522. maxLength: 63
  20523. minLength: 1
  20524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20525. type: string
  20526. type: object
  20527. type: object
  20528. type: object
  20529. caBundle:
  20530. description: |-
  20531. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  20532. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  20533. are used to validate the TLS connection.
  20534. format: byte
  20535. type: string
  20536. caProvider:
  20537. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  20538. properties:
  20539. key:
  20540. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20541. maxLength: 253
  20542. minLength: 1
  20543. pattern: ^[-._a-zA-Z0-9]+$
  20544. type: string
  20545. name:
  20546. description: The name of the object located at the provider type.
  20547. maxLength: 253
  20548. minLength: 1
  20549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20550. type: string
  20551. namespace:
  20552. description: |-
  20553. The namespace the Provider type is in.
  20554. Can only be defined when used in a ClusterSecretStore.
  20555. maxLength: 63
  20556. minLength: 1
  20557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20558. type: string
  20559. type:
  20560. description: The type of provider to use such as "Secret", or "ConfigMap".
  20561. enum:
  20562. - Secret
  20563. - ConfigMap
  20564. type: string
  20565. required:
  20566. - name
  20567. - type
  20568. type: object
  20569. required:
  20570. - akeylessGWApiURL
  20571. - authSecretRef
  20572. type: object
  20573. alibaba:
  20574. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  20575. properties:
  20576. auth:
  20577. description: AlibabaAuth contains a secretRef for credentials.
  20578. properties:
  20579. rrsa:
  20580. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  20581. properties:
  20582. oidcProviderArn:
  20583. type: string
  20584. oidcTokenFilePath:
  20585. type: string
  20586. roleArn:
  20587. type: string
  20588. sessionName:
  20589. type: string
  20590. required:
  20591. - oidcProviderArn
  20592. - oidcTokenFilePath
  20593. - roleArn
  20594. - sessionName
  20595. type: object
  20596. secretRef:
  20597. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  20598. properties:
  20599. accessKeyIDSecretRef:
  20600. description: The AccessKeyID is used for authentication
  20601. properties:
  20602. key:
  20603. description: |-
  20604. A key in the referenced Secret.
  20605. Some instances of this field may be defaulted, in others it may be required.
  20606. maxLength: 253
  20607. minLength: 1
  20608. pattern: ^[-._a-zA-Z0-9]+$
  20609. type: string
  20610. name:
  20611. description: The name of the Secret resource being referred to.
  20612. maxLength: 253
  20613. minLength: 1
  20614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20615. type: string
  20616. namespace:
  20617. description: |-
  20618. The namespace of the Secret resource being referred to.
  20619. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20620. maxLength: 63
  20621. minLength: 1
  20622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20623. type: string
  20624. type: object
  20625. accessKeySecretSecretRef:
  20626. description: The AccessKeySecret is used for authentication
  20627. properties:
  20628. key:
  20629. description: |-
  20630. A key in the referenced Secret.
  20631. Some instances of this field may be defaulted, in others it may be required.
  20632. maxLength: 253
  20633. minLength: 1
  20634. pattern: ^[-._a-zA-Z0-9]+$
  20635. type: string
  20636. name:
  20637. description: The name of the Secret resource being referred to.
  20638. maxLength: 253
  20639. minLength: 1
  20640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20641. type: string
  20642. namespace:
  20643. description: |-
  20644. The namespace of the Secret resource being referred to.
  20645. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20646. maxLength: 63
  20647. minLength: 1
  20648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20649. type: string
  20650. type: object
  20651. required:
  20652. - accessKeyIDSecretRef
  20653. - accessKeySecretSecretRef
  20654. type: object
  20655. type: object
  20656. regionID:
  20657. description: Alibaba Region to be used for the provider
  20658. type: string
  20659. required:
  20660. - auth
  20661. - regionID
  20662. type: object
  20663. aws:
  20664. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  20665. properties:
  20666. additionalRoles:
  20667. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  20668. items:
  20669. type: string
  20670. type: array
  20671. auth:
  20672. description: |-
  20673. Auth defines the information necessary to authenticate against AWS
  20674. if not set aws sdk will infer credentials from your environment
  20675. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  20676. properties:
  20677. jwt:
  20678. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  20679. properties:
  20680. serviceAccountRef:
  20681. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  20682. properties:
  20683. audiences:
  20684. description: |-
  20685. Audience specifies the `aud` claim for the service account token
  20686. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20687. then this audiences will be appended to the list
  20688. items:
  20689. type: string
  20690. type: array
  20691. name:
  20692. description: The name of the ServiceAccount resource being referred to.
  20693. maxLength: 253
  20694. minLength: 1
  20695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20696. type: string
  20697. namespace:
  20698. description: |-
  20699. Namespace of the resource being referred to.
  20700. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20701. maxLength: 63
  20702. minLength: 1
  20703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20704. type: string
  20705. required:
  20706. - name
  20707. type: object
  20708. type: object
  20709. secretRef:
  20710. description: |-
  20711. AWSAuthSecretRef holds secret references for AWS credentials
  20712. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  20713. properties:
  20714. accessKeyIDSecretRef:
  20715. description: The AccessKeyID is used for authentication
  20716. properties:
  20717. key:
  20718. description: |-
  20719. A key in the referenced Secret.
  20720. Some instances of this field may be defaulted, in others it may be required.
  20721. maxLength: 253
  20722. minLength: 1
  20723. pattern: ^[-._a-zA-Z0-9]+$
  20724. type: string
  20725. name:
  20726. description: The name of the Secret resource being referred to.
  20727. maxLength: 253
  20728. minLength: 1
  20729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20730. type: string
  20731. namespace:
  20732. description: |-
  20733. The namespace of the Secret resource being referred to.
  20734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20735. maxLength: 63
  20736. minLength: 1
  20737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20738. type: string
  20739. type: object
  20740. secretAccessKeySecretRef:
  20741. description: The SecretAccessKey is used for authentication
  20742. properties:
  20743. key:
  20744. description: |-
  20745. A key in the referenced Secret.
  20746. Some instances of this field may be defaulted, in others it may be required.
  20747. maxLength: 253
  20748. minLength: 1
  20749. pattern: ^[-._a-zA-Z0-9]+$
  20750. type: string
  20751. name:
  20752. description: The name of the Secret resource being referred to.
  20753. maxLength: 253
  20754. minLength: 1
  20755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20756. type: string
  20757. namespace:
  20758. description: |-
  20759. The namespace of the Secret resource being referred to.
  20760. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20761. maxLength: 63
  20762. minLength: 1
  20763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20764. type: string
  20765. type: object
  20766. sessionTokenSecretRef:
  20767. description: |-
  20768. The SessionToken used for authentication
  20769. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  20770. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  20771. properties:
  20772. key:
  20773. description: |-
  20774. A key in the referenced Secret.
  20775. Some instances of this field may be defaulted, in others it may be required.
  20776. maxLength: 253
  20777. minLength: 1
  20778. pattern: ^[-._a-zA-Z0-9]+$
  20779. type: string
  20780. name:
  20781. description: The name of the Secret resource being referred to.
  20782. maxLength: 253
  20783. minLength: 1
  20784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20785. type: string
  20786. namespace:
  20787. description: |-
  20788. The namespace of the Secret resource being referred to.
  20789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20790. maxLength: 63
  20791. minLength: 1
  20792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20793. type: string
  20794. type: object
  20795. type: object
  20796. type: object
  20797. externalID:
  20798. description: AWS External ID set on assumed IAM roles
  20799. type: string
  20800. prefix:
  20801. description: Prefix adds a prefix to all retrieved values.
  20802. type: string
  20803. region:
  20804. description: AWS Region to be used for the provider
  20805. type: string
  20806. role:
  20807. description: Role is a Role ARN which the provider will assume
  20808. type: string
  20809. secretsManager:
  20810. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  20811. properties:
  20812. forceDeleteWithoutRecovery:
  20813. description: |-
  20814. Specifies whether to delete the secret without any recovery window. You
  20815. can't use both this parameter and RecoveryWindowInDays in the same call.
  20816. If you don't use either, then by default Secrets Manager uses a 30 day
  20817. recovery window.
  20818. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  20819. type: boolean
  20820. recoveryWindowInDays:
  20821. description: |-
  20822. The number of days from 7 to 30 that Secrets Manager waits before
  20823. permanently deleting the secret. You can't use both this parameter and
  20824. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  20825. then by default Secrets Manager uses a 30 day recovery window.
  20826. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  20827. format: int64
  20828. type: integer
  20829. type: object
  20830. service:
  20831. description: Service defines which service should be used to fetch the secrets
  20832. enum:
  20833. - SecretsManager
  20834. - ParameterStore
  20835. type: string
  20836. sessionTags:
  20837. description: AWS STS assume role session tags
  20838. items:
  20839. description: Tag defines a tag key and value for AWS resources.
  20840. properties:
  20841. key:
  20842. type: string
  20843. value:
  20844. type: string
  20845. required:
  20846. - key
  20847. - value
  20848. type: object
  20849. type: array
  20850. transitiveTagKeys:
  20851. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  20852. items:
  20853. type: string
  20854. type: array
  20855. required:
  20856. - region
  20857. - service
  20858. type: object
  20859. azurekv:
  20860. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  20861. properties:
  20862. authSecretRef:
  20863. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  20864. properties:
  20865. clientCertificate:
  20866. description: The Azure ClientCertificate of the service principle used for authentication.
  20867. properties:
  20868. key:
  20869. description: |-
  20870. A key in the referenced Secret.
  20871. Some instances of this field may be defaulted, in others it may be required.
  20872. maxLength: 253
  20873. minLength: 1
  20874. pattern: ^[-._a-zA-Z0-9]+$
  20875. type: string
  20876. name:
  20877. description: The name of the Secret resource being referred to.
  20878. maxLength: 253
  20879. minLength: 1
  20880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20881. type: string
  20882. namespace:
  20883. description: |-
  20884. The namespace of the Secret resource being referred to.
  20885. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20886. maxLength: 63
  20887. minLength: 1
  20888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20889. type: string
  20890. type: object
  20891. clientId:
  20892. description: The Azure clientId of the service principle or managed identity used for authentication.
  20893. properties:
  20894. key:
  20895. description: |-
  20896. A key in the referenced Secret.
  20897. Some instances of this field may be defaulted, in others it may be required.
  20898. maxLength: 253
  20899. minLength: 1
  20900. pattern: ^[-._a-zA-Z0-9]+$
  20901. type: string
  20902. name:
  20903. description: The name of the Secret resource being referred to.
  20904. maxLength: 253
  20905. minLength: 1
  20906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20907. type: string
  20908. namespace:
  20909. description: |-
  20910. The namespace of the Secret resource being referred to.
  20911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20912. maxLength: 63
  20913. minLength: 1
  20914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20915. type: string
  20916. type: object
  20917. clientSecret:
  20918. description: The Azure ClientSecret of the service principle used for authentication.
  20919. properties:
  20920. key:
  20921. description: |-
  20922. A key in the referenced Secret.
  20923. Some instances of this field may be defaulted, in others it may be required.
  20924. maxLength: 253
  20925. minLength: 1
  20926. pattern: ^[-._a-zA-Z0-9]+$
  20927. type: string
  20928. name:
  20929. description: The name of the Secret resource being referred to.
  20930. maxLength: 253
  20931. minLength: 1
  20932. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20933. type: string
  20934. namespace:
  20935. description: |-
  20936. The namespace of the Secret resource being referred to.
  20937. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20938. maxLength: 63
  20939. minLength: 1
  20940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20941. type: string
  20942. type: object
  20943. tenantId:
  20944. description: The Azure tenantId of the managed identity used for authentication.
  20945. properties:
  20946. key:
  20947. description: |-
  20948. A key in the referenced Secret.
  20949. Some instances of this field may be defaulted, in others it may be required.
  20950. maxLength: 253
  20951. minLength: 1
  20952. pattern: ^[-._a-zA-Z0-9]+$
  20953. type: string
  20954. name:
  20955. description: The name of the Secret resource being referred to.
  20956. maxLength: 253
  20957. minLength: 1
  20958. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20959. type: string
  20960. namespace:
  20961. description: |-
  20962. The namespace of the Secret resource being referred to.
  20963. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20964. maxLength: 63
  20965. minLength: 1
  20966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20967. type: string
  20968. type: object
  20969. type: object
  20970. authType:
  20971. default: ServicePrincipal
  20972. description: |-
  20973. Auth type defines how to authenticate to the keyvault service.
  20974. Valid values are:
  20975. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  20976. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  20977. enum:
  20978. - ServicePrincipal
  20979. - ManagedIdentity
  20980. - WorkloadIdentity
  20981. type: string
  20982. environmentType:
  20983. default: PublicCloud
  20984. description: |-
  20985. EnvironmentType specifies the Azure cloud environment endpoints to use for
  20986. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  20987. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  20988. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  20989. enum:
  20990. - PublicCloud
  20991. - USGovernmentCloud
  20992. - ChinaCloud
  20993. - GermanCloud
  20994. type: string
  20995. identityId:
  20996. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  20997. type: string
  20998. serviceAccountRef:
  20999. description: |-
  21000. ServiceAccountRef specified the service account
  21001. that should be used when authenticating with WorkloadIdentity.
  21002. properties:
  21003. audiences:
  21004. description: |-
  21005. Audience specifies the `aud` claim for the service account token
  21006. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21007. then this audiences will be appended to the list
  21008. items:
  21009. type: string
  21010. type: array
  21011. name:
  21012. description: The name of the ServiceAccount resource being referred to.
  21013. maxLength: 253
  21014. minLength: 1
  21015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21016. type: string
  21017. namespace:
  21018. description: |-
  21019. Namespace of the resource being referred to.
  21020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21021. maxLength: 63
  21022. minLength: 1
  21023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21024. type: string
  21025. required:
  21026. - name
  21027. type: object
  21028. tenantId:
  21029. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21030. type: string
  21031. vaultUrl:
  21032. description: Vault Url from which the secrets to be fetched from.
  21033. type: string
  21034. required:
  21035. - vaultUrl
  21036. type: object
  21037. beyondtrust:
  21038. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  21039. properties:
  21040. auth:
  21041. description: Auth configures how the operator authenticates with Beyondtrust.
  21042. properties:
  21043. apiKey:
  21044. description: APIKey If not provided then ClientID/ClientSecret become required.
  21045. properties:
  21046. secretRef:
  21047. description: SecretRef references a key in a secret that will be used as value.
  21048. properties:
  21049. key:
  21050. description: |-
  21051. A key in the referenced Secret.
  21052. Some instances of this field may be defaulted, in others it may be required.
  21053. maxLength: 253
  21054. minLength: 1
  21055. pattern: ^[-._a-zA-Z0-9]+$
  21056. type: string
  21057. name:
  21058. description: The name of the Secret resource being referred to.
  21059. maxLength: 253
  21060. minLength: 1
  21061. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21062. type: string
  21063. namespace:
  21064. description: |-
  21065. The namespace of the Secret resource being referred to.
  21066. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21067. maxLength: 63
  21068. minLength: 1
  21069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21070. type: string
  21071. type: object
  21072. value:
  21073. description: Value can be specified directly to set a value without using a secret.
  21074. type: string
  21075. type: object
  21076. certificate:
  21077. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  21078. properties:
  21079. secretRef:
  21080. description: SecretRef references a key in a secret that will be used as value.
  21081. properties:
  21082. key:
  21083. description: |-
  21084. A key in the referenced Secret.
  21085. Some instances of this field may be defaulted, in others it may be required.
  21086. maxLength: 253
  21087. minLength: 1
  21088. pattern: ^[-._a-zA-Z0-9]+$
  21089. type: string
  21090. name:
  21091. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  21105. value:
  21106. description: Value can be specified directly to set a value without using a secret.
  21107. type: string
  21108. type: object
  21109. certificateKey:
  21110. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  21111. properties:
  21112. secretRef:
  21113. description: SecretRef references a key in a secret that will be used as value.
  21114. properties:
  21115. key:
  21116. description: |-
  21117. A key in the referenced Secret.
  21118. Some instances of this field may be defaulted, in others it may be required.
  21119. maxLength: 253
  21120. minLength: 1
  21121. pattern: ^[-._a-zA-Z0-9]+$
  21122. type: string
  21123. name:
  21124. description: The name of the Secret resource being referred to.
  21125. maxLength: 253
  21126. minLength: 1
  21127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21128. type: string
  21129. namespace:
  21130. description: |-
  21131. The namespace of the Secret resource being referred to.
  21132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21133. maxLength: 63
  21134. minLength: 1
  21135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21136. type: string
  21137. type: object
  21138. value:
  21139. description: Value can be specified directly to set a value without using a secret.
  21140. type: string
  21141. type: object
  21142. clientId:
  21143. description: ClientID is the API OAuth Client ID.
  21144. properties:
  21145. secretRef:
  21146. description: SecretRef references a key in a secret that will be used as value.
  21147. properties:
  21148. key:
  21149. description: |-
  21150. A key in the referenced Secret.
  21151. Some instances of this field may be defaulted, in others it may be required.
  21152. maxLength: 253
  21153. minLength: 1
  21154. pattern: ^[-._a-zA-Z0-9]+$
  21155. type: string
  21156. name:
  21157. description: The name of the Secret resource being referred to.
  21158. maxLength: 253
  21159. minLength: 1
  21160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21161. type: string
  21162. namespace:
  21163. description: |-
  21164. The namespace of the Secret resource being referred to.
  21165. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21166. maxLength: 63
  21167. minLength: 1
  21168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21169. type: string
  21170. type: object
  21171. value:
  21172. description: Value can be specified directly to set a value without using a secret.
  21173. type: string
  21174. type: object
  21175. clientSecret:
  21176. description: ClientSecret is the API OAuth Client Secret.
  21177. properties:
  21178. secretRef:
  21179. description: SecretRef references a key in a secret that will be used as value.
  21180. properties:
  21181. key:
  21182. description: |-
  21183. A key in the referenced Secret.
  21184. Some instances of this field may be defaulted, in others it may be required.
  21185. maxLength: 253
  21186. minLength: 1
  21187. pattern: ^[-._a-zA-Z0-9]+$
  21188. type: string
  21189. name:
  21190. description: The name of the Secret resource being referred to.
  21191. maxLength: 253
  21192. minLength: 1
  21193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21194. type: string
  21195. namespace:
  21196. description: |-
  21197. The namespace of the Secret resource being referred to.
  21198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21199. maxLength: 63
  21200. minLength: 1
  21201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21202. type: string
  21203. type: object
  21204. value:
  21205. description: Value can be specified directly to set a value without using a secret.
  21206. type: string
  21207. type: object
  21208. type: object
  21209. server:
  21210. description: Auth configures how API server works.
  21211. properties:
  21212. apiUrl:
  21213. type: string
  21214. apiVersion:
  21215. type: string
  21216. clientTimeOutSeconds:
  21217. 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.
  21218. type: integer
  21219. decrypt:
  21220. default: true
  21221. 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.'
  21222. type: boolean
  21223. retrievalType:
  21224. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  21225. type: string
  21226. separator:
  21227. description: A character that separates the folder names.
  21228. type: string
  21229. verifyCA:
  21230. type: boolean
  21231. required:
  21232. - apiUrl
  21233. - verifyCA
  21234. type: object
  21235. required:
  21236. - auth
  21237. - server
  21238. type: object
  21239. bitwardensecretsmanager:
  21240. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  21241. properties:
  21242. apiURL:
  21243. type: string
  21244. auth:
  21245. description: |-
  21246. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  21247. Make sure that the token being used has permissions on the given secret.
  21248. properties:
  21249. secretRef:
  21250. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  21251. properties:
  21252. credentials:
  21253. description: AccessToken used for the bitwarden instance.
  21254. properties:
  21255. key:
  21256. description: |-
  21257. A key in the referenced Secret.
  21258. Some instances of this field may be defaulted, in others it may be required.
  21259. maxLength: 253
  21260. minLength: 1
  21261. pattern: ^[-._a-zA-Z0-9]+$
  21262. type: string
  21263. name:
  21264. description: The name of the Secret resource being referred to.
  21265. maxLength: 253
  21266. minLength: 1
  21267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21268. type: string
  21269. namespace:
  21270. description: |-
  21271. The namespace of the Secret resource being referred to.
  21272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21273. maxLength: 63
  21274. minLength: 1
  21275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21276. type: string
  21277. type: object
  21278. required:
  21279. - credentials
  21280. type: object
  21281. required:
  21282. - secretRef
  21283. type: object
  21284. bitwardenServerSDKURL:
  21285. type: string
  21286. caBundle:
  21287. description: |-
  21288. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  21289. can be performed.
  21290. type: string
  21291. caProvider:
  21292. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  21293. properties:
  21294. key:
  21295. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21296. maxLength: 253
  21297. minLength: 1
  21298. pattern: ^[-._a-zA-Z0-9]+$
  21299. type: string
  21300. name:
  21301. description: The name of the object located at the provider type.
  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 the Provider type is in.
  21309. Can only be defined when used in a ClusterSecretStore.
  21310. maxLength: 63
  21311. minLength: 1
  21312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21313. type: string
  21314. type:
  21315. description: The type of provider to use such as "Secret", or "ConfigMap".
  21316. enum:
  21317. - Secret
  21318. - ConfigMap
  21319. type: string
  21320. required:
  21321. - name
  21322. - type
  21323. type: object
  21324. identityURL:
  21325. type: string
  21326. organizationID:
  21327. description: OrganizationID determines which organization this secret store manages.
  21328. type: string
  21329. projectID:
  21330. description: ProjectID determines which project this secret store manages.
  21331. type: string
  21332. required:
  21333. - auth
  21334. - organizationID
  21335. - projectID
  21336. type: object
  21337. chef:
  21338. description: Chef configures this store to sync secrets with chef server
  21339. properties:
  21340. auth:
  21341. description: Auth defines the information necessary to authenticate against chef Server
  21342. properties:
  21343. secretRef:
  21344. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  21345. properties:
  21346. privateKeySecretRef:
  21347. description: SecretKey is the Signing Key in PEM format, used for authentication.
  21348. properties:
  21349. key:
  21350. description: |-
  21351. A key in the referenced Secret.
  21352. Some instances of this field may be defaulted, in others it may be required.
  21353. maxLength: 253
  21354. minLength: 1
  21355. pattern: ^[-._a-zA-Z0-9]+$
  21356. type: string
  21357. name:
  21358. description: The name of the Secret resource being referred to.
  21359. maxLength: 253
  21360. minLength: 1
  21361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21362. type: string
  21363. namespace:
  21364. description: |-
  21365. The namespace of the Secret resource being referred to.
  21366. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21367. maxLength: 63
  21368. minLength: 1
  21369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21370. type: string
  21371. type: object
  21372. required:
  21373. - privateKeySecretRef
  21374. type: object
  21375. required:
  21376. - secretRef
  21377. type: object
  21378. serverUrl:
  21379. 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 "/"
  21380. type: string
  21381. username:
  21382. description: UserName should be the user ID on the chef server
  21383. type: string
  21384. required:
  21385. - auth
  21386. - serverUrl
  21387. - username
  21388. type: object
  21389. cloudrusm:
  21390. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  21391. properties:
  21392. auth:
  21393. description: CSMAuth contains a secretRef for credentials.
  21394. properties:
  21395. secretRef:
  21396. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  21397. properties:
  21398. accessKeyIDSecretRef:
  21399. description: The AccessKeyID is used for authentication
  21400. properties:
  21401. key:
  21402. description: |-
  21403. A key in the referenced Secret.
  21404. Some instances of this field may be defaulted, in others it may be required.
  21405. maxLength: 253
  21406. minLength: 1
  21407. pattern: ^[-._a-zA-Z0-9]+$
  21408. type: string
  21409. name:
  21410. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  21424. accessKeySecretSecretRef:
  21425. description: The AccessKeySecret is used for authentication
  21426. properties:
  21427. key:
  21428. description: |-
  21429. A key in the referenced Secret.
  21430. Some instances of this field may be defaulted, in others it may be required.
  21431. maxLength: 253
  21432. minLength: 1
  21433. pattern: ^[-._a-zA-Z0-9]+$
  21434. type: string
  21435. name:
  21436. description: The name of the Secret resource being referred to.
  21437. maxLength: 253
  21438. minLength: 1
  21439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21440. type: string
  21441. namespace:
  21442. description: |-
  21443. The namespace of the Secret resource being referred to.
  21444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21445. maxLength: 63
  21446. minLength: 1
  21447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21448. type: string
  21449. type: object
  21450. required:
  21451. - accessKeyIDSecretRef
  21452. - accessKeySecretSecretRef
  21453. type: object
  21454. type: object
  21455. projectID:
  21456. description: ProjectID is the project, which the secrets are stored in.
  21457. type: string
  21458. required:
  21459. - auth
  21460. type: object
  21461. conjur:
  21462. description: Conjur configures this store to sync secrets using conjur provider
  21463. properties:
  21464. auth:
  21465. description: Defines authentication settings for connecting to Conjur.
  21466. properties:
  21467. apikey:
  21468. description: Authenticates with Conjur using an API key.
  21469. properties:
  21470. account:
  21471. description: Account is the Conjur organization account name.
  21472. type: string
  21473. apiKeyRef:
  21474. description: |-
  21475. A reference to a specific 'key' containing the Conjur API key
  21476. within a Secret resource. In some instances, `key` is a required field.
  21477. properties:
  21478. key:
  21479. description: |-
  21480. A key in the referenced Secret.
  21481. Some instances of this field may be defaulted, in others it may be required.
  21482. maxLength: 253
  21483. minLength: 1
  21484. pattern: ^[-._a-zA-Z0-9]+$
  21485. type: string
  21486. name:
  21487. description: The name of the Secret resource being referred to.
  21488. maxLength: 253
  21489. minLength: 1
  21490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21491. type: string
  21492. namespace:
  21493. description: |-
  21494. The namespace of the Secret resource being referred to.
  21495. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21496. maxLength: 63
  21497. minLength: 1
  21498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21499. type: string
  21500. type: object
  21501. userRef:
  21502. description: |-
  21503. A reference to a specific 'key' containing the Conjur username
  21504. within a Secret resource. In some instances, `key` is a required field.
  21505. properties:
  21506. key:
  21507. description: |-
  21508. A key in the referenced Secret.
  21509. Some instances of this field may be defaulted, in others it may be required.
  21510. maxLength: 253
  21511. minLength: 1
  21512. pattern: ^[-._a-zA-Z0-9]+$
  21513. type: string
  21514. name:
  21515. description: The name of the Secret resource being referred to.
  21516. maxLength: 253
  21517. minLength: 1
  21518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21519. type: string
  21520. namespace:
  21521. description: |-
  21522. The namespace of the Secret resource being referred to.
  21523. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21524. maxLength: 63
  21525. minLength: 1
  21526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21527. type: string
  21528. type: object
  21529. required:
  21530. - account
  21531. - apiKeyRef
  21532. - userRef
  21533. type: object
  21534. jwt:
  21535. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  21536. properties:
  21537. account:
  21538. description: Account is the Conjur organization account name.
  21539. type: string
  21540. hostId:
  21541. description: |-
  21542. Optional HostID for JWT authentication. This may be used depending
  21543. on how the Conjur JWT authenticator policy is configured.
  21544. type: string
  21545. secretRef:
  21546. description: |-
  21547. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  21548. authenticate with Conjur using the JWT authentication method.
  21549. properties:
  21550. key:
  21551. description: |-
  21552. A key in the referenced Secret.
  21553. Some instances of this field may be defaulted, in others it may be required.
  21554. maxLength: 253
  21555. minLength: 1
  21556. pattern: ^[-._a-zA-Z0-9]+$
  21557. type: string
  21558. name:
  21559. description: The name of the Secret resource being referred to.
  21560. maxLength: 253
  21561. minLength: 1
  21562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21563. type: string
  21564. namespace:
  21565. description: |-
  21566. The namespace of the Secret resource being referred to.
  21567. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21568. maxLength: 63
  21569. minLength: 1
  21570. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21571. type: string
  21572. type: object
  21573. serviceAccountRef:
  21574. description: |-
  21575. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  21576. a token for with the `TokenRequest` API.
  21577. properties:
  21578. audiences:
  21579. description: |-
  21580. Audience specifies the `aud` claim for the service account token
  21581. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21582. then this audiences will be appended to the list
  21583. items:
  21584. type: string
  21585. type: array
  21586. name:
  21587. description: The name of the ServiceAccount resource being referred to.
  21588. maxLength: 253
  21589. minLength: 1
  21590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21591. type: string
  21592. namespace:
  21593. description: |-
  21594. Namespace of the resource being referred to.
  21595. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21596. maxLength: 63
  21597. minLength: 1
  21598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21599. type: string
  21600. required:
  21601. - name
  21602. type: object
  21603. serviceID:
  21604. description: The conjur authn jwt webservice id
  21605. type: string
  21606. required:
  21607. - account
  21608. - serviceID
  21609. type: object
  21610. type: object
  21611. caBundle:
  21612. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  21613. type: string
  21614. caProvider:
  21615. description: |-
  21616. Used to provide custom certificate authority (CA) certificates
  21617. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  21618. that contains a PEM-encoded certificate.
  21619. properties:
  21620. key:
  21621. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21622. maxLength: 253
  21623. minLength: 1
  21624. pattern: ^[-._a-zA-Z0-9]+$
  21625. type: string
  21626. name:
  21627. description: The name of the object located at the provider type.
  21628. maxLength: 253
  21629. minLength: 1
  21630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21631. type: string
  21632. namespace:
  21633. description: |-
  21634. The namespace the Provider type is in.
  21635. Can only be defined when used in a ClusterSecretStore.
  21636. maxLength: 63
  21637. minLength: 1
  21638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21639. type: string
  21640. type:
  21641. description: The type of provider to use such as "Secret", or "ConfigMap".
  21642. enum:
  21643. - Secret
  21644. - ConfigMap
  21645. type: string
  21646. required:
  21647. - name
  21648. - type
  21649. type: object
  21650. url:
  21651. description: URL is the endpoint of the Conjur instance.
  21652. type: string
  21653. required:
  21654. - auth
  21655. - url
  21656. type: object
  21657. delinea:
  21658. description: |-
  21659. Delinea DevOps Secrets Vault
  21660. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  21661. properties:
  21662. clientId:
  21663. description: ClientID is the non-secret part of the credential.
  21664. properties:
  21665. secretRef:
  21666. description: SecretRef references a key in a secret that will be used as value.
  21667. properties:
  21668. key:
  21669. description: |-
  21670. A key in the referenced Secret.
  21671. Some instances of this field may be defaulted, in others it may be required.
  21672. maxLength: 253
  21673. minLength: 1
  21674. pattern: ^[-._a-zA-Z0-9]+$
  21675. type: string
  21676. name:
  21677. description: The name of the Secret resource being referred to.
  21678. maxLength: 253
  21679. minLength: 1
  21680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21681. type: string
  21682. namespace:
  21683. description: |-
  21684. The namespace of the Secret resource being referred to.
  21685. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21686. maxLength: 63
  21687. minLength: 1
  21688. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21689. type: string
  21690. type: object
  21691. value:
  21692. description: Value can be specified directly to set a value without using a secret.
  21693. type: string
  21694. type: object
  21695. clientSecret:
  21696. description: ClientSecret is the secret part of the credential.
  21697. properties:
  21698. secretRef:
  21699. description: SecretRef references a key in a secret that will be used as value.
  21700. properties:
  21701. key:
  21702. description: |-
  21703. A key in the referenced Secret.
  21704. Some instances of this field may be defaulted, in others it may be required.
  21705. maxLength: 253
  21706. minLength: 1
  21707. pattern: ^[-._a-zA-Z0-9]+$
  21708. type: string
  21709. name:
  21710. description: The name of the Secret resource being referred to.
  21711. maxLength: 253
  21712. minLength: 1
  21713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21714. type: string
  21715. namespace:
  21716. description: |-
  21717. The namespace of the Secret resource being referred to.
  21718. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21719. maxLength: 63
  21720. minLength: 1
  21721. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21722. type: string
  21723. type: object
  21724. value:
  21725. description: Value can be specified directly to set a value without using a secret.
  21726. type: string
  21727. type: object
  21728. tenant:
  21729. description: Tenant is the chosen hostname / site name.
  21730. type: string
  21731. tld:
  21732. description: |-
  21733. TLD is based on the server location that was chosen during provisioning.
  21734. If unset, defaults to "com".
  21735. type: string
  21736. urlTemplate:
  21737. description: |-
  21738. URLTemplate
  21739. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  21740. type: string
  21741. required:
  21742. - clientId
  21743. - clientSecret
  21744. - tenant
  21745. type: object
  21746. device42:
  21747. description: Device42 configures this store to sync secrets using the Device42 provider
  21748. properties:
  21749. auth:
  21750. description: Auth configures how secret-manager authenticates with a Device42 instance.
  21751. properties:
  21752. secretRef:
  21753. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  21754. properties:
  21755. credentials:
  21756. description: Username / Password is used for authentication.
  21757. properties:
  21758. key:
  21759. description: |-
  21760. A key in the referenced Secret.
  21761. Some instances of this field may be defaulted, in others it may be required.
  21762. maxLength: 253
  21763. minLength: 1
  21764. pattern: ^[-._a-zA-Z0-9]+$
  21765. type: string
  21766. name:
  21767. description: The name of the Secret resource being referred to.
  21768. maxLength: 253
  21769. minLength: 1
  21770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21771. type: string
  21772. namespace:
  21773. description: |-
  21774. The namespace of the Secret resource being referred to.
  21775. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21776. maxLength: 63
  21777. minLength: 1
  21778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21779. type: string
  21780. type: object
  21781. type: object
  21782. required:
  21783. - secretRef
  21784. type: object
  21785. host:
  21786. description: URL configures the Device42 instance URL.
  21787. type: string
  21788. required:
  21789. - auth
  21790. - host
  21791. type: object
  21792. doppler:
  21793. description: Doppler configures this store to sync secrets using the Doppler provider
  21794. properties:
  21795. auth:
  21796. description: Auth configures how the Operator authenticates with the Doppler API
  21797. properties:
  21798. secretRef:
  21799. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  21800. properties:
  21801. dopplerToken:
  21802. description: |-
  21803. The DopplerToken is used for authentication.
  21804. See https://docs.doppler.com/reference/api#authentication for auth token types.
  21805. The Key attribute defaults to dopplerToken if not specified.
  21806. properties:
  21807. key:
  21808. description: |-
  21809. A key in the referenced Secret.
  21810. Some instances of this field may be defaulted, in others it may be required.
  21811. maxLength: 253
  21812. minLength: 1
  21813. pattern: ^[-._a-zA-Z0-9]+$
  21814. type: string
  21815. name:
  21816. description: The name of the Secret resource being referred to.
  21817. maxLength: 253
  21818. minLength: 1
  21819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21820. type: string
  21821. namespace:
  21822. description: |-
  21823. The namespace of the Secret resource being referred to.
  21824. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21825. maxLength: 63
  21826. minLength: 1
  21827. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21828. type: string
  21829. type: object
  21830. required:
  21831. - dopplerToken
  21832. type: object
  21833. required:
  21834. - secretRef
  21835. type: object
  21836. config:
  21837. description: Doppler config (required if not using a Service Token)
  21838. type: string
  21839. format:
  21840. description: Format enables the downloading of secrets as a file (string)
  21841. enum:
  21842. - json
  21843. - dotnet-json
  21844. - env
  21845. - yaml
  21846. - docker
  21847. type: string
  21848. nameTransformer:
  21849. description: Environment variable compatible name transforms that change secret names to a different format
  21850. enum:
  21851. - upper-camel
  21852. - camel
  21853. - lower-snake
  21854. - tf-var
  21855. - dotnet-env
  21856. - lower-kebab
  21857. type: string
  21858. project:
  21859. description: Doppler project (required if not using a Service Token)
  21860. type: string
  21861. required:
  21862. - auth
  21863. type: object
  21864. fake:
  21865. description: Fake configures a store with static key/value pairs
  21866. properties:
  21867. data:
  21868. items:
  21869. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  21870. properties:
  21871. key:
  21872. type: string
  21873. value:
  21874. type: string
  21875. version:
  21876. type: string
  21877. required:
  21878. - key
  21879. - value
  21880. type: object
  21881. type: array
  21882. required:
  21883. - data
  21884. type: object
  21885. fortanix:
  21886. description: Fortanix configures this store to sync secrets using the Fortanix provider
  21887. properties:
  21888. apiKey:
  21889. description: APIKey is the API token to access SDKMS Applications.
  21890. properties:
  21891. secretRef:
  21892. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  21893. properties:
  21894. key:
  21895. description: |-
  21896. A key in the referenced Secret.
  21897. Some instances of this field may be defaulted, in others it may be required.
  21898. maxLength: 253
  21899. minLength: 1
  21900. pattern: ^[-._a-zA-Z0-9]+$
  21901. type: string
  21902. name:
  21903. description: The name of the Secret resource being referred to.
  21904. maxLength: 253
  21905. minLength: 1
  21906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21907. type: string
  21908. namespace:
  21909. description: |-
  21910. The namespace of the Secret resource being referred to.
  21911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21912. maxLength: 63
  21913. minLength: 1
  21914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21915. type: string
  21916. type: object
  21917. type: object
  21918. apiUrl:
  21919. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  21920. type: string
  21921. type: object
  21922. gcpsm:
  21923. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  21924. properties:
  21925. auth:
  21926. description: Auth defines the information necessary to authenticate against GCP
  21927. properties:
  21928. secretRef:
  21929. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  21930. properties:
  21931. secretAccessKeySecretRef:
  21932. description: The SecretAccessKey is used for authentication
  21933. properties:
  21934. key:
  21935. description: |-
  21936. A key in the referenced Secret.
  21937. Some instances of this field may be defaulted, in others it may be required.
  21938. maxLength: 253
  21939. minLength: 1
  21940. pattern: ^[-._a-zA-Z0-9]+$
  21941. type: string
  21942. name:
  21943. description: The name of the Secret resource being referred to.
  21944. maxLength: 253
  21945. minLength: 1
  21946. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21947. type: string
  21948. namespace:
  21949. description: |-
  21950. The namespace of the Secret resource being referred to.
  21951. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21952. maxLength: 63
  21953. minLength: 1
  21954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21955. type: string
  21956. type: object
  21957. type: object
  21958. workloadIdentity:
  21959. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  21960. properties:
  21961. clusterLocation:
  21962. description: |-
  21963. ClusterLocation is the location of the cluster
  21964. If not specified, it fetches information from the metadata server
  21965. type: string
  21966. clusterName:
  21967. description: |-
  21968. ClusterName is the name of the cluster
  21969. If not specified, it fetches information from the metadata server
  21970. type: string
  21971. clusterProjectID:
  21972. description: |-
  21973. ClusterProjectID is the project ID of the cluster
  21974. If not specified, it fetches information from the metadata server
  21975. type: string
  21976. serviceAccountRef:
  21977. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21978. properties:
  21979. audiences:
  21980. description: |-
  21981. Audience specifies the `aud` claim for the service account token
  21982. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21983. then this audiences will be appended to the list
  21984. items:
  21985. type: string
  21986. type: array
  21987. name:
  21988. description: The name of the ServiceAccount resource being referred to.
  21989. maxLength: 253
  21990. minLength: 1
  21991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21992. type: string
  21993. namespace:
  21994. description: |-
  21995. Namespace of the resource being referred to.
  21996. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21997. maxLength: 63
  21998. minLength: 1
  21999. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22000. type: string
  22001. required:
  22002. - name
  22003. type: object
  22004. required:
  22005. - serviceAccountRef
  22006. type: object
  22007. type: object
  22008. location:
  22009. description: Location optionally defines a location for a secret
  22010. type: string
  22011. projectID:
  22012. description: ProjectID project where secret is located
  22013. type: string
  22014. type: object
  22015. github:
  22016. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  22017. properties:
  22018. appID:
  22019. description: appID specifies the Github APP that will be used to authenticate the client
  22020. format: int64
  22021. type: integer
  22022. auth:
  22023. description: auth configures how secret-manager authenticates with a Github instance.
  22024. properties:
  22025. privateKey:
  22026. description: |-
  22027. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22028. In some instances, `key` is a required field.
  22029. properties:
  22030. key:
  22031. description: |-
  22032. A key in the referenced Secret.
  22033. Some instances of this field may be defaulted, in others it may be required.
  22034. maxLength: 253
  22035. minLength: 1
  22036. pattern: ^[-._a-zA-Z0-9]+$
  22037. type: string
  22038. name:
  22039. description: The name of the Secret resource being referred to.
  22040. maxLength: 253
  22041. minLength: 1
  22042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22043. type: string
  22044. namespace:
  22045. description: |-
  22046. The namespace of the Secret resource being referred to.
  22047. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22048. maxLength: 63
  22049. minLength: 1
  22050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22051. type: string
  22052. type: object
  22053. required:
  22054. - privateKey
  22055. type: object
  22056. environment:
  22057. description: environment will be used to fetch secrets from a particular environment within a github repository
  22058. type: string
  22059. installationID:
  22060. description: installationID specifies the Github APP installation that will be used to authenticate the client
  22061. format: int64
  22062. type: integer
  22063. organization:
  22064. description: organization will be used to fetch secrets from the Github organization
  22065. type: string
  22066. repository:
  22067. description: repository will be used to fetch secrets from the Github repository within an organization
  22068. type: string
  22069. uploadURL:
  22070. description: Upload URL for enterprise instances. Default to URL.
  22071. type: string
  22072. url:
  22073. default: https://github.com/
  22074. description: URL configures the Github instance URL. Defaults to https://github.com/.
  22075. type: string
  22076. required:
  22077. - appID
  22078. - auth
  22079. - installationID
  22080. - organization
  22081. type: object
  22082. gitlab:
  22083. description: GitLab configures this store to sync secrets using GitLab Variables provider
  22084. properties:
  22085. auth:
  22086. description: Auth configures how secret-manager authenticates with a GitLab instance.
  22087. properties:
  22088. SecretRef:
  22089. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  22090. properties:
  22091. accessToken:
  22092. description: AccessToken is used for authentication.
  22093. properties:
  22094. key:
  22095. description: |-
  22096. A key in the referenced Secret.
  22097. Some instances of this field may be defaulted, in others it may be required.
  22098. maxLength: 253
  22099. minLength: 1
  22100. pattern: ^[-._a-zA-Z0-9]+$
  22101. type: string
  22102. name:
  22103. description: The name of the Secret resource being referred to.
  22104. maxLength: 253
  22105. minLength: 1
  22106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22107. type: string
  22108. namespace:
  22109. description: |-
  22110. The namespace of the Secret resource being referred to.
  22111. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22112. maxLength: 63
  22113. minLength: 1
  22114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22115. type: string
  22116. type: object
  22117. type: object
  22118. required:
  22119. - SecretRef
  22120. type: object
  22121. caBundle:
  22122. description: |-
  22123. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22124. can be performed.
  22125. format: byte
  22126. type: string
  22127. caProvider:
  22128. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22129. properties:
  22130. key:
  22131. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22132. maxLength: 253
  22133. minLength: 1
  22134. pattern: ^[-._a-zA-Z0-9]+$
  22135. type: string
  22136. name:
  22137. description: The name of the object located at the provider type.
  22138. maxLength: 253
  22139. minLength: 1
  22140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22141. type: string
  22142. namespace:
  22143. description: |-
  22144. The namespace the Provider type is in.
  22145. Can only be defined when used in a ClusterSecretStore.
  22146. maxLength: 63
  22147. minLength: 1
  22148. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22149. type: string
  22150. type:
  22151. description: The type of provider to use such as "Secret", or "ConfigMap".
  22152. enum:
  22153. - Secret
  22154. - ConfigMap
  22155. type: string
  22156. required:
  22157. - name
  22158. - type
  22159. type: object
  22160. environment:
  22161. 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)
  22162. type: string
  22163. groupIDs:
  22164. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  22165. items:
  22166. type: string
  22167. type: array
  22168. inheritFromGroups:
  22169. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  22170. type: boolean
  22171. projectID:
  22172. description: ProjectID specifies a project where secrets are located.
  22173. type: string
  22174. url:
  22175. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  22176. type: string
  22177. required:
  22178. - auth
  22179. type: object
  22180. ibm:
  22181. description: IBM configures this store to sync secrets using IBM Cloud provider
  22182. properties:
  22183. auth:
  22184. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  22185. maxProperties: 1
  22186. minProperties: 1
  22187. properties:
  22188. containerAuth:
  22189. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  22190. properties:
  22191. iamEndpoint:
  22192. type: string
  22193. profile:
  22194. description: the IBM Trusted Profile
  22195. type: string
  22196. tokenLocation:
  22197. description: Location the token is mounted on the pod
  22198. type: string
  22199. required:
  22200. - profile
  22201. type: object
  22202. secretRef:
  22203. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  22204. properties:
  22205. secretApiKeySecretRef:
  22206. description: The SecretAccessKey is used for authentication
  22207. properties:
  22208. key:
  22209. description: |-
  22210. A key in the referenced Secret.
  22211. Some instances of this field may be defaulted, in others it may be required.
  22212. maxLength: 253
  22213. minLength: 1
  22214. pattern: ^[-._a-zA-Z0-9]+$
  22215. type: string
  22216. name:
  22217. description: The name of the Secret resource being referred to.
  22218. maxLength: 253
  22219. minLength: 1
  22220. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22221. type: string
  22222. namespace:
  22223. description: |-
  22224. The namespace of the Secret resource being referred to.
  22225. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22226. maxLength: 63
  22227. minLength: 1
  22228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22229. type: string
  22230. type: object
  22231. type: object
  22232. type: object
  22233. serviceUrl:
  22234. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  22235. type: string
  22236. required:
  22237. - auth
  22238. type: object
  22239. infisical:
  22240. description: Infisical configures this store to sync secrets using the Infisical provider
  22241. properties:
  22242. auth:
  22243. description: Auth configures how the Operator authenticates with the Infisical API
  22244. properties:
  22245. universalAuthCredentials:
  22246. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  22247. properties:
  22248. clientId:
  22249. description: |-
  22250. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22251. In some instances, `key` is a required field.
  22252. properties:
  22253. key:
  22254. description: |-
  22255. A key in the referenced Secret.
  22256. Some instances of this field may be defaulted, in others it may be required.
  22257. maxLength: 253
  22258. minLength: 1
  22259. pattern: ^[-._a-zA-Z0-9]+$
  22260. type: string
  22261. name:
  22262. description: The name of the Secret resource being referred to.
  22263. maxLength: 253
  22264. minLength: 1
  22265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22266. type: string
  22267. namespace:
  22268. description: |-
  22269. The namespace of the Secret resource being referred to.
  22270. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22271. maxLength: 63
  22272. minLength: 1
  22273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22274. type: string
  22275. type: object
  22276. clientSecret:
  22277. description: |-
  22278. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22279. In some instances, `key` is a required field.
  22280. properties:
  22281. key:
  22282. description: |-
  22283. A key in the referenced Secret.
  22284. Some instances of this field may be defaulted, in others it may be required.
  22285. maxLength: 253
  22286. minLength: 1
  22287. pattern: ^[-._a-zA-Z0-9]+$
  22288. type: string
  22289. name:
  22290. description: The name of the Secret resource being referred to.
  22291. maxLength: 253
  22292. minLength: 1
  22293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22294. type: string
  22295. namespace:
  22296. description: |-
  22297. The namespace of the Secret resource being referred to.
  22298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22299. maxLength: 63
  22300. minLength: 1
  22301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22302. type: string
  22303. type: object
  22304. required:
  22305. - clientId
  22306. - clientSecret
  22307. type: object
  22308. type: object
  22309. hostAPI:
  22310. default: https://app.infisical.com/api
  22311. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  22312. type: string
  22313. secretsScope:
  22314. description: SecretsScope defines the scope of the secrets within the workspace
  22315. properties:
  22316. environmentSlug:
  22317. description: EnvironmentSlug is the required slug identifier for the environment.
  22318. type: string
  22319. expandSecretReferences:
  22320. default: true
  22321. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  22322. type: boolean
  22323. projectSlug:
  22324. description: ProjectSlug is the required slug identifier for the project.
  22325. type: string
  22326. recursive:
  22327. default: false
  22328. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  22329. type: boolean
  22330. secretsPath:
  22331. default: /
  22332. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  22333. type: string
  22334. required:
  22335. - environmentSlug
  22336. - projectSlug
  22337. type: object
  22338. required:
  22339. - auth
  22340. - secretsScope
  22341. type: object
  22342. keepersecurity:
  22343. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  22344. properties:
  22345. authRef:
  22346. description: |-
  22347. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22348. In some instances, `key` is a required field.
  22349. properties:
  22350. key:
  22351. description: |-
  22352. A key in the referenced Secret.
  22353. Some instances of this field may be defaulted, in others it may be required.
  22354. maxLength: 253
  22355. minLength: 1
  22356. pattern: ^[-._a-zA-Z0-9]+$
  22357. type: string
  22358. name:
  22359. description: The name of the Secret resource being referred to.
  22360. maxLength: 253
  22361. minLength: 1
  22362. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22363. type: string
  22364. namespace:
  22365. description: |-
  22366. The namespace of the Secret resource being referred to.
  22367. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22368. maxLength: 63
  22369. minLength: 1
  22370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22371. type: string
  22372. type: object
  22373. folderID:
  22374. type: string
  22375. required:
  22376. - authRef
  22377. - folderID
  22378. type: object
  22379. kubernetes:
  22380. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  22381. properties:
  22382. auth:
  22383. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  22384. maxProperties: 1
  22385. minProperties: 1
  22386. properties:
  22387. cert:
  22388. description: has both clientCert and clientKey as secretKeySelector
  22389. properties:
  22390. clientCert:
  22391. description: |-
  22392. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22393. In some instances, `key` is a required field.
  22394. properties:
  22395. key:
  22396. description: |-
  22397. A key in the referenced Secret.
  22398. Some instances of this field may be defaulted, in others it may be required.
  22399. maxLength: 253
  22400. minLength: 1
  22401. pattern: ^[-._a-zA-Z0-9]+$
  22402. type: string
  22403. name:
  22404. description: The name of the Secret resource being referred to.
  22405. maxLength: 253
  22406. minLength: 1
  22407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22408. type: string
  22409. namespace:
  22410. description: |-
  22411. The namespace of the Secret resource being referred to.
  22412. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22413. maxLength: 63
  22414. minLength: 1
  22415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22416. type: string
  22417. type: object
  22418. clientKey:
  22419. description: |-
  22420. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22421. In some instances, `key` is a required field.
  22422. properties:
  22423. key:
  22424. description: |-
  22425. A key in the referenced Secret.
  22426. Some instances of this field may be defaulted, in others it may be required.
  22427. maxLength: 253
  22428. minLength: 1
  22429. pattern: ^[-._a-zA-Z0-9]+$
  22430. type: string
  22431. name:
  22432. description: The name of the Secret resource being referred to.
  22433. maxLength: 253
  22434. minLength: 1
  22435. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22436. type: string
  22437. namespace:
  22438. description: |-
  22439. The namespace of the Secret resource being referred to.
  22440. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22441. maxLength: 63
  22442. minLength: 1
  22443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22444. type: string
  22445. type: object
  22446. type: object
  22447. serviceAccount:
  22448. description: points to a service account that should be used for authentication
  22449. properties:
  22450. audiences:
  22451. description: |-
  22452. Audience specifies the `aud` claim for the service account token
  22453. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22454. then this audiences will be appended to the list
  22455. items:
  22456. type: string
  22457. type: array
  22458. name:
  22459. description: The name of the ServiceAccount resource being referred to.
  22460. maxLength: 253
  22461. minLength: 1
  22462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22463. type: string
  22464. namespace:
  22465. description: |-
  22466. Namespace of the resource being referred to.
  22467. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22468. maxLength: 63
  22469. minLength: 1
  22470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22471. type: string
  22472. required:
  22473. - name
  22474. type: object
  22475. token:
  22476. description: use static token to authenticate with
  22477. properties:
  22478. bearerToken:
  22479. description: |-
  22480. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22481. In some instances, `key` is a required field.
  22482. properties:
  22483. key:
  22484. description: |-
  22485. A key in the referenced Secret.
  22486. Some instances of this field may be defaulted, in others it may be required.
  22487. maxLength: 253
  22488. minLength: 1
  22489. pattern: ^[-._a-zA-Z0-9]+$
  22490. type: string
  22491. name:
  22492. description: The name of the Secret resource being referred to.
  22493. maxLength: 253
  22494. minLength: 1
  22495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22496. type: string
  22497. namespace:
  22498. description: |-
  22499. The namespace of the Secret resource being referred to.
  22500. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22501. maxLength: 63
  22502. minLength: 1
  22503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22504. type: string
  22505. type: object
  22506. type: object
  22507. type: object
  22508. authRef:
  22509. description: A reference to a secret that contains the auth information.
  22510. properties:
  22511. key:
  22512. description: |-
  22513. A key in the referenced Secret.
  22514. Some instances of this field may be defaulted, in others it may be required.
  22515. maxLength: 253
  22516. minLength: 1
  22517. pattern: ^[-._a-zA-Z0-9]+$
  22518. type: string
  22519. name:
  22520. description: The name of the Secret resource being referred to.
  22521. maxLength: 253
  22522. minLength: 1
  22523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22524. type: string
  22525. namespace:
  22526. description: |-
  22527. The namespace of the Secret resource being referred to.
  22528. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22529. maxLength: 63
  22530. minLength: 1
  22531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22532. type: string
  22533. type: object
  22534. remoteNamespace:
  22535. default: default
  22536. description: Remote namespace to fetch the secrets from
  22537. maxLength: 63
  22538. minLength: 1
  22539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22540. type: string
  22541. server:
  22542. description: configures the Kubernetes server Address.
  22543. properties:
  22544. caBundle:
  22545. description: CABundle is a base64-encoded CA certificate
  22546. format: byte
  22547. type: string
  22548. caProvider:
  22549. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  22550. properties:
  22551. key:
  22552. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22553. maxLength: 253
  22554. minLength: 1
  22555. pattern: ^[-._a-zA-Z0-9]+$
  22556. type: string
  22557. name:
  22558. description: The name of the object located at the provider type.
  22559. maxLength: 253
  22560. minLength: 1
  22561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22562. type: string
  22563. namespace:
  22564. description: |-
  22565. The namespace the Provider type is in.
  22566. Can only be defined when used in a ClusterSecretStore.
  22567. maxLength: 63
  22568. minLength: 1
  22569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22570. type: string
  22571. type:
  22572. description: The type of provider to use such as "Secret", or "ConfigMap".
  22573. enum:
  22574. - Secret
  22575. - ConfigMap
  22576. type: string
  22577. required:
  22578. - name
  22579. - type
  22580. type: object
  22581. url:
  22582. default: kubernetes.default
  22583. description: configures the Kubernetes server Address.
  22584. type: string
  22585. type: object
  22586. type: object
  22587. onboardbase:
  22588. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  22589. properties:
  22590. apiHost:
  22591. default: https://public.onboardbase.com/api/v1/
  22592. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  22593. type: string
  22594. auth:
  22595. description: Auth configures how the Operator authenticates with the Onboardbase API
  22596. properties:
  22597. apiKeyRef:
  22598. description: |-
  22599. OnboardbaseAPIKey is the APIKey generated by an admin account.
  22600. It is used to recognize and authorize access to a project and environment within onboardbase
  22601. properties:
  22602. key:
  22603. description: |-
  22604. A key in the referenced Secret.
  22605. Some instances of this field may be defaulted, in others it may be required.
  22606. maxLength: 253
  22607. minLength: 1
  22608. pattern: ^[-._a-zA-Z0-9]+$
  22609. type: string
  22610. name:
  22611. description: The name of the Secret resource being referred to.
  22612. maxLength: 253
  22613. minLength: 1
  22614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22615. type: string
  22616. namespace:
  22617. description: |-
  22618. The namespace of the Secret resource being referred to.
  22619. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22620. maxLength: 63
  22621. minLength: 1
  22622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22623. type: string
  22624. type: object
  22625. passcodeRef:
  22626. description: OnboardbasePasscode is the passcode attached to the API Key
  22627. properties:
  22628. key:
  22629. description: |-
  22630. A key in the referenced Secret.
  22631. Some instances of this field may be defaulted, in others it may be required.
  22632. maxLength: 253
  22633. minLength: 1
  22634. pattern: ^[-._a-zA-Z0-9]+$
  22635. type: string
  22636. name:
  22637. description: The name of the Secret resource being referred to.
  22638. maxLength: 253
  22639. minLength: 1
  22640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22641. type: string
  22642. namespace:
  22643. description: |-
  22644. The namespace of the Secret resource being referred to.
  22645. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22646. maxLength: 63
  22647. minLength: 1
  22648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22649. type: string
  22650. type: object
  22651. required:
  22652. - apiKeyRef
  22653. - passcodeRef
  22654. type: object
  22655. environment:
  22656. default: development
  22657. description: Environment is the name of an environmnent within a project to pull the secrets from
  22658. type: string
  22659. project:
  22660. default: development
  22661. description: Project is an onboardbase project that the secrets should be pulled from
  22662. type: string
  22663. required:
  22664. - apiHost
  22665. - auth
  22666. - environment
  22667. - project
  22668. type: object
  22669. onepassword:
  22670. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  22671. properties:
  22672. auth:
  22673. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  22674. properties:
  22675. secretRef:
  22676. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  22677. properties:
  22678. connectTokenSecretRef:
  22679. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  22680. properties:
  22681. key:
  22682. description: |-
  22683. A key in the referenced Secret.
  22684. Some instances of this field may be defaulted, in others it may be required.
  22685. maxLength: 253
  22686. minLength: 1
  22687. pattern: ^[-._a-zA-Z0-9]+$
  22688. type: string
  22689. name:
  22690. description: The name of the Secret resource being referred to.
  22691. maxLength: 253
  22692. minLength: 1
  22693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22694. type: string
  22695. namespace:
  22696. description: |-
  22697. The namespace of the Secret resource being referred to.
  22698. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22699. maxLength: 63
  22700. minLength: 1
  22701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22702. type: string
  22703. type: object
  22704. required:
  22705. - connectTokenSecretRef
  22706. type: object
  22707. required:
  22708. - secretRef
  22709. type: object
  22710. connectHost:
  22711. description: ConnectHost defines the OnePassword Connect Server to connect to
  22712. type: string
  22713. vaults:
  22714. additionalProperties:
  22715. type: integer
  22716. description: Vaults defines which OnePassword vaults to search in which order
  22717. type: object
  22718. required:
  22719. - auth
  22720. - connectHost
  22721. - vaults
  22722. type: object
  22723. oracle:
  22724. description: Oracle configures this store to sync secrets using Oracle Vault provider
  22725. properties:
  22726. auth:
  22727. description: |-
  22728. Auth configures how secret-manager authenticates with the Oracle Vault.
  22729. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  22730. properties:
  22731. secretRef:
  22732. description: SecretRef to pass through sensitive information.
  22733. properties:
  22734. fingerprint:
  22735. description: Fingerprint is the fingerprint of the API private key.
  22736. properties:
  22737. key:
  22738. description: |-
  22739. A key in the referenced Secret.
  22740. Some instances of this field may be defaulted, in others it may be required.
  22741. maxLength: 253
  22742. minLength: 1
  22743. pattern: ^[-._a-zA-Z0-9]+$
  22744. type: string
  22745. name:
  22746. description: The name of the Secret resource being referred to.
  22747. maxLength: 253
  22748. minLength: 1
  22749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22750. type: string
  22751. namespace:
  22752. description: |-
  22753. The namespace of the Secret resource being referred to.
  22754. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22755. maxLength: 63
  22756. minLength: 1
  22757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22758. type: string
  22759. type: object
  22760. privatekey:
  22761. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  22762. properties:
  22763. key:
  22764. description: |-
  22765. A key in the referenced Secret.
  22766. Some instances of this field may be defaulted, in others it may be required.
  22767. maxLength: 253
  22768. minLength: 1
  22769. pattern: ^[-._a-zA-Z0-9]+$
  22770. type: string
  22771. name:
  22772. description: The name of the Secret resource being referred to.
  22773. maxLength: 253
  22774. minLength: 1
  22775. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22776. type: string
  22777. namespace:
  22778. description: |-
  22779. The namespace of the Secret resource being referred to.
  22780. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22781. maxLength: 63
  22782. minLength: 1
  22783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22784. type: string
  22785. type: object
  22786. required:
  22787. - fingerprint
  22788. - privatekey
  22789. type: object
  22790. tenancy:
  22791. description: Tenancy is the tenancy OCID where user is located.
  22792. type: string
  22793. user:
  22794. description: User is an access OCID specific to the account.
  22795. type: string
  22796. required:
  22797. - secretRef
  22798. - tenancy
  22799. - user
  22800. type: object
  22801. compartment:
  22802. description: |-
  22803. Compartment is the vault compartment OCID.
  22804. Required for PushSecret
  22805. type: string
  22806. encryptionKey:
  22807. description: |-
  22808. EncryptionKey is the OCID of the encryption key within the vault.
  22809. Required for PushSecret
  22810. type: string
  22811. principalType:
  22812. description: |-
  22813. The type of principal to use for authentication. If left blank, the Auth struct will
  22814. determine the principal type. This optional field must be specified if using
  22815. workload identity.
  22816. enum:
  22817. - ""
  22818. - UserPrincipal
  22819. - InstancePrincipal
  22820. - Workload
  22821. type: string
  22822. region:
  22823. description: Region is the region where vault is located.
  22824. type: string
  22825. serviceAccountRef:
  22826. description: |-
  22827. ServiceAccountRef specified the service account
  22828. that should be used when authenticating with WorkloadIdentity.
  22829. properties:
  22830. audiences:
  22831. description: |-
  22832. Audience specifies the `aud` claim for the service account token
  22833. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22834. then this audiences will be appended to the list
  22835. items:
  22836. type: string
  22837. type: array
  22838. name:
  22839. description: The name of the ServiceAccount resource being referred to.
  22840. maxLength: 253
  22841. minLength: 1
  22842. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22843. type: string
  22844. namespace:
  22845. description: |-
  22846. Namespace of the resource being referred to.
  22847. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22848. maxLength: 63
  22849. minLength: 1
  22850. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22851. type: string
  22852. required:
  22853. - name
  22854. type: object
  22855. vault:
  22856. description: Vault is the vault's OCID of the specific vault where secret is located.
  22857. type: string
  22858. required:
  22859. - region
  22860. - vault
  22861. type: object
  22862. passbolt:
  22863. description: PassboltProvider defines configuration for the Passbolt provider.
  22864. properties:
  22865. auth:
  22866. description: Auth defines the information necessary to authenticate against Passbolt Server
  22867. properties:
  22868. passwordSecretRef:
  22869. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  22870. properties:
  22871. key:
  22872. description: |-
  22873. A key in the referenced Secret.
  22874. Some instances of this field may be defaulted, in others it may be required.
  22875. maxLength: 253
  22876. minLength: 1
  22877. pattern: ^[-._a-zA-Z0-9]+$
  22878. type: string
  22879. name:
  22880. description: The name of the Secret resource being referred to.
  22881. maxLength: 253
  22882. minLength: 1
  22883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22884. type: string
  22885. namespace:
  22886. description: |-
  22887. The namespace of the Secret resource being referred to.
  22888. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22889. maxLength: 63
  22890. minLength: 1
  22891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22892. type: string
  22893. type: object
  22894. privateKeySecretRef:
  22895. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  22896. properties:
  22897. key:
  22898. description: |-
  22899. A key in the referenced Secret.
  22900. Some instances of this field may be defaulted, in others it may be required.
  22901. maxLength: 253
  22902. minLength: 1
  22903. pattern: ^[-._a-zA-Z0-9]+$
  22904. type: string
  22905. name:
  22906. description: The name of the Secret resource being referred to.
  22907. maxLength: 253
  22908. minLength: 1
  22909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22910. type: string
  22911. namespace:
  22912. description: |-
  22913. The namespace of the Secret resource being referred to.
  22914. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22915. maxLength: 63
  22916. minLength: 1
  22917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22918. type: string
  22919. type: object
  22920. required:
  22921. - passwordSecretRef
  22922. - privateKeySecretRef
  22923. type: object
  22924. host:
  22925. description: Host defines the Passbolt Server to connect to
  22926. type: string
  22927. required:
  22928. - auth
  22929. - host
  22930. type: object
  22931. passworddepot:
  22932. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  22933. properties:
  22934. auth:
  22935. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  22936. properties:
  22937. secretRef:
  22938. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  22939. properties:
  22940. credentials:
  22941. description: Username / Password is used for authentication.
  22942. properties:
  22943. key:
  22944. description: |-
  22945. A key in the referenced Secret.
  22946. Some instances of this field may be defaulted, in others it may be required.
  22947. maxLength: 253
  22948. minLength: 1
  22949. pattern: ^[-._a-zA-Z0-9]+$
  22950. type: string
  22951. name:
  22952. description: The name of the Secret resource being referred to.
  22953. maxLength: 253
  22954. minLength: 1
  22955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22956. type: string
  22957. namespace:
  22958. description: |-
  22959. The namespace of the Secret resource being referred to.
  22960. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22961. maxLength: 63
  22962. minLength: 1
  22963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22964. type: string
  22965. type: object
  22966. type: object
  22967. required:
  22968. - secretRef
  22969. type: object
  22970. database:
  22971. description: Database to use as source
  22972. type: string
  22973. host:
  22974. description: URL configures the Password Depot instance URL.
  22975. type: string
  22976. required:
  22977. - auth
  22978. - database
  22979. - host
  22980. type: object
  22981. previder:
  22982. description: Previder configures this store to sync secrets using the Previder provider
  22983. properties:
  22984. auth:
  22985. description: PreviderAuth contains a secretRef for credentials.
  22986. properties:
  22987. secretRef:
  22988. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  22989. properties:
  22990. accessToken:
  22991. description: The AccessToken is used for authentication
  22992. properties:
  22993. key:
  22994. description: |-
  22995. A key in the referenced Secret.
  22996. Some instances of this field may be defaulted, in others it may be required.
  22997. maxLength: 253
  22998. minLength: 1
  22999. pattern: ^[-._a-zA-Z0-9]+$
  23000. type: string
  23001. name:
  23002. description: The name of the Secret resource being referred to.
  23003. maxLength: 253
  23004. minLength: 1
  23005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23006. type: string
  23007. namespace:
  23008. description: |-
  23009. The namespace of the Secret resource being referred to.
  23010. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23011. maxLength: 63
  23012. minLength: 1
  23013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23014. type: string
  23015. type: object
  23016. required:
  23017. - accessToken
  23018. type: object
  23019. type: object
  23020. baseUri:
  23021. type: string
  23022. required:
  23023. - auth
  23024. type: object
  23025. pulumi:
  23026. description: Pulumi configures this store to sync secrets using the Pulumi provider
  23027. properties:
  23028. accessToken:
  23029. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  23030. properties:
  23031. secretRef:
  23032. description: SecretRef is a reference to a secret containing the Pulumi API token.
  23033. properties:
  23034. key:
  23035. description: |-
  23036. A key in the referenced Secret.
  23037. Some instances of this field may be defaulted, in others it may be required.
  23038. maxLength: 253
  23039. minLength: 1
  23040. pattern: ^[-._a-zA-Z0-9]+$
  23041. type: string
  23042. name:
  23043. description: The name of the Secret resource being referred to.
  23044. maxLength: 253
  23045. minLength: 1
  23046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23047. type: string
  23048. namespace:
  23049. description: |-
  23050. The namespace of the Secret resource being referred to.
  23051. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23052. maxLength: 63
  23053. minLength: 1
  23054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23055. type: string
  23056. type: object
  23057. type: object
  23058. apiUrl:
  23059. default: https://api.pulumi.com/api/esc
  23060. description: APIURL is the URL of the Pulumi API.
  23061. type: string
  23062. environment:
  23063. description: |-
  23064. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  23065. dynamically retrieved values from supported providers including all major clouds,
  23066. and other Pulumi ESC environments.
  23067. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  23068. type: string
  23069. organization:
  23070. description: |-
  23071. Organization are a space to collaborate on shared projects and stacks.
  23072. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  23073. type: string
  23074. project:
  23075. description: Project is the name of the Pulumi ESC project the environment belongs to.
  23076. type: string
  23077. required:
  23078. - accessToken
  23079. - environment
  23080. - organization
  23081. - project
  23082. type: object
  23083. scaleway:
  23084. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  23085. properties:
  23086. accessKey:
  23087. description: AccessKey is the non-secret part of the api key.
  23088. properties:
  23089. secretRef:
  23090. description: SecretRef references a key in a secret that will be used as value.
  23091. properties:
  23092. key:
  23093. description: |-
  23094. A key in the referenced Secret.
  23095. Some instances of this field may be defaulted, in others it may be required.
  23096. maxLength: 253
  23097. minLength: 1
  23098. pattern: ^[-._a-zA-Z0-9]+$
  23099. type: string
  23100. name:
  23101. description: The name of the Secret resource being referred to.
  23102. maxLength: 253
  23103. minLength: 1
  23104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23105. type: string
  23106. namespace:
  23107. description: |-
  23108. The namespace of the Secret resource being referred to.
  23109. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23110. maxLength: 63
  23111. minLength: 1
  23112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23113. type: string
  23114. type: object
  23115. value:
  23116. description: Value can be specified directly to set a value without using a secret.
  23117. type: string
  23118. type: object
  23119. apiUrl:
  23120. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  23121. type: string
  23122. projectId:
  23123. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  23124. type: string
  23125. region:
  23126. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  23127. type: string
  23128. secretKey:
  23129. description: SecretKey is the non-secret part of the api key.
  23130. properties:
  23131. secretRef:
  23132. description: SecretRef references a key in a secret that will be used as value.
  23133. properties:
  23134. key:
  23135. description: |-
  23136. A key in the referenced Secret.
  23137. Some instances of this field may be defaulted, in others it may be required.
  23138. maxLength: 253
  23139. minLength: 1
  23140. pattern: ^[-._a-zA-Z0-9]+$
  23141. type: string
  23142. name:
  23143. description: The name of the Secret resource being referred to.
  23144. maxLength: 253
  23145. minLength: 1
  23146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23147. type: string
  23148. namespace:
  23149. description: |-
  23150. The namespace of the Secret resource being referred to.
  23151. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23152. maxLength: 63
  23153. minLength: 1
  23154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23155. type: string
  23156. type: object
  23157. value:
  23158. description: Value can be specified directly to set a value without using a secret.
  23159. type: string
  23160. type: object
  23161. required:
  23162. - accessKey
  23163. - projectId
  23164. - region
  23165. - secretKey
  23166. type: object
  23167. secretserver:
  23168. description: |-
  23169. SecretServer configures this store to sync secrets using SecretServer provider
  23170. https://docs.delinea.com/online-help/secret-server/start.htm
  23171. properties:
  23172. password:
  23173. description: Password is the secret server account password.
  23174. properties:
  23175. secretRef:
  23176. description: SecretRef references a key in a secret that will be used as value.
  23177. properties:
  23178. key:
  23179. description: |-
  23180. A key in the referenced Secret.
  23181. Some instances of this field may be defaulted, in others it may be required.
  23182. maxLength: 253
  23183. minLength: 1
  23184. pattern: ^[-._a-zA-Z0-9]+$
  23185. type: string
  23186. name:
  23187. description: The name of the Secret resource being referred to.
  23188. maxLength: 253
  23189. minLength: 1
  23190. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23191. type: string
  23192. namespace:
  23193. description: |-
  23194. The namespace of the Secret resource being referred to.
  23195. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23196. maxLength: 63
  23197. minLength: 1
  23198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23199. type: string
  23200. type: object
  23201. value:
  23202. description: Value can be specified directly to set a value without using a secret.
  23203. type: string
  23204. type: object
  23205. serverURL:
  23206. description: |-
  23207. ServerURL
  23208. URL to your secret server installation
  23209. type: string
  23210. username:
  23211. description: Username is the secret server account username.
  23212. properties:
  23213. secretRef:
  23214. description: SecretRef references a key in a secret that will be used as value.
  23215. properties:
  23216. key:
  23217. description: |-
  23218. A key in the referenced Secret.
  23219. Some instances of this field may be defaulted, in others it may be required.
  23220. maxLength: 253
  23221. minLength: 1
  23222. pattern: ^[-._a-zA-Z0-9]+$
  23223. type: string
  23224. name:
  23225. description: The name of the Secret resource being referred to.
  23226. maxLength: 253
  23227. minLength: 1
  23228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23229. type: string
  23230. namespace:
  23231. description: |-
  23232. The namespace of the Secret resource being referred to.
  23233. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23234. maxLength: 63
  23235. minLength: 1
  23236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23237. type: string
  23238. type: object
  23239. value:
  23240. description: Value can be specified directly to set a value without using a secret.
  23241. type: string
  23242. type: object
  23243. required:
  23244. - password
  23245. - serverURL
  23246. - username
  23247. type: object
  23248. senhasegura:
  23249. description: Senhasegura configures this store to sync secrets using senhasegura provider
  23250. properties:
  23251. auth:
  23252. description: Auth defines parameters to authenticate in senhasegura
  23253. properties:
  23254. clientId:
  23255. type: string
  23256. clientSecretSecretRef:
  23257. description: |-
  23258. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23259. In some instances, `key` is a required field.
  23260. properties:
  23261. key:
  23262. description: |-
  23263. A key in the referenced Secret.
  23264. Some instances of this field may be defaulted, in others it may be required.
  23265. maxLength: 253
  23266. minLength: 1
  23267. pattern: ^[-._a-zA-Z0-9]+$
  23268. type: string
  23269. name:
  23270. description: The name of the Secret resource being referred to.
  23271. maxLength: 253
  23272. minLength: 1
  23273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23274. type: string
  23275. namespace:
  23276. description: |-
  23277. The namespace of the Secret resource being referred to.
  23278. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23279. maxLength: 63
  23280. minLength: 1
  23281. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23282. type: string
  23283. type: object
  23284. required:
  23285. - clientId
  23286. - clientSecretSecretRef
  23287. type: object
  23288. ignoreSslCertificate:
  23289. default: false
  23290. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  23291. type: boolean
  23292. module:
  23293. description: Module defines which senhasegura module should be used to get secrets
  23294. type: string
  23295. url:
  23296. description: URL of senhasegura
  23297. type: string
  23298. required:
  23299. - auth
  23300. - module
  23301. - url
  23302. type: object
  23303. vault:
  23304. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  23305. properties:
  23306. auth:
  23307. description: Auth configures how secret-manager authenticates with the Vault server.
  23308. properties:
  23309. appRole:
  23310. description: |-
  23311. AppRole authenticates with Vault using the App Role auth mechanism,
  23312. with the role and secret stored in a Kubernetes Secret resource.
  23313. properties:
  23314. path:
  23315. default: approle
  23316. description: |-
  23317. Path where the App Role authentication backend is mounted
  23318. in Vault, e.g: "approle"
  23319. type: string
  23320. roleId:
  23321. description: |-
  23322. RoleID configured in the App Role authentication backend when setting
  23323. up the authentication backend in Vault.
  23324. type: string
  23325. roleRef:
  23326. description: |-
  23327. Reference to a key in a Secret that contains the App Role ID used
  23328. to authenticate with Vault.
  23329. The `key` field must be specified and denotes which entry within the Secret
  23330. resource is used as the app role id.
  23331. properties:
  23332. key:
  23333. description: |-
  23334. A key in the referenced Secret.
  23335. Some instances of this field may be defaulted, in others it may be required.
  23336. maxLength: 253
  23337. minLength: 1
  23338. pattern: ^[-._a-zA-Z0-9]+$
  23339. type: string
  23340. name:
  23341. description: The name of the Secret resource being referred to.
  23342. maxLength: 253
  23343. minLength: 1
  23344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23345. type: string
  23346. namespace:
  23347. description: |-
  23348. The namespace of the Secret resource being referred to.
  23349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23350. maxLength: 63
  23351. minLength: 1
  23352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23353. type: string
  23354. type: object
  23355. secretRef:
  23356. description: |-
  23357. Reference to a key in a Secret that contains the App Role secret used
  23358. to authenticate with Vault.
  23359. The `key` field must be specified and denotes which entry within the Secret
  23360. resource is used as the app role secret.
  23361. properties:
  23362. key:
  23363. description: |-
  23364. A key in the referenced Secret.
  23365. Some instances of this field may be defaulted, in others it may be required.
  23366. maxLength: 253
  23367. minLength: 1
  23368. pattern: ^[-._a-zA-Z0-9]+$
  23369. type: string
  23370. name:
  23371. description: The name of the Secret resource being referred to.
  23372. maxLength: 253
  23373. minLength: 1
  23374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23375. type: string
  23376. namespace:
  23377. description: |-
  23378. The namespace of the Secret resource being referred to.
  23379. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23380. maxLength: 63
  23381. minLength: 1
  23382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23383. type: string
  23384. type: object
  23385. required:
  23386. - path
  23387. - secretRef
  23388. type: object
  23389. cert:
  23390. description: |-
  23391. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  23392. Cert authentication method
  23393. properties:
  23394. clientCert:
  23395. description: |-
  23396. ClientCert is a certificate to authenticate using the Cert Vault
  23397. authentication method
  23398. properties:
  23399. key:
  23400. description: |-
  23401. A key in the referenced Secret.
  23402. Some instances of this field may be defaulted, in others it may be required.
  23403. maxLength: 253
  23404. minLength: 1
  23405. pattern: ^[-._a-zA-Z0-9]+$
  23406. type: string
  23407. name:
  23408. description: The name of the Secret resource being referred to.
  23409. maxLength: 253
  23410. minLength: 1
  23411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23412. type: string
  23413. namespace:
  23414. description: |-
  23415. The namespace of the Secret resource being referred to.
  23416. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23417. maxLength: 63
  23418. minLength: 1
  23419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23420. type: string
  23421. type: object
  23422. secretRef:
  23423. description: |-
  23424. SecretRef to a key in a Secret resource containing client private key to
  23425. authenticate with Vault using the Cert authentication method
  23426. properties:
  23427. key:
  23428. description: |-
  23429. A key in the referenced Secret.
  23430. Some instances of this field may be defaulted, in others it may be required.
  23431. maxLength: 253
  23432. minLength: 1
  23433. pattern: ^[-._a-zA-Z0-9]+$
  23434. type: string
  23435. name:
  23436. description: The name of the Secret resource being referred to.
  23437. maxLength: 253
  23438. minLength: 1
  23439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23440. type: string
  23441. namespace:
  23442. description: |-
  23443. The namespace of the Secret resource being referred to.
  23444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23445. maxLength: 63
  23446. minLength: 1
  23447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23448. type: string
  23449. type: object
  23450. type: object
  23451. iam:
  23452. description: |-
  23453. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  23454. AWS IAM authentication method
  23455. properties:
  23456. externalID:
  23457. description: AWS External ID set on assumed IAM roles
  23458. type: string
  23459. jwt:
  23460. description: Specify a service account with IRSA enabled
  23461. properties:
  23462. serviceAccountRef:
  23463. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  23464. properties:
  23465. audiences:
  23466. description: |-
  23467. Audience specifies the `aud` claim for the service account token
  23468. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23469. then this audiences will be appended to the list
  23470. items:
  23471. type: string
  23472. type: array
  23473. name:
  23474. description: The name of the ServiceAccount resource being referred to.
  23475. maxLength: 253
  23476. minLength: 1
  23477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23478. type: string
  23479. namespace:
  23480. description: |-
  23481. Namespace of the resource being referred to.
  23482. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23483. maxLength: 63
  23484. minLength: 1
  23485. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23486. type: string
  23487. required:
  23488. - name
  23489. type: object
  23490. type: object
  23491. path:
  23492. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  23493. type: string
  23494. region:
  23495. description: AWS region
  23496. type: string
  23497. role:
  23498. description: This is the AWS role to be assumed before talking to vault
  23499. type: string
  23500. secretRef:
  23501. description: Specify credentials in a Secret object
  23502. properties:
  23503. accessKeyIDSecretRef:
  23504. description: The AccessKeyID is used for authentication
  23505. properties:
  23506. key:
  23507. description: |-
  23508. A key in the referenced Secret.
  23509. Some instances of this field may be defaulted, in others it may be required.
  23510. maxLength: 253
  23511. minLength: 1
  23512. pattern: ^[-._a-zA-Z0-9]+$
  23513. type: string
  23514. name:
  23515. description: The name of the Secret resource being referred to.
  23516. maxLength: 253
  23517. minLength: 1
  23518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23519. type: string
  23520. namespace:
  23521. description: |-
  23522. The namespace of the Secret resource being referred to.
  23523. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23524. maxLength: 63
  23525. minLength: 1
  23526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23527. type: string
  23528. type: object
  23529. secretAccessKeySecretRef:
  23530. description: The SecretAccessKey is used for authentication
  23531. properties:
  23532. key:
  23533. description: |-
  23534. A key in the referenced Secret.
  23535. Some instances of this field may be defaulted, in others it may be required.
  23536. maxLength: 253
  23537. minLength: 1
  23538. pattern: ^[-._a-zA-Z0-9]+$
  23539. type: string
  23540. name:
  23541. description: The name of the Secret resource being referred to.
  23542. maxLength: 253
  23543. minLength: 1
  23544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23545. type: string
  23546. namespace:
  23547. description: |-
  23548. The namespace of the Secret resource being referred to.
  23549. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23550. maxLength: 63
  23551. minLength: 1
  23552. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23553. type: string
  23554. type: object
  23555. sessionTokenSecretRef:
  23556. description: |-
  23557. The SessionToken used for authentication
  23558. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  23559. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  23560. properties:
  23561. key:
  23562. description: |-
  23563. A key in the referenced Secret.
  23564. Some instances of this field may be defaulted, in others it may be required.
  23565. maxLength: 253
  23566. minLength: 1
  23567. pattern: ^[-._a-zA-Z0-9]+$
  23568. type: string
  23569. name:
  23570. description: The name of the Secret resource being referred to.
  23571. maxLength: 253
  23572. minLength: 1
  23573. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23574. type: string
  23575. namespace:
  23576. description: |-
  23577. The namespace of the Secret resource being referred to.
  23578. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23579. maxLength: 63
  23580. minLength: 1
  23581. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23582. type: string
  23583. type: object
  23584. type: object
  23585. vaultAwsIamServerID:
  23586. 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'
  23587. type: string
  23588. vaultRole:
  23589. 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
  23590. type: string
  23591. required:
  23592. - vaultRole
  23593. type: object
  23594. jwt:
  23595. description: |-
  23596. Jwt authenticates with Vault by passing role and JWT token using the
  23597. JWT/OIDC authentication method
  23598. properties:
  23599. kubernetesServiceAccountToken:
  23600. description: |-
  23601. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  23602. a token for with the `TokenRequest` API.
  23603. properties:
  23604. audiences:
  23605. description: |-
  23606. Optional audiences field that will be used to request a temporary Kubernetes service
  23607. account token for the service account referenced by `serviceAccountRef`.
  23608. Defaults to a single audience `vault` it not specified.
  23609. Deprecated: use serviceAccountRef.Audiences instead
  23610. items:
  23611. type: string
  23612. type: array
  23613. expirationSeconds:
  23614. description: |-
  23615. Optional expiration time in seconds that will be used to request a temporary
  23616. Kubernetes service account token for the service account referenced by
  23617. `serviceAccountRef`.
  23618. Deprecated: this will be removed in the future.
  23619. Defaults to 10 minutes.
  23620. format: int64
  23621. type: integer
  23622. serviceAccountRef:
  23623. description: Service account field containing the name of a kubernetes ServiceAccount.
  23624. properties:
  23625. audiences:
  23626. description: |-
  23627. Audience specifies the `aud` claim for the service account token
  23628. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23629. then this audiences will be appended to the list
  23630. items:
  23631. type: string
  23632. type: array
  23633. name:
  23634. description: The name of the ServiceAccount resource being referred to.
  23635. maxLength: 253
  23636. minLength: 1
  23637. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23638. type: string
  23639. namespace:
  23640. description: |-
  23641. Namespace of the resource being referred to.
  23642. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23643. maxLength: 63
  23644. minLength: 1
  23645. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23646. type: string
  23647. required:
  23648. - name
  23649. type: object
  23650. required:
  23651. - serviceAccountRef
  23652. type: object
  23653. path:
  23654. default: jwt
  23655. description: |-
  23656. Path where the JWT authentication backend is mounted
  23657. in Vault, e.g: "jwt"
  23658. type: string
  23659. role:
  23660. description: |-
  23661. Role is a JWT role to authenticate using the JWT/OIDC Vault
  23662. authentication method
  23663. type: string
  23664. secretRef:
  23665. description: |-
  23666. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  23667. authenticate with Vault using the JWT/OIDC authentication method.
  23668. properties:
  23669. key:
  23670. description: |-
  23671. A key in the referenced Secret.
  23672. Some instances of this field may be defaulted, in others it may be required.
  23673. maxLength: 253
  23674. minLength: 1
  23675. pattern: ^[-._a-zA-Z0-9]+$
  23676. type: string
  23677. name:
  23678. description: The name of the Secret resource being referred to.
  23679. maxLength: 253
  23680. minLength: 1
  23681. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23682. type: string
  23683. namespace:
  23684. description: |-
  23685. The namespace of the Secret resource being referred to.
  23686. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23687. maxLength: 63
  23688. minLength: 1
  23689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23690. type: string
  23691. type: object
  23692. required:
  23693. - path
  23694. type: object
  23695. kubernetes:
  23696. description: |-
  23697. Kubernetes authenticates with Vault by passing the ServiceAccount
  23698. token stored in the named Secret resource to the Vault server.
  23699. properties:
  23700. mountPath:
  23701. default: kubernetes
  23702. description: |-
  23703. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  23704. "kubernetes"
  23705. type: string
  23706. role:
  23707. description: |-
  23708. A required field containing the Vault Role to assume. A Role binds a
  23709. Kubernetes ServiceAccount with a set of Vault policies.
  23710. type: string
  23711. secretRef:
  23712. description: |-
  23713. Optional secret field containing a Kubernetes ServiceAccount JWT used
  23714. for authenticating with Vault. If a name is specified without a key,
  23715. `token` is the default. If one is not specified, the one bound to
  23716. the controller will be used.
  23717. properties:
  23718. key:
  23719. description: |-
  23720. A key in the referenced Secret.
  23721. Some instances of this field may be defaulted, in others it may be required.
  23722. maxLength: 253
  23723. minLength: 1
  23724. pattern: ^[-._a-zA-Z0-9]+$
  23725. type: string
  23726. name:
  23727. description: The name of the Secret resource being referred to.
  23728. maxLength: 253
  23729. minLength: 1
  23730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23731. type: string
  23732. namespace:
  23733. description: |-
  23734. The namespace of the Secret resource being referred to.
  23735. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23736. maxLength: 63
  23737. minLength: 1
  23738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23739. type: string
  23740. type: object
  23741. serviceAccountRef:
  23742. description: |-
  23743. Optional service account field containing the name of a kubernetes ServiceAccount.
  23744. If the service account is specified, the service account secret token JWT will be used
  23745. for authenticating with Vault. If the service account selector is not supplied,
  23746. the secretRef will be used instead.
  23747. properties:
  23748. audiences:
  23749. description: |-
  23750. Audience specifies the `aud` claim for the service account token
  23751. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23752. then this audiences will be appended to the list
  23753. items:
  23754. type: string
  23755. type: array
  23756. name:
  23757. description: The name of the ServiceAccount resource being referred to.
  23758. maxLength: 253
  23759. minLength: 1
  23760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23761. type: string
  23762. namespace:
  23763. description: |-
  23764. Namespace of the resource being referred to.
  23765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23766. maxLength: 63
  23767. minLength: 1
  23768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23769. type: string
  23770. required:
  23771. - name
  23772. type: object
  23773. required:
  23774. - mountPath
  23775. - role
  23776. type: object
  23777. ldap:
  23778. description: |-
  23779. Ldap authenticates with Vault by passing username/password pair using
  23780. the LDAP authentication method
  23781. properties:
  23782. path:
  23783. default: ldap
  23784. description: |-
  23785. Path where the LDAP authentication backend is mounted
  23786. in Vault, e.g: "ldap"
  23787. type: string
  23788. secretRef:
  23789. description: |-
  23790. SecretRef to a key in a Secret resource containing password for the LDAP
  23791. user used to authenticate with Vault using the LDAP authentication
  23792. method
  23793. properties:
  23794. key:
  23795. description: |-
  23796. A key in the referenced Secret.
  23797. Some instances of this field may be defaulted, in others it may be required.
  23798. maxLength: 253
  23799. minLength: 1
  23800. pattern: ^[-._a-zA-Z0-9]+$
  23801. type: string
  23802. name:
  23803. description: The name of the Secret resource being referred to.
  23804. maxLength: 253
  23805. minLength: 1
  23806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23807. type: string
  23808. namespace:
  23809. description: |-
  23810. The namespace of the Secret resource being referred to.
  23811. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23812. maxLength: 63
  23813. minLength: 1
  23814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23815. type: string
  23816. type: object
  23817. username:
  23818. description: |-
  23819. Username is an LDAP username used to authenticate using the LDAP Vault
  23820. authentication method
  23821. type: string
  23822. required:
  23823. - path
  23824. - username
  23825. type: object
  23826. namespace:
  23827. description: |-
  23828. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  23829. Namespaces is a set of features within Vault Enterprise that allows
  23830. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  23831. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  23832. This will default to Vault.Namespace field if set, or empty otherwise
  23833. type: string
  23834. tokenSecretRef:
  23835. description: TokenSecretRef authenticates with Vault by presenting a token.
  23836. properties:
  23837. key:
  23838. description: |-
  23839. A key in the referenced Secret.
  23840. Some instances of this field may be defaulted, in others it may be required.
  23841. maxLength: 253
  23842. minLength: 1
  23843. pattern: ^[-._a-zA-Z0-9]+$
  23844. type: string
  23845. name:
  23846. description: The name of the Secret resource being referred to.
  23847. maxLength: 253
  23848. minLength: 1
  23849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23850. type: string
  23851. namespace:
  23852. description: |-
  23853. The namespace of the Secret resource being referred to.
  23854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23855. maxLength: 63
  23856. minLength: 1
  23857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23858. type: string
  23859. type: object
  23860. userPass:
  23861. description: UserPass authenticates with Vault by passing username/password pair
  23862. properties:
  23863. path:
  23864. default: userpass
  23865. description: |-
  23866. Path where the UserPassword authentication backend is mounted
  23867. in Vault, e.g: "userpass"
  23868. type: string
  23869. secretRef:
  23870. description: |-
  23871. SecretRef to a key in a Secret resource containing password for the
  23872. user used to authenticate with Vault using the UserPass authentication
  23873. method
  23874. properties:
  23875. key:
  23876. description: |-
  23877. A key in the referenced Secret.
  23878. Some instances of this field may be defaulted, in others it may be required.
  23879. maxLength: 253
  23880. minLength: 1
  23881. pattern: ^[-._a-zA-Z0-9]+$
  23882. type: string
  23883. name:
  23884. description: The name of the Secret resource being referred to.
  23885. maxLength: 253
  23886. minLength: 1
  23887. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23888. type: string
  23889. namespace:
  23890. description: |-
  23891. The namespace of the Secret resource being referred to.
  23892. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23893. maxLength: 63
  23894. minLength: 1
  23895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23896. type: string
  23897. type: object
  23898. username:
  23899. description: |-
  23900. Username is a username used to authenticate using the UserPass Vault
  23901. authentication method
  23902. type: string
  23903. required:
  23904. - path
  23905. - username
  23906. type: object
  23907. type: object
  23908. caBundle:
  23909. description: |-
  23910. PEM encoded CA bundle used to validate Vault server certificate. Only used
  23911. if the Server URL is using HTTPS protocol. This parameter is ignored for
  23912. plain HTTP protocol connection. If not set the system root certificates
  23913. are used to validate the TLS connection.
  23914. format: byte
  23915. type: string
  23916. caProvider:
  23917. description: The provider for the CA bundle to use to validate Vault server certificate.
  23918. properties:
  23919. key:
  23920. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  23921. maxLength: 253
  23922. minLength: 1
  23923. pattern: ^[-._a-zA-Z0-9]+$
  23924. type: string
  23925. name:
  23926. description: The name of the object located at the provider type.
  23927. maxLength: 253
  23928. minLength: 1
  23929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23930. type: string
  23931. namespace:
  23932. description: |-
  23933. The namespace the Provider type is in.
  23934. Can only be defined when used in a ClusterSecretStore.
  23935. maxLength: 63
  23936. minLength: 1
  23937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23938. type: string
  23939. type:
  23940. description: The type of provider to use such as "Secret", or "ConfigMap".
  23941. enum:
  23942. - Secret
  23943. - ConfigMap
  23944. type: string
  23945. required:
  23946. - name
  23947. - type
  23948. type: object
  23949. forwardInconsistent:
  23950. description: |-
  23951. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  23952. leader instead of simply retrying within a loop. This can increase performance if
  23953. the option is enabled serverside.
  23954. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  23955. type: boolean
  23956. headers:
  23957. additionalProperties:
  23958. type: string
  23959. description: Headers to be added in Vault request
  23960. type: object
  23961. namespace:
  23962. description: |-
  23963. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  23964. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  23965. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  23966. type: string
  23967. path:
  23968. description: |-
  23969. Path is the mount path of the Vault KV backend endpoint, e.g:
  23970. "secret". The v2 KV secret engine version specific "/data" path suffix
  23971. for fetching secrets from Vault is optional and will be appended
  23972. if not present in specified path.
  23973. type: string
  23974. readYourWrites:
  23975. description: |-
  23976. ReadYourWrites ensures isolated read-after-write semantics by
  23977. providing discovered cluster replication states in each request.
  23978. More information about eventual consistency in Vault can be found here
  23979. https://www.vaultproject.io/docs/enterprise/consistency
  23980. type: boolean
  23981. server:
  23982. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  23983. type: string
  23984. tls:
  23985. description: |-
  23986. The configuration used for client side related TLS communication, when the Vault server
  23987. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  23988. This parameter is ignored for plain HTTP protocol connection.
  23989. It's worth noting this configuration is different from the "TLS certificates auth method",
  23990. which is available under the `auth.cert` section.
  23991. properties:
  23992. certSecretRef:
  23993. description: |-
  23994. CertSecretRef is a certificate added to the transport layer
  23995. when communicating with the Vault server.
  23996. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  23997. properties:
  23998. key:
  23999. description: |-
  24000. A key in the referenced Secret.
  24001. Some instances of this field may be defaulted, in others it may be required.
  24002. maxLength: 253
  24003. minLength: 1
  24004. pattern: ^[-._a-zA-Z0-9]+$
  24005. type: string
  24006. name:
  24007. description: The name of the Secret resource being referred to.
  24008. maxLength: 253
  24009. minLength: 1
  24010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24011. type: string
  24012. namespace:
  24013. description: |-
  24014. The namespace of the Secret resource being referred to.
  24015. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24016. maxLength: 63
  24017. minLength: 1
  24018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24019. type: string
  24020. type: object
  24021. keySecretRef:
  24022. description: |-
  24023. KeySecretRef to a key in a Secret resource containing client private key
  24024. added to the transport layer when communicating with the Vault server.
  24025. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  24026. properties:
  24027. key:
  24028. description: |-
  24029. A key in the referenced Secret.
  24030. Some instances of this field may be defaulted, in others it may be required.
  24031. maxLength: 253
  24032. minLength: 1
  24033. pattern: ^[-._a-zA-Z0-9]+$
  24034. type: string
  24035. name:
  24036. description: The name of the Secret resource being referred to.
  24037. maxLength: 253
  24038. minLength: 1
  24039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24040. type: string
  24041. namespace:
  24042. description: |-
  24043. The namespace of the Secret resource being referred to.
  24044. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24045. maxLength: 63
  24046. minLength: 1
  24047. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24048. type: string
  24049. type: object
  24050. type: object
  24051. version:
  24052. default: v2
  24053. description: |-
  24054. Version is the Vault KV secret engine version. This can be either "v1" or
  24055. "v2". Version defaults to "v2".
  24056. enum:
  24057. - v1
  24058. - v2
  24059. type: string
  24060. required:
  24061. - server
  24062. type: object
  24063. webhook:
  24064. description: Webhook configures this store to sync secrets using a generic templated webhook
  24065. properties:
  24066. auth:
  24067. description: Auth specifies a authorization protocol. Only one protocol may be set.
  24068. maxProperties: 1
  24069. minProperties: 1
  24070. properties:
  24071. ntlm:
  24072. description: NTLMProtocol configures the store to use NTLM for auth
  24073. properties:
  24074. passwordSecret:
  24075. description: |-
  24076. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24077. In some instances, `key` is a required field.
  24078. properties:
  24079. key:
  24080. description: |-
  24081. A key in the referenced Secret.
  24082. Some instances of this field may be defaulted, in others it may be required.
  24083. maxLength: 253
  24084. minLength: 1
  24085. pattern: ^[-._a-zA-Z0-9]+$
  24086. type: string
  24087. name:
  24088. description: The name of the Secret resource being referred to.
  24089. maxLength: 253
  24090. minLength: 1
  24091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24092. type: string
  24093. namespace:
  24094. description: |-
  24095. The namespace of the Secret resource being referred to.
  24096. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24097. maxLength: 63
  24098. minLength: 1
  24099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24100. type: string
  24101. type: object
  24102. usernameSecret:
  24103. description: |-
  24104. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24105. In some instances, `key` is a required field.
  24106. properties:
  24107. key:
  24108. description: |-
  24109. A key in the referenced Secret.
  24110. Some instances of this field may be defaulted, in others it may be required.
  24111. maxLength: 253
  24112. minLength: 1
  24113. pattern: ^[-._a-zA-Z0-9]+$
  24114. type: string
  24115. name:
  24116. description: The name of the Secret resource being referred to.
  24117. maxLength: 253
  24118. minLength: 1
  24119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24120. type: string
  24121. namespace:
  24122. description: |-
  24123. The namespace of the Secret resource being referred to.
  24124. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24125. maxLength: 63
  24126. minLength: 1
  24127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24128. type: string
  24129. type: object
  24130. required:
  24131. - passwordSecret
  24132. - usernameSecret
  24133. type: object
  24134. type: object
  24135. body:
  24136. description: Body
  24137. type: string
  24138. caBundle:
  24139. description: |-
  24140. PEM encoded CA bundle used to validate webhook server certificate. Only used
  24141. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24142. plain HTTP protocol connection. If not set the system root certificates
  24143. are used to validate the TLS connection.
  24144. format: byte
  24145. type: string
  24146. caProvider:
  24147. description: The provider for the CA bundle to use to validate webhook server certificate.
  24148. properties:
  24149. key:
  24150. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24151. maxLength: 253
  24152. minLength: 1
  24153. pattern: ^[-._a-zA-Z0-9]+$
  24154. type: string
  24155. name:
  24156. description: The name of the object located at the provider type.
  24157. maxLength: 253
  24158. minLength: 1
  24159. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24160. type: string
  24161. namespace:
  24162. description: The namespace the Provider type is in.
  24163. maxLength: 63
  24164. minLength: 1
  24165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24166. type: string
  24167. type:
  24168. description: The type of provider to use such as "Secret", or "ConfigMap".
  24169. enum:
  24170. - Secret
  24171. - ConfigMap
  24172. type: string
  24173. required:
  24174. - name
  24175. - type
  24176. type: object
  24177. headers:
  24178. additionalProperties:
  24179. type: string
  24180. description: Headers
  24181. type: object
  24182. method:
  24183. description: Webhook Method
  24184. type: string
  24185. result:
  24186. description: Result formatting
  24187. properties:
  24188. jsonPath:
  24189. description: Json path of return value
  24190. type: string
  24191. type: object
  24192. secrets:
  24193. description: |-
  24194. Secrets to fill in templates
  24195. These secrets will be passed to the templating function as key value pairs under the given name
  24196. items:
  24197. description: WebhookSecret defines a secret to be used in webhook templates.
  24198. properties:
  24199. name:
  24200. description: Name of this secret in templates
  24201. type: string
  24202. secretRef:
  24203. description: Secret ref to fill in credentials
  24204. properties:
  24205. key:
  24206. description: |-
  24207. A key in the referenced Secret.
  24208. Some instances of this field may be defaulted, in others it may be required.
  24209. maxLength: 253
  24210. minLength: 1
  24211. pattern: ^[-._a-zA-Z0-9]+$
  24212. type: string
  24213. name:
  24214. description: The name of the Secret resource being referred to.
  24215. maxLength: 253
  24216. minLength: 1
  24217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24218. type: string
  24219. namespace:
  24220. description: |-
  24221. The namespace of the Secret resource being referred to.
  24222. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24223. maxLength: 63
  24224. minLength: 1
  24225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24226. type: string
  24227. type: object
  24228. required:
  24229. - name
  24230. - secretRef
  24231. type: object
  24232. type: array
  24233. timeout:
  24234. description: Timeout
  24235. type: string
  24236. url:
  24237. description: Webhook url to call
  24238. type: string
  24239. required:
  24240. - result
  24241. - url
  24242. type: object
  24243. yandexcertificatemanager:
  24244. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  24245. properties:
  24246. apiEndpoint:
  24247. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24248. type: string
  24249. auth:
  24250. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  24251. properties:
  24252. authorizedKeySecretRef:
  24253. description: The authorized key used for authentication
  24254. properties:
  24255. key:
  24256. description: |-
  24257. A key in the referenced Secret.
  24258. Some instances of this field may be defaulted, in others it may be required.
  24259. maxLength: 253
  24260. minLength: 1
  24261. pattern: ^[-._a-zA-Z0-9]+$
  24262. type: string
  24263. name:
  24264. description: The name of the Secret resource being referred to.
  24265. maxLength: 253
  24266. minLength: 1
  24267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24268. type: string
  24269. namespace:
  24270. description: |-
  24271. The namespace of the Secret resource being referred to.
  24272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24273. maxLength: 63
  24274. minLength: 1
  24275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24276. type: string
  24277. type: object
  24278. type: object
  24279. caProvider:
  24280. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24281. properties:
  24282. certSecretRef:
  24283. description: |-
  24284. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24285. In some instances, `key` is a required field.
  24286. properties:
  24287. key:
  24288. description: |-
  24289. A key in the referenced Secret.
  24290. Some instances of this field may be defaulted, in others it may be required.
  24291. maxLength: 253
  24292. minLength: 1
  24293. pattern: ^[-._a-zA-Z0-9]+$
  24294. type: string
  24295. name:
  24296. description: The name of the Secret resource being referred to.
  24297. maxLength: 253
  24298. minLength: 1
  24299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24300. type: string
  24301. namespace:
  24302. description: |-
  24303. The namespace of the Secret resource being referred to.
  24304. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24305. maxLength: 63
  24306. minLength: 1
  24307. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24308. type: string
  24309. type: object
  24310. type: object
  24311. required:
  24312. - auth
  24313. type: object
  24314. yandexlockbox:
  24315. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  24316. properties:
  24317. apiEndpoint:
  24318. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24319. type: string
  24320. auth:
  24321. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  24322. properties:
  24323. authorizedKeySecretRef:
  24324. description: The authorized key used for authentication
  24325. properties:
  24326. key:
  24327. description: |-
  24328. A key in the referenced Secret.
  24329. Some instances of this field may be defaulted, in others it may be required.
  24330. maxLength: 253
  24331. minLength: 1
  24332. pattern: ^[-._a-zA-Z0-9]+$
  24333. type: string
  24334. name:
  24335. description: The name of the Secret resource being referred to.
  24336. maxLength: 253
  24337. minLength: 1
  24338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24339. type: string
  24340. namespace:
  24341. description: |-
  24342. The namespace of the Secret resource being referred to.
  24343. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24344. maxLength: 63
  24345. minLength: 1
  24346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24347. type: string
  24348. type: object
  24349. type: object
  24350. caProvider:
  24351. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24352. properties:
  24353. certSecretRef:
  24354. description: |-
  24355. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24356. In some instances, `key` is a required field.
  24357. properties:
  24358. key:
  24359. description: |-
  24360. A key in the referenced Secret.
  24361. Some instances of this field may be defaulted, in others it may be required.
  24362. maxLength: 253
  24363. minLength: 1
  24364. pattern: ^[-._a-zA-Z0-9]+$
  24365. type: string
  24366. name:
  24367. description: The name of the Secret resource being referred to.
  24368. maxLength: 253
  24369. minLength: 1
  24370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24371. type: string
  24372. namespace:
  24373. description: |-
  24374. The namespace of the Secret resource being referred to.
  24375. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24376. maxLength: 63
  24377. minLength: 1
  24378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24379. type: string
  24380. type: object
  24381. type: object
  24382. required:
  24383. - auth
  24384. type: object
  24385. type: object
  24386. refreshInterval:
  24387. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  24388. type: integer
  24389. retrySettings:
  24390. description: Used to configure HTTP retries on failures.
  24391. properties:
  24392. maxRetries:
  24393. description: MaxRetries is the maximum number of retry attempts.
  24394. format: int32
  24395. type: integer
  24396. retryInterval:
  24397. description: RetryInterval is the interval between retry attempts.
  24398. type: string
  24399. type: object
  24400. required:
  24401. - provider
  24402. type: object
  24403. status:
  24404. description: SecretStoreStatus defines the observed state of the SecretStore.
  24405. properties:
  24406. capabilities:
  24407. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  24408. type: string
  24409. conditions:
  24410. items:
  24411. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  24412. properties:
  24413. lastTransitionTime:
  24414. format: date-time
  24415. type: string
  24416. message:
  24417. type: string
  24418. reason:
  24419. type: string
  24420. status:
  24421. type: string
  24422. type:
  24423. description: SecretStoreConditionType represents the condition type of the SecretStore.
  24424. type: string
  24425. required:
  24426. - status
  24427. - type
  24428. type: object
  24429. type: array
  24430. type: object
  24431. type: object
  24432. served: false
  24433. storage: false
  24434. subresources:
  24435. status: {}
  24436. ---
  24437. apiVersion: apiextensions.k8s.io/v1
  24438. kind: CustomResourceDefinition
  24439. metadata:
  24440. annotations:
  24441. controller-gen.kubebuilder.io/version: v0.19.0
  24442. labels:
  24443. external-secrets.io/component: controller
  24444. name: acraccesstokens.generators.external-secrets.io
  24445. spec:
  24446. group: generators.external-secrets.io
  24447. names:
  24448. categories:
  24449. - external-secrets
  24450. - external-secrets-generators
  24451. kind: ACRAccessToken
  24452. listKind: ACRAccessTokenList
  24453. plural: acraccesstokens
  24454. singular: acraccesstoken
  24455. scope: Namespaced
  24456. versions:
  24457. - name: v1alpha1
  24458. schema:
  24459. openAPIV3Schema:
  24460. description: |-
  24461. ACRAccessToken returns an Azure Container Registry token
  24462. that can be used for pushing/pulling images.
  24463. Note: by default it will return an ACR Refresh Token with full access
  24464. (depending on the identity).
  24465. This can be scoped down to the repository level using .spec.scope.
  24466. In case scope is defined it will return an ACR Access Token.
  24467. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  24468. properties:
  24469. apiVersion:
  24470. description: |-
  24471. APIVersion defines the versioned schema of this representation of an object.
  24472. Servers should convert recognized schemas to the latest internal value, and
  24473. may reject unrecognized values.
  24474. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24475. type: string
  24476. kind:
  24477. description: |-
  24478. Kind is a string value representing the REST resource this object represents.
  24479. Servers may infer this from the endpoint the client submits requests to.
  24480. Cannot be updated.
  24481. In CamelCase.
  24482. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24483. type: string
  24484. metadata:
  24485. type: object
  24486. spec:
  24487. description: |-
  24488. ACRAccessTokenSpec defines how to generate the access token
  24489. e.g. how to authenticate and which registry to use.
  24490. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  24491. properties:
  24492. auth:
  24493. description: ACRAuth defines the authentication methods for Azure Container Registry.
  24494. properties:
  24495. managedIdentity:
  24496. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  24497. properties:
  24498. identityId:
  24499. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  24500. type: string
  24501. type: object
  24502. servicePrincipal:
  24503. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  24504. properties:
  24505. secretRef:
  24506. description: |-
  24507. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  24508. It uses static credentials stored in a Kind=Secret.
  24509. properties:
  24510. clientId:
  24511. description: The Azure clientId of the service principle used for authentication.
  24512. properties:
  24513. key:
  24514. description: |-
  24515. A key in the referenced Secret.
  24516. Some instances of this field may be defaulted, in others it may be required.
  24517. maxLength: 253
  24518. minLength: 1
  24519. pattern: ^[-._a-zA-Z0-9]+$
  24520. type: string
  24521. name:
  24522. description: The name of the Secret resource being referred to.
  24523. maxLength: 253
  24524. minLength: 1
  24525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24526. type: string
  24527. namespace:
  24528. description: |-
  24529. The namespace of the Secret resource being referred to.
  24530. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24531. maxLength: 63
  24532. minLength: 1
  24533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24534. type: string
  24535. type: object
  24536. clientSecret:
  24537. description: The Azure ClientSecret of the service principle used for authentication.
  24538. properties:
  24539. key:
  24540. description: |-
  24541. A key in the referenced Secret.
  24542. Some instances of this field may be defaulted, in others it may be required.
  24543. maxLength: 253
  24544. minLength: 1
  24545. pattern: ^[-._a-zA-Z0-9]+$
  24546. type: string
  24547. name:
  24548. description: The name of the Secret resource being referred to.
  24549. maxLength: 253
  24550. minLength: 1
  24551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24552. type: string
  24553. namespace:
  24554. description: |-
  24555. The namespace of the Secret resource being referred to.
  24556. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24557. maxLength: 63
  24558. minLength: 1
  24559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24560. type: string
  24561. type: object
  24562. type: object
  24563. required:
  24564. - secretRef
  24565. type: object
  24566. workloadIdentity:
  24567. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  24568. properties:
  24569. serviceAccountRef:
  24570. description: |-
  24571. ServiceAccountRef specified the service account
  24572. that should be used when authenticating with WorkloadIdentity.
  24573. properties:
  24574. audiences:
  24575. description: |-
  24576. Audience specifies the `aud` claim for the service account token
  24577. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24578. then this audiences will be appended to the list
  24579. items:
  24580. type: string
  24581. type: array
  24582. name:
  24583. description: The name of the ServiceAccount resource being referred to.
  24584. maxLength: 253
  24585. minLength: 1
  24586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24587. type: string
  24588. namespace:
  24589. description: |-
  24590. Namespace of the resource being referred to.
  24591. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24592. maxLength: 63
  24593. minLength: 1
  24594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24595. type: string
  24596. required:
  24597. - name
  24598. type: object
  24599. type: object
  24600. type: object
  24601. environmentType:
  24602. default: PublicCloud
  24603. description: |-
  24604. EnvironmentType specifies the Azure cloud environment endpoints to use for
  24605. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  24606. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  24607. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  24608. enum:
  24609. - PublicCloud
  24610. - USGovernmentCloud
  24611. - ChinaCloud
  24612. - GermanCloud
  24613. - AzureStackCloud
  24614. type: string
  24615. registry:
  24616. description: |-
  24617. the domain name of the ACR registry
  24618. e.g. foobarexample.azurecr.io
  24619. type: string
  24620. scope:
  24621. description: |-
  24622. Define the scope for the access token, e.g. pull/push access for a repository.
  24623. if not provided it will return a refresh token that has full scope.
  24624. Note: you need to pin it down to the repository level, there is no wildcard available.
  24625. examples:
  24626. repository:my-repository:pull,push
  24627. repository:my-repository:pull
  24628. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  24629. type: string
  24630. tenantId:
  24631. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  24632. type: string
  24633. required:
  24634. - auth
  24635. - registry
  24636. type: object
  24637. type: object
  24638. served: true
  24639. storage: true
  24640. subresources:
  24641. status: {}
  24642. ---
  24643. apiVersion: apiextensions.k8s.io/v1
  24644. kind: CustomResourceDefinition
  24645. metadata:
  24646. annotations:
  24647. controller-gen.kubebuilder.io/version: v0.19.0
  24648. labels:
  24649. external-secrets.io/component: controller
  24650. name: cloudsmithaccesstokens.generators.external-secrets.io
  24651. spec:
  24652. group: generators.external-secrets.io
  24653. names:
  24654. categories:
  24655. - external-secrets
  24656. - external-secrets-generators
  24657. kind: CloudsmithAccessToken
  24658. listKind: CloudsmithAccessTokenList
  24659. plural: cloudsmithaccesstokens
  24660. singular: cloudsmithaccesstoken
  24661. scope: Namespaced
  24662. versions:
  24663. - name: v1alpha1
  24664. schema:
  24665. openAPIV3Schema:
  24666. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  24667. properties:
  24668. apiVersion:
  24669. description: |-
  24670. APIVersion defines the versioned schema of this representation of an object.
  24671. Servers should convert recognized schemas to the latest internal value, and
  24672. may reject unrecognized values.
  24673. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24674. type: string
  24675. kind:
  24676. description: |-
  24677. Kind is a string value representing the REST resource this object represents.
  24678. Servers may infer this from the endpoint the client submits requests to.
  24679. Cannot be updated.
  24680. In CamelCase.
  24681. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24682. type: string
  24683. metadata:
  24684. type: object
  24685. spec:
  24686. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  24687. properties:
  24688. apiUrl:
  24689. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  24690. type: string
  24691. orgSlug:
  24692. description: OrgSlug is the organization slug in Cloudsmith
  24693. type: string
  24694. serviceAccountRef:
  24695. description: Name of the service account you are federating with
  24696. properties:
  24697. audiences:
  24698. description: |-
  24699. Audience specifies the `aud` claim for the service account token
  24700. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24701. then this audiences will be appended to the list
  24702. items:
  24703. type: string
  24704. type: array
  24705. name:
  24706. description: The name of the ServiceAccount resource being referred to.
  24707. maxLength: 253
  24708. minLength: 1
  24709. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24710. type: string
  24711. namespace:
  24712. description: |-
  24713. Namespace of the resource being referred to.
  24714. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24715. maxLength: 63
  24716. minLength: 1
  24717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24718. type: string
  24719. required:
  24720. - name
  24721. type: object
  24722. serviceSlug:
  24723. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  24724. type: string
  24725. required:
  24726. - orgSlug
  24727. - serviceAccountRef
  24728. - serviceSlug
  24729. type: object
  24730. type: object
  24731. served: true
  24732. storage: true
  24733. subresources:
  24734. status: {}
  24735. ---
  24736. apiVersion: apiextensions.k8s.io/v1
  24737. kind: CustomResourceDefinition
  24738. metadata:
  24739. annotations:
  24740. controller-gen.kubebuilder.io/version: v0.19.0
  24741. labels:
  24742. external-secrets.io/component: controller
  24743. name: clustergenerators.generators.external-secrets.io
  24744. spec:
  24745. group: generators.external-secrets.io
  24746. names:
  24747. categories:
  24748. - external-secrets
  24749. - external-secrets-generators
  24750. kind: ClusterGenerator
  24751. listKind: ClusterGeneratorList
  24752. plural: clustergenerators
  24753. singular: clustergenerator
  24754. scope: Cluster
  24755. versions:
  24756. - name: v1alpha1
  24757. schema:
  24758. openAPIV3Schema:
  24759. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  24760. properties:
  24761. apiVersion:
  24762. description: |-
  24763. APIVersion defines the versioned schema of this representation of an object.
  24764. Servers should convert recognized schemas to the latest internal value, and
  24765. may reject unrecognized values.
  24766. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24767. type: string
  24768. kind:
  24769. description: |-
  24770. Kind is a string value representing the REST resource this object represents.
  24771. Servers may infer this from the endpoint the client submits requests to.
  24772. Cannot be updated.
  24773. In CamelCase.
  24774. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24775. type: string
  24776. metadata:
  24777. type: object
  24778. spec:
  24779. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  24780. properties:
  24781. generator:
  24782. description: Generator the spec for this generator, must match the kind.
  24783. maxProperties: 1
  24784. minProperties: 1
  24785. properties:
  24786. acrAccessTokenSpec:
  24787. description: |-
  24788. ACRAccessTokenSpec defines how to generate the access token
  24789. e.g. how to authenticate and which registry to use.
  24790. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  24791. properties:
  24792. auth:
  24793. description: ACRAuth defines the authentication methods for Azure Container Registry.
  24794. properties:
  24795. managedIdentity:
  24796. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  24797. properties:
  24798. identityId:
  24799. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  24800. type: string
  24801. type: object
  24802. servicePrincipal:
  24803. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  24804. properties:
  24805. secretRef:
  24806. description: |-
  24807. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  24808. It uses static credentials stored in a Kind=Secret.
  24809. properties:
  24810. clientId:
  24811. description: The Azure clientId of the service principle used for authentication.
  24812. properties:
  24813. key:
  24814. description: |-
  24815. A key in the referenced Secret.
  24816. Some instances of this field may be defaulted, in others it may be required.
  24817. maxLength: 253
  24818. minLength: 1
  24819. pattern: ^[-._a-zA-Z0-9]+$
  24820. type: string
  24821. name:
  24822. description: The name of the Secret resource being referred to.
  24823. maxLength: 253
  24824. minLength: 1
  24825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24826. type: string
  24827. namespace:
  24828. description: |-
  24829. The namespace of the Secret resource being referred to.
  24830. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24831. maxLength: 63
  24832. minLength: 1
  24833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24834. type: string
  24835. type: object
  24836. clientSecret:
  24837. description: The Azure ClientSecret of the service principle used for authentication.
  24838. properties:
  24839. key:
  24840. description: |-
  24841. A key in the referenced Secret.
  24842. Some instances of this field may be defaulted, in others it may be required.
  24843. maxLength: 253
  24844. minLength: 1
  24845. pattern: ^[-._a-zA-Z0-9]+$
  24846. type: string
  24847. name:
  24848. description: The name of the Secret resource being referred to.
  24849. maxLength: 253
  24850. minLength: 1
  24851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24852. type: string
  24853. namespace:
  24854. description: |-
  24855. The namespace of the Secret resource being referred to.
  24856. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24857. maxLength: 63
  24858. minLength: 1
  24859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24860. type: string
  24861. type: object
  24862. type: object
  24863. required:
  24864. - secretRef
  24865. type: object
  24866. workloadIdentity:
  24867. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  24868. properties:
  24869. serviceAccountRef:
  24870. description: |-
  24871. ServiceAccountRef specified the service account
  24872. that should be used when authenticating with WorkloadIdentity.
  24873. properties:
  24874. audiences:
  24875. description: |-
  24876. Audience specifies the `aud` claim for the service account token
  24877. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24878. then this audiences will be appended to the list
  24879. items:
  24880. type: string
  24881. type: array
  24882. name:
  24883. description: The name of the ServiceAccount resource being referred to.
  24884. maxLength: 253
  24885. minLength: 1
  24886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24887. type: string
  24888. namespace:
  24889. description: |-
  24890. Namespace of the resource being referred to.
  24891. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24892. maxLength: 63
  24893. minLength: 1
  24894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24895. type: string
  24896. required:
  24897. - name
  24898. type: object
  24899. type: object
  24900. type: object
  24901. environmentType:
  24902. default: PublicCloud
  24903. description: |-
  24904. EnvironmentType specifies the Azure cloud environment endpoints to use for
  24905. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  24906. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  24907. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  24908. enum:
  24909. - PublicCloud
  24910. - USGovernmentCloud
  24911. - ChinaCloud
  24912. - GermanCloud
  24913. - AzureStackCloud
  24914. type: string
  24915. registry:
  24916. description: |-
  24917. the domain name of the ACR registry
  24918. e.g. foobarexample.azurecr.io
  24919. type: string
  24920. scope:
  24921. description: |-
  24922. Define the scope for the access token, e.g. pull/push access for a repository.
  24923. if not provided it will return a refresh token that has full scope.
  24924. Note: you need to pin it down to the repository level, there is no wildcard available.
  24925. examples:
  24926. repository:my-repository:pull,push
  24927. repository:my-repository:pull
  24928. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  24929. type: string
  24930. tenantId:
  24931. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  24932. type: string
  24933. required:
  24934. - auth
  24935. - registry
  24936. type: object
  24937. cloudsmithAccessTokenSpec:
  24938. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  24939. properties:
  24940. apiUrl:
  24941. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  24942. type: string
  24943. orgSlug:
  24944. description: OrgSlug is the organization slug in Cloudsmith
  24945. type: string
  24946. serviceAccountRef:
  24947. description: Name of the service account you are federating with
  24948. properties:
  24949. audiences:
  24950. description: |-
  24951. Audience specifies the `aud` claim for the service account token
  24952. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24953. then this audiences will be appended to the list
  24954. items:
  24955. type: string
  24956. type: array
  24957. name:
  24958. description: The name of the ServiceAccount resource being referred to.
  24959. maxLength: 253
  24960. minLength: 1
  24961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24962. type: string
  24963. namespace:
  24964. description: |-
  24965. Namespace of the resource being referred to.
  24966. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24967. maxLength: 63
  24968. minLength: 1
  24969. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24970. type: string
  24971. required:
  24972. - name
  24973. type: object
  24974. serviceSlug:
  24975. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  24976. type: string
  24977. required:
  24978. - orgSlug
  24979. - serviceAccountRef
  24980. - serviceSlug
  24981. type: object
  24982. ecrAuthorizationTokenSpec:
  24983. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  24984. properties:
  24985. auth:
  24986. description: Auth defines how to authenticate with AWS
  24987. properties:
  24988. jwt:
  24989. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  24990. properties:
  24991. serviceAccountRef:
  24992. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  24993. properties:
  24994. audiences:
  24995. description: |-
  24996. Audience specifies the `aud` claim for the service account token
  24997. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24998. then this audiences will be appended to the list
  24999. items:
  25000. type: string
  25001. type: array
  25002. name:
  25003. description: The name of the ServiceAccount resource being referred to.
  25004. maxLength: 253
  25005. minLength: 1
  25006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25007. type: string
  25008. namespace:
  25009. description: |-
  25010. Namespace of the resource being referred to.
  25011. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25012. maxLength: 63
  25013. minLength: 1
  25014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25015. type: string
  25016. required:
  25017. - name
  25018. type: object
  25019. type: object
  25020. secretRef:
  25021. description: |-
  25022. AWSAuthSecretRef holds secret references for AWS credentials
  25023. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  25024. properties:
  25025. accessKeyIDSecretRef:
  25026. description: The AccessKeyID is used for authentication
  25027. properties:
  25028. key:
  25029. description: |-
  25030. A key in the referenced Secret.
  25031. Some instances of this field may be defaulted, in others it may be required.
  25032. maxLength: 253
  25033. minLength: 1
  25034. pattern: ^[-._a-zA-Z0-9]+$
  25035. type: string
  25036. name:
  25037. description: The name of the Secret resource being referred to.
  25038. maxLength: 253
  25039. minLength: 1
  25040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25041. type: string
  25042. namespace:
  25043. description: |-
  25044. The namespace of the Secret resource being referred to.
  25045. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25046. maxLength: 63
  25047. minLength: 1
  25048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25049. type: string
  25050. type: object
  25051. secretAccessKeySecretRef:
  25052. description: The SecretAccessKey is used for authentication
  25053. properties:
  25054. key:
  25055. description: |-
  25056. A key in the referenced Secret.
  25057. Some instances of this field may be defaulted, in others it may be required.
  25058. maxLength: 253
  25059. minLength: 1
  25060. pattern: ^[-._a-zA-Z0-9]+$
  25061. type: string
  25062. name:
  25063. description: The name of the Secret resource being referred to.
  25064. maxLength: 253
  25065. minLength: 1
  25066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25067. type: string
  25068. namespace:
  25069. description: |-
  25070. The namespace of the Secret resource being referred to.
  25071. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25072. maxLength: 63
  25073. minLength: 1
  25074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25075. type: string
  25076. type: object
  25077. sessionTokenSecretRef:
  25078. description: |-
  25079. The SessionToken used for authentication
  25080. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  25081. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  25082. properties:
  25083. key:
  25084. description: |-
  25085. A key in the referenced Secret.
  25086. Some instances of this field may be defaulted, in others it may be required.
  25087. maxLength: 253
  25088. minLength: 1
  25089. pattern: ^[-._a-zA-Z0-9]+$
  25090. type: string
  25091. name:
  25092. description: The name of the Secret resource being referred to.
  25093. maxLength: 253
  25094. minLength: 1
  25095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25096. type: string
  25097. namespace:
  25098. description: |-
  25099. The namespace of the Secret resource being referred to.
  25100. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25101. maxLength: 63
  25102. minLength: 1
  25103. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25104. type: string
  25105. type: object
  25106. type: object
  25107. type: object
  25108. region:
  25109. description: Region specifies the region to operate in.
  25110. type: string
  25111. role:
  25112. description: |-
  25113. You can assume a role before making calls to the
  25114. desired AWS service.
  25115. type: string
  25116. scope:
  25117. description: |-
  25118. Scope specifies the ECR service scope.
  25119. Valid options are private and public.
  25120. type: string
  25121. required:
  25122. - region
  25123. type: object
  25124. fakeSpec:
  25125. description: FakeSpec contains the static data.
  25126. properties:
  25127. controller:
  25128. description: |-
  25129. Used to select the correct ESO controller (think: ingress.ingressClassName)
  25130. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  25131. type: string
  25132. data:
  25133. additionalProperties:
  25134. type: string
  25135. description: |-
  25136. Data defines the static data returned
  25137. by this generator.
  25138. type: object
  25139. type: object
  25140. gcrAccessTokenSpec:
  25141. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  25142. properties:
  25143. auth:
  25144. description: Auth defines the means for authenticating with GCP
  25145. properties:
  25146. secretRef:
  25147. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  25148. properties:
  25149. secretAccessKeySecretRef:
  25150. description: The SecretAccessKey is used for authentication
  25151. properties:
  25152. key:
  25153. description: |-
  25154. A key in the referenced Secret.
  25155. Some instances of this field may be defaulted, in others it may be required.
  25156. maxLength: 253
  25157. minLength: 1
  25158. pattern: ^[-._a-zA-Z0-9]+$
  25159. type: string
  25160. name:
  25161. description: The name of the Secret resource being referred to.
  25162. maxLength: 253
  25163. minLength: 1
  25164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25165. type: string
  25166. namespace:
  25167. description: |-
  25168. The namespace of the Secret resource being referred to.
  25169. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25170. maxLength: 63
  25171. minLength: 1
  25172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25173. type: string
  25174. type: object
  25175. type: object
  25176. workloadIdentity:
  25177. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  25178. properties:
  25179. clusterLocation:
  25180. type: string
  25181. clusterName:
  25182. type: string
  25183. clusterProjectID:
  25184. type: string
  25185. serviceAccountRef:
  25186. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25187. properties:
  25188. audiences:
  25189. description: |-
  25190. Audience specifies the `aud` claim for the service account token
  25191. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25192. then this audiences will be appended to the list
  25193. items:
  25194. type: string
  25195. type: array
  25196. name:
  25197. description: The name of the ServiceAccount resource being referred to.
  25198. maxLength: 253
  25199. minLength: 1
  25200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25201. type: string
  25202. namespace:
  25203. description: |-
  25204. Namespace of the resource being referred to.
  25205. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25206. maxLength: 63
  25207. minLength: 1
  25208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25209. type: string
  25210. required:
  25211. - name
  25212. type: object
  25213. required:
  25214. - clusterLocation
  25215. - clusterName
  25216. - serviceAccountRef
  25217. type: object
  25218. workloadIdentityFederation:
  25219. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  25220. properties:
  25221. audience:
  25222. description: |-
  25223. 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.
  25224. If specified, Audience found in the external account credential config will be overridden with the configured value.
  25225. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  25226. type: string
  25227. awsSecurityCredentials:
  25228. description: |-
  25229. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  25230. when using the AWS metadata server is not an option.
  25231. properties:
  25232. awsCredentialsSecretRef:
  25233. description: |-
  25234. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  25235. Secret should be created with below names for keys
  25236. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  25237. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  25238. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  25239. properties:
  25240. name:
  25241. description: name of the secret.
  25242. maxLength: 253
  25243. minLength: 1
  25244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25245. type: string
  25246. namespace:
  25247. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  25248. maxLength: 63
  25249. minLength: 1
  25250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25251. type: string
  25252. required:
  25253. - name
  25254. type: object
  25255. region:
  25256. description: region is for configuring the AWS region to be used.
  25257. example: ap-south-1
  25258. maxLength: 50
  25259. minLength: 1
  25260. pattern: ^[a-z0-9-]+$
  25261. type: string
  25262. required:
  25263. - awsCredentialsSecretRef
  25264. - region
  25265. type: object
  25266. credConfig:
  25267. description: |-
  25268. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  25269. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  25270. serviceAccountRef must be used by providing operators service account details.
  25271. properties:
  25272. key:
  25273. description: key name holding the external account credential config.
  25274. maxLength: 253
  25275. minLength: 1
  25276. pattern: ^[-._a-zA-Z0-9]+$
  25277. type: string
  25278. name:
  25279. description: name of the configmap.
  25280. maxLength: 253
  25281. minLength: 1
  25282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25283. type: string
  25284. namespace:
  25285. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  25286. maxLength: 63
  25287. minLength: 1
  25288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25289. type: string
  25290. required:
  25291. - key
  25292. - name
  25293. type: object
  25294. externalTokenEndpoint:
  25295. description: |-
  25296. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  25297. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  25298. URL is having the expected value.
  25299. type: string
  25300. serviceAccountRef:
  25301. description: |-
  25302. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  25303. when Kubernetes is configured as provider in workload identity pool.
  25304. properties:
  25305. audiences:
  25306. description: |-
  25307. Audience specifies the `aud` claim for the service account token
  25308. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25309. then this audiences will be appended to the list
  25310. items:
  25311. type: string
  25312. type: array
  25313. name:
  25314. description: The name of the ServiceAccount resource being referred to.
  25315. maxLength: 253
  25316. minLength: 1
  25317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25318. type: string
  25319. namespace:
  25320. description: |-
  25321. Namespace of the resource being referred to.
  25322. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25323. maxLength: 63
  25324. minLength: 1
  25325. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25326. type: string
  25327. required:
  25328. - name
  25329. type: object
  25330. type: object
  25331. type: object
  25332. projectID:
  25333. description: ProjectID defines which project to use to authenticate with
  25334. type: string
  25335. required:
  25336. - auth
  25337. - projectID
  25338. type: object
  25339. githubAccessTokenSpec:
  25340. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  25341. properties:
  25342. appID:
  25343. type: string
  25344. auth:
  25345. description: Auth configures how ESO authenticates with a Github instance.
  25346. properties:
  25347. privateKey:
  25348. description: GithubSecretRef references a secret containing GitHub credentials.
  25349. properties:
  25350. secretRef:
  25351. description: |-
  25352. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25353. In some instances, `key` is a required field.
  25354. properties:
  25355. key:
  25356. description: |-
  25357. A key in the referenced Secret.
  25358. Some instances of this field may be defaulted, in others it may be required.
  25359. maxLength: 253
  25360. minLength: 1
  25361. pattern: ^[-._a-zA-Z0-9]+$
  25362. type: string
  25363. name:
  25364. description: The name of the Secret resource being referred to.
  25365. maxLength: 253
  25366. minLength: 1
  25367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25368. type: string
  25369. namespace:
  25370. description: |-
  25371. The namespace of the Secret resource being referred to.
  25372. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25373. maxLength: 63
  25374. minLength: 1
  25375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25376. type: string
  25377. type: object
  25378. required:
  25379. - secretRef
  25380. type: object
  25381. required:
  25382. - privateKey
  25383. type: object
  25384. installID:
  25385. type: string
  25386. permissions:
  25387. additionalProperties:
  25388. type: string
  25389. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  25390. type: object
  25391. repositories:
  25392. description: |-
  25393. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  25394. is installed to.
  25395. items:
  25396. type: string
  25397. type: array
  25398. url:
  25399. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  25400. type: string
  25401. required:
  25402. - appID
  25403. - auth
  25404. - installID
  25405. type: object
  25406. grafanaSpec:
  25407. description: GrafanaSpec controls the behavior of the grafana generator.
  25408. properties:
  25409. auth:
  25410. description: |-
  25411. Auth is the authentication configuration to authenticate
  25412. against the Grafana instance.
  25413. properties:
  25414. basic:
  25415. description: |-
  25416. Basic auth credentials used to authenticate against the Grafana instance.
  25417. Note: you need a token which has elevated permissions to create service accounts.
  25418. See here for the documentation on basic roles offered by Grafana:
  25419. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25420. properties:
  25421. password:
  25422. description: A basic auth password used to authenticate against the Grafana instance.
  25423. properties:
  25424. key:
  25425. description: The key where the token is found.
  25426. maxLength: 253
  25427. minLength: 1
  25428. pattern: ^[-._a-zA-Z0-9]+$
  25429. type: string
  25430. name:
  25431. description: The name of the Secret resource being referred to.
  25432. maxLength: 253
  25433. minLength: 1
  25434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25435. type: string
  25436. type: object
  25437. username:
  25438. description: A basic auth username used to authenticate against the Grafana instance.
  25439. type: string
  25440. required:
  25441. - password
  25442. - username
  25443. type: object
  25444. token:
  25445. description: |-
  25446. A service account token used to authenticate against the Grafana instance.
  25447. Note: you need a token which has elevated permissions to create service accounts.
  25448. See here for the documentation on basic roles offered by Grafana:
  25449. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25450. properties:
  25451. key:
  25452. description: The key where the token is found.
  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. type: object
  25464. type: object
  25465. serviceAccount:
  25466. description: |-
  25467. ServiceAccount is the configuration for the service account that
  25468. is supposed to be generated by the generator.
  25469. properties:
  25470. name:
  25471. description: Name is the name of the service account that will be created by ESO.
  25472. type: string
  25473. role:
  25474. description: |-
  25475. Role is the role of the service account.
  25476. See here for the documentation on basic roles offered by Grafana:
  25477. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25478. type: string
  25479. required:
  25480. - name
  25481. - role
  25482. type: object
  25483. url:
  25484. description: URL is the URL of the Grafana instance.
  25485. type: string
  25486. required:
  25487. - auth
  25488. - serviceAccount
  25489. - url
  25490. type: object
  25491. mfaSpec:
  25492. description: MFASpec controls the behavior of the mfa generator.
  25493. properties:
  25494. algorithm:
  25495. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  25496. type: string
  25497. length:
  25498. description: Length defines the token length. Defaults to 6 characters.
  25499. type: integer
  25500. secret:
  25501. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  25502. properties:
  25503. key:
  25504. description: |-
  25505. A key in the referenced Secret.
  25506. Some instances of this field may be defaulted, in others it may be required.
  25507. maxLength: 253
  25508. minLength: 1
  25509. pattern: ^[-._a-zA-Z0-9]+$
  25510. type: string
  25511. name:
  25512. description: The name of the Secret resource being referred to.
  25513. maxLength: 253
  25514. minLength: 1
  25515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25516. type: string
  25517. namespace:
  25518. description: |-
  25519. The namespace of the Secret resource being referred to.
  25520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25521. maxLength: 63
  25522. minLength: 1
  25523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25524. type: string
  25525. type: object
  25526. timePeriod:
  25527. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  25528. type: integer
  25529. when:
  25530. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  25531. format: date-time
  25532. type: string
  25533. required:
  25534. - secret
  25535. type: object
  25536. passwordSpec:
  25537. description: PasswordSpec controls the behavior of the password generator.
  25538. properties:
  25539. allowRepeat:
  25540. default: false
  25541. description: set AllowRepeat to true to allow repeating characters.
  25542. type: boolean
  25543. digits:
  25544. description: |-
  25545. Digits specifies the number of digits in the generated
  25546. password. If omitted it defaults to 25% of the length of the password
  25547. type: integer
  25548. encoding:
  25549. default: raw
  25550. description: |-
  25551. Encoding specifies the encoding of the generated password.
  25552. Valid values are:
  25553. - "raw" (default): no encoding
  25554. - "base64": standard base64 encoding
  25555. - "base64url": base64url encoding
  25556. - "base32": base32 encoding
  25557. - "hex": hexadecimal encoding
  25558. enum:
  25559. - base64
  25560. - base64url
  25561. - base32
  25562. - hex
  25563. - raw
  25564. type: string
  25565. length:
  25566. default: 24
  25567. description: |-
  25568. Length of the password to be generated.
  25569. Defaults to 24
  25570. type: integer
  25571. noUpper:
  25572. default: false
  25573. description: Set NoUpper to disable uppercase characters
  25574. type: boolean
  25575. secretKeys:
  25576. description: |-
  25577. SecretKeys defines the keys that will be populated with generated passwords.
  25578. Defaults to "password" when not set.
  25579. items:
  25580. type: string
  25581. minItems: 1
  25582. type: array
  25583. symbolCharacters:
  25584. description: |-
  25585. SymbolCharacters specifies the special characters that should be used
  25586. in the generated password.
  25587. type: string
  25588. symbols:
  25589. description: |-
  25590. Symbols specifies the number of symbol characters in the generated
  25591. password. If omitted it defaults to 25% of the length of the password
  25592. type: integer
  25593. required:
  25594. - allowRepeat
  25595. - length
  25596. - noUpper
  25597. type: object
  25598. quayAccessTokenSpec:
  25599. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  25600. properties:
  25601. robotAccount:
  25602. description: Name of the robot account you are federating with
  25603. type: string
  25604. serviceAccountRef:
  25605. description: Name of the service account you are federating with
  25606. properties:
  25607. audiences:
  25608. description: |-
  25609. Audience specifies the `aud` claim for the service account token
  25610. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25611. then this audiences will be appended to the list
  25612. items:
  25613. type: string
  25614. type: array
  25615. name:
  25616. description: The name of the ServiceAccount resource being referred to.
  25617. maxLength: 253
  25618. minLength: 1
  25619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25620. type: string
  25621. namespace:
  25622. description: |-
  25623. Namespace of the resource being referred to.
  25624. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25625. maxLength: 63
  25626. minLength: 1
  25627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25628. type: string
  25629. required:
  25630. - name
  25631. type: object
  25632. url:
  25633. description: URL configures the Quay instance URL. Defaults to quay.io.
  25634. type: string
  25635. required:
  25636. - robotAccount
  25637. - serviceAccountRef
  25638. type: object
  25639. sshKeySpec:
  25640. description: SSHKeySpec controls the behavior of the ssh key generator.
  25641. properties:
  25642. comment:
  25643. description: Comment specifies an optional comment for the SSH key
  25644. type: string
  25645. keySize:
  25646. description: |-
  25647. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  25648. For RSA keys: 2048, 3072, 4096
  25649. For ECDSA keys: 256, 384, 521
  25650. Ignored for ed25519 keys
  25651. maximum: 8192
  25652. minimum: 256
  25653. type: integer
  25654. keyType:
  25655. default: rsa
  25656. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  25657. enum:
  25658. - rsa
  25659. - ecdsa
  25660. - ed25519
  25661. type: string
  25662. type: object
  25663. stsSessionTokenSpec:
  25664. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  25665. properties:
  25666. auth:
  25667. description: Auth defines how to authenticate with AWS
  25668. properties:
  25669. jwt:
  25670. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  25671. properties:
  25672. serviceAccountRef:
  25673. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25674. properties:
  25675. audiences:
  25676. description: |-
  25677. Audience specifies the `aud` claim for the service account token
  25678. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25679. then this audiences will be appended to the list
  25680. items:
  25681. type: string
  25682. type: array
  25683. name:
  25684. description: The name of the ServiceAccount resource being referred to.
  25685. maxLength: 253
  25686. minLength: 1
  25687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25688. type: string
  25689. namespace:
  25690. description: |-
  25691. Namespace of the resource being referred to.
  25692. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25693. maxLength: 63
  25694. minLength: 1
  25695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25696. type: string
  25697. required:
  25698. - name
  25699. type: object
  25700. type: object
  25701. secretRef:
  25702. description: |-
  25703. AWSAuthSecretRef holds secret references for AWS credentials
  25704. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  25705. properties:
  25706. accessKeyIDSecretRef:
  25707. description: The AccessKeyID is used for authentication
  25708. properties:
  25709. key:
  25710. description: |-
  25711. A key in the referenced Secret.
  25712. Some instances of this field may be defaulted, in others it may be required.
  25713. maxLength: 253
  25714. minLength: 1
  25715. pattern: ^[-._a-zA-Z0-9]+$
  25716. type: string
  25717. name:
  25718. description: The name of the Secret resource being referred to.
  25719. maxLength: 253
  25720. minLength: 1
  25721. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25722. type: string
  25723. namespace:
  25724. description: |-
  25725. The namespace of the Secret resource being referred to.
  25726. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25727. maxLength: 63
  25728. minLength: 1
  25729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25730. type: string
  25731. type: object
  25732. secretAccessKeySecretRef:
  25733. description: The SecretAccessKey is used for authentication
  25734. properties:
  25735. key:
  25736. description: |-
  25737. A key in the referenced Secret.
  25738. Some instances of this field may be defaulted, in others it may be required.
  25739. maxLength: 253
  25740. minLength: 1
  25741. pattern: ^[-._a-zA-Z0-9]+$
  25742. type: string
  25743. name:
  25744. description: The name of the Secret resource being referred to.
  25745. maxLength: 253
  25746. minLength: 1
  25747. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25748. type: string
  25749. namespace:
  25750. description: |-
  25751. The namespace of the Secret resource being referred to.
  25752. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25753. maxLength: 63
  25754. minLength: 1
  25755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25756. type: string
  25757. type: object
  25758. sessionTokenSecretRef:
  25759. description: |-
  25760. The SessionToken used for authentication
  25761. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  25762. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  25763. properties:
  25764. key:
  25765. description: |-
  25766. A key in the referenced Secret.
  25767. Some instances of this field may be defaulted, in others it may be required.
  25768. maxLength: 253
  25769. minLength: 1
  25770. pattern: ^[-._a-zA-Z0-9]+$
  25771. type: string
  25772. name:
  25773. description: The name of the Secret resource being referred to.
  25774. maxLength: 253
  25775. minLength: 1
  25776. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25777. type: string
  25778. namespace:
  25779. description: |-
  25780. The namespace of the Secret resource being referred to.
  25781. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25782. maxLength: 63
  25783. minLength: 1
  25784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25785. type: string
  25786. type: object
  25787. type: object
  25788. type: object
  25789. region:
  25790. description: Region specifies the region to operate in.
  25791. type: string
  25792. requestParameters:
  25793. description: RequestParameters contains parameters that can be passed to the STS service.
  25794. properties:
  25795. serialNumber:
  25796. description: |-
  25797. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  25798. the GetSessionToken call.
  25799. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  25800. (such as arn:aws:iam::123456789012:mfa/user)
  25801. type: string
  25802. sessionDuration:
  25803. format: int32
  25804. type: integer
  25805. tokenCode:
  25806. description: TokenCode is the value provided by the MFA device, if MFA is required.
  25807. type: string
  25808. type: object
  25809. role:
  25810. description: |-
  25811. You can assume a role before making calls to the
  25812. desired AWS service.
  25813. type: string
  25814. required:
  25815. - region
  25816. type: object
  25817. uuidSpec:
  25818. description: UUIDSpec controls the behavior of the uuid generator.
  25819. type: object
  25820. vaultDynamicSecretSpec:
  25821. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  25822. properties:
  25823. allowEmptyResponse:
  25824. default: false
  25825. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  25826. type: boolean
  25827. controller:
  25828. description: |-
  25829. Used to select the correct ESO controller (think: ingress.ingressClassName)
  25830. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  25831. type: string
  25832. method:
  25833. description: Vault API method to use (GET/POST/other)
  25834. type: string
  25835. parameters:
  25836. description: Parameters to pass to Vault write (for non-GET methods)
  25837. x-kubernetes-preserve-unknown-fields: true
  25838. path:
  25839. description: Vault path to obtain the dynamic secret from
  25840. type: string
  25841. provider:
  25842. description: Vault provider common spec
  25843. properties:
  25844. auth:
  25845. description: Auth configures how secret-manager authenticates with the Vault server.
  25846. properties:
  25847. appRole:
  25848. description: |-
  25849. AppRole authenticates with Vault using the App Role auth mechanism,
  25850. with the role and secret stored in a Kubernetes Secret resource.
  25851. properties:
  25852. path:
  25853. default: approle
  25854. description: |-
  25855. Path where the App Role authentication backend is mounted
  25856. in Vault, e.g: "approle"
  25857. type: string
  25858. roleId:
  25859. description: |-
  25860. RoleID configured in the App Role authentication backend when setting
  25861. up the authentication backend in Vault.
  25862. type: string
  25863. roleRef:
  25864. description: |-
  25865. Reference to a key in a Secret that contains the App Role ID used
  25866. to authenticate with Vault.
  25867. The `key` field must be specified and denotes which entry within the Secret
  25868. resource is used as the app role id.
  25869. properties:
  25870. key:
  25871. description: |-
  25872. A key in the referenced Secret.
  25873. Some instances of this field may be defaulted, in others it may be required.
  25874. maxLength: 253
  25875. minLength: 1
  25876. pattern: ^[-._a-zA-Z0-9]+$
  25877. type: string
  25878. name:
  25879. description: The name of the Secret resource being referred to.
  25880. maxLength: 253
  25881. minLength: 1
  25882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25883. type: string
  25884. namespace:
  25885. description: |-
  25886. The namespace of the Secret resource being referred to.
  25887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25888. maxLength: 63
  25889. minLength: 1
  25890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25891. type: string
  25892. type: object
  25893. secretRef:
  25894. description: |-
  25895. Reference to a key in a Secret that contains the App Role secret used
  25896. to authenticate with Vault.
  25897. The `key` field must be specified and denotes which entry within the Secret
  25898. resource is used as the app role secret.
  25899. properties:
  25900. key:
  25901. description: |-
  25902. A key in the referenced Secret.
  25903. Some instances of this field may be defaulted, in others it may be required.
  25904. maxLength: 253
  25905. minLength: 1
  25906. pattern: ^[-._a-zA-Z0-9]+$
  25907. type: string
  25908. name:
  25909. description: The name of the Secret resource being referred to.
  25910. maxLength: 253
  25911. minLength: 1
  25912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25913. type: string
  25914. namespace:
  25915. description: |-
  25916. The namespace of the Secret resource being referred to.
  25917. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25918. maxLength: 63
  25919. minLength: 1
  25920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25921. type: string
  25922. type: object
  25923. required:
  25924. - path
  25925. - secretRef
  25926. type: object
  25927. cert:
  25928. description: |-
  25929. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  25930. Cert authentication method
  25931. properties:
  25932. clientCert:
  25933. description: |-
  25934. ClientCert is a certificate to authenticate using the Cert Vault
  25935. authentication method
  25936. properties:
  25937. key:
  25938. description: |-
  25939. A key in the referenced Secret.
  25940. Some instances of this field may be defaulted, in others it may be required.
  25941. maxLength: 253
  25942. minLength: 1
  25943. pattern: ^[-._a-zA-Z0-9]+$
  25944. type: string
  25945. name:
  25946. description: The name of the Secret resource being referred to.
  25947. maxLength: 253
  25948. minLength: 1
  25949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25950. type: string
  25951. namespace:
  25952. description: |-
  25953. The namespace of the Secret resource being referred to.
  25954. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25955. maxLength: 63
  25956. minLength: 1
  25957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25958. type: string
  25959. type: object
  25960. path:
  25961. default: cert
  25962. description: |-
  25963. Path where the Certificate authentication backend is mounted
  25964. in Vault, e.g: "cert"
  25965. type: string
  25966. secretRef:
  25967. description: |-
  25968. SecretRef to a key in a Secret resource containing client private key to
  25969. authenticate with Vault using the Cert authentication method
  25970. properties:
  25971. key:
  25972. description: |-
  25973. A key in the referenced Secret.
  25974. Some instances of this field may be defaulted, in others it may be required.
  25975. maxLength: 253
  25976. minLength: 1
  25977. pattern: ^[-._a-zA-Z0-9]+$
  25978. type: string
  25979. name:
  25980. description: The name of the Secret resource being referred to.
  25981. maxLength: 253
  25982. minLength: 1
  25983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25984. type: string
  25985. namespace:
  25986. description: |-
  25987. The namespace of the Secret resource being referred to.
  25988. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25989. maxLength: 63
  25990. minLength: 1
  25991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25992. type: string
  25993. type: object
  25994. type: object
  25995. gcp:
  25996. description: |-
  25997. Gcp authenticates with Vault using Google Cloud Platform authentication method
  25998. GCP authentication method
  25999. properties:
  26000. location:
  26001. description: Location optionally defines a location/region for the secret
  26002. type: string
  26003. path:
  26004. default: gcp
  26005. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  26006. type: string
  26007. projectID:
  26008. description: Project ID of the Google Cloud Platform project
  26009. type: string
  26010. role:
  26011. 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.
  26012. type: string
  26013. secretRef:
  26014. description: Specify credentials in a Secret object
  26015. properties:
  26016. secretAccessKeySecretRef:
  26017. description: The SecretAccessKey is used for authentication
  26018. properties:
  26019. key:
  26020. description: |-
  26021. A key in the referenced Secret.
  26022. Some instances of this field may be defaulted, in others it may be required.
  26023. maxLength: 253
  26024. minLength: 1
  26025. pattern: ^[-._a-zA-Z0-9]+$
  26026. type: string
  26027. name:
  26028. description: The name of the Secret resource being referred to.
  26029. maxLength: 253
  26030. minLength: 1
  26031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26032. type: string
  26033. namespace:
  26034. description: |-
  26035. The namespace of the Secret resource being referred to.
  26036. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26037. maxLength: 63
  26038. minLength: 1
  26039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26040. type: string
  26041. type: object
  26042. type: object
  26043. serviceAccountRef:
  26044. description: ServiceAccountRef to a service account for impersonation
  26045. properties:
  26046. audiences:
  26047. description: |-
  26048. Audience specifies the `aud` claim for the service account token
  26049. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26050. then this audiences will be appended to the list
  26051. items:
  26052. type: string
  26053. type: array
  26054. name:
  26055. description: The name of the ServiceAccount resource being referred to.
  26056. maxLength: 253
  26057. minLength: 1
  26058. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26059. type: string
  26060. namespace:
  26061. description: |-
  26062. Namespace of the resource being referred to.
  26063. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26064. maxLength: 63
  26065. minLength: 1
  26066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26067. type: string
  26068. required:
  26069. - name
  26070. type: object
  26071. workloadIdentity:
  26072. description: Specify a service account with Workload Identity
  26073. properties:
  26074. clusterLocation:
  26075. description: |-
  26076. ClusterLocation is the location of the cluster
  26077. If not specified, it fetches information from the metadata server
  26078. type: string
  26079. clusterName:
  26080. description: |-
  26081. ClusterName is the name of the cluster
  26082. If not specified, it fetches information from the metadata server
  26083. type: string
  26084. clusterProjectID:
  26085. description: |-
  26086. ClusterProjectID is the project ID of the cluster
  26087. If not specified, it fetches information from the metadata server
  26088. type: string
  26089. serviceAccountRef:
  26090. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26091. properties:
  26092. audiences:
  26093. description: |-
  26094. Audience specifies the `aud` claim for the service account token
  26095. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26096. then this audiences will be appended to the list
  26097. items:
  26098. type: string
  26099. type: array
  26100. name:
  26101. description: The name of the ServiceAccount resource being referred to.
  26102. maxLength: 253
  26103. minLength: 1
  26104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26105. type: string
  26106. namespace:
  26107. description: |-
  26108. Namespace of the resource being referred to.
  26109. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26110. maxLength: 63
  26111. minLength: 1
  26112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26113. type: string
  26114. required:
  26115. - name
  26116. type: object
  26117. required:
  26118. - serviceAccountRef
  26119. type: object
  26120. required:
  26121. - role
  26122. type: object
  26123. iam:
  26124. description: |-
  26125. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  26126. AWS IAM authentication method
  26127. properties:
  26128. externalID:
  26129. description: AWS External ID set on assumed IAM roles
  26130. type: string
  26131. jwt:
  26132. description: Specify a service account with IRSA enabled
  26133. properties:
  26134. serviceAccountRef:
  26135. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26136. properties:
  26137. audiences:
  26138. description: |-
  26139. Audience specifies the `aud` claim for the service account token
  26140. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26141. then this audiences will be appended to the list
  26142. items:
  26143. type: string
  26144. type: array
  26145. name:
  26146. description: The name of the ServiceAccount resource being referred to.
  26147. maxLength: 253
  26148. minLength: 1
  26149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26150. type: string
  26151. namespace:
  26152. description: |-
  26153. Namespace of the resource being referred to.
  26154. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26155. maxLength: 63
  26156. minLength: 1
  26157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26158. type: string
  26159. required:
  26160. - name
  26161. type: object
  26162. type: object
  26163. path:
  26164. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  26165. type: string
  26166. region:
  26167. description: AWS region
  26168. type: string
  26169. role:
  26170. description: This is the AWS role to be assumed before talking to vault
  26171. type: string
  26172. secretRef:
  26173. description: Specify credentials in a Secret object
  26174. properties:
  26175. accessKeyIDSecretRef:
  26176. description: The AccessKeyID is used for authentication
  26177. properties:
  26178. key:
  26179. description: |-
  26180. A key in the referenced Secret.
  26181. Some instances of this field may be defaulted, in others it may be required.
  26182. maxLength: 253
  26183. minLength: 1
  26184. pattern: ^[-._a-zA-Z0-9]+$
  26185. type: string
  26186. name:
  26187. description: The name of the Secret resource being referred to.
  26188. maxLength: 253
  26189. minLength: 1
  26190. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26191. type: string
  26192. namespace:
  26193. description: |-
  26194. The namespace of the Secret resource being referred to.
  26195. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26196. maxLength: 63
  26197. minLength: 1
  26198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26199. type: string
  26200. type: object
  26201. secretAccessKeySecretRef:
  26202. description: The SecretAccessKey is used for authentication
  26203. properties:
  26204. key:
  26205. description: |-
  26206. A key in the referenced Secret.
  26207. Some instances of this field may be defaulted, in others it may be required.
  26208. maxLength: 253
  26209. minLength: 1
  26210. pattern: ^[-._a-zA-Z0-9]+$
  26211. type: string
  26212. name:
  26213. description: The name of the Secret resource being referred to.
  26214. maxLength: 253
  26215. minLength: 1
  26216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26217. type: string
  26218. namespace:
  26219. description: |-
  26220. The namespace of the Secret resource being referred to.
  26221. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26222. maxLength: 63
  26223. minLength: 1
  26224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26225. type: string
  26226. type: object
  26227. sessionTokenSecretRef:
  26228. description: |-
  26229. The SessionToken used for authentication
  26230. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26231. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26232. properties:
  26233. key:
  26234. description: |-
  26235. A key in the referenced Secret.
  26236. Some instances of this field may be defaulted, in others it may be required.
  26237. maxLength: 253
  26238. minLength: 1
  26239. pattern: ^[-._a-zA-Z0-9]+$
  26240. type: string
  26241. name:
  26242. description: The name of the Secret resource being referred to.
  26243. maxLength: 253
  26244. minLength: 1
  26245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26246. type: string
  26247. namespace:
  26248. description: |-
  26249. The namespace of the Secret resource being referred to.
  26250. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26251. maxLength: 63
  26252. minLength: 1
  26253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26254. type: string
  26255. type: object
  26256. type: object
  26257. vaultAwsIamServerID:
  26258. 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'
  26259. type: string
  26260. vaultRole:
  26261. 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
  26262. type: string
  26263. required:
  26264. - vaultRole
  26265. type: object
  26266. jwt:
  26267. description: |-
  26268. Jwt authenticates with Vault by passing role and JWT token using the
  26269. JWT/OIDC authentication method
  26270. properties:
  26271. kubernetesServiceAccountToken:
  26272. description: |-
  26273. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  26274. a token for with the `TokenRequest` API.
  26275. properties:
  26276. audiences:
  26277. description: |-
  26278. Optional audiences field that will be used to request a temporary Kubernetes service
  26279. account token for the service account referenced by `serviceAccountRef`.
  26280. Defaults to a single audience `vault` it not specified.
  26281. Deprecated: use serviceAccountRef.Audiences instead
  26282. items:
  26283. type: string
  26284. type: array
  26285. expirationSeconds:
  26286. description: |-
  26287. Optional expiration time in seconds that will be used to request a temporary
  26288. Kubernetes service account token for the service account referenced by
  26289. `serviceAccountRef`.
  26290. Deprecated: this will be removed in the future.
  26291. Defaults to 10 minutes.
  26292. format: int64
  26293. type: integer
  26294. serviceAccountRef:
  26295. description: Service account field containing the name of a kubernetes ServiceAccount.
  26296. properties:
  26297. audiences:
  26298. description: |-
  26299. Audience specifies the `aud` claim for the service account token
  26300. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26301. then this audiences will be appended to the list
  26302. items:
  26303. type: string
  26304. type: array
  26305. name:
  26306. description: The name of the ServiceAccount resource being referred to.
  26307. maxLength: 253
  26308. minLength: 1
  26309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26310. type: string
  26311. namespace:
  26312. description: |-
  26313. Namespace of the resource being referred to.
  26314. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26315. maxLength: 63
  26316. minLength: 1
  26317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26318. type: string
  26319. required:
  26320. - name
  26321. type: object
  26322. required:
  26323. - serviceAccountRef
  26324. type: object
  26325. path:
  26326. default: jwt
  26327. description: |-
  26328. Path where the JWT authentication backend is mounted
  26329. in Vault, e.g: "jwt"
  26330. type: string
  26331. role:
  26332. description: |-
  26333. Role is a JWT role to authenticate using the JWT/OIDC Vault
  26334. authentication method
  26335. type: string
  26336. secretRef:
  26337. description: |-
  26338. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  26339. authenticate with Vault using the JWT/OIDC authentication method.
  26340. properties:
  26341. key:
  26342. description: |-
  26343. A key in the referenced Secret.
  26344. Some instances of this field may be defaulted, in others it may be required.
  26345. maxLength: 253
  26346. minLength: 1
  26347. pattern: ^[-._a-zA-Z0-9]+$
  26348. type: string
  26349. name:
  26350. description: The name of the Secret resource being referred to.
  26351. maxLength: 253
  26352. minLength: 1
  26353. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26354. type: string
  26355. namespace:
  26356. description: |-
  26357. The namespace of the Secret resource being referred to.
  26358. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26359. maxLength: 63
  26360. minLength: 1
  26361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26362. type: string
  26363. type: object
  26364. required:
  26365. - path
  26366. type: object
  26367. kubernetes:
  26368. description: |-
  26369. Kubernetes authenticates with Vault by passing the ServiceAccount
  26370. token stored in the named Secret resource to the Vault server.
  26371. properties:
  26372. mountPath:
  26373. default: kubernetes
  26374. description: |-
  26375. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  26376. "kubernetes"
  26377. type: string
  26378. role:
  26379. description: |-
  26380. A required field containing the Vault Role to assume. A Role binds a
  26381. Kubernetes ServiceAccount with a set of Vault policies.
  26382. type: string
  26383. secretRef:
  26384. description: |-
  26385. Optional secret field containing a Kubernetes ServiceAccount JWT used
  26386. for authenticating with Vault. If a name is specified without a key,
  26387. `token` is the default. If one is not specified, the one bound to
  26388. the controller will be used.
  26389. properties:
  26390. key:
  26391. description: |-
  26392. A key in the referenced Secret.
  26393. Some instances of this field may be defaulted, in others it may be required.
  26394. maxLength: 253
  26395. minLength: 1
  26396. pattern: ^[-._a-zA-Z0-9]+$
  26397. type: string
  26398. name:
  26399. description: The name of the Secret resource being referred to.
  26400. maxLength: 253
  26401. minLength: 1
  26402. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26403. type: string
  26404. namespace:
  26405. description: |-
  26406. The namespace of the Secret resource being referred to.
  26407. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26408. maxLength: 63
  26409. minLength: 1
  26410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26411. type: string
  26412. type: object
  26413. serviceAccountRef:
  26414. description: |-
  26415. Optional service account field containing the name of a kubernetes ServiceAccount.
  26416. If the service account is specified, the service account secret token JWT will be used
  26417. for authenticating with Vault. If the service account selector is not supplied,
  26418. the secretRef will be used instead.
  26419. properties:
  26420. audiences:
  26421. description: |-
  26422. Audience specifies the `aud` claim for the service account token
  26423. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26424. then this audiences will be appended to the list
  26425. items:
  26426. type: string
  26427. type: array
  26428. name:
  26429. description: The name of the ServiceAccount resource being referred to.
  26430. maxLength: 253
  26431. minLength: 1
  26432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26433. type: string
  26434. namespace:
  26435. description: |-
  26436. Namespace of the resource being referred to.
  26437. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26438. maxLength: 63
  26439. minLength: 1
  26440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26441. type: string
  26442. required:
  26443. - name
  26444. type: object
  26445. required:
  26446. - mountPath
  26447. - role
  26448. type: object
  26449. ldap:
  26450. description: |-
  26451. Ldap authenticates with Vault by passing username/password pair using
  26452. the LDAP authentication method
  26453. properties:
  26454. path:
  26455. default: ldap
  26456. description: |-
  26457. Path where the LDAP authentication backend is mounted
  26458. in Vault, e.g: "ldap"
  26459. type: string
  26460. secretRef:
  26461. description: |-
  26462. SecretRef to a key in a Secret resource containing password for the LDAP
  26463. user used to authenticate with Vault using the LDAP authentication
  26464. method
  26465. properties:
  26466. key:
  26467. description: |-
  26468. A key in the referenced Secret.
  26469. Some instances of this field may be defaulted, in others it may be required.
  26470. maxLength: 253
  26471. minLength: 1
  26472. pattern: ^[-._a-zA-Z0-9]+$
  26473. type: string
  26474. name:
  26475. description: The name of the Secret resource being referred to.
  26476. maxLength: 253
  26477. minLength: 1
  26478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26479. type: string
  26480. namespace:
  26481. description: |-
  26482. The namespace of the Secret resource being referred to.
  26483. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26484. maxLength: 63
  26485. minLength: 1
  26486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26487. type: string
  26488. type: object
  26489. username:
  26490. description: |-
  26491. Username is an LDAP username used to authenticate using the LDAP Vault
  26492. authentication method
  26493. type: string
  26494. required:
  26495. - path
  26496. - username
  26497. type: object
  26498. namespace:
  26499. description: |-
  26500. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  26501. Namespaces is a set of features within Vault Enterprise that allows
  26502. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  26503. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  26504. This will default to Vault.Namespace field if set, or empty otherwise
  26505. type: string
  26506. tokenSecretRef:
  26507. description: TokenSecretRef authenticates with Vault by presenting a token.
  26508. properties:
  26509. key:
  26510. description: |-
  26511. A key in the referenced Secret.
  26512. Some instances of this field may be defaulted, in others it may be required.
  26513. maxLength: 253
  26514. minLength: 1
  26515. pattern: ^[-._a-zA-Z0-9]+$
  26516. type: string
  26517. name:
  26518. description: The name of the Secret resource being referred to.
  26519. maxLength: 253
  26520. minLength: 1
  26521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26522. type: string
  26523. namespace:
  26524. description: |-
  26525. The namespace of the Secret resource being referred to.
  26526. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26527. maxLength: 63
  26528. minLength: 1
  26529. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26530. type: string
  26531. type: object
  26532. userPass:
  26533. description: UserPass authenticates with Vault by passing username/password pair
  26534. properties:
  26535. path:
  26536. default: userpass
  26537. description: |-
  26538. Path where the UserPassword authentication backend is mounted
  26539. in Vault, e.g: "userpass"
  26540. type: string
  26541. secretRef:
  26542. description: |-
  26543. SecretRef to a key in a Secret resource containing password for the
  26544. user used to authenticate with Vault using the UserPass authentication
  26545. method
  26546. properties:
  26547. key:
  26548. description: |-
  26549. A key in the referenced Secret.
  26550. Some instances of this field may be defaulted, in others it may be required.
  26551. maxLength: 253
  26552. minLength: 1
  26553. pattern: ^[-._a-zA-Z0-9]+$
  26554. type: string
  26555. name:
  26556. description: The name of the Secret resource being referred to.
  26557. maxLength: 253
  26558. minLength: 1
  26559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26560. type: string
  26561. namespace:
  26562. description: |-
  26563. The namespace of the Secret resource being referred to.
  26564. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26565. maxLength: 63
  26566. minLength: 1
  26567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26568. type: string
  26569. type: object
  26570. username:
  26571. description: |-
  26572. Username is a username used to authenticate using the UserPass Vault
  26573. authentication method
  26574. type: string
  26575. required:
  26576. - path
  26577. - username
  26578. type: object
  26579. type: object
  26580. caBundle:
  26581. description: |-
  26582. PEM encoded CA bundle used to validate Vault server certificate. Only used
  26583. if the Server URL is using HTTPS protocol. This parameter is ignored for
  26584. plain HTTP protocol connection. If not set the system root certificates
  26585. are used to validate the TLS connection.
  26586. format: byte
  26587. type: string
  26588. caProvider:
  26589. description: The provider for the CA bundle to use to validate Vault server certificate.
  26590. properties:
  26591. key:
  26592. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26593. maxLength: 253
  26594. minLength: 1
  26595. pattern: ^[-._a-zA-Z0-9]+$
  26596. type: string
  26597. name:
  26598. description: The name of the object located at the provider type.
  26599. maxLength: 253
  26600. minLength: 1
  26601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26602. type: string
  26603. namespace:
  26604. description: |-
  26605. The namespace the Provider type is in.
  26606. Can only be defined when used in a ClusterSecretStore.
  26607. maxLength: 63
  26608. minLength: 1
  26609. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26610. type: string
  26611. type:
  26612. description: The type of provider to use such as "Secret", or "ConfigMap".
  26613. enum:
  26614. - Secret
  26615. - ConfigMap
  26616. type: string
  26617. required:
  26618. - name
  26619. - type
  26620. type: object
  26621. checkAndSet:
  26622. description: |-
  26623. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  26624. Only applies to Vault KV v2 stores. When enabled, write operations must include
  26625. the current version of the secret to prevent unintentional overwrites.
  26626. properties:
  26627. required:
  26628. description: |-
  26629. Required when true, all write operations must include a check-and-set parameter.
  26630. This helps prevent unintentional overwrites of secrets.
  26631. type: boolean
  26632. type: object
  26633. forwardInconsistent:
  26634. description: |-
  26635. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  26636. leader instead of simply retrying within a loop. This can increase performance if
  26637. the option is enabled serverside.
  26638. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  26639. type: boolean
  26640. headers:
  26641. additionalProperties:
  26642. type: string
  26643. description: Headers to be added in Vault request
  26644. type: object
  26645. namespace:
  26646. description: |-
  26647. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  26648. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  26649. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  26650. type: string
  26651. path:
  26652. description: |-
  26653. Path is the mount path of the Vault KV backend endpoint, e.g:
  26654. "secret". The v2 KV secret engine version specific "/data" path suffix
  26655. for fetching secrets from Vault is optional and will be appended
  26656. if not present in specified path.
  26657. type: string
  26658. readYourWrites:
  26659. description: |-
  26660. ReadYourWrites ensures isolated read-after-write semantics by
  26661. providing discovered cluster replication states in each request.
  26662. More information about eventual consistency in Vault can be found here
  26663. https://www.vaultproject.io/docs/enterprise/consistency
  26664. type: boolean
  26665. server:
  26666. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  26667. type: string
  26668. tls:
  26669. description: |-
  26670. The configuration used for client side related TLS communication, when the Vault server
  26671. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  26672. This parameter is ignored for plain HTTP protocol connection.
  26673. It's worth noting this configuration is different from the "TLS certificates auth method",
  26674. which is available under the `auth.cert` section.
  26675. properties:
  26676. certSecretRef:
  26677. description: |-
  26678. CertSecretRef is a certificate added to the transport layer
  26679. when communicating with the Vault server.
  26680. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  26681. properties:
  26682. key:
  26683. description: |-
  26684. A key in the referenced Secret.
  26685. Some instances of this field may be defaulted, in others it may be required.
  26686. maxLength: 253
  26687. minLength: 1
  26688. pattern: ^[-._a-zA-Z0-9]+$
  26689. type: string
  26690. name:
  26691. description: The name of the Secret resource being referred to.
  26692. maxLength: 253
  26693. minLength: 1
  26694. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26695. type: string
  26696. namespace:
  26697. description: |-
  26698. The namespace of the Secret resource being referred to.
  26699. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26700. maxLength: 63
  26701. minLength: 1
  26702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26703. type: string
  26704. type: object
  26705. keySecretRef:
  26706. description: |-
  26707. KeySecretRef to a key in a Secret resource containing client private key
  26708. added to the transport layer when communicating with the Vault server.
  26709. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  26710. properties:
  26711. key:
  26712. description: |-
  26713. A key in the referenced Secret.
  26714. Some instances of this field may be defaulted, in others it may be required.
  26715. maxLength: 253
  26716. minLength: 1
  26717. pattern: ^[-._a-zA-Z0-9]+$
  26718. type: string
  26719. name:
  26720. description: The name of the Secret resource being referred to.
  26721. maxLength: 253
  26722. minLength: 1
  26723. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26724. type: string
  26725. namespace:
  26726. description: |-
  26727. The namespace of the Secret resource being referred to.
  26728. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26729. maxLength: 63
  26730. minLength: 1
  26731. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26732. type: string
  26733. type: object
  26734. type: object
  26735. version:
  26736. default: v2
  26737. description: |-
  26738. Version is the Vault KV secret engine version. This can be either "v1" or
  26739. "v2". Version defaults to "v2".
  26740. enum:
  26741. - v1
  26742. - v2
  26743. type: string
  26744. required:
  26745. - server
  26746. type: object
  26747. resultType:
  26748. default: Data
  26749. description: |-
  26750. Result type defines which data is returned from the generator.
  26751. By default, it is the "data" section of the Vault API response.
  26752. When using e.g. /auth/token/create the "data" section is empty but
  26753. the "auth" section contains the generated token.
  26754. Please refer to the vault docs regarding the result data structure.
  26755. Additionally, accessing the raw response is possibly by using "Raw" result type.
  26756. enum:
  26757. - Data
  26758. - Auth
  26759. - Raw
  26760. type: string
  26761. retrySettings:
  26762. description: Used to configure http retries if failed
  26763. properties:
  26764. maxRetries:
  26765. format: int32
  26766. type: integer
  26767. retryInterval:
  26768. type: string
  26769. type: object
  26770. required:
  26771. - path
  26772. - provider
  26773. type: object
  26774. webhookSpec:
  26775. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  26776. properties:
  26777. auth:
  26778. description: Auth specifies a authorization protocol. Only one protocol may be set.
  26779. maxProperties: 1
  26780. minProperties: 1
  26781. properties:
  26782. ntlm:
  26783. description: NTLMProtocol configures the store to use NTLM for auth
  26784. properties:
  26785. passwordSecret:
  26786. description: |-
  26787. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  26788. In some instances, `key` is a required field.
  26789. properties:
  26790. key:
  26791. description: |-
  26792. A key in the referenced Secret.
  26793. Some instances of this field may be defaulted, in others it may be required.
  26794. maxLength: 253
  26795. minLength: 1
  26796. pattern: ^[-._a-zA-Z0-9]+$
  26797. type: string
  26798. name:
  26799. description: The name of the Secret resource being referred to.
  26800. maxLength: 253
  26801. minLength: 1
  26802. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26803. type: string
  26804. namespace:
  26805. description: |-
  26806. The namespace of the Secret resource being referred to.
  26807. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26808. maxLength: 63
  26809. minLength: 1
  26810. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26811. type: string
  26812. type: object
  26813. usernameSecret:
  26814. description: |-
  26815. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  26816. In some instances, `key` is a required field.
  26817. properties:
  26818. key:
  26819. description: |-
  26820. A key in the referenced Secret.
  26821. Some instances of this field may be defaulted, in others it may be required.
  26822. maxLength: 253
  26823. minLength: 1
  26824. pattern: ^[-._a-zA-Z0-9]+$
  26825. type: string
  26826. name:
  26827. description: The name of the Secret resource being referred to.
  26828. maxLength: 253
  26829. minLength: 1
  26830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26831. type: string
  26832. namespace:
  26833. description: |-
  26834. The namespace of the Secret resource being referred to.
  26835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26836. maxLength: 63
  26837. minLength: 1
  26838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26839. type: string
  26840. type: object
  26841. required:
  26842. - passwordSecret
  26843. - usernameSecret
  26844. type: object
  26845. type: object
  26846. body:
  26847. description: Body
  26848. type: string
  26849. caBundle:
  26850. description: |-
  26851. PEM encoded CA bundle used to validate webhook server certificate. Only used
  26852. if the Server URL is using HTTPS protocol. This parameter is ignored for
  26853. plain HTTP protocol connection. If not set the system root certificates
  26854. are used to validate the TLS connection.
  26855. format: byte
  26856. type: string
  26857. caProvider:
  26858. description: The provider for the CA bundle to use to validate webhook server certificate.
  26859. properties:
  26860. key:
  26861. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26862. maxLength: 253
  26863. minLength: 1
  26864. pattern: ^[-._a-zA-Z0-9]+$
  26865. type: string
  26866. name:
  26867. description: The name of the object located at the provider type.
  26868. maxLength: 253
  26869. minLength: 1
  26870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26871. type: string
  26872. namespace:
  26873. description: The namespace the Provider type is in.
  26874. maxLength: 63
  26875. minLength: 1
  26876. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26877. type: string
  26878. type:
  26879. description: The type of provider to use such as "Secret", or "ConfigMap".
  26880. enum:
  26881. - Secret
  26882. - ConfigMap
  26883. type: string
  26884. required:
  26885. - name
  26886. - type
  26887. type: object
  26888. headers:
  26889. additionalProperties:
  26890. type: string
  26891. description: Headers
  26892. type: object
  26893. method:
  26894. description: Webhook Method
  26895. type: string
  26896. result:
  26897. description: Result formatting
  26898. properties:
  26899. jsonPath:
  26900. description: Json path of return value
  26901. type: string
  26902. type: object
  26903. secrets:
  26904. description: |-
  26905. Secrets to fill in templates
  26906. These secrets will be passed to the templating function as key value pairs under the given name
  26907. items:
  26908. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  26909. properties:
  26910. name:
  26911. description: Name of this secret in templates
  26912. type: string
  26913. secretRef:
  26914. description: Secret ref to fill in credentials
  26915. properties:
  26916. key:
  26917. description: The key where the token is found.
  26918. maxLength: 253
  26919. minLength: 1
  26920. pattern: ^[-._a-zA-Z0-9]+$
  26921. type: string
  26922. name:
  26923. description: The name of the Secret resource being referred to.
  26924. maxLength: 253
  26925. minLength: 1
  26926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26927. type: string
  26928. type: object
  26929. required:
  26930. - name
  26931. - secretRef
  26932. type: object
  26933. type: array
  26934. timeout:
  26935. description: Timeout
  26936. type: string
  26937. url:
  26938. description: Webhook url to call
  26939. type: string
  26940. required:
  26941. - result
  26942. - url
  26943. type: object
  26944. type: object
  26945. kind:
  26946. description: Kind the kind of this generator.
  26947. enum:
  26948. - ACRAccessToken
  26949. - CloudsmithAccessToken
  26950. - ECRAuthorizationToken
  26951. - Fake
  26952. - GCRAccessToken
  26953. - GithubAccessToken
  26954. - QuayAccessToken
  26955. - Password
  26956. - SSHKey
  26957. - STSSessionToken
  26958. - UUID
  26959. - VaultDynamicSecret
  26960. - Webhook
  26961. - Grafana
  26962. type: string
  26963. required:
  26964. - generator
  26965. - kind
  26966. type: object
  26967. type: object
  26968. served: true
  26969. storage: true
  26970. subresources:
  26971. status: {}
  26972. ---
  26973. apiVersion: apiextensions.k8s.io/v1
  26974. kind: CustomResourceDefinition
  26975. metadata:
  26976. annotations:
  26977. controller-gen.kubebuilder.io/version: v0.19.0
  26978. labels:
  26979. external-secrets.io/component: controller
  26980. name: ecrauthorizationtokens.generators.external-secrets.io
  26981. spec:
  26982. group: generators.external-secrets.io
  26983. names:
  26984. categories:
  26985. - external-secrets
  26986. - external-secrets-generators
  26987. kind: ECRAuthorizationToken
  26988. listKind: ECRAuthorizationTokenList
  26989. plural: ecrauthorizationtokens
  26990. singular: ecrauthorizationtoken
  26991. scope: Namespaced
  26992. versions:
  26993. - name: v1alpha1
  26994. schema:
  26995. openAPIV3Schema:
  26996. description: |-
  26997. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  26998. The authorization token is valid for 12 hours.
  26999. The authorizationToken returned is a base64 encoded string that can be decoded
  27000. and used in a docker login command to authenticate to a registry.
  27001. 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.
  27002. properties:
  27003. apiVersion:
  27004. description: |-
  27005. APIVersion defines the versioned schema of this representation of an object.
  27006. Servers should convert recognized schemas to the latest internal value, and
  27007. may reject unrecognized values.
  27008. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27009. type: string
  27010. kind:
  27011. description: |-
  27012. Kind is a string value representing the REST resource this object represents.
  27013. Servers may infer this from the endpoint the client submits requests to.
  27014. Cannot be updated.
  27015. In CamelCase.
  27016. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27017. type: string
  27018. metadata:
  27019. type: object
  27020. spec:
  27021. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  27022. properties:
  27023. auth:
  27024. description: Auth defines how to authenticate with AWS
  27025. properties:
  27026. jwt:
  27027. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27028. properties:
  27029. serviceAccountRef:
  27030. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27031. properties:
  27032. audiences:
  27033. description: |-
  27034. Audience specifies the `aud` claim for the service account token
  27035. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27036. then this audiences will be appended to the list
  27037. items:
  27038. type: string
  27039. type: array
  27040. name:
  27041. description: The name of the ServiceAccount resource being referred to.
  27042. maxLength: 253
  27043. minLength: 1
  27044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27045. type: string
  27046. namespace:
  27047. description: |-
  27048. Namespace of the resource being referred to.
  27049. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27050. maxLength: 63
  27051. minLength: 1
  27052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27053. type: string
  27054. required:
  27055. - name
  27056. type: object
  27057. type: object
  27058. secretRef:
  27059. description: |-
  27060. AWSAuthSecretRef holds secret references for AWS credentials
  27061. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27062. properties:
  27063. accessKeyIDSecretRef:
  27064. description: The AccessKeyID is used for authentication
  27065. properties:
  27066. key:
  27067. description: |-
  27068. A key in the referenced Secret.
  27069. Some instances of this field may be defaulted, in others it may be required.
  27070. maxLength: 253
  27071. minLength: 1
  27072. pattern: ^[-._a-zA-Z0-9]+$
  27073. type: string
  27074. name:
  27075. description: The name of the Secret resource being referred to.
  27076. maxLength: 253
  27077. minLength: 1
  27078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27079. type: string
  27080. namespace:
  27081. description: |-
  27082. The namespace of the Secret resource being referred to.
  27083. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27084. maxLength: 63
  27085. minLength: 1
  27086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27087. type: string
  27088. type: object
  27089. secretAccessKeySecretRef:
  27090. description: The SecretAccessKey is used for authentication
  27091. properties:
  27092. key:
  27093. description: |-
  27094. A key in the referenced Secret.
  27095. Some instances of this field may be defaulted, in others it may be required.
  27096. maxLength: 253
  27097. minLength: 1
  27098. pattern: ^[-._a-zA-Z0-9]+$
  27099. type: string
  27100. name:
  27101. description: The name of the Secret resource being referred to.
  27102. maxLength: 253
  27103. minLength: 1
  27104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27105. type: string
  27106. namespace:
  27107. description: |-
  27108. The namespace of the Secret resource being referred to.
  27109. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27110. maxLength: 63
  27111. minLength: 1
  27112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27113. type: string
  27114. type: object
  27115. sessionTokenSecretRef:
  27116. description: |-
  27117. The SessionToken used for authentication
  27118. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27119. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27120. properties:
  27121. key:
  27122. description: |-
  27123. A key in the referenced Secret.
  27124. Some instances of this field may be defaulted, in others it may be required.
  27125. maxLength: 253
  27126. minLength: 1
  27127. pattern: ^[-._a-zA-Z0-9]+$
  27128. type: string
  27129. name:
  27130. description: The name of the Secret resource being referred to.
  27131. maxLength: 253
  27132. minLength: 1
  27133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27134. type: string
  27135. namespace:
  27136. description: |-
  27137. The namespace of the Secret resource being referred to.
  27138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27139. maxLength: 63
  27140. minLength: 1
  27141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27142. type: string
  27143. type: object
  27144. type: object
  27145. type: object
  27146. region:
  27147. description: Region specifies the region to operate in.
  27148. type: string
  27149. role:
  27150. description: |-
  27151. You can assume a role before making calls to the
  27152. desired AWS service.
  27153. type: string
  27154. scope:
  27155. description: |-
  27156. Scope specifies the ECR service scope.
  27157. Valid options are private and public.
  27158. type: string
  27159. required:
  27160. - region
  27161. type: object
  27162. type: object
  27163. served: true
  27164. storage: true
  27165. subresources:
  27166. status: {}
  27167. ---
  27168. apiVersion: apiextensions.k8s.io/v1
  27169. kind: CustomResourceDefinition
  27170. metadata:
  27171. annotations:
  27172. controller-gen.kubebuilder.io/version: v0.19.0
  27173. labels:
  27174. external-secrets.io/component: controller
  27175. name: fakes.generators.external-secrets.io
  27176. spec:
  27177. group: generators.external-secrets.io
  27178. names:
  27179. categories:
  27180. - external-secrets
  27181. - external-secrets-generators
  27182. kind: Fake
  27183. listKind: FakeList
  27184. plural: fakes
  27185. singular: fake
  27186. scope: Namespaced
  27187. versions:
  27188. - name: v1alpha1
  27189. schema:
  27190. openAPIV3Schema:
  27191. description: |-
  27192. Fake generator is used for testing. It lets you define
  27193. a static set of credentials that is always returned.
  27194. properties:
  27195. apiVersion:
  27196. description: |-
  27197. APIVersion defines the versioned schema of this representation of an object.
  27198. Servers should convert recognized schemas to the latest internal value, and
  27199. may reject unrecognized values.
  27200. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27201. type: string
  27202. kind:
  27203. description: |-
  27204. Kind is a string value representing the REST resource this object represents.
  27205. Servers may infer this from the endpoint the client submits requests to.
  27206. Cannot be updated.
  27207. In CamelCase.
  27208. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27209. type: string
  27210. metadata:
  27211. type: object
  27212. spec:
  27213. description: FakeSpec contains the static data.
  27214. properties:
  27215. controller:
  27216. description: |-
  27217. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27218. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27219. type: string
  27220. data:
  27221. additionalProperties:
  27222. type: string
  27223. description: |-
  27224. Data defines the static data returned
  27225. by this generator.
  27226. type: object
  27227. type: object
  27228. type: object
  27229. served: true
  27230. storage: true
  27231. subresources:
  27232. status: {}
  27233. ---
  27234. apiVersion: apiextensions.k8s.io/v1
  27235. kind: CustomResourceDefinition
  27236. metadata:
  27237. annotations:
  27238. controller-gen.kubebuilder.io/version: v0.19.0
  27239. labels:
  27240. external-secrets.io/component: controller
  27241. name: gcraccesstokens.generators.external-secrets.io
  27242. spec:
  27243. group: generators.external-secrets.io
  27244. names:
  27245. categories:
  27246. - external-secrets
  27247. - external-secrets-generators
  27248. kind: GCRAccessToken
  27249. listKind: GCRAccessTokenList
  27250. plural: gcraccesstokens
  27251. singular: gcraccesstoken
  27252. scope: Namespaced
  27253. versions:
  27254. - name: v1alpha1
  27255. schema:
  27256. openAPIV3Schema:
  27257. description: |-
  27258. GCRAccessToken generates an GCP access token
  27259. that can be used to authenticate with GCR.
  27260. properties:
  27261. apiVersion:
  27262. description: |-
  27263. APIVersion defines the versioned schema of this representation of an object.
  27264. Servers should convert recognized schemas to the latest internal value, and
  27265. may reject unrecognized values.
  27266. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27267. type: string
  27268. kind:
  27269. description: |-
  27270. Kind is a string value representing the REST resource this object represents.
  27271. Servers may infer this from the endpoint the client submits requests to.
  27272. Cannot be updated.
  27273. In CamelCase.
  27274. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27275. type: string
  27276. metadata:
  27277. type: object
  27278. spec:
  27279. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  27280. properties:
  27281. auth:
  27282. description: Auth defines the means for authenticating with GCP
  27283. properties:
  27284. secretRef:
  27285. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  27286. properties:
  27287. secretAccessKeySecretRef:
  27288. description: The SecretAccessKey is used for authentication
  27289. properties:
  27290. key:
  27291. description: |-
  27292. A key in the referenced Secret.
  27293. Some instances of this field may be defaulted, in others it may be required.
  27294. maxLength: 253
  27295. minLength: 1
  27296. pattern: ^[-._a-zA-Z0-9]+$
  27297. type: string
  27298. name:
  27299. description: The name of the Secret resource being referred to.
  27300. maxLength: 253
  27301. minLength: 1
  27302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27303. type: string
  27304. namespace:
  27305. description: |-
  27306. The namespace of the Secret resource being referred to.
  27307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27308. maxLength: 63
  27309. minLength: 1
  27310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27311. type: string
  27312. type: object
  27313. type: object
  27314. workloadIdentity:
  27315. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  27316. properties:
  27317. clusterLocation:
  27318. type: string
  27319. clusterName:
  27320. type: string
  27321. clusterProjectID:
  27322. type: string
  27323. serviceAccountRef:
  27324. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27325. properties:
  27326. audiences:
  27327. description: |-
  27328. Audience specifies the `aud` claim for the service account token
  27329. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27330. then this audiences will be appended to the list
  27331. items:
  27332. type: string
  27333. type: array
  27334. name:
  27335. description: The name of the ServiceAccount resource being referred to.
  27336. maxLength: 253
  27337. minLength: 1
  27338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27339. type: string
  27340. namespace:
  27341. description: |-
  27342. Namespace of the resource being referred to.
  27343. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27344. maxLength: 63
  27345. minLength: 1
  27346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27347. type: string
  27348. required:
  27349. - name
  27350. type: object
  27351. required:
  27352. - clusterLocation
  27353. - clusterName
  27354. - serviceAccountRef
  27355. type: object
  27356. workloadIdentityFederation:
  27357. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  27358. properties:
  27359. audience:
  27360. description: |-
  27361. 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.
  27362. If specified, Audience found in the external account credential config will be overridden with the configured value.
  27363. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  27364. type: string
  27365. awsSecurityCredentials:
  27366. description: |-
  27367. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  27368. when using the AWS metadata server is not an option.
  27369. properties:
  27370. awsCredentialsSecretRef:
  27371. description: |-
  27372. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  27373. Secret should be created with below names for keys
  27374. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  27375. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  27376. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  27377. properties:
  27378. name:
  27379. description: name of the secret.
  27380. maxLength: 253
  27381. minLength: 1
  27382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27383. type: string
  27384. namespace:
  27385. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  27386. maxLength: 63
  27387. minLength: 1
  27388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27389. type: string
  27390. required:
  27391. - name
  27392. type: object
  27393. region:
  27394. description: region is for configuring the AWS region to be used.
  27395. example: ap-south-1
  27396. maxLength: 50
  27397. minLength: 1
  27398. pattern: ^[a-z0-9-]+$
  27399. type: string
  27400. required:
  27401. - awsCredentialsSecretRef
  27402. - region
  27403. type: object
  27404. credConfig:
  27405. description: |-
  27406. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  27407. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  27408. serviceAccountRef must be used by providing operators service account details.
  27409. properties:
  27410. key:
  27411. description: key name holding the external account credential config.
  27412. maxLength: 253
  27413. minLength: 1
  27414. pattern: ^[-._a-zA-Z0-9]+$
  27415. type: string
  27416. name:
  27417. description: name of the configmap.
  27418. maxLength: 253
  27419. minLength: 1
  27420. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27421. type: string
  27422. namespace:
  27423. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  27424. maxLength: 63
  27425. minLength: 1
  27426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27427. type: string
  27428. required:
  27429. - key
  27430. - name
  27431. type: object
  27432. externalTokenEndpoint:
  27433. description: |-
  27434. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  27435. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  27436. URL is having the expected value.
  27437. type: string
  27438. serviceAccountRef:
  27439. description: |-
  27440. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  27441. when Kubernetes is configured as provider in workload identity pool.
  27442. properties:
  27443. audiences:
  27444. description: |-
  27445. Audience specifies the `aud` claim for the service account token
  27446. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27447. then this audiences will be appended to the list
  27448. items:
  27449. type: string
  27450. type: array
  27451. name:
  27452. description: The name of the ServiceAccount resource being referred to.
  27453. maxLength: 253
  27454. minLength: 1
  27455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27456. type: string
  27457. namespace:
  27458. description: |-
  27459. Namespace of the resource being referred to.
  27460. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27461. maxLength: 63
  27462. minLength: 1
  27463. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27464. type: string
  27465. required:
  27466. - name
  27467. type: object
  27468. type: object
  27469. type: object
  27470. projectID:
  27471. description: ProjectID defines which project to use to authenticate with
  27472. type: string
  27473. required:
  27474. - auth
  27475. - projectID
  27476. type: object
  27477. type: object
  27478. served: true
  27479. storage: true
  27480. subresources:
  27481. status: {}
  27482. ---
  27483. apiVersion: apiextensions.k8s.io/v1
  27484. kind: CustomResourceDefinition
  27485. metadata:
  27486. annotations:
  27487. controller-gen.kubebuilder.io/version: v0.19.0
  27488. labels:
  27489. external-secrets.io/component: controller
  27490. name: generatorstates.generators.external-secrets.io
  27491. spec:
  27492. group: generators.external-secrets.io
  27493. names:
  27494. categories:
  27495. - external-secrets
  27496. - external-secrets-generators
  27497. kind: GeneratorState
  27498. listKind: GeneratorStateList
  27499. plural: generatorstates
  27500. shortNames:
  27501. - gs
  27502. singular: generatorstate
  27503. scope: Namespaced
  27504. versions:
  27505. - additionalPrinterColumns:
  27506. - jsonPath: .spec.garbageCollectionDeadline
  27507. name: GC Deadline
  27508. type: string
  27509. - jsonPath: .metadata.creationTimestamp
  27510. name: Age
  27511. type: date
  27512. name: v1alpha1
  27513. schema:
  27514. openAPIV3Schema:
  27515. description: GeneratorState represents the state created and managed by a generator resource.
  27516. properties:
  27517. apiVersion:
  27518. description: |-
  27519. APIVersion defines the versioned schema of this representation of an object.
  27520. Servers should convert recognized schemas to the latest internal value, and
  27521. may reject unrecognized values.
  27522. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27523. type: string
  27524. kind:
  27525. description: |-
  27526. Kind is a string value representing the REST resource this object represents.
  27527. Servers may infer this from the endpoint the client submits requests to.
  27528. Cannot be updated.
  27529. In CamelCase.
  27530. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27531. type: string
  27532. metadata:
  27533. type: object
  27534. spec:
  27535. description: GeneratorStateSpec defines the desired state of a generator state resource.
  27536. properties:
  27537. garbageCollectionDeadline:
  27538. description: |-
  27539. GarbageCollectionDeadline is the time after which the generator state
  27540. will be deleted.
  27541. It is set by the controller which creates the generator state and
  27542. can be set configured by the user.
  27543. If the garbage collection deadline is not set the generator state will not be deleted.
  27544. format: date-time
  27545. type: string
  27546. resource:
  27547. description: |-
  27548. Resource is the generator manifest that produced the state.
  27549. It is a snapshot of the generator manifest at the time the state was produced.
  27550. This manifest will be used to delete the resource. Any configuration that is referenced
  27551. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  27552. be blocked by a finalizer.
  27553. x-kubernetes-preserve-unknown-fields: true
  27554. state:
  27555. description: State is the state that was produced by the generator implementation.
  27556. x-kubernetes-preserve-unknown-fields: true
  27557. required:
  27558. - resource
  27559. - state
  27560. type: object
  27561. status:
  27562. description: GeneratorStateStatus defines the observed state of a generator state resource.
  27563. properties:
  27564. conditions:
  27565. items:
  27566. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  27567. properties:
  27568. lastTransitionTime:
  27569. format: date-time
  27570. type: string
  27571. message:
  27572. type: string
  27573. reason:
  27574. type: string
  27575. status:
  27576. type: string
  27577. type:
  27578. description: GeneratorStateConditionType represents the type of condition for a generator state.
  27579. type: string
  27580. required:
  27581. - status
  27582. - type
  27583. type: object
  27584. type: array
  27585. type: object
  27586. type: object
  27587. served: true
  27588. storage: true
  27589. subresources: {}
  27590. ---
  27591. apiVersion: apiextensions.k8s.io/v1
  27592. kind: CustomResourceDefinition
  27593. metadata:
  27594. annotations:
  27595. controller-gen.kubebuilder.io/version: v0.19.0
  27596. labels:
  27597. external-secrets.io/component: controller
  27598. name: githubaccesstokens.generators.external-secrets.io
  27599. spec:
  27600. group: generators.external-secrets.io
  27601. names:
  27602. categories:
  27603. - external-secrets
  27604. - external-secrets-generators
  27605. kind: GithubAccessToken
  27606. listKind: GithubAccessTokenList
  27607. plural: githubaccesstokens
  27608. singular: githubaccesstoken
  27609. scope: Namespaced
  27610. versions:
  27611. - name: v1alpha1
  27612. schema:
  27613. openAPIV3Schema:
  27614. description: GithubAccessToken generates ghs_ accessToken
  27615. properties:
  27616. apiVersion:
  27617. description: |-
  27618. APIVersion defines the versioned schema of this representation of an object.
  27619. Servers should convert recognized schemas to the latest internal value, and
  27620. may reject unrecognized values.
  27621. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27622. type: string
  27623. kind:
  27624. description: |-
  27625. Kind is a string value representing the REST resource this object represents.
  27626. Servers may infer this from the endpoint the client submits requests to.
  27627. Cannot be updated.
  27628. In CamelCase.
  27629. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27630. type: string
  27631. metadata:
  27632. type: object
  27633. spec:
  27634. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  27635. properties:
  27636. appID:
  27637. type: string
  27638. auth:
  27639. description: Auth configures how ESO authenticates with a Github instance.
  27640. properties:
  27641. privateKey:
  27642. description: GithubSecretRef references a secret containing GitHub credentials.
  27643. properties:
  27644. secretRef:
  27645. description: |-
  27646. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27647. In some instances, `key` is a required field.
  27648. properties:
  27649. key:
  27650. description: |-
  27651. A key in the referenced Secret.
  27652. Some instances of this field may be defaulted, in others it may be required.
  27653. maxLength: 253
  27654. minLength: 1
  27655. pattern: ^[-._a-zA-Z0-9]+$
  27656. type: string
  27657. name:
  27658. description: The name of the Secret resource being referred to.
  27659. maxLength: 253
  27660. minLength: 1
  27661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27662. type: string
  27663. namespace:
  27664. description: |-
  27665. The namespace of the Secret resource being referred to.
  27666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27667. maxLength: 63
  27668. minLength: 1
  27669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27670. type: string
  27671. type: object
  27672. required:
  27673. - secretRef
  27674. type: object
  27675. required:
  27676. - privateKey
  27677. type: object
  27678. installID:
  27679. type: string
  27680. permissions:
  27681. additionalProperties:
  27682. type: string
  27683. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  27684. type: object
  27685. repositories:
  27686. description: |-
  27687. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  27688. is installed to.
  27689. items:
  27690. type: string
  27691. type: array
  27692. url:
  27693. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  27694. type: string
  27695. required:
  27696. - appID
  27697. - auth
  27698. - installID
  27699. type: object
  27700. type: object
  27701. served: true
  27702. storage: true
  27703. subresources:
  27704. status: {}
  27705. ---
  27706. apiVersion: apiextensions.k8s.io/v1
  27707. kind: CustomResourceDefinition
  27708. metadata:
  27709. annotations:
  27710. controller-gen.kubebuilder.io/version: v0.19.0
  27711. labels:
  27712. external-secrets.io/component: controller
  27713. name: grafanas.generators.external-secrets.io
  27714. spec:
  27715. group: generators.external-secrets.io
  27716. names:
  27717. categories:
  27718. - external-secrets
  27719. - external-secrets-generators
  27720. kind: Grafana
  27721. listKind: GrafanaList
  27722. plural: grafanas
  27723. singular: grafana
  27724. scope: Namespaced
  27725. versions:
  27726. - name: v1alpha1
  27727. schema:
  27728. openAPIV3Schema:
  27729. description: Grafana represents a generator for Grafana service account tokens.
  27730. properties:
  27731. apiVersion:
  27732. description: |-
  27733. APIVersion defines the versioned schema of this representation of an object.
  27734. Servers should convert recognized schemas to the latest internal value, and
  27735. may reject unrecognized values.
  27736. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27737. type: string
  27738. kind:
  27739. description: |-
  27740. Kind is a string value representing the REST resource this object represents.
  27741. Servers may infer this from the endpoint the client submits requests to.
  27742. Cannot be updated.
  27743. In CamelCase.
  27744. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27745. type: string
  27746. metadata:
  27747. type: object
  27748. spec:
  27749. description: GrafanaSpec controls the behavior of the grafana generator.
  27750. properties:
  27751. auth:
  27752. description: |-
  27753. Auth is the authentication configuration to authenticate
  27754. against the Grafana instance.
  27755. properties:
  27756. basic:
  27757. description: |-
  27758. Basic auth credentials used to authenticate against the Grafana instance.
  27759. Note: you need a token which has elevated permissions to create service accounts.
  27760. See here for the documentation on basic roles offered by Grafana:
  27761. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  27762. properties:
  27763. password:
  27764. description: A basic auth password used to authenticate against the Grafana instance.
  27765. properties:
  27766. key:
  27767. description: The key where the token is found.
  27768. maxLength: 253
  27769. minLength: 1
  27770. pattern: ^[-._a-zA-Z0-9]+$
  27771. type: string
  27772. name:
  27773. description: The name of the Secret resource being referred to.
  27774. maxLength: 253
  27775. minLength: 1
  27776. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27777. type: string
  27778. type: object
  27779. username:
  27780. description: A basic auth username used to authenticate against the Grafana instance.
  27781. type: string
  27782. required:
  27783. - password
  27784. - username
  27785. type: object
  27786. token:
  27787. description: |-
  27788. A service account token used to authenticate against the Grafana instance.
  27789. Note: you need a token which has elevated permissions to create service accounts.
  27790. See here for the documentation on basic roles offered by Grafana:
  27791. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  27792. properties:
  27793. key:
  27794. description: The key where the token is found.
  27795. maxLength: 253
  27796. minLength: 1
  27797. pattern: ^[-._a-zA-Z0-9]+$
  27798. type: string
  27799. name:
  27800. description: The name of the Secret resource being referred to.
  27801. maxLength: 253
  27802. minLength: 1
  27803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27804. type: string
  27805. type: object
  27806. type: object
  27807. serviceAccount:
  27808. description: |-
  27809. ServiceAccount is the configuration for the service account that
  27810. is supposed to be generated by the generator.
  27811. properties:
  27812. name:
  27813. description: Name is the name of the service account that will be created by ESO.
  27814. type: string
  27815. role:
  27816. description: |-
  27817. Role is the role of the service account.
  27818. See here for the documentation on basic roles offered by Grafana:
  27819. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  27820. type: string
  27821. required:
  27822. - name
  27823. - role
  27824. type: object
  27825. url:
  27826. description: URL is the URL of the Grafana instance.
  27827. type: string
  27828. required:
  27829. - auth
  27830. - serviceAccount
  27831. - url
  27832. type: object
  27833. type: object
  27834. served: true
  27835. storage: true
  27836. subresources:
  27837. status: {}
  27838. ---
  27839. apiVersion: apiextensions.k8s.io/v1
  27840. kind: CustomResourceDefinition
  27841. metadata:
  27842. annotations:
  27843. controller-gen.kubebuilder.io/version: v0.19.0
  27844. labels:
  27845. external-secrets.io/component: controller
  27846. name: mfas.generators.external-secrets.io
  27847. spec:
  27848. group: generators.external-secrets.io
  27849. names:
  27850. categories:
  27851. - external-secrets
  27852. - external-secrets-generators
  27853. kind: MFA
  27854. listKind: MFAList
  27855. plural: mfas
  27856. singular: mfa
  27857. scope: Namespaced
  27858. versions:
  27859. - name: v1alpha1
  27860. schema:
  27861. openAPIV3Schema:
  27862. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  27863. properties:
  27864. apiVersion:
  27865. description: |-
  27866. APIVersion defines the versioned schema of this representation of an object.
  27867. Servers should convert recognized schemas to the latest internal value, and
  27868. may reject unrecognized values.
  27869. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27870. type: string
  27871. kind:
  27872. description: |-
  27873. Kind is a string value representing the REST resource this object represents.
  27874. Servers may infer this from the endpoint the client submits requests to.
  27875. Cannot be updated.
  27876. In CamelCase.
  27877. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27878. type: string
  27879. metadata:
  27880. type: object
  27881. spec:
  27882. description: MFASpec controls the behavior of the mfa generator.
  27883. properties:
  27884. algorithm:
  27885. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  27886. type: string
  27887. length:
  27888. description: Length defines the token length. Defaults to 6 characters.
  27889. type: integer
  27890. secret:
  27891. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  27892. properties:
  27893. key:
  27894. description: |-
  27895. A key in the referenced Secret.
  27896. Some instances of this field may be defaulted, in others it may be required.
  27897. maxLength: 253
  27898. minLength: 1
  27899. pattern: ^[-._a-zA-Z0-9]+$
  27900. type: string
  27901. name:
  27902. description: The name of the Secret resource being referred to.
  27903. maxLength: 253
  27904. minLength: 1
  27905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27906. type: string
  27907. namespace:
  27908. description: |-
  27909. The namespace of the Secret resource being referred to.
  27910. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27911. maxLength: 63
  27912. minLength: 1
  27913. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27914. type: string
  27915. type: object
  27916. timePeriod:
  27917. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  27918. type: integer
  27919. when:
  27920. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  27921. format: date-time
  27922. type: string
  27923. required:
  27924. - secret
  27925. type: object
  27926. type: object
  27927. served: true
  27928. storage: true
  27929. subresources:
  27930. status: {}
  27931. ---
  27932. apiVersion: apiextensions.k8s.io/v1
  27933. kind: CustomResourceDefinition
  27934. metadata:
  27935. annotations:
  27936. controller-gen.kubebuilder.io/version: v0.19.0
  27937. labels:
  27938. external-secrets.io/component: controller
  27939. name: passwords.generators.external-secrets.io
  27940. spec:
  27941. group: generators.external-secrets.io
  27942. names:
  27943. categories:
  27944. - external-secrets
  27945. - external-secrets-generators
  27946. kind: Password
  27947. listKind: PasswordList
  27948. plural: passwords
  27949. singular: password
  27950. scope: Namespaced
  27951. versions:
  27952. - name: v1alpha1
  27953. schema:
  27954. openAPIV3Schema:
  27955. description: |-
  27956. Password generates a random password based on the
  27957. configuration parameters in spec.
  27958. You can specify the length, characterset and other attributes.
  27959. properties:
  27960. apiVersion:
  27961. description: |-
  27962. APIVersion defines the versioned schema of this representation of an object.
  27963. Servers should convert recognized schemas to the latest internal value, and
  27964. may reject unrecognized values.
  27965. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27966. type: string
  27967. kind:
  27968. description: |-
  27969. Kind is a string value representing the REST resource this object represents.
  27970. Servers may infer this from the endpoint the client submits requests to.
  27971. Cannot be updated.
  27972. In CamelCase.
  27973. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27974. type: string
  27975. metadata:
  27976. type: object
  27977. spec:
  27978. description: PasswordSpec controls the behavior of the password generator.
  27979. properties:
  27980. allowRepeat:
  27981. default: false
  27982. description: set AllowRepeat to true to allow repeating characters.
  27983. type: boolean
  27984. digits:
  27985. description: |-
  27986. Digits specifies the number of digits in the generated
  27987. password. If omitted it defaults to 25% of the length of the password
  27988. type: integer
  27989. encoding:
  27990. default: raw
  27991. description: |-
  27992. Encoding specifies the encoding of the generated password.
  27993. Valid values are:
  27994. - "raw" (default): no encoding
  27995. - "base64": standard base64 encoding
  27996. - "base64url": base64url encoding
  27997. - "base32": base32 encoding
  27998. - "hex": hexadecimal encoding
  27999. enum:
  28000. - base64
  28001. - base64url
  28002. - base32
  28003. - hex
  28004. - raw
  28005. type: string
  28006. length:
  28007. default: 24
  28008. description: |-
  28009. Length of the password to be generated.
  28010. Defaults to 24
  28011. type: integer
  28012. noUpper:
  28013. default: false
  28014. description: Set NoUpper to disable uppercase characters
  28015. type: boolean
  28016. secretKeys:
  28017. description: |-
  28018. SecretKeys defines the keys that will be populated with generated passwords.
  28019. Defaults to "password" when not set.
  28020. items:
  28021. type: string
  28022. minItems: 1
  28023. type: array
  28024. symbolCharacters:
  28025. description: |-
  28026. SymbolCharacters specifies the special characters that should be used
  28027. in the generated password.
  28028. type: string
  28029. symbols:
  28030. description: |-
  28031. Symbols specifies the number of symbol characters in the generated
  28032. password. If omitted it defaults to 25% of the length of the password
  28033. type: integer
  28034. required:
  28035. - allowRepeat
  28036. - length
  28037. - noUpper
  28038. type: object
  28039. type: object
  28040. served: true
  28041. storage: true
  28042. subresources:
  28043. status: {}
  28044. ---
  28045. apiVersion: apiextensions.k8s.io/v1
  28046. kind: CustomResourceDefinition
  28047. metadata:
  28048. annotations:
  28049. controller-gen.kubebuilder.io/version: v0.19.0
  28050. labels:
  28051. external-secrets.io/component: controller
  28052. name: quayaccesstokens.generators.external-secrets.io
  28053. spec:
  28054. group: generators.external-secrets.io
  28055. names:
  28056. categories:
  28057. - external-secrets
  28058. - external-secrets-generators
  28059. kind: QuayAccessToken
  28060. listKind: QuayAccessTokenList
  28061. plural: quayaccesstokens
  28062. singular: quayaccesstoken
  28063. scope: Namespaced
  28064. versions:
  28065. - name: v1alpha1
  28066. schema:
  28067. openAPIV3Schema:
  28068. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  28069. properties:
  28070. apiVersion:
  28071. description: |-
  28072. APIVersion defines the versioned schema of this representation of an object.
  28073. Servers should convert recognized schemas to the latest internal value, and
  28074. may reject unrecognized values.
  28075. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28076. type: string
  28077. kind:
  28078. description: |-
  28079. Kind is a string value representing the REST resource this object represents.
  28080. Servers may infer this from the endpoint the client submits requests to.
  28081. Cannot be updated.
  28082. In CamelCase.
  28083. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28084. type: string
  28085. metadata:
  28086. type: object
  28087. spec:
  28088. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  28089. properties:
  28090. robotAccount:
  28091. description: Name of the robot account you are federating with
  28092. type: string
  28093. serviceAccountRef:
  28094. description: Name of the service account you are federating with
  28095. properties:
  28096. audiences:
  28097. description: |-
  28098. Audience specifies the `aud` claim for the service account token
  28099. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28100. then this audiences will be appended to the list
  28101. items:
  28102. type: string
  28103. type: array
  28104. name:
  28105. description: The name of the ServiceAccount resource being referred to.
  28106. maxLength: 253
  28107. minLength: 1
  28108. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28109. type: string
  28110. namespace:
  28111. description: |-
  28112. Namespace of the resource being referred to.
  28113. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28114. maxLength: 63
  28115. minLength: 1
  28116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28117. type: string
  28118. required:
  28119. - name
  28120. type: object
  28121. url:
  28122. description: URL configures the Quay instance URL. Defaults to quay.io.
  28123. type: string
  28124. required:
  28125. - robotAccount
  28126. - serviceAccountRef
  28127. type: object
  28128. type: object
  28129. served: true
  28130. storage: true
  28131. subresources:
  28132. status: {}
  28133. ---
  28134. apiVersion: apiextensions.k8s.io/v1
  28135. kind: CustomResourceDefinition
  28136. metadata:
  28137. annotations:
  28138. controller-gen.kubebuilder.io/version: v0.19.0
  28139. labels:
  28140. external-secrets.io/component: controller
  28141. name: sshkeys.generators.external-secrets.io
  28142. spec:
  28143. group: generators.external-secrets.io
  28144. names:
  28145. categories:
  28146. - external-secrets
  28147. - external-secrets-generators
  28148. kind: SSHKey
  28149. listKind: SSHKeyList
  28150. plural: sshkeys
  28151. singular: sshkey
  28152. scope: Namespaced
  28153. versions:
  28154. - name: v1alpha1
  28155. schema:
  28156. openAPIV3Schema:
  28157. description: SSHKey generates SSH key pairs.
  28158. properties:
  28159. apiVersion:
  28160. description: |-
  28161. APIVersion defines the versioned schema of this representation of an object.
  28162. Servers should convert recognized schemas to the latest internal value, and
  28163. may reject unrecognized values.
  28164. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28165. type: string
  28166. kind:
  28167. description: |-
  28168. Kind is a string value representing the REST resource this object represents.
  28169. Servers may infer this from the endpoint the client submits requests to.
  28170. Cannot be updated.
  28171. In CamelCase.
  28172. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28173. type: string
  28174. metadata:
  28175. type: object
  28176. spec:
  28177. description: SSHKeySpec controls the behavior of the ssh key generator.
  28178. properties:
  28179. comment:
  28180. description: Comment specifies an optional comment for the SSH key
  28181. type: string
  28182. keySize:
  28183. description: |-
  28184. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  28185. For RSA keys: 2048, 3072, 4096
  28186. For ECDSA keys: 256, 384, 521
  28187. Ignored for ed25519 keys
  28188. maximum: 8192
  28189. minimum: 256
  28190. type: integer
  28191. keyType:
  28192. default: rsa
  28193. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  28194. enum:
  28195. - rsa
  28196. - ecdsa
  28197. - ed25519
  28198. type: string
  28199. type: object
  28200. type: object
  28201. served: true
  28202. storage: true
  28203. subresources:
  28204. status: {}
  28205. ---
  28206. apiVersion: apiextensions.k8s.io/v1
  28207. kind: CustomResourceDefinition
  28208. metadata:
  28209. annotations:
  28210. controller-gen.kubebuilder.io/version: v0.19.0
  28211. labels:
  28212. external-secrets.io/component: controller
  28213. name: stssessiontokens.generators.external-secrets.io
  28214. spec:
  28215. group: generators.external-secrets.io
  28216. names:
  28217. categories:
  28218. - external-secrets
  28219. - external-secrets-generators
  28220. kind: STSSessionToken
  28221. listKind: STSSessionTokenList
  28222. plural: stssessiontokens
  28223. singular: stssessiontoken
  28224. scope: Namespaced
  28225. versions:
  28226. - name: v1alpha1
  28227. schema:
  28228. openAPIV3Schema:
  28229. description: |-
  28230. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  28231. The authorization token is valid for 12 hours.
  28232. The authorizationToken returned is a base64 encoded string that can be decoded.
  28233. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  28234. properties:
  28235. apiVersion:
  28236. description: |-
  28237. APIVersion defines the versioned schema of this representation of an object.
  28238. Servers should convert recognized schemas to the latest internal value, and
  28239. may reject unrecognized values.
  28240. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28241. type: string
  28242. kind:
  28243. description: |-
  28244. Kind is a string value representing the REST resource this object represents.
  28245. Servers may infer this from the endpoint the client submits requests to.
  28246. Cannot be updated.
  28247. In CamelCase.
  28248. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28249. type: string
  28250. metadata:
  28251. type: object
  28252. spec:
  28253. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  28254. properties:
  28255. auth:
  28256. description: Auth defines how to authenticate with AWS
  28257. properties:
  28258. jwt:
  28259. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28260. properties:
  28261. serviceAccountRef:
  28262. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28263. properties:
  28264. audiences:
  28265. description: |-
  28266. Audience specifies the `aud` claim for the service account token
  28267. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28268. then this audiences will be appended to the list
  28269. items:
  28270. type: string
  28271. type: array
  28272. name:
  28273. description: The name of the ServiceAccount resource being referred to.
  28274. maxLength: 253
  28275. minLength: 1
  28276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28277. type: string
  28278. namespace:
  28279. description: |-
  28280. Namespace of the resource being referred to.
  28281. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28282. maxLength: 63
  28283. minLength: 1
  28284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28285. type: string
  28286. required:
  28287. - name
  28288. type: object
  28289. type: object
  28290. secretRef:
  28291. description: |-
  28292. AWSAuthSecretRef holds secret references for AWS credentials
  28293. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28294. properties:
  28295. accessKeyIDSecretRef:
  28296. description: The AccessKeyID is used for authentication
  28297. properties:
  28298. key:
  28299. description: |-
  28300. A key in the referenced Secret.
  28301. Some instances of this field may be defaulted, in others it may be required.
  28302. maxLength: 253
  28303. minLength: 1
  28304. pattern: ^[-._a-zA-Z0-9]+$
  28305. type: string
  28306. name:
  28307. description: The name of the Secret resource being referred to.
  28308. maxLength: 253
  28309. minLength: 1
  28310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28311. type: string
  28312. namespace:
  28313. description: |-
  28314. The namespace of the Secret resource being referred to.
  28315. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28316. maxLength: 63
  28317. minLength: 1
  28318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28319. type: string
  28320. type: object
  28321. secretAccessKeySecretRef:
  28322. description: The SecretAccessKey is used for authentication
  28323. properties:
  28324. key:
  28325. description: |-
  28326. A key in the referenced Secret.
  28327. Some instances of this field may be defaulted, in others it may be required.
  28328. maxLength: 253
  28329. minLength: 1
  28330. pattern: ^[-._a-zA-Z0-9]+$
  28331. type: string
  28332. name:
  28333. description: The name of the Secret resource being referred to.
  28334. maxLength: 253
  28335. minLength: 1
  28336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28337. type: string
  28338. namespace:
  28339. description: |-
  28340. The namespace of the Secret resource being referred to.
  28341. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28342. maxLength: 63
  28343. minLength: 1
  28344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28345. type: string
  28346. type: object
  28347. sessionTokenSecretRef:
  28348. description: |-
  28349. The SessionToken used for authentication
  28350. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28351. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28352. properties:
  28353. key:
  28354. description: |-
  28355. A key in the referenced Secret.
  28356. Some instances of this field may be defaulted, in others it may be required.
  28357. maxLength: 253
  28358. minLength: 1
  28359. pattern: ^[-._a-zA-Z0-9]+$
  28360. type: string
  28361. name:
  28362. description: The name of the Secret resource being referred to.
  28363. maxLength: 253
  28364. minLength: 1
  28365. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28366. type: string
  28367. namespace:
  28368. description: |-
  28369. The namespace of the Secret resource being referred to.
  28370. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28371. maxLength: 63
  28372. minLength: 1
  28373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28374. type: string
  28375. type: object
  28376. type: object
  28377. type: object
  28378. region:
  28379. description: Region specifies the region to operate in.
  28380. type: string
  28381. requestParameters:
  28382. description: RequestParameters contains parameters that can be passed to the STS service.
  28383. properties:
  28384. serialNumber:
  28385. description: |-
  28386. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  28387. the GetSessionToken call.
  28388. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  28389. (such as arn:aws:iam::123456789012:mfa/user)
  28390. type: string
  28391. sessionDuration:
  28392. format: int32
  28393. type: integer
  28394. tokenCode:
  28395. description: TokenCode is the value provided by the MFA device, if MFA is required.
  28396. type: string
  28397. type: object
  28398. role:
  28399. description: |-
  28400. You can assume a role before making calls to the
  28401. desired AWS service.
  28402. type: string
  28403. required:
  28404. - region
  28405. type: object
  28406. type: object
  28407. served: true
  28408. storage: true
  28409. subresources:
  28410. status: {}
  28411. ---
  28412. apiVersion: apiextensions.k8s.io/v1
  28413. kind: CustomResourceDefinition
  28414. metadata:
  28415. annotations:
  28416. controller-gen.kubebuilder.io/version: v0.19.0
  28417. labels:
  28418. external-secrets.io/component: controller
  28419. name: uuids.generators.external-secrets.io
  28420. spec:
  28421. group: generators.external-secrets.io
  28422. names:
  28423. categories:
  28424. - external-secrets
  28425. - external-secrets-generators
  28426. kind: UUID
  28427. listKind: UUIDList
  28428. plural: uuids
  28429. singular: uuid
  28430. scope: Namespaced
  28431. versions:
  28432. - name: v1alpha1
  28433. schema:
  28434. openAPIV3Schema:
  28435. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  28436. properties:
  28437. apiVersion:
  28438. description: |-
  28439. APIVersion defines the versioned schema of this representation of an object.
  28440. Servers should convert recognized schemas to the latest internal value, and
  28441. may reject unrecognized values.
  28442. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28443. type: string
  28444. kind:
  28445. description: |-
  28446. Kind is a string value representing the REST resource this object represents.
  28447. Servers may infer this from the endpoint the client submits requests to.
  28448. Cannot be updated.
  28449. In CamelCase.
  28450. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28451. type: string
  28452. metadata:
  28453. type: object
  28454. spec:
  28455. description: UUIDSpec controls the behavior of the uuid generator.
  28456. type: object
  28457. type: object
  28458. served: true
  28459. storage: true
  28460. subresources:
  28461. status: {}
  28462. ---
  28463. apiVersion: apiextensions.k8s.io/v1
  28464. kind: CustomResourceDefinition
  28465. metadata:
  28466. annotations:
  28467. controller-gen.kubebuilder.io/version: v0.19.0
  28468. labels:
  28469. external-secrets.io/component: controller
  28470. name: vaultdynamicsecrets.generators.external-secrets.io
  28471. spec:
  28472. group: generators.external-secrets.io
  28473. names:
  28474. categories:
  28475. - external-secrets
  28476. - external-secrets-generators
  28477. kind: VaultDynamicSecret
  28478. listKind: VaultDynamicSecretList
  28479. plural: vaultdynamicsecrets
  28480. singular: vaultdynamicsecret
  28481. scope: Namespaced
  28482. versions:
  28483. - name: v1alpha1
  28484. schema:
  28485. openAPIV3Schema:
  28486. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  28487. properties:
  28488. apiVersion:
  28489. description: |-
  28490. APIVersion defines the versioned schema of this representation of an object.
  28491. Servers should convert recognized schemas to the latest internal value, and
  28492. may reject unrecognized values.
  28493. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28494. type: string
  28495. kind:
  28496. description: |-
  28497. Kind is a string value representing the REST resource this object represents.
  28498. Servers may infer this from the endpoint the client submits requests to.
  28499. Cannot be updated.
  28500. In CamelCase.
  28501. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28502. type: string
  28503. metadata:
  28504. type: object
  28505. spec:
  28506. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  28507. properties:
  28508. allowEmptyResponse:
  28509. default: false
  28510. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  28511. type: boolean
  28512. controller:
  28513. description: |-
  28514. Used to select the correct ESO controller (think: ingress.ingressClassName)
  28515. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  28516. type: string
  28517. method:
  28518. description: Vault API method to use (GET/POST/other)
  28519. type: string
  28520. parameters:
  28521. description: Parameters to pass to Vault write (for non-GET methods)
  28522. x-kubernetes-preserve-unknown-fields: true
  28523. path:
  28524. description: Vault path to obtain the dynamic secret from
  28525. type: string
  28526. provider:
  28527. description: Vault provider common spec
  28528. properties:
  28529. auth:
  28530. description: Auth configures how secret-manager authenticates with the Vault server.
  28531. properties:
  28532. appRole:
  28533. description: |-
  28534. AppRole authenticates with Vault using the App Role auth mechanism,
  28535. with the role and secret stored in a Kubernetes Secret resource.
  28536. properties:
  28537. path:
  28538. default: approle
  28539. description: |-
  28540. Path where the App Role authentication backend is mounted
  28541. in Vault, e.g: "approle"
  28542. type: string
  28543. roleId:
  28544. description: |-
  28545. RoleID configured in the App Role authentication backend when setting
  28546. up the authentication backend in Vault.
  28547. type: string
  28548. roleRef:
  28549. description: |-
  28550. Reference to a key in a Secret that contains the App Role ID used
  28551. to authenticate with Vault.
  28552. The `key` field must be specified and denotes which entry within the Secret
  28553. resource is used as the app role id.
  28554. properties:
  28555. key:
  28556. description: |-
  28557. A key in the referenced Secret.
  28558. Some instances of this field may be defaulted, in others it may be required.
  28559. maxLength: 253
  28560. minLength: 1
  28561. pattern: ^[-._a-zA-Z0-9]+$
  28562. type: string
  28563. name:
  28564. description: The name of the Secret resource being referred to.
  28565. maxLength: 253
  28566. minLength: 1
  28567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28568. type: string
  28569. namespace:
  28570. description: |-
  28571. The namespace of the Secret resource being referred to.
  28572. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28573. maxLength: 63
  28574. minLength: 1
  28575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28576. type: string
  28577. type: object
  28578. secretRef:
  28579. description: |-
  28580. Reference to a key in a Secret that contains the App Role secret used
  28581. to authenticate with Vault.
  28582. The `key` field must be specified and denotes which entry within the Secret
  28583. resource is used as the app role secret.
  28584. properties:
  28585. key:
  28586. description: |-
  28587. A key in the referenced Secret.
  28588. Some instances of this field may be defaulted, in others it may be required.
  28589. maxLength: 253
  28590. minLength: 1
  28591. pattern: ^[-._a-zA-Z0-9]+$
  28592. type: string
  28593. name:
  28594. description: The name of the Secret resource being referred to.
  28595. maxLength: 253
  28596. minLength: 1
  28597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28598. type: string
  28599. namespace:
  28600. description: |-
  28601. The namespace of the Secret resource being referred to.
  28602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28603. maxLength: 63
  28604. minLength: 1
  28605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28606. type: string
  28607. type: object
  28608. required:
  28609. - path
  28610. - secretRef
  28611. type: object
  28612. cert:
  28613. description: |-
  28614. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  28615. Cert authentication method
  28616. properties:
  28617. clientCert:
  28618. description: |-
  28619. ClientCert is a certificate to authenticate using the Cert Vault
  28620. authentication method
  28621. properties:
  28622. key:
  28623. description: |-
  28624. A key in the referenced Secret.
  28625. Some instances of this field may be defaulted, in others it may be required.
  28626. maxLength: 253
  28627. minLength: 1
  28628. pattern: ^[-._a-zA-Z0-9]+$
  28629. type: string
  28630. name:
  28631. description: The name of the Secret resource being referred to.
  28632. maxLength: 253
  28633. minLength: 1
  28634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28635. type: string
  28636. namespace:
  28637. description: |-
  28638. The namespace of the Secret resource being referred to.
  28639. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28640. maxLength: 63
  28641. minLength: 1
  28642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28643. type: string
  28644. type: object
  28645. path:
  28646. default: cert
  28647. description: |-
  28648. Path where the Certificate authentication backend is mounted
  28649. in Vault, e.g: "cert"
  28650. type: string
  28651. secretRef:
  28652. description: |-
  28653. SecretRef to a key in a Secret resource containing client private key to
  28654. authenticate with Vault using the Cert authentication method
  28655. properties:
  28656. key:
  28657. description: |-
  28658. A key in the referenced Secret.
  28659. Some instances of this field may be defaulted, in others it may be required.
  28660. maxLength: 253
  28661. minLength: 1
  28662. pattern: ^[-._a-zA-Z0-9]+$
  28663. type: string
  28664. name:
  28665. description: The name of the Secret resource being referred to.
  28666. maxLength: 253
  28667. minLength: 1
  28668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28669. type: string
  28670. namespace:
  28671. description: |-
  28672. The namespace of the Secret resource being referred to.
  28673. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28674. maxLength: 63
  28675. minLength: 1
  28676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28677. type: string
  28678. type: object
  28679. type: object
  28680. gcp:
  28681. description: |-
  28682. Gcp authenticates with Vault using Google Cloud Platform authentication method
  28683. GCP authentication method
  28684. properties:
  28685. location:
  28686. description: Location optionally defines a location/region for the secret
  28687. type: string
  28688. path:
  28689. default: gcp
  28690. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  28691. type: string
  28692. projectID:
  28693. description: Project ID of the Google Cloud Platform project
  28694. type: string
  28695. role:
  28696. 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.
  28697. type: string
  28698. secretRef:
  28699. description: Specify credentials in a Secret object
  28700. properties:
  28701. secretAccessKeySecretRef:
  28702. description: The SecretAccessKey is used for authentication
  28703. properties:
  28704. key:
  28705. description: |-
  28706. A key in the referenced Secret.
  28707. Some instances of this field may be defaulted, in others it may be required.
  28708. maxLength: 253
  28709. minLength: 1
  28710. pattern: ^[-._a-zA-Z0-9]+$
  28711. type: string
  28712. name:
  28713. description: The name of the Secret resource being referred to.
  28714. maxLength: 253
  28715. minLength: 1
  28716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28717. type: string
  28718. namespace:
  28719. description: |-
  28720. The namespace of the Secret resource being referred to.
  28721. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28722. maxLength: 63
  28723. minLength: 1
  28724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28725. type: string
  28726. type: object
  28727. type: object
  28728. serviceAccountRef:
  28729. description: ServiceAccountRef to a service account for impersonation
  28730. properties:
  28731. audiences:
  28732. description: |-
  28733. Audience specifies the `aud` claim for the service account token
  28734. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28735. then this audiences will be appended to the list
  28736. items:
  28737. type: string
  28738. type: array
  28739. name:
  28740. description: The name of the ServiceAccount resource being referred to.
  28741. maxLength: 253
  28742. minLength: 1
  28743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28744. type: string
  28745. namespace:
  28746. description: |-
  28747. Namespace of the resource being referred to.
  28748. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28749. maxLength: 63
  28750. minLength: 1
  28751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28752. type: string
  28753. required:
  28754. - name
  28755. type: object
  28756. workloadIdentity:
  28757. description: Specify a service account with Workload Identity
  28758. properties:
  28759. clusterLocation:
  28760. description: |-
  28761. ClusterLocation is the location of the cluster
  28762. If not specified, it fetches information from the metadata server
  28763. type: string
  28764. clusterName:
  28765. description: |-
  28766. ClusterName is the name of the cluster
  28767. If not specified, it fetches information from the metadata server
  28768. type: string
  28769. clusterProjectID:
  28770. description: |-
  28771. ClusterProjectID is the project ID of the cluster
  28772. If not specified, it fetches information from the metadata server
  28773. type: string
  28774. serviceAccountRef:
  28775. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28776. properties:
  28777. audiences:
  28778. description: |-
  28779. Audience specifies the `aud` claim for the service account token
  28780. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28781. then this audiences will be appended to the list
  28782. items:
  28783. type: string
  28784. type: array
  28785. name:
  28786. description: The name of the ServiceAccount resource being referred to.
  28787. maxLength: 253
  28788. minLength: 1
  28789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28790. type: string
  28791. namespace:
  28792. description: |-
  28793. Namespace of the resource being referred to.
  28794. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28795. maxLength: 63
  28796. minLength: 1
  28797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28798. type: string
  28799. required:
  28800. - name
  28801. type: object
  28802. required:
  28803. - serviceAccountRef
  28804. type: object
  28805. required:
  28806. - role
  28807. type: object
  28808. iam:
  28809. description: |-
  28810. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  28811. AWS IAM authentication method
  28812. properties:
  28813. externalID:
  28814. description: AWS External ID set on assumed IAM roles
  28815. type: string
  28816. jwt:
  28817. description: Specify a service account with IRSA enabled
  28818. properties:
  28819. serviceAccountRef:
  28820. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28821. properties:
  28822. audiences:
  28823. description: |-
  28824. Audience specifies the `aud` claim for the service account token
  28825. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28826. then this audiences will be appended to the list
  28827. items:
  28828. type: string
  28829. type: array
  28830. name:
  28831. description: The name of the ServiceAccount resource being referred to.
  28832. maxLength: 253
  28833. minLength: 1
  28834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28835. type: string
  28836. namespace:
  28837. description: |-
  28838. Namespace of the resource being referred to.
  28839. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28840. maxLength: 63
  28841. minLength: 1
  28842. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28843. type: string
  28844. required:
  28845. - name
  28846. type: object
  28847. type: object
  28848. path:
  28849. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  28850. type: string
  28851. region:
  28852. description: AWS region
  28853. type: string
  28854. role:
  28855. description: This is the AWS role to be assumed before talking to vault
  28856. type: string
  28857. secretRef:
  28858. description: Specify credentials in a Secret object
  28859. properties:
  28860. accessKeyIDSecretRef:
  28861. description: The AccessKeyID is used for authentication
  28862. properties:
  28863. key:
  28864. description: |-
  28865. A key in the referenced Secret.
  28866. Some instances of this field may be defaulted, in others it may be required.
  28867. maxLength: 253
  28868. minLength: 1
  28869. pattern: ^[-._a-zA-Z0-9]+$
  28870. type: string
  28871. name:
  28872. description: The name of the Secret resource being referred to.
  28873. maxLength: 253
  28874. minLength: 1
  28875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28876. type: string
  28877. namespace:
  28878. description: |-
  28879. The namespace of the Secret resource being referred to.
  28880. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28881. maxLength: 63
  28882. minLength: 1
  28883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28884. type: string
  28885. type: object
  28886. secretAccessKeySecretRef:
  28887. description: The SecretAccessKey is used for authentication
  28888. properties:
  28889. key:
  28890. description: |-
  28891. A key in the referenced Secret.
  28892. Some instances of this field may be defaulted, in others it may be required.
  28893. maxLength: 253
  28894. minLength: 1
  28895. pattern: ^[-._a-zA-Z0-9]+$
  28896. type: string
  28897. name:
  28898. description: The name of the Secret resource being referred to.
  28899. maxLength: 253
  28900. minLength: 1
  28901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28902. type: string
  28903. namespace:
  28904. description: |-
  28905. The namespace of the Secret resource being referred to.
  28906. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28907. maxLength: 63
  28908. minLength: 1
  28909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28910. type: string
  28911. type: object
  28912. sessionTokenSecretRef:
  28913. description: |-
  28914. The SessionToken used for authentication
  28915. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28916. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28917. properties:
  28918. key:
  28919. description: |-
  28920. A key in the referenced Secret.
  28921. Some instances of this field may be defaulted, in others it may be required.
  28922. maxLength: 253
  28923. minLength: 1
  28924. pattern: ^[-._a-zA-Z0-9]+$
  28925. type: string
  28926. name:
  28927. description: The name of the Secret resource being referred to.
  28928. maxLength: 253
  28929. minLength: 1
  28930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28931. type: string
  28932. namespace:
  28933. description: |-
  28934. The namespace of the Secret resource being referred to.
  28935. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28936. maxLength: 63
  28937. minLength: 1
  28938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28939. type: string
  28940. type: object
  28941. type: object
  28942. vaultAwsIamServerID:
  28943. 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'
  28944. type: string
  28945. vaultRole:
  28946. 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
  28947. type: string
  28948. required:
  28949. - vaultRole
  28950. type: object
  28951. jwt:
  28952. description: |-
  28953. Jwt authenticates with Vault by passing role and JWT token using the
  28954. JWT/OIDC authentication method
  28955. properties:
  28956. kubernetesServiceAccountToken:
  28957. description: |-
  28958. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  28959. a token for with the `TokenRequest` API.
  28960. properties:
  28961. audiences:
  28962. description: |-
  28963. Optional audiences field that will be used to request a temporary Kubernetes service
  28964. account token for the service account referenced by `serviceAccountRef`.
  28965. Defaults to a single audience `vault` it not specified.
  28966. Deprecated: use serviceAccountRef.Audiences instead
  28967. items:
  28968. type: string
  28969. type: array
  28970. expirationSeconds:
  28971. description: |-
  28972. Optional expiration time in seconds that will be used to request a temporary
  28973. Kubernetes service account token for the service account referenced by
  28974. `serviceAccountRef`.
  28975. Deprecated: this will be removed in the future.
  28976. Defaults to 10 minutes.
  28977. format: int64
  28978. type: integer
  28979. serviceAccountRef:
  28980. description: Service account field containing the name of a kubernetes ServiceAccount.
  28981. properties:
  28982. audiences:
  28983. description: |-
  28984. Audience specifies the `aud` claim for the service account token
  28985. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28986. then this audiences will be appended to the list
  28987. items:
  28988. type: string
  28989. type: array
  28990. name:
  28991. description: The name of the ServiceAccount resource being referred to.
  28992. maxLength: 253
  28993. minLength: 1
  28994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28995. type: string
  28996. namespace:
  28997. description: |-
  28998. Namespace of the resource being referred to.
  28999. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29000. maxLength: 63
  29001. minLength: 1
  29002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29003. type: string
  29004. required:
  29005. - name
  29006. type: object
  29007. required:
  29008. - serviceAccountRef
  29009. type: object
  29010. path:
  29011. default: jwt
  29012. description: |-
  29013. Path where the JWT authentication backend is mounted
  29014. in Vault, e.g: "jwt"
  29015. type: string
  29016. role:
  29017. description: |-
  29018. Role is a JWT role to authenticate using the JWT/OIDC Vault
  29019. authentication method
  29020. type: string
  29021. secretRef:
  29022. description: |-
  29023. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  29024. authenticate with Vault using the JWT/OIDC authentication method.
  29025. properties:
  29026. key:
  29027. description: |-
  29028. A key in the referenced Secret.
  29029. Some instances of this field may be defaulted, in others it may be required.
  29030. maxLength: 253
  29031. minLength: 1
  29032. pattern: ^[-._a-zA-Z0-9]+$
  29033. type: string
  29034. name:
  29035. description: The name of the Secret resource being referred to.
  29036. maxLength: 253
  29037. minLength: 1
  29038. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29039. type: string
  29040. namespace:
  29041. description: |-
  29042. The namespace of the Secret resource being referred to.
  29043. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29044. maxLength: 63
  29045. minLength: 1
  29046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29047. type: string
  29048. type: object
  29049. required:
  29050. - path
  29051. type: object
  29052. kubernetes:
  29053. description: |-
  29054. Kubernetes authenticates with Vault by passing the ServiceAccount
  29055. token stored in the named Secret resource to the Vault server.
  29056. properties:
  29057. mountPath:
  29058. default: kubernetes
  29059. description: |-
  29060. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  29061. "kubernetes"
  29062. type: string
  29063. role:
  29064. description: |-
  29065. A required field containing the Vault Role to assume. A Role binds a
  29066. Kubernetes ServiceAccount with a set of Vault policies.
  29067. type: string
  29068. secretRef:
  29069. description: |-
  29070. Optional secret field containing a Kubernetes ServiceAccount JWT used
  29071. for authenticating with Vault. If a name is specified without a key,
  29072. `token` is the default. If one is not specified, the one bound to
  29073. the controller will be used.
  29074. properties:
  29075. key:
  29076. description: |-
  29077. A key in the referenced Secret.
  29078. Some instances of this field may be defaulted, in others it may be required.
  29079. maxLength: 253
  29080. minLength: 1
  29081. pattern: ^[-._a-zA-Z0-9]+$
  29082. type: string
  29083. name:
  29084. description: The name of the Secret resource being referred to.
  29085. maxLength: 253
  29086. minLength: 1
  29087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29088. type: string
  29089. namespace:
  29090. description: |-
  29091. The namespace of the Secret resource being referred to.
  29092. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29093. maxLength: 63
  29094. minLength: 1
  29095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29096. type: string
  29097. type: object
  29098. serviceAccountRef:
  29099. description: |-
  29100. Optional service account field containing the name of a kubernetes ServiceAccount.
  29101. If the service account is specified, the service account secret token JWT will be used
  29102. for authenticating with Vault. If the service account selector is not supplied,
  29103. the secretRef will be used instead.
  29104. properties:
  29105. audiences:
  29106. description: |-
  29107. Audience specifies the `aud` claim for the service account token
  29108. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29109. then this audiences will be appended to the list
  29110. items:
  29111. type: string
  29112. type: array
  29113. name:
  29114. description: The name of the ServiceAccount resource being referred to.
  29115. maxLength: 253
  29116. minLength: 1
  29117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29118. type: string
  29119. namespace:
  29120. description: |-
  29121. Namespace of the resource being referred to.
  29122. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29123. maxLength: 63
  29124. minLength: 1
  29125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29126. type: string
  29127. required:
  29128. - name
  29129. type: object
  29130. required:
  29131. - mountPath
  29132. - role
  29133. type: object
  29134. ldap:
  29135. description: |-
  29136. Ldap authenticates with Vault by passing username/password pair using
  29137. the LDAP authentication method
  29138. properties:
  29139. path:
  29140. default: ldap
  29141. description: |-
  29142. Path where the LDAP authentication backend is mounted
  29143. in Vault, e.g: "ldap"
  29144. type: string
  29145. secretRef:
  29146. description: |-
  29147. SecretRef to a key in a Secret resource containing password for the LDAP
  29148. user used to authenticate with Vault using the LDAP authentication
  29149. method
  29150. properties:
  29151. key:
  29152. description: |-
  29153. A key in the referenced Secret.
  29154. Some instances of this field may be defaulted, in others it may be required.
  29155. maxLength: 253
  29156. minLength: 1
  29157. pattern: ^[-._a-zA-Z0-9]+$
  29158. type: string
  29159. name:
  29160. description: The name of the Secret resource being referred to.
  29161. maxLength: 253
  29162. minLength: 1
  29163. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29164. type: string
  29165. namespace:
  29166. description: |-
  29167. The namespace of the Secret resource being referred to.
  29168. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29169. maxLength: 63
  29170. minLength: 1
  29171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29172. type: string
  29173. type: object
  29174. username:
  29175. description: |-
  29176. Username is an LDAP username used to authenticate using the LDAP Vault
  29177. authentication method
  29178. type: string
  29179. required:
  29180. - path
  29181. - username
  29182. type: object
  29183. namespace:
  29184. description: |-
  29185. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  29186. Namespaces is a set of features within Vault Enterprise that allows
  29187. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29188. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29189. This will default to Vault.Namespace field if set, or empty otherwise
  29190. type: string
  29191. tokenSecretRef:
  29192. description: TokenSecretRef authenticates with Vault by presenting a token.
  29193. properties:
  29194. key:
  29195. description: |-
  29196. A key in the referenced Secret.
  29197. Some instances of this field may be defaulted, in others it may be required.
  29198. maxLength: 253
  29199. minLength: 1
  29200. pattern: ^[-._a-zA-Z0-9]+$
  29201. type: string
  29202. name:
  29203. description: The name of the Secret resource being referred to.
  29204. maxLength: 253
  29205. minLength: 1
  29206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29207. type: string
  29208. namespace:
  29209. description: |-
  29210. The namespace of the Secret resource being referred to.
  29211. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29212. maxLength: 63
  29213. minLength: 1
  29214. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29215. type: string
  29216. type: object
  29217. userPass:
  29218. description: UserPass authenticates with Vault by passing username/password pair
  29219. properties:
  29220. path:
  29221. default: userpass
  29222. description: |-
  29223. Path where the UserPassword authentication backend is mounted
  29224. in Vault, e.g: "userpass"
  29225. type: string
  29226. secretRef:
  29227. description: |-
  29228. SecretRef to a key in a Secret resource containing password for the
  29229. user used to authenticate with Vault using the UserPass authentication
  29230. method
  29231. properties:
  29232. key:
  29233. description: |-
  29234. A key in the referenced Secret.
  29235. Some instances of this field may be defaulted, in others it may be required.
  29236. maxLength: 253
  29237. minLength: 1
  29238. pattern: ^[-._a-zA-Z0-9]+$
  29239. type: string
  29240. name:
  29241. description: The name of the Secret resource being referred to.
  29242. maxLength: 253
  29243. minLength: 1
  29244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29245. type: string
  29246. namespace:
  29247. description: |-
  29248. The namespace of the Secret resource being referred to.
  29249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29250. maxLength: 63
  29251. minLength: 1
  29252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29253. type: string
  29254. type: object
  29255. username:
  29256. description: |-
  29257. Username is a username used to authenticate using the UserPass Vault
  29258. authentication method
  29259. type: string
  29260. required:
  29261. - path
  29262. - username
  29263. type: object
  29264. type: object
  29265. caBundle:
  29266. description: |-
  29267. PEM encoded CA bundle used to validate Vault server certificate. Only used
  29268. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29269. plain HTTP protocol connection. If not set the system root certificates
  29270. are used to validate the TLS connection.
  29271. format: byte
  29272. type: string
  29273. caProvider:
  29274. description: The provider for the CA bundle to use to validate Vault server certificate.
  29275. properties:
  29276. key:
  29277. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29278. maxLength: 253
  29279. minLength: 1
  29280. pattern: ^[-._a-zA-Z0-9]+$
  29281. type: string
  29282. name:
  29283. description: The name of the object located at the provider type.
  29284. maxLength: 253
  29285. minLength: 1
  29286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29287. type: string
  29288. namespace:
  29289. description: |-
  29290. The namespace the Provider type is in.
  29291. Can only be defined when used in a ClusterSecretStore.
  29292. maxLength: 63
  29293. minLength: 1
  29294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29295. type: string
  29296. type:
  29297. description: The type of provider to use such as "Secret", or "ConfigMap".
  29298. enum:
  29299. - Secret
  29300. - ConfigMap
  29301. type: string
  29302. required:
  29303. - name
  29304. - type
  29305. type: object
  29306. checkAndSet:
  29307. description: |-
  29308. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  29309. Only applies to Vault KV v2 stores. When enabled, write operations must include
  29310. the current version of the secret to prevent unintentional overwrites.
  29311. properties:
  29312. required:
  29313. description: |-
  29314. Required when true, all write operations must include a check-and-set parameter.
  29315. This helps prevent unintentional overwrites of secrets.
  29316. type: boolean
  29317. type: object
  29318. forwardInconsistent:
  29319. description: |-
  29320. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  29321. leader instead of simply retrying within a loop. This can increase performance if
  29322. the option is enabled serverside.
  29323. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  29324. type: boolean
  29325. headers:
  29326. additionalProperties:
  29327. type: string
  29328. description: Headers to be added in Vault request
  29329. type: object
  29330. namespace:
  29331. description: |-
  29332. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  29333. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29334. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29335. type: string
  29336. path:
  29337. description: |-
  29338. Path is the mount path of the Vault KV backend endpoint, e.g:
  29339. "secret". The v2 KV secret engine version specific "/data" path suffix
  29340. for fetching secrets from Vault is optional and will be appended
  29341. if not present in specified path.
  29342. type: string
  29343. readYourWrites:
  29344. description: |-
  29345. ReadYourWrites ensures isolated read-after-write semantics by
  29346. providing discovered cluster replication states in each request.
  29347. More information about eventual consistency in Vault can be found here
  29348. https://www.vaultproject.io/docs/enterprise/consistency
  29349. type: boolean
  29350. server:
  29351. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  29352. type: string
  29353. tls:
  29354. description: |-
  29355. The configuration used for client side related TLS communication, when the Vault server
  29356. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  29357. This parameter is ignored for plain HTTP protocol connection.
  29358. It's worth noting this configuration is different from the "TLS certificates auth method",
  29359. which is available under the `auth.cert` section.
  29360. properties:
  29361. certSecretRef:
  29362. description: |-
  29363. CertSecretRef is a certificate added to the transport layer
  29364. when communicating with the Vault server.
  29365. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  29366. properties:
  29367. key:
  29368. description: |-
  29369. A key in the referenced Secret.
  29370. Some instances of this field may be defaulted, in others it may be required.
  29371. maxLength: 253
  29372. minLength: 1
  29373. pattern: ^[-._a-zA-Z0-9]+$
  29374. type: string
  29375. name:
  29376. description: The name of the Secret resource being referred to.
  29377. maxLength: 253
  29378. minLength: 1
  29379. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29380. type: string
  29381. namespace:
  29382. description: |-
  29383. The namespace of the Secret resource being referred to.
  29384. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29385. maxLength: 63
  29386. minLength: 1
  29387. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29388. type: string
  29389. type: object
  29390. keySecretRef:
  29391. description: |-
  29392. KeySecretRef to a key in a Secret resource containing client private key
  29393. added to the transport layer when communicating with the Vault server.
  29394. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  29395. properties:
  29396. key:
  29397. description: |-
  29398. A key in the referenced Secret.
  29399. Some instances of this field may be defaulted, in others it may be required.
  29400. maxLength: 253
  29401. minLength: 1
  29402. pattern: ^[-._a-zA-Z0-9]+$
  29403. type: string
  29404. name:
  29405. description: The name of the Secret resource being referred to.
  29406. maxLength: 253
  29407. minLength: 1
  29408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29409. type: string
  29410. namespace:
  29411. description: |-
  29412. The namespace of the Secret resource being referred to.
  29413. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29414. maxLength: 63
  29415. minLength: 1
  29416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29417. type: string
  29418. type: object
  29419. type: object
  29420. version:
  29421. default: v2
  29422. description: |-
  29423. Version is the Vault KV secret engine version. This can be either "v1" or
  29424. "v2". Version defaults to "v2".
  29425. enum:
  29426. - v1
  29427. - v2
  29428. type: string
  29429. required:
  29430. - server
  29431. type: object
  29432. resultType:
  29433. default: Data
  29434. description: |-
  29435. Result type defines which data is returned from the generator.
  29436. By default, it is the "data" section of the Vault API response.
  29437. When using e.g. /auth/token/create the "data" section is empty but
  29438. the "auth" section contains the generated token.
  29439. Please refer to the vault docs regarding the result data structure.
  29440. Additionally, accessing the raw response is possibly by using "Raw" result type.
  29441. enum:
  29442. - Data
  29443. - Auth
  29444. - Raw
  29445. type: string
  29446. retrySettings:
  29447. description: Used to configure http retries if failed
  29448. properties:
  29449. maxRetries:
  29450. format: int32
  29451. type: integer
  29452. retryInterval:
  29453. type: string
  29454. type: object
  29455. required:
  29456. - path
  29457. - provider
  29458. type: object
  29459. type: object
  29460. served: true
  29461. storage: true
  29462. subresources:
  29463. status: {}
  29464. ---
  29465. apiVersion: apiextensions.k8s.io/v1
  29466. kind: CustomResourceDefinition
  29467. metadata:
  29468. annotations:
  29469. controller-gen.kubebuilder.io/version: v0.19.0
  29470. labels:
  29471. external-secrets.io/component: controller
  29472. name: webhooks.generators.external-secrets.io
  29473. spec:
  29474. group: generators.external-secrets.io
  29475. names:
  29476. categories:
  29477. - external-secrets
  29478. - external-secrets-generators
  29479. kind: Webhook
  29480. listKind: WebhookList
  29481. plural: webhooks
  29482. singular: webhook
  29483. scope: Namespaced
  29484. versions:
  29485. - name: v1alpha1
  29486. schema:
  29487. openAPIV3Schema:
  29488. description: |-
  29489. Webhook connects to a third party API server to handle the secrets generation
  29490. configuration parameters in spec.
  29491. You can specify the server, the token, and additional body parameters.
  29492. See documentation for the full API specification for requests and responses.
  29493. properties:
  29494. apiVersion:
  29495. description: |-
  29496. APIVersion defines the versioned schema of this representation of an object.
  29497. Servers should convert recognized schemas to the latest internal value, and
  29498. may reject unrecognized values.
  29499. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29500. type: string
  29501. kind:
  29502. description: |-
  29503. Kind is a string value representing the REST resource this object represents.
  29504. Servers may infer this from the endpoint the client submits requests to.
  29505. Cannot be updated.
  29506. In CamelCase.
  29507. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29508. type: string
  29509. metadata:
  29510. type: object
  29511. spec:
  29512. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  29513. properties:
  29514. auth:
  29515. description: Auth specifies a authorization protocol. Only one protocol may be set.
  29516. maxProperties: 1
  29517. minProperties: 1
  29518. properties:
  29519. ntlm:
  29520. description: NTLMProtocol configures the store to use NTLM for auth
  29521. properties:
  29522. passwordSecret:
  29523. description: |-
  29524. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29525. In some instances, `key` is a required field.
  29526. properties:
  29527. key:
  29528. description: |-
  29529. A key in the referenced Secret.
  29530. Some instances of this field may be defaulted, in others it may be required.
  29531. maxLength: 253
  29532. minLength: 1
  29533. pattern: ^[-._a-zA-Z0-9]+$
  29534. type: string
  29535. name:
  29536. description: The name of the Secret resource being referred to.
  29537. maxLength: 253
  29538. minLength: 1
  29539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29540. type: string
  29541. namespace:
  29542. description: |-
  29543. The namespace of the Secret resource being referred to.
  29544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29545. maxLength: 63
  29546. minLength: 1
  29547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29548. type: string
  29549. type: object
  29550. usernameSecret:
  29551. description: |-
  29552. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29553. In some instances, `key` is a required field.
  29554. properties:
  29555. key:
  29556. description: |-
  29557. A key in the referenced Secret.
  29558. Some instances of this field may be defaulted, in others it may be required.
  29559. maxLength: 253
  29560. minLength: 1
  29561. pattern: ^[-._a-zA-Z0-9]+$
  29562. type: string
  29563. name:
  29564. description: The name of the Secret resource being referred to.
  29565. maxLength: 253
  29566. minLength: 1
  29567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29568. type: string
  29569. namespace:
  29570. description: |-
  29571. The namespace of the Secret resource being referred to.
  29572. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29573. maxLength: 63
  29574. minLength: 1
  29575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29576. type: string
  29577. type: object
  29578. required:
  29579. - passwordSecret
  29580. - usernameSecret
  29581. type: object
  29582. type: object
  29583. body:
  29584. description: Body
  29585. type: string
  29586. caBundle:
  29587. description: |-
  29588. PEM encoded CA bundle used to validate webhook server certificate. Only used
  29589. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29590. plain HTTP protocol connection. If not set the system root certificates
  29591. are used to validate the TLS connection.
  29592. format: byte
  29593. type: string
  29594. caProvider:
  29595. description: The provider for the CA bundle to use to validate webhook server certificate.
  29596. properties:
  29597. key:
  29598. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29599. maxLength: 253
  29600. minLength: 1
  29601. pattern: ^[-._a-zA-Z0-9]+$
  29602. type: string
  29603. name:
  29604. description: The name of the object located at the provider type.
  29605. maxLength: 253
  29606. minLength: 1
  29607. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29608. type: string
  29609. namespace:
  29610. description: The namespace the Provider type is in.
  29611. maxLength: 63
  29612. minLength: 1
  29613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29614. type: string
  29615. type:
  29616. description: The type of provider to use such as "Secret", or "ConfigMap".
  29617. enum:
  29618. - Secret
  29619. - ConfigMap
  29620. type: string
  29621. required:
  29622. - name
  29623. - type
  29624. type: object
  29625. headers:
  29626. additionalProperties:
  29627. type: string
  29628. description: Headers
  29629. type: object
  29630. method:
  29631. description: Webhook Method
  29632. type: string
  29633. result:
  29634. description: Result formatting
  29635. properties:
  29636. jsonPath:
  29637. description: Json path of return value
  29638. type: string
  29639. type: object
  29640. secrets:
  29641. description: |-
  29642. Secrets to fill in templates
  29643. These secrets will be passed to the templating function as key value pairs under the given name
  29644. items:
  29645. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  29646. properties:
  29647. name:
  29648. description: Name of this secret in templates
  29649. type: string
  29650. secretRef:
  29651. description: Secret ref to fill in credentials
  29652. properties:
  29653. key:
  29654. description: The key where the token is found.
  29655. maxLength: 253
  29656. minLength: 1
  29657. pattern: ^[-._a-zA-Z0-9]+$
  29658. type: string
  29659. name:
  29660. description: The name of the Secret resource being referred to.
  29661. maxLength: 253
  29662. minLength: 1
  29663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29664. type: string
  29665. type: object
  29666. required:
  29667. - name
  29668. - secretRef
  29669. type: object
  29670. type: array
  29671. timeout:
  29672. description: Timeout
  29673. type: string
  29674. url:
  29675. description: Webhook url to call
  29676. type: string
  29677. required:
  29678. - result
  29679. - url
  29680. type: object
  29681. type: object
  29682. served: true
  29683. storage: true
  29684. subresources:
  29685. status: {}