bundle.yaml 1.8 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312263132631426315263162631726318263192632026321263222632326324263252632626327263282632926330263312633226333263342633526336263372633826339263402634126342263432634426345263462634726348263492635026351263522635326354263552635626357263582635926360263612636226363263642636526366263672636826369263702637126372263732637426375263762637726378263792638026381263822638326384263852638626387263882638926390263912639226393263942639526396263972639826399264002640126402264032640426405264062640726408264092641026411264122641326414264152641626417264182641926420264212642226423264242642526426264272642826429264302643126432264332643426435264362643726438264392644026441264422644326444264452644626447264482644926450264512645226453264542645526456264572645826459264602646126462264632646426465264662646726468264692647026471264722647326474264752647626477264782647926480264812648226483264842648526486264872648826489264902649126492264932649426495264962649726498264992650026501265022650326504265052650626507265082650926510265112651226513265142651526516265172651826519265202652126522265232652426525265262652726528265292653026531265322653326534265352653626537265382653926540265412654226543265442654526546265472654826549265502655126552265532655426555265562655726558265592656026561265622656326564265652656626567265682656926570265712657226573265742657526576265772657826579265802658126582265832658426585265862658726588265892659026591265922659326594265952659626597265982659926600266012660226603266042660526606266072660826609266102661126612266132661426615266162661726618266192662026621266222662326624266252662626627266282662926630266312663226633266342663526636266372663826639266402664126642266432664426645266462664726648266492665026651266522665326654266552665626657266582665926660266612666226663266642666526666266672666826669266702667126672266732667426675266762667726678266792668026681266822668326684266852668626687266882668926690266912669226693266942669526696266972669826699267002670126702267032670426705267062670726708267092671026711267122671326714267152671626717267182671926720267212672226723267242672526726267272672826729267302673126732267332673426735267362673726738267392674026741267422674326744267452674626747267482674926750267512675226753267542675526756267572675826759267602676126762267632676426765267662676726768267692677026771267722677326774267752677626777267782677926780267812678226783267842678526786267872678826789267902679126792267932679426795267962679726798267992680026801268022680326804268052680626807268082680926810268112681226813268142681526816268172681826819268202682126822268232682426825268262682726828268292683026831268322683326834268352683626837268382683926840268412684226843268442684526846268472684826849268502685126852268532685426855268562685726858268592686026861268622686326864268652686626867268682686926870268712687226873268742687526876268772687826879268802688126882268832688426885268862688726888268892689026891268922689326894268952689626897268982689926900269012690226903269042690526906269072690826909269102691126912269132691426915269162691726918269192692026921269222692326924269252692626927269282692926930269312693226933269342693526936269372693826939269402694126942269432694426945269462694726948269492695026951269522695326954269552695626957269582695926960269612696226963269642696526966269672696826969269702697126972269732697426975269762697726978269792698026981269822698326984269852698626987269882698926990269912699226993269942699526996269972699826999270002700127002270032700427005270062700727008270092701027011270122701327014270152701627017270182701927020270212702227023270242702527026270272702827029270302703127032270332703427035270362703727038270392704027041270422704327044270452704627047270482704927050270512705227053270542705527056270572705827059270602706127062270632706427065270662706727068270692707027071270722707327074270752707627077270782707927080270812708227083270842708527086270872708827089270902709127092270932709427095270962709727098270992710027101271022710327104271052710627107271082710927110271112711227113271142711527116271172711827119271202712127122271232712427125271262712727128271292713027131271322713327134271352713627137271382713927140271412714227143271442714527146271472714827149271502715127152271532715427155271562715727158271592716027161271622716327164271652716627167271682716927170271712717227173271742717527176271772717827179271802718127182271832718427185271862718727188271892719027191271922719327194271952719627197271982719927200272012720227203272042720527206272072720827209272102721127212272132721427215272162721727218272192722027221272222722327224272252722627227272282722927230272312723227233272342723527236272372723827239272402724127242272432724427245272462724727248272492725027251272522725327254272552725627257272582725927260272612726227263272642726527266272672726827269272702727127272272732727427275272762727727278272792728027281272822728327284272852728627287272882728927290272912729227293272942729527296272972729827299273002730127302273032730427305273062730727308273092731027311273122731327314273152731627317273182731927320273212732227323273242732527326273272732827329273302733127332273332733427335273362733727338273392734027341273422734327344273452734627347273482734927350273512735227353273542735527356273572735827359273602736127362273632736427365273662736727368273692737027371273722737327374273752737627377273782737927380273812738227383273842738527386273872738827389273902739127392273932739427395273962739727398273992740027401274022740327404274052740627407274082740927410274112741227413274142741527416274172741827419274202742127422274232742427425274262742727428274292743027431274322743327434274352743627437274382743927440274412744227443274442744527446274472744827449274502745127452274532745427455274562745727458274592746027461274622746327464274652746627467274682746927470274712747227473274742747527476274772747827479274802748127482274832748427485274862748727488274892749027491274922749327494274952749627497274982749927500275012750227503275042750527506275072750827509275102751127512275132751427515275162751727518275192752027521275222752327524275252752627527275282752927530275312753227533275342753527536275372753827539275402754127542275432754427545275462754727548275492755027551275522755327554275552755627557275582755927560275612756227563275642756527566275672756827569275702757127572275732757427575275762757727578275792758027581275822758327584275852758627587275882758927590275912759227593275942759527596275972759827599276002760127602276032760427605276062760727608276092761027611276122761327614276152761627617276182761927620276212762227623276242762527626276272762827629276302763127632276332763427635276362763727638276392764027641276422764327644276452764627647276482764927650276512765227653276542765527656276572765827659276602766127662276632766427665276662766727668276692767027671276722767327674276752767627677276782767927680276812768227683276842768527686276872768827689276902769127692276932769427695276962769727698276992770027701277022770327704277052770627707277082770927710277112771227713277142771527716277172771827719277202772127722277232772427725277262772727728277292773027731277322773327734277352773627737277382773927740277412774227743277442774527746277472774827749277502775127752277532775427755277562775727758277592776027761277622776327764277652776627767277682776927770277712777227773277742777527776277772777827779277802778127782277832778427785277862778727788277892779027791277922779327794277952779627797277982779927800278012780227803278042780527806278072780827809278102781127812278132781427815278162781727818278192782027821278222782327824278252782627827278282782927830278312783227833278342783527836278372783827839278402784127842278432784427845278462784727848278492785027851278522785327854278552785627857278582785927860278612786227863278642786527866278672786827869278702787127872278732787427875278762787727878278792788027881278822788327884278852788627887278882788927890278912789227893278942789527896278972789827899279002790127902279032790427905279062790727908279092791027911279122791327914279152791627917279182791927920279212792227923279242792527926279272792827929279302793127932279332793427935279362793727938279392794027941279422794327944279452794627947279482794927950279512795227953279542795527956279572795827959279602796127962279632796427965279662796727968279692797027971279722797327974279752797627977279782797927980279812798227983279842798527986279872798827989279902799127992279932799427995279962799727998279992800028001280022800328004280052800628007280082800928010280112801228013280142801528016280172801828019280202802128022280232802428025280262802728028280292803028031280322803328034280352803628037280382803928040280412804228043280442804528046280472804828049280502805128052280532805428055280562805728058280592806028061280622806328064280652806628067280682806928070280712807228073280742807528076280772807828079280802808128082280832808428085280862808728088280892809028091280922809328094280952809628097280982809928100281012810228103281042810528106281072810828109281102811128112281132811428115281162811728118281192812028121281222812328124281252812628127281282812928130281312813228133281342813528136281372813828139281402814128142281432814428145281462814728148281492815028151281522815328154281552815628157281582815928160281612816228163281642816528166281672816828169281702817128172281732817428175281762817728178281792818028181281822818328184281852818628187281882818928190281912819228193281942819528196281972819828199282002820128202282032820428205282062820728208282092821028211282122821328214282152821628217282182821928220282212822228223282242822528226282272822828229282302823128232282332823428235282362823728238282392824028241282422824328244282452824628247282482824928250282512825228253282542825528256282572825828259282602826128262282632826428265282662826728268282692827028271282722827328274282752827628277282782827928280282812828228283282842828528286282872828828289282902829128292282932829428295282962829728298282992830028301283022830328304283052830628307283082830928310283112831228313283142831528316283172831828319283202832128322283232832428325283262832728328283292833028331283322833328334283352833628337283382833928340283412834228343283442834528346283472834828349283502835128352283532835428355283562835728358283592836028361283622836328364283652836628367283682836928370283712837228373283742837528376283772837828379283802838128382283832838428385283862838728388283892839028391283922839328394283952839628397283982839928400284012840228403284042840528406284072840828409284102841128412284132841428415284162841728418284192842028421284222842328424284252842628427284282842928430284312843228433284342843528436284372843828439284402844128442284432844428445284462844728448284492845028451284522845328454284552845628457284582845928460284612846228463284642846528466284672846828469284702847128472284732847428475284762847728478284792848028481284822848328484284852848628487284882848928490284912849228493284942849528496284972849828499285002850128502285032850428505285062850728508285092851028511285122851328514285152851628517285182851928520285212852228523285242852528526285272852828529285302853128532285332853428535285362853728538285392854028541285422854328544285452854628547285482854928550285512855228553285542855528556285572855828559285602856128562285632856428565285662856728568285692857028571285722857328574285752857628577285782857928580285812858228583285842858528586285872858828589285902859128592285932859428595285962859728598285992860028601286022860328604286052860628607286082860928610286112861228613286142861528616286172861828619286202862128622286232862428625286262862728628286292863028631286322863328634286352863628637286382863928640286412864228643286442864528646286472864828649286502865128652286532865428655286562865728658286592866028661286622866328664286652866628667286682866928670286712867228673286742867528676286772867828679286802868128682286832868428685286862868728688286892869028691286922869328694286952869628697286982869928700287012870228703287042870528706287072870828709287102871128712287132871428715287162871728718287192872028721287222872328724287252872628727287282872928730287312873228733287342873528736287372873828739287402874128742287432874428745287462874728748287492875028751287522875328754287552875628757287582875928760287612876228763287642876528766287672876828769287702877128772287732877428775287762877728778287792878028781287822878328784287852878628787287882878928790287912879228793287942879528796287972879828799288002880128802288032880428805288062880728808288092881028811288122881328814288152881628817288182881928820288212882228823288242882528826288272882828829288302883128832288332883428835288362883728838288392884028841288422884328844288452884628847288482884928850288512885228853288542885528856288572885828859288602886128862288632886428865288662886728868288692887028871288722887328874288752887628877288782887928880288812888228883288842888528886288872888828889288902889128892288932889428895288962889728898288992890028901289022890328904289052890628907289082890928910289112891228913289142891528916289172891828919289202892128922289232892428925289262892728928289292893028931289322893328934289352893628937289382893928940289412894228943289442894528946289472894828949289502895128952289532895428955289562895728958289592896028961289622896328964289652896628967289682896928970289712897228973289742897528976289772897828979289802898128982289832898428985289862898728988289892899028991289922899328994289952899628997289982899929000290012900229003290042900529006290072900829009290102901129012290132901429015290162901729018290192902029021290222902329024290252902629027290282902929030290312903229033290342903529036290372903829039290402904129042290432904429045290462904729048290492905029051290522905329054290552905629057290582905929060290612906229063290642906529066290672906829069290702907129072290732907429075290762907729078290792908029081290822908329084290852908629087290882908929090290912909229093290942909529096290972909829099291002910129102291032910429105291062910729108291092911029111291122911329114291152911629117291182911929120291212912229123291242912529126291272912829129291302913129132291332913429135291362913729138291392914029141291422914329144291452914629147291482914929150291512915229153291542915529156291572915829159291602916129162291632916429165291662916729168291692917029171291722917329174291752917629177291782917929180291812918229183291842918529186291872918829189291902919129192291932919429195291962919729198291992920029201292022920329204292052920629207292082920929210292112921229213292142921529216292172921829219292202922129222292232922429225292262922729228292292923029231292322923329234292352923629237292382923929240292412924229243292442924529246292472924829249292502925129252292532925429255292562925729258292592926029261292622926329264292652926629267292682926929270292712927229273292742927529276292772927829279292802928129282292832928429285292862928729288292892929029291292922929329294292952929629297292982929929300293012930229303293042930529306293072930829309293102931129312293132931429315293162931729318293192932029321293222932329324293252932629327293282932929330293312933229333293342933529336293372933829339293402934129342293432934429345293462934729348293492935029351293522935329354293552935629357293582935929360293612936229363293642936529366293672936829369293702937129372293732937429375293762937729378293792938029381293822938329384293852938629387293882938929390293912939229393293942939529396293972939829399294002940129402294032940429405294062940729408294092941029411294122941329414294152941629417294182941929420294212942229423294242942529426294272942829429294302943129432294332943429435294362943729438294392944029441294422944329444294452944629447294482944929450294512945229453294542945529456294572945829459294602946129462294632946429465294662946729468294692947029471294722947329474294752947629477294782947929480294812948229483294842948529486294872948829489294902949129492294932949429495294962949729498294992950029501295022950329504295052950629507295082950929510295112951229513295142951529516295172951829519295202952129522295232952429525295262952729528295292953029531295322953329534295352953629537295382953929540295412954229543295442954529546295472954829549295502955129552295532955429555295562955729558295592956029561295622956329564295652956629567295682956929570295712957229573295742957529576295772957829579295802958129582295832958429585295862958729588295892959029591295922959329594295952959629597295982959929600296012960229603296042960529606296072960829609296102961129612296132961429615296162961729618296192962029621296222962329624296252962629627296282962929630296312963229633296342963529636296372963829639296402964129642296432964429645296462964729648296492965029651296522965329654296552965629657296582965929660296612966229663296642966529666296672966829669296702967129672296732967429675296762967729678296792968029681296822968329684296852968629687296882968929690296912969229693296942969529696296972969829699297002970129702297032970429705297062970729708297092971029711297122971329714297152971629717297182971929720297212972229723297242972529726297272972829729297302973129732297332973429735297362973729738297392974029741297422974329744297452974629747297482974929750297512975229753297542975529756297572975829759297602976129762297632976429765297662976729768297692977029771297722977329774297752977629777297782977929780297812978229783297842978529786297872978829789297902979129792297932979429795297962979729798297992980029801298022980329804298052980629807298082980929810298112981229813298142981529816298172981829819298202982129822298232982429825298262982729828298292983029831298322983329834298352983629837298382983929840298412984229843298442984529846298472984829849298502985129852298532985429855298562985729858298592986029861298622986329864298652986629867298682986929870298712987229873298742987529876298772987829879298802988129882298832988429885298862988729888298892989029891298922989329894298952989629897298982989929900299012990229903299042990529906299072990829909299102991129912299132991429915299162991729918299192992029921299222992329924299252992629927299282992929930299312993229933299342993529936299372993829939299402994129942299432994429945299462994729948299492995029951299522995329954299552995629957299582995929960299612996229963299642996529966299672996829969299702997129972299732997429975299762997729978299792998029981299822998329984299852998629987299882998929990299912999229993299942999529996299972999829999300003000130002300033000430005300063000730008300093001030011300123001330014300153001630017300183001930020300213002230023300243002530026300273002830029300303003130032300333003430035300363003730038300393004030041300423004330044300453004630047300483004930050300513005230053300543005530056300573005830059300603006130062300633006430065300663006730068300693007030071300723007330074300753007630077300783007930080300813008230083300843008530086300873008830089300903009130092300933009430095300963009730098300993010030101301023010330104301053010630107301083010930110301113011230113301143011530116301173011830119301203012130122301233012430125301263012730128301293013030131301323013330134301353013630137301383013930140301413014230143301443014530146301473014830149301503015130152301533015430155301563015730158301593016030161301623016330164301653016630167301683016930170301713017230173301743017530176301773017830179301803018130182301833018430185301863018730188301893019030191301923019330194301953019630197301983019930200302013020230203302043020530206302073020830209302103021130212302133021430215302163021730218302193022030221302223022330224302253022630227302283022930230302313023230233302343023530236302373023830239302403024130242302433024430245302463024730248302493025030251302523025330254302553025630257302583025930260302613026230263302643026530266302673026830269302703027130272302733027430275302763027730278302793028030281302823028330284302853028630287302883028930290302913029230293302943029530296302973029830299303003030130302303033030430305303063030730308303093031030311303123031330314303153031630317303183031930320303213032230323303243032530326303273032830329303303033130332303333033430335303363033730338303393034030341303423034330344303453034630347303483034930350303513035230353303543035530356303573035830359303603036130362303633036430365303663036730368303693037030371303723037330374303753037630377303783037930380303813038230383303843038530386303873038830389303903039130392303933039430395303963039730398303993040030401304023040330404304053040630407304083040930410304113041230413304143041530416304173041830419304203042130422304233042430425304263042730428304293043030431304323043330434304353043630437304383043930440304413044230443304443044530446304473044830449304503045130452304533045430455304563045730458304593046030461304623046330464304653046630467304683046930470304713047230473304743047530476304773047830479304803048130482304833048430485304863048730488304893049030491304923049330494304953049630497304983049930500305013050230503305043050530506305073050830509305103051130512305133051430515305163051730518305193052030521305223052330524305253052630527305283052930530305313053230533305343053530536305373053830539305403054130542305433054430545305463054730548305493055030551305523055330554305553055630557305583055930560305613056230563305643056530566305673056830569305703057130572305733057430575305763057730578305793058030581305823058330584305853058630587305883058930590305913059230593305943059530596305973059830599306003060130602306033060430605306063060730608306093061030611306123061330614306153061630617306183061930620306213062230623306243062530626306273062830629306303063130632306333063430635306363063730638306393064030641306423064330644306453064630647306483064930650306513065230653306543065530656306573065830659306603066130662306633066430665306663066730668306693067030671306723067330674306753067630677306783067930680306813068230683306843068530686306873068830689306903069130692306933069430695306963069730698306993070030701307023070330704307053070630707307083070930710307113071230713307143071530716307173071830719307203072130722307233072430725307263072730728307293073030731307323073330734307353073630737307383073930740307413074230743307443074530746307473074830749307503075130752307533075430755307563075730758307593076030761307623076330764307653076630767307683076930770307713077230773307743077530776307773077830779307803078130782307833078430785307863078730788307893079030791307923079330794307953079630797307983079930800308013080230803308043080530806308073080830809308103081130812308133081430815308163081730818308193082030821308223082330824308253082630827308283082930830308313083230833308343083530836308373083830839308403084130842308433084430845308463084730848308493085030851308523085330854308553085630857308583085930860308613086230863308643086530866308673086830869308703087130872308733087430875308763087730878308793088030881308823088330884308853088630887308883088930890308913089230893308943089530896308973089830899309003090130902309033090430905309063090730908309093091030911309123091330914309153091630917309183091930920309213092230923309243092530926309273092830929309303093130932309333093430935309363093730938309393094030941309423094330944309453094630947309483094930950309513095230953309543095530956309573095830959309603096130962309633096430965309663096730968309693097030971309723097330974309753097630977309783097930980309813098230983309843098530986309873098830989309903099130992309933099430995309963099730998309993100031001310023100331004310053100631007310083100931010310113101231013310143101531016310173101831019310203102131022310233102431025310263102731028310293103031031310323103331034310353103631037310383103931040310413104231043310443104531046310473104831049310503105131052310533105431055310563105731058310593106031061310623106331064310653106631067310683106931070310713107231073310743107531076310773107831079310803108131082310833108431085310863108731088310893109031091310923109331094310953109631097310983109931100311013110231103311043110531106311073110831109311103111131112311133111431115311163111731118
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: clusterexternalsecrets.external-secrets.io
  9. spec:
  10. group: external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. kind: ClusterExternalSecret
  15. listKind: ClusterExternalSecretList
  16. plural: clusterexternalsecrets
  17. shortNames:
  18. - ces
  19. singular: clusterexternalsecret
  20. scope: Cluster
  21. versions:
  22. - additionalPrinterColumns:
  23. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  24. name: Store
  25. type: string
  26. - jsonPath: .spec.refreshTime
  27. name: Refresh Interval
  28. type: string
  29. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  30. name: Ready
  31. type: string
  32. name: v1
  33. schema:
  34. openAPIV3Schema:
  35. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  36. properties:
  37. apiVersion:
  38. description: |-
  39. APIVersion defines the versioned schema of this representation of an object.
  40. Servers should convert recognized schemas to the latest internal value, and
  41. may reject unrecognized values.
  42. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  43. type: string
  44. kind:
  45. description: |-
  46. Kind is a string value representing the REST resource this object represents.
  47. Servers may infer this from the endpoint the client submits requests to.
  48. Cannot be updated.
  49. In CamelCase.
  50. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  51. type: string
  52. metadata:
  53. type: object
  54. spec:
  55. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  56. properties:
  57. externalSecretMetadata:
  58. description: The metadata of the external secrets to be created
  59. properties:
  60. annotations:
  61. additionalProperties:
  62. type: string
  63. type: object
  64. labels:
  65. additionalProperties:
  66. type: string
  67. type: object
  68. type: object
  69. externalSecretName:
  70. description: |-
  71. The name of the external secrets to be created.
  72. Defaults to the name of the ClusterExternalSecret
  73. maxLength: 253
  74. minLength: 1
  75. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  76. type: string
  77. externalSecretSpec:
  78. description: The spec for the ExternalSecrets to be created
  79. properties:
  80. data:
  81. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  82. items:
  83. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  84. properties:
  85. remoteRef:
  86. description: |-
  87. RemoteRef points to the remote secret and defines
  88. which secret (version/property/..) to fetch.
  89. properties:
  90. conversionStrategy:
  91. default: Default
  92. description: Used to define a conversion Strategy
  93. enum:
  94. - Default
  95. - Unicode
  96. type: string
  97. decodingStrategy:
  98. default: None
  99. description: Used to define a decoding Strategy
  100. enum:
  101. - Auto
  102. - Base64
  103. - Base64URL
  104. - None
  105. type: string
  106. key:
  107. description: Key is the key used in the Provider, mandatory
  108. type: string
  109. metadataPolicy:
  110. default: None
  111. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  112. enum:
  113. - None
  114. - Fetch
  115. type: string
  116. nullBytePolicy:
  117. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  118. enum:
  119. - Ignore
  120. - Fail
  121. type: string
  122. property:
  123. description: Used to select a specific property of the Provider value (if a map), if supported
  124. type: string
  125. version:
  126. description: Used to select a specific version of the Provider value, if supported
  127. type: string
  128. required:
  129. - key
  130. type: object
  131. secretKey:
  132. description: The key in the Kubernetes Secret to store the value.
  133. maxLength: 253
  134. minLength: 1
  135. pattern: ^[-._a-zA-Z0-9]+$
  136. type: string
  137. sourceRef:
  138. description: |-
  139. SourceRef allows you to override the source
  140. from which the value will be pulled.
  141. maxProperties: 1
  142. minProperties: 1
  143. properties:
  144. generatorRef:
  145. description: |-
  146. GeneratorRef points to a generator custom resource.
  147. Deprecated: The generatorRef is not implemented in .data[].
  148. this will be removed with v1.
  149. properties:
  150. apiVersion:
  151. default: generators.external-secrets.io/v1alpha1
  152. description: Specify the apiVersion of the generator resource
  153. type: string
  154. kind:
  155. description: Specify the Kind of the generator resource
  156. enum:
  157. - ACRAccessToken
  158. - BeyondtrustWorkloadCredentialsDynamicSecret
  159. - ClusterGenerator
  160. - CloudsmithAccessToken
  161. - ECRAuthorizationToken
  162. - Fake
  163. - GCRAccessToken
  164. - GithubAccessToken
  165. - QuayAccessToken
  166. - Password
  167. - SSHKey
  168. - STSSessionToken
  169. - UUID
  170. - VaultDynamicSecret
  171. - Webhook
  172. - Grafana
  173. - MFA
  174. type: string
  175. name:
  176. description: Specify the name of the generator resource
  177. maxLength: 253
  178. minLength: 1
  179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  180. type: string
  181. required:
  182. - kind
  183. - name
  184. type: object
  185. storeRef:
  186. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  187. properties:
  188. kind:
  189. description: |-
  190. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  191. Defaults to `SecretStore`
  192. enum:
  193. - SecretStore
  194. - ClusterSecretStore
  195. type: string
  196. name:
  197. description: Name of the SecretStore resource
  198. maxLength: 253
  199. minLength: 1
  200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  201. type: string
  202. type: object
  203. type: object
  204. required:
  205. - remoteRef
  206. - secretKey
  207. type: object
  208. type: array
  209. dataFrom:
  210. description: |-
  211. DataFrom is used to fetch all properties from a specific Provider data
  212. If multiple entries are specified, the Secret keys are merged in the specified order
  213. items:
  214. description: |-
  215. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  216. when using DataFrom to fetch multiple values from a Provider.
  217. properties:
  218. extract:
  219. description: |-
  220. Used to extract multiple key/value pairs from one secret
  221. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  222. properties:
  223. conversionStrategy:
  224. default: Default
  225. description: Used to define a conversion Strategy
  226. enum:
  227. - Default
  228. - Unicode
  229. type: string
  230. decodingStrategy:
  231. default: None
  232. description: Used to define a decoding Strategy
  233. enum:
  234. - Auto
  235. - Base64
  236. - Base64URL
  237. - None
  238. type: string
  239. key:
  240. description: Key is the key used in the Provider, mandatory
  241. type: string
  242. metadataPolicy:
  243. default: None
  244. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  245. enum:
  246. - None
  247. - Fetch
  248. type: string
  249. nullBytePolicy:
  250. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  251. enum:
  252. - Ignore
  253. - Fail
  254. type: string
  255. property:
  256. description: Used to select a specific property of the Provider value (if a map), if supported
  257. type: string
  258. version:
  259. description: Used to select a specific version of the Provider value, if supported
  260. type: string
  261. required:
  262. - key
  263. type: object
  264. find:
  265. description: |-
  266. Used to find secrets based on tags or regular expressions
  267. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  268. properties:
  269. conversionStrategy:
  270. default: Default
  271. description: Used to define a conversion Strategy
  272. enum:
  273. - Default
  274. - Unicode
  275. type: string
  276. decodingStrategy:
  277. default: None
  278. description: Used to define a decoding Strategy
  279. enum:
  280. - Auto
  281. - Base64
  282. - Base64URL
  283. - None
  284. type: string
  285. name:
  286. description: Finds secrets based on the name.
  287. properties:
  288. regexp:
  289. description: Finds secrets base
  290. type: string
  291. type: object
  292. nullBytePolicy:
  293. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  294. enum:
  295. - Ignore
  296. - Fail
  297. type: string
  298. path:
  299. description: A root path to start the find operations.
  300. type: string
  301. tags:
  302. additionalProperties:
  303. type: string
  304. description: Find secrets based on tags.
  305. type: object
  306. type: object
  307. rewrite:
  308. description: |-
  309. Used to rewrite secret Keys after getting them from the secret Provider
  310. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  311. items:
  312. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  313. maxProperties: 1
  314. minProperties: 1
  315. properties:
  316. merge:
  317. description: |-
  318. Used to merge key/values in one single Secret
  319. The resulting key will contain all values from the specified secrets
  320. properties:
  321. conflictPolicy:
  322. default: Error
  323. description: Used to define the policy to use in conflict resolution.
  324. enum:
  325. - Ignore
  326. - Error
  327. type: string
  328. into:
  329. default: ""
  330. description: |-
  331. Used to define the target key of the merge operation.
  332. Required if strategy is JSON. Ignored otherwise.
  333. type: string
  334. priority:
  335. description: Used to define key priority in conflict resolution.
  336. items:
  337. type: string
  338. type: array
  339. priorityPolicy:
  340. default: Strict
  341. description: Used to define the policy when a key in the priority list does not exist in the input.
  342. enum:
  343. - IgnoreNotFound
  344. - Strict
  345. type: string
  346. strategy:
  347. default: Extract
  348. description: Used to define the strategy to use in the merge operation.
  349. enum:
  350. - Extract
  351. - JSON
  352. type: string
  353. type: object
  354. regexp:
  355. description: |-
  356. Used to rewrite with regular expressions.
  357. The resulting key will be the output of a regexp.ReplaceAll operation.
  358. properties:
  359. source:
  360. description: Used to define the regular expression of a re.Compiler.
  361. type: string
  362. target:
  363. description: Used to define the target pattern of a ReplaceAll operation.
  364. type: string
  365. required:
  366. - source
  367. - target
  368. type: object
  369. transform:
  370. description: |-
  371. Used to apply string transformation on the secrets.
  372. The resulting key will be the output of the template applied by the operation.
  373. properties:
  374. template:
  375. description: |-
  376. Used to define the template to apply on the secret name.
  377. `.value ` will specify the secret name in the template.
  378. type: string
  379. required:
  380. - template
  381. type: object
  382. type: object
  383. type: array
  384. sourceRef:
  385. description: |-
  386. SourceRef points to a store or generator
  387. which contains secret values ready to use.
  388. Use this in combination with Extract or Find pull values out of
  389. a specific SecretStore.
  390. When sourceRef points to a generator Extract or Find is not supported.
  391. The generator returns a static map of values
  392. maxProperties: 1
  393. minProperties: 1
  394. properties:
  395. generatorRef:
  396. description: GeneratorRef points to a generator custom resource.
  397. properties:
  398. apiVersion:
  399. default: generators.external-secrets.io/v1alpha1
  400. description: Specify the apiVersion of the generator resource
  401. type: string
  402. kind:
  403. description: Specify the Kind of the generator resource
  404. enum:
  405. - ACRAccessToken
  406. - BeyondtrustWorkloadCredentialsDynamicSecret
  407. - ClusterGenerator
  408. - CloudsmithAccessToken
  409. - ECRAuthorizationToken
  410. - Fake
  411. - GCRAccessToken
  412. - GithubAccessToken
  413. - QuayAccessToken
  414. - Password
  415. - SSHKey
  416. - STSSessionToken
  417. - UUID
  418. - VaultDynamicSecret
  419. - Webhook
  420. - Grafana
  421. - MFA
  422. type: string
  423. name:
  424. description: Specify the name of the generator resource
  425. maxLength: 253
  426. minLength: 1
  427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  428. type: string
  429. required:
  430. - kind
  431. - name
  432. type: object
  433. storeRef:
  434. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  435. properties:
  436. kind:
  437. description: |-
  438. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  439. Defaults to `SecretStore`
  440. enum:
  441. - SecretStore
  442. - ClusterSecretStore
  443. type: string
  444. name:
  445. description: Name of the SecretStore resource
  446. maxLength: 253
  447. minLength: 1
  448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  449. type: string
  450. type: object
  451. type: object
  452. type: object
  453. type: array
  454. refreshInterval:
  455. default: 1h0m0s
  456. description: |-
  457. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  458. specified as Golang Duration strings.
  459. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  460. Example values: "1h0m0s", "2h30m0s", "10m0s"
  461. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  462. type: string
  463. refreshPolicy:
  464. description: |-
  465. RefreshPolicy determines how the ExternalSecret should be refreshed:
  466. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  467. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  468. No periodic updates occur if refreshInterval is 0.
  469. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  470. enum:
  471. - CreatedOnce
  472. - Periodic
  473. - OnChange
  474. type: string
  475. secretStoreRef:
  476. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  477. properties:
  478. kind:
  479. description: |-
  480. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  481. Defaults to `SecretStore`
  482. enum:
  483. - SecretStore
  484. - ClusterSecretStore
  485. type: string
  486. name:
  487. description: Name of the SecretStore resource
  488. maxLength: 253
  489. minLength: 1
  490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  491. type: string
  492. type: object
  493. target:
  494. default:
  495. creationPolicy: Owner
  496. deletionPolicy: Retain
  497. description: |-
  498. ExternalSecretTarget defines the Kubernetes Secret to be created,
  499. there can be only one target per ExternalSecret.
  500. properties:
  501. creationPolicy:
  502. default: Owner
  503. description: |-
  504. CreationPolicy defines rules on how to create the resulting Secret.
  505. Defaults to "Owner"
  506. enum:
  507. - Owner
  508. - Orphan
  509. - Merge
  510. - None
  511. type: string
  512. deletionPolicy:
  513. default: Retain
  514. description: |-
  515. DeletionPolicy defines rules on how to delete the resulting Secret.
  516. Defaults to "Retain"
  517. enum:
  518. - Delete
  519. - Merge
  520. - Retain
  521. type: string
  522. immutable:
  523. description: Immutable defines if the final secret will be immutable
  524. type: boolean
  525. manifest:
  526. description: |-
  527. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  528. When specified, ExternalSecret will create the resource type defined here
  529. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  530. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  531. properties:
  532. apiVersion:
  533. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  534. minLength: 1
  535. type: string
  536. kind:
  537. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  538. minLength: 1
  539. type: string
  540. required:
  541. - apiVersion
  542. - kind
  543. type: object
  544. name:
  545. description: |-
  546. The name of the Secret resource to be managed.
  547. Defaults to the .metadata.name of the ExternalSecret resource
  548. maxLength: 253
  549. minLength: 1
  550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  551. type: string
  552. template:
  553. description: Template defines a blueprint for the created Secret resource.
  554. properties:
  555. data:
  556. additionalProperties:
  557. type: string
  558. type: object
  559. engineVersion:
  560. default: v2
  561. description: |-
  562. EngineVersion specifies the template engine version
  563. that should be used to compile/execute the
  564. template specified in .data and .templateFrom[].
  565. enum:
  566. - v2
  567. type: string
  568. mergePolicy:
  569. default: Replace
  570. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  571. enum:
  572. - Replace
  573. - Merge
  574. type: string
  575. metadata:
  576. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  577. properties:
  578. annotations:
  579. additionalProperties:
  580. type: string
  581. type: object
  582. finalizers:
  583. items:
  584. type: string
  585. type: array
  586. labels:
  587. additionalProperties:
  588. type: string
  589. type: object
  590. type: object
  591. templateFrom:
  592. items:
  593. description: |-
  594. TemplateFrom specifies a source for templates.
  595. Each item in the list can either reference a ConfigMap or a Secret resource.
  596. properties:
  597. configMap:
  598. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  599. properties:
  600. items:
  601. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  602. items:
  603. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  604. properties:
  605. key:
  606. description: A key in the ConfigMap/Secret
  607. maxLength: 253
  608. minLength: 1
  609. pattern: ^[-._a-zA-Z0-9]+$
  610. type: string
  611. templateAs:
  612. default: Values
  613. description: TemplateScope specifies how the template keys should be interpreted.
  614. enum:
  615. - Values
  616. - KeysAndValues
  617. type: string
  618. required:
  619. - key
  620. type: object
  621. type: array
  622. name:
  623. description: The name of the ConfigMap/Secret resource
  624. maxLength: 253
  625. minLength: 1
  626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  627. type: string
  628. required:
  629. - items
  630. - name
  631. type: object
  632. literal:
  633. type: string
  634. secret:
  635. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  636. properties:
  637. items:
  638. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  639. items:
  640. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  641. properties:
  642. key:
  643. description: A key in the ConfigMap/Secret
  644. maxLength: 253
  645. minLength: 1
  646. pattern: ^[-._a-zA-Z0-9]+$
  647. type: string
  648. templateAs:
  649. default: Values
  650. description: TemplateScope specifies how the template keys should be interpreted.
  651. enum:
  652. - Values
  653. - KeysAndValues
  654. type: string
  655. required:
  656. - key
  657. type: object
  658. type: array
  659. name:
  660. description: The name of the ConfigMap/Secret resource
  661. maxLength: 253
  662. minLength: 1
  663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  664. type: string
  665. required:
  666. - items
  667. - name
  668. type: object
  669. target:
  670. default: Data
  671. description: |-
  672. Target specifies where to place the template result.
  673. For Secret resources, common values are: "Data", "Annotations", "Labels".
  674. For custom resources (when spec.target.manifest is set), this supports
  675. nested paths like "spec.database.config" or "data".
  676. type: string
  677. valuesDecodingStrategy:
  678. default: None
  679. description: Used to define a decoding Strategy for the rendered template values.
  680. enum:
  681. - Auto
  682. - Base64
  683. - Base64URL
  684. - None
  685. type: string
  686. type: object
  687. type: array
  688. type:
  689. type: string
  690. type: object
  691. type: object
  692. type: object
  693. namespaceSelector:
  694. description: |-
  695. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  696. Deprecated: Use NamespaceSelectors instead.
  697. properties:
  698. matchExpressions:
  699. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  700. items:
  701. description: |-
  702. A label selector requirement is a selector that contains values, a key, and an operator that
  703. relates the key and values.
  704. properties:
  705. key:
  706. description: key is the label key that the selector applies to.
  707. type: string
  708. operator:
  709. description: |-
  710. operator represents a key's relationship to a set of values.
  711. Valid operators are In, NotIn, Exists and DoesNotExist.
  712. type: string
  713. values:
  714. description: |-
  715. values is an array of string values. If the operator is In or NotIn,
  716. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  717. the values array must be empty. This array is replaced during a strategic
  718. merge patch.
  719. items:
  720. type: string
  721. type: array
  722. x-kubernetes-list-type: atomic
  723. required:
  724. - key
  725. - operator
  726. type: object
  727. type: array
  728. x-kubernetes-list-type: atomic
  729. matchLabels:
  730. additionalProperties:
  731. type: string
  732. description: |-
  733. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  734. map is equivalent to an element of matchExpressions, whose key field is "key", the
  735. operator is "In", and the values array contains only "value". The requirements are ANDed.
  736. type: object
  737. type: object
  738. x-kubernetes-map-type: atomic
  739. namespaceSelectors:
  740. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  741. items:
  742. description: |-
  743. A label selector is a label query over a set of resources. The result of matchLabels and
  744. matchExpressions are ANDed. An empty label selector matches all objects. A null
  745. label selector matches no objects.
  746. properties:
  747. matchExpressions:
  748. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  749. items:
  750. description: |-
  751. A label selector requirement is a selector that contains values, a key, and an operator that
  752. relates the key and values.
  753. properties:
  754. key:
  755. description: key is the label key that the selector applies to.
  756. type: string
  757. operator:
  758. description: |-
  759. operator represents a key's relationship to a set of values.
  760. Valid operators are In, NotIn, Exists and DoesNotExist.
  761. type: string
  762. values:
  763. description: |-
  764. values is an array of string values. If the operator is In or NotIn,
  765. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  766. the values array must be empty. This array is replaced during a strategic
  767. merge patch.
  768. items:
  769. type: string
  770. type: array
  771. x-kubernetes-list-type: atomic
  772. required:
  773. - key
  774. - operator
  775. type: object
  776. type: array
  777. x-kubernetes-list-type: atomic
  778. matchLabels:
  779. additionalProperties:
  780. type: string
  781. description: |-
  782. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  783. map is equivalent to an element of matchExpressions, whose key field is "key", the
  784. operator is "In", and the values array contains only "value". The requirements are ANDed.
  785. type: object
  786. type: object
  787. x-kubernetes-map-type: atomic
  788. type: array
  789. namespaces:
  790. description: |-
  791. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  792. Deprecated: Use NamespaceSelectors instead.
  793. items:
  794. maxLength: 63
  795. minLength: 1
  796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  797. type: string
  798. type: array
  799. refreshTime:
  800. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  801. type: string
  802. required:
  803. - externalSecretSpec
  804. type: object
  805. status:
  806. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  807. properties:
  808. conditions:
  809. items:
  810. description: ClusterExternalSecretStatusCondition defines the observed state of a ClusterExternalSecret resource.
  811. properties:
  812. message:
  813. type: string
  814. status:
  815. type: string
  816. type:
  817. description: ClusterExternalSecretConditionType defines a value type for ClusterExternalSecret conditions.
  818. type: string
  819. required:
  820. - status
  821. - type
  822. type: object
  823. type: array
  824. externalSecretName:
  825. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  826. type: string
  827. failedNamespaces:
  828. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  829. items:
  830. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  831. properties:
  832. namespace:
  833. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  834. type: string
  835. reason:
  836. description: Reason is why the ExternalSecret failed to apply to the namespace
  837. type: string
  838. required:
  839. - namespace
  840. type: object
  841. type: array
  842. provisionedNamespaces:
  843. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  844. items:
  845. type: string
  846. type: array
  847. type: object
  848. type: object
  849. served: true
  850. storage: true
  851. subresources:
  852. status: {}
  853. - additionalPrinterColumns:
  854. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  855. name: Store
  856. type: string
  857. - jsonPath: .spec.refreshTime
  858. name: Refresh Interval
  859. type: string
  860. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  861. name: Ready
  862. type: string
  863. deprecated: true
  864. name: v1beta1
  865. schema:
  866. openAPIV3Schema:
  867. description: ClusterExternalSecret is the schema for the clusterexternalsecrets API.
  868. properties:
  869. apiVersion:
  870. description: |-
  871. APIVersion defines the versioned schema of this representation of an object.
  872. Servers should convert recognized schemas to the latest internal value, and
  873. may reject unrecognized values.
  874. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  875. type: string
  876. kind:
  877. description: |-
  878. Kind is a string value representing the REST resource this object represents.
  879. Servers may infer this from the endpoint the client submits requests to.
  880. Cannot be updated.
  881. In CamelCase.
  882. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  883. type: string
  884. metadata:
  885. type: object
  886. spec:
  887. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  888. properties:
  889. externalSecretMetadata:
  890. description: The metadata of the external secrets to be created
  891. properties:
  892. annotations:
  893. additionalProperties:
  894. type: string
  895. type: object
  896. labels:
  897. additionalProperties:
  898. type: string
  899. type: object
  900. type: object
  901. externalSecretName:
  902. description: |-
  903. The name of the external secrets to be created.
  904. Defaults to the name of the ClusterExternalSecret
  905. maxLength: 253
  906. minLength: 1
  907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  908. type: string
  909. externalSecretSpec:
  910. description: The spec for the ExternalSecrets to be created
  911. properties:
  912. data:
  913. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  914. items:
  915. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  916. properties:
  917. remoteRef:
  918. description: |-
  919. RemoteRef points to the remote secret and defines
  920. which secret (version/property/..) to fetch.
  921. properties:
  922. conversionStrategy:
  923. default: Default
  924. description: Used to define a conversion Strategy
  925. enum:
  926. - Default
  927. - Unicode
  928. type: string
  929. decodingStrategy:
  930. default: None
  931. description: Used to define a decoding Strategy
  932. enum:
  933. - Auto
  934. - Base64
  935. - Base64URL
  936. - None
  937. type: string
  938. key:
  939. description: Key is the key used in the Provider, mandatory
  940. type: string
  941. metadataPolicy:
  942. default: None
  943. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  944. enum:
  945. - None
  946. - Fetch
  947. type: string
  948. property:
  949. description: Used to select a specific property of the Provider value (if a map), if supported
  950. type: string
  951. version:
  952. description: Used to select a specific version of the Provider value, if supported
  953. type: string
  954. required:
  955. - key
  956. type: object
  957. secretKey:
  958. description: The key in the Kubernetes Secret to store the value.
  959. maxLength: 253
  960. minLength: 1
  961. pattern: ^[-._a-zA-Z0-9]+$
  962. type: string
  963. sourceRef:
  964. description: |-
  965. SourceRef allows you to override the source
  966. from which the value will be pulled.
  967. maxProperties: 1
  968. minProperties: 1
  969. properties:
  970. generatorRef:
  971. description: |-
  972. GeneratorRef points to a generator custom resource.
  973. Deprecated: The generatorRef is not implemented in .data[].
  974. this will be removed with v1.
  975. properties:
  976. apiVersion:
  977. default: generators.external-secrets.io/v1alpha1
  978. description: Specify the apiVersion of the generator resource
  979. type: string
  980. kind:
  981. description: Specify the Kind of the generator resource
  982. enum:
  983. - ACRAccessToken
  984. - ClusterGenerator
  985. - ECRAuthorizationToken
  986. - Fake
  987. - GCRAccessToken
  988. - GithubAccessToken
  989. - QuayAccessToken
  990. - Password
  991. - SSHKey
  992. - STSSessionToken
  993. - UUID
  994. - VaultDynamicSecret
  995. - Webhook
  996. - Grafana
  997. type: string
  998. name:
  999. description: Specify the name of the generator resource
  1000. maxLength: 253
  1001. minLength: 1
  1002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1003. type: string
  1004. required:
  1005. - kind
  1006. - name
  1007. type: object
  1008. storeRef:
  1009. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1010. properties:
  1011. kind:
  1012. description: |-
  1013. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1014. Defaults to `SecretStore`
  1015. enum:
  1016. - SecretStore
  1017. - ClusterSecretStore
  1018. type: string
  1019. name:
  1020. description: Name of the SecretStore resource
  1021. maxLength: 253
  1022. minLength: 1
  1023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1024. type: string
  1025. type: object
  1026. type: object
  1027. required:
  1028. - remoteRef
  1029. - secretKey
  1030. type: object
  1031. type: array
  1032. dataFrom:
  1033. description: |-
  1034. DataFrom is used to fetch all properties from a specific Provider data
  1035. If multiple entries are specified, the Secret keys are merged in the specified order
  1036. items:
  1037. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  1038. properties:
  1039. extract:
  1040. description: |-
  1041. Used to extract multiple key/value pairs from one secret
  1042. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1043. properties:
  1044. conversionStrategy:
  1045. default: Default
  1046. description: Used to define a conversion Strategy
  1047. enum:
  1048. - Default
  1049. - Unicode
  1050. type: string
  1051. decodingStrategy:
  1052. default: None
  1053. description: Used to define a decoding Strategy
  1054. enum:
  1055. - Auto
  1056. - Base64
  1057. - Base64URL
  1058. - None
  1059. type: string
  1060. key:
  1061. description: Key is the key used in the Provider, mandatory
  1062. type: string
  1063. metadataPolicy:
  1064. default: None
  1065. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  1066. enum:
  1067. - None
  1068. - Fetch
  1069. type: string
  1070. property:
  1071. description: Used to select a specific property of the Provider value (if a map), if supported
  1072. type: string
  1073. version:
  1074. description: Used to select a specific version of the Provider value, if supported
  1075. type: string
  1076. required:
  1077. - key
  1078. type: object
  1079. find:
  1080. description: |-
  1081. Used to find secrets based on tags or regular expressions
  1082. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1083. properties:
  1084. conversionStrategy:
  1085. default: Default
  1086. description: Used to define a conversion Strategy
  1087. enum:
  1088. - Default
  1089. - Unicode
  1090. type: string
  1091. decodingStrategy:
  1092. default: None
  1093. description: Used to define a decoding Strategy
  1094. enum:
  1095. - Auto
  1096. - Base64
  1097. - Base64URL
  1098. - None
  1099. type: string
  1100. name:
  1101. description: Finds secrets based on the name.
  1102. properties:
  1103. regexp:
  1104. description: Finds secrets base
  1105. type: string
  1106. type: object
  1107. path:
  1108. description: A root path to start the find operations.
  1109. type: string
  1110. tags:
  1111. additionalProperties:
  1112. type: string
  1113. description: Find secrets based on tags.
  1114. type: object
  1115. type: object
  1116. rewrite:
  1117. description: |-
  1118. Used to rewrite secret Keys after getting them from the secret Provider
  1119. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  1120. items:
  1121. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  1122. maxProperties: 1
  1123. minProperties: 1
  1124. properties:
  1125. regexp:
  1126. description: |-
  1127. Used to rewrite with regular expressions.
  1128. The resulting key will be the output of a regexp.ReplaceAll operation.
  1129. properties:
  1130. source:
  1131. description: Used to define the regular expression of a re.Compiler.
  1132. type: string
  1133. target:
  1134. description: Used to define the target pattern of a ReplaceAll operation.
  1135. type: string
  1136. required:
  1137. - source
  1138. - target
  1139. type: object
  1140. transform:
  1141. description: |-
  1142. Used to apply string transformation on the secrets.
  1143. The resulting key will be the output of the template applied by the operation.
  1144. properties:
  1145. template:
  1146. description: |-
  1147. Used to define the template to apply on the secret name.
  1148. `.value ` will specify the secret name in the template.
  1149. type: string
  1150. required:
  1151. - template
  1152. type: object
  1153. type: object
  1154. type: array
  1155. sourceRef:
  1156. description: |-
  1157. SourceRef points to a store or generator
  1158. which contains secret values ready to use.
  1159. Use this in combination with Extract or Find pull values out of
  1160. a specific SecretStore.
  1161. When sourceRef points to a generator Extract or Find is not supported.
  1162. The generator returns a static map of values
  1163. maxProperties: 1
  1164. minProperties: 1
  1165. properties:
  1166. generatorRef:
  1167. description: GeneratorRef points to a generator custom resource.
  1168. properties:
  1169. apiVersion:
  1170. default: generators.external-secrets.io/v1alpha1
  1171. description: Specify the apiVersion of the generator resource
  1172. type: string
  1173. kind:
  1174. description: Specify the Kind of the generator resource
  1175. enum:
  1176. - ACRAccessToken
  1177. - ClusterGenerator
  1178. - ECRAuthorizationToken
  1179. - Fake
  1180. - GCRAccessToken
  1181. - GithubAccessToken
  1182. - QuayAccessToken
  1183. - Password
  1184. - SSHKey
  1185. - STSSessionToken
  1186. - UUID
  1187. - VaultDynamicSecret
  1188. - Webhook
  1189. - Grafana
  1190. type: string
  1191. name:
  1192. description: Specify the name of the generator resource
  1193. maxLength: 253
  1194. minLength: 1
  1195. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1196. type: string
  1197. required:
  1198. - kind
  1199. - name
  1200. type: object
  1201. storeRef:
  1202. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1203. properties:
  1204. kind:
  1205. description: |-
  1206. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1207. Defaults to `SecretStore`
  1208. enum:
  1209. - SecretStore
  1210. - ClusterSecretStore
  1211. type: string
  1212. name:
  1213. description: Name of the SecretStore resource
  1214. maxLength: 253
  1215. minLength: 1
  1216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1217. type: string
  1218. type: object
  1219. type: object
  1220. type: object
  1221. type: array
  1222. refreshInterval:
  1223. default: 1h0m0s
  1224. description: |-
  1225. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  1226. specified as Golang Duration strings.
  1227. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  1228. Example values: "1h0m0s", "2h30m0s", "10m0s"
  1229. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  1230. type: string
  1231. refreshPolicy:
  1232. description: |-
  1233. RefreshPolicy determines how the ExternalSecret should be refreshed:
  1234. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  1235. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  1236. No periodic updates occur if refreshInterval is 0.
  1237. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  1238. enum:
  1239. - CreatedOnce
  1240. - Periodic
  1241. - OnChange
  1242. type: string
  1243. secretStoreRef:
  1244. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1245. properties:
  1246. kind:
  1247. description: |-
  1248. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1249. Defaults to `SecretStore`
  1250. enum:
  1251. - SecretStore
  1252. - ClusterSecretStore
  1253. type: string
  1254. name:
  1255. description: Name of the SecretStore resource
  1256. maxLength: 253
  1257. minLength: 1
  1258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1259. type: string
  1260. type: object
  1261. target:
  1262. default:
  1263. creationPolicy: Owner
  1264. deletionPolicy: Retain
  1265. description: |-
  1266. ExternalSecretTarget defines the Kubernetes Secret to be created
  1267. There can be only one target per ExternalSecret.
  1268. properties:
  1269. creationPolicy:
  1270. default: Owner
  1271. description: |-
  1272. CreationPolicy defines rules on how to create the resulting Secret.
  1273. Defaults to "Owner"
  1274. enum:
  1275. - Owner
  1276. - Orphan
  1277. - Merge
  1278. - None
  1279. type: string
  1280. deletionPolicy:
  1281. default: Retain
  1282. description: |-
  1283. DeletionPolicy defines rules on how to delete the resulting Secret.
  1284. Defaults to "Retain"
  1285. enum:
  1286. - Delete
  1287. - Merge
  1288. - Retain
  1289. type: string
  1290. immutable:
  1291. description: Immutable defines if the final secret will be immutable
  1292. type: boolean
  1293. name:
  1294. description: |-
  1295. The name of the Secret resource to be managed.
  1296. Defaults to the .metadata.name of the ExternalSecret resource
  1297. maxLength: 253
  1298. minLength: 1
  1299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1300. type: string
  1301. template:
  1302. description: Template defines a blueprint for the created Secret resource.
  1303. properties:
  1304. data:
  1305. additionalProperties:
  1306. type: string
  1307. type: object
  1308. engineVersion:
  1309. default: v2
  1310. description: |-
  1311. EngineVersion specifies the template engine version
  1312. that should be used to compile/execute the
  1313. template specified in .data and .templateFrom[].
  1314. enum:
  1315. - v2
  1316. type: string
  1317. mergePolicy:
  1318. default: Replace
  1319. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  1320. enum:
  1321. - Replace
  1322. - Merge
  1323. type: string
  1324. metadata:
  1325. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1326. properties:
  1327. annotations:
  1328. additionalProperties:
  1329. type: string
  1330. type: object
  1331. labels:
  1332. additionalProperties:
  1333. type: string
  1334. type: object
  1335. type: object
  1336. templateFrom:
  1337. items:
  1338. description: TemplateFrom defines a source for template data.
  1339. properties:
  1340. configMap:
  1341. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1342. properties:
  1343. items:
  1344. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1345. items:
  1346. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1347. properties:
  1348. key:
  1349. description: A key in the ConfigMap/Secret
  1350. maxLength: 253
  1351. minLength: 1
  1352. pattern: ^[-._a-zA-Z0-9]+$
  1353. type: string
  1354. templateAs:
  1355. default: Values
  1356. description: TemplateScope defines the scope of the template when processing template data.
  1357. enum:
  1358. - Values
  1359. - KeysAndValues
  1360. type: string
  1361. required:
  1362. - key
  1363. type: object
  1364. type: array
  1365. name:
  1366. description: The name of the ConfigMap/Secret resource
  1367. maxLength: 253
  1368. minLength: 1
  1369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1370. type: string
  1371. required:
  1372. - items
  1373. - name
  1374. type: object
  1375. literal:
  1376. type: string
  1377. secret:
  1378. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1379. properties:
  1380. items:
  1381. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1382. items:
  1383. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1384. properties:
  1385. key:
  1386. description: A key in the ConfigMap/Secret
  1387. maxLength: 253
  1388. minLength: 1
  1389. pattern: ^[-._a-zA-Z0-9]+$
  1390. type: string
  1391. templateAs:
  1392. default: Values
  1393. description: TemplateScope defines the scope of the template when processing template data.
  1394. enum:
  1395. - Values
  1396. - KeysAndValues
  1397. type: string
  1398. required:
  1399. - key
  1400. type: object
  1401. type: array
  1402. name:
  1403. description: The name of the ConfigMap/Secret resource
  1404. maxLength: 253
  1405. minLength: 1
  1406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1407. type: string
  1408. required:
  1409. - items
  1410. - name
  1411. type: object
  1412. target:
  1413. default: Data
  1414. description: TemplateTarget defines the target field where the template result will be stored.
  1415. enum:
  1416. - Data
  1417. - Annotations
  1418. - Labels
  1419. type: string
  1420. type: object
  1421. type: array
  1422. type:
  1423. type: string
  1424. type: object
  1425. type: object
  1426. type: object
  1427. namespaceSelector:
  1428. description: The labels to select by to find the Namespaces to create the ExternalSecrets in
  1429. properties:
  1430. matchExpressions:
  1431. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1432. items:
  1433. description: |-
  1434. A label selector requirement is a selector that contains values, a key, and an operator that
  1435. relates the key and values.
  1436. properties:
  1437. key:
  1438. description: key is the label key that the selector applies to.
  1439. type: string
  1440. operator:
  1441. description: |-
  1442. operator represents a key's relationship to a set of values.
  1443. Valid operators are In, NotIn, Exists and DoesNotExist.
  1444. type: string
  1445. values:
  1446. description: |-
  1447. values is an array of string values. If the operator is In or NotIn,
  1448. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1449. the values array must be empty. This array is replaced during a strategic
  1450. merge patch.
  1451. items:
  1452. type: string
  1453. type: array
  1454. x-kubernetes-list-type: atomic
  1455. required:
  1456. - key
  1457. - operator
  1458. type: object
  1459. type: array
  1460. x-kubernetes-list-type: atomic
  1461. matchLabels:
  1462. additionalProperties:
  1463. type: string
  1464. description: |-
  1465. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1466. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1467. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1468. type: object
  1469. type: object
  1470. x-kubernetes-map-type: atomic
  1471. namespaceSelectors:
  1472. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1473. items:
  1474. description: |-
  1475. A label selector is a label query over a set of resources. The result of matchLabels and
  1476. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1477. label selector matches no objects.
  1478. properties:
  1479. matchExpressions:
  1480. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1481. items:
  1482. description: |-
  1483. A label selector requirement is a selector that contains values, a key, and an operator that
  1484. relates the key and values.
  1485. properties:
  1486. key:
  1487. description: key is the label key that the selector applies to.
  1488. type: string
  1489. operator:
  1490. description: |-
  1491. operator represents a key's relationship to a set of values.
  1492. Valid operators are In, NotIn, Exists and DoesNotExist.
  1493. type: string
  1494. values:
  1495. description: |-
  1496. values is an array of string values. If the operator is In or NotIn,
  1497. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1498. the values array must be empty. This array is replaced during a strategic
  1499. merge patch.
  1500. items:
  1501. type: string
  1502. type: array
  1503. x-kubernetes-list-type: atomic
  1504. required:
  1505. - key
  1506. - operator
  1507. type: object
  1508. type: array
  1509. x-kubernetes-list-type: atomic
  1510. matchLabels:
  1511. additionalProperties:
  1512. type: string
  1513. description: |-
  1514. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1515. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1516. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1517. type: object
  1518. type: object
  1519. x-kubernetes-map-type: atomic
  1520. type: array
  1521. namespaces:
  1522. description: |-
  1523. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  1524. Deprecated: Use NamespaceSelectors instead.
  1525. items:
  1526. maxLength: 63
  1527. minLength: 1
  1528. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1529. type: string
  1530. type: array
  1531. refreshTime:
  1532. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  1533. type: string
  1534. required:
  1535. - externalSecretSpec
  1536. type: object
  1537. status:
  1538. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  1539. properties:
  1540. conditions:
  1541. items:
  1542. description: ClusterExternalSecretStatusCondition indicates the status of the ClusterExternalSecret.
  1543. properties:
  1544. message:
  1545. type: string
  1546. status:
  1547. type: string
  1548. type:
  1549. description: ClusterExternalSecretConditionType indicates the condition of the ClusterExternalSecret.
  1550. type: string
  1551. required:
  1552. - status
  1553. - type
  1554. type: object
  1555. type: array
  1556. externalSecretName:
  1557. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  1558. type: string
  1559. failedNamespaces:
  1560. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  1561. items:
  1562. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  1563. properties:
  1564. namespace:
  1565. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  1566. type: string
  1567. reason:
  1568. description: Reason is why the ExternalSecret failed to apply to the namespace
  1569. type: string
  1570. required:
  1571. - namespace
  1572. type: object
  1573. type: array
  1574. provisionedNamespaces:
  1575. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  1576. items:
  1577. type: string
  1578. type: array
  1579. type: object
  1580. type: object
  1581. served: false
  1582. storage: false
  1583. subresources:
  1584. status: {}
  1585. ---
  1586. apiVersion: apiextensions.k8s.io/v1
  1587. kind: CustomResourceDefinition
  1588. metadata:
  1589. annotations:
  1590. controller-gen.kubebuilder.io/version: v0.19.0
  1591. labels:
  1592. external-secrets.io/component: controller
  1593. name: clusterpushsecrets.external-secrets.io
  1594. spec:
  1595. group: external-secrets.io
  1596. names:
  1597. categories:
  1598. - external-secrets
  1599. kind: ClusterPushSecret
  1600. listKind: ClusterPushSecretList
  1601. plural: clusterpushsecrets
  1602. singular: clusterpushsecret
  1603. scope: Cluster
  1604. versions:
  1605. - additionalPrinterColumns:
  1606. - jsonPath: .metadata.creationTimestamp
  1607. name: AGE
  1608. type: date
  1609. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1610. name: Status
  1611. type: string
  1612. name: v1alpha1
  1613. schema:
  1614. openAPIV3Schema:
  1615. description: ClusterPushSecret is the Schema for the ClusterPushSecrets API that enables cluster-wide management of pushing Kubernetes secrets to external providers.
  1616. properties:
  1617. apiVersion:
  1618. description: |-
  1619. APIVersion defines the versioned schema of this representation of an object.
  1620. Servers should convert recognized schemas to the latest internal value, and
  1621. may reject unrecognized values.
  1622. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1623. type: string
  1624. kind:
  1625. description: |-
  1626. Kind is a string value representing the REST resource this object represents.
  1627. Servers may infer this from the endpoint the client submits requests to.
  1628. Cannot be updated.
  1629. In CamelCase.
  1630. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1631. type: string
  1632. metadata:
  1633. type: object
  1634. spec:
  1635. description: ClusterPushSecretSpec defines the configuration for a ClusterPushSecret resource.
  1636. properties:
  1637. namespaceSelectors:
  1638. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1639. items:
  1640. description: |-
  1641. A label selector is a label query over a set of resources. The result of matchLabels and
  1642. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1643. label selector matches no objects.
  1644. properties:
  1645. matchExpressions:
  1646. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1647. items:
  1648. description: |-
  1649. A label selector requirement is a selector that contains values, a key, and an operator that
  1650. relates the key and values.
  1651. properties:
  1652. key:
  1653. description: key is the label key that the selector applies to.
  1654. type: string
  1655. operator:
  1656. description: |-
  1657. operator represents a key's relationship to a set of values.
  1658. Valid operators are In, NotIn, Exists and DoesNotExist.
  1659. type: string
  1660. values:
  1661. description: |-
  1662. values is an array of string values. If the operator is In or NotIn,
  1663. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1664. the values array must be empty. This array is replaced during a strategic
  1665. merge patch.
  1666. items:
  1667. type: string
  1668. type: array
  1669. x-kubernetes-list-type: atomic
  1670. required:
  1671. - key
  1672. - operator
  1673. type: object
  1674. type: array
  1675. x-kubernetes-list-type: atomic
  1676. matchLabels:
  1677. additionalProperties:
  1678. type: string
  1679. description: |-
  1680. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1681. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1682. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1683. type: object
  1684. type: object
  1685. x-kubernetes-map-type: atomic
  1686. type: array
  1687. pushSecretMetadata:
  1688. description: The metadata of the external secrets to be created
  1689. properties:
  1690. annotations:
  1691. additionalProperties:
  1692. type: string
  1693. type: object
  1694. labels:
  1695. additionalProperties:
  1696. type: string
  1697. type: object
  1698. type: object
  1699. pushSecretName:
  1700. description: |-
  1701. The name of the push secrets to be created.
  1702. Defaults to the name of the ClusterPushSecret
  1703. maxLength: 253
  1704. minLength: 1
  1705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1706. type: string
  1707. pushSecretSpec:
  1708. description: PushSecretSpec defines what to do with the secrets.
  1709. properties:
  1710. data:
  1711. description: Secret Data that should be pushed to providers
  1712. items:
  1713. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  1714. properties:
  1715. conversionStrategy:
  1716. default: None
  1717. description: Used to define a conversion Strategy for the secret keys
  1718. enum:
  1719. - None
  1720. - ReverseUnicode
  1721. type: string
  1722. match:
  1723. description: Match a given Secret Key to be pushed to the provider.
  1724. properties:
  1725. remoteRef:
  1726. description: Remote Refs to push to providers.
  1727. properties:
  1728. property:
  1729. description: Name of the property in the resulting secret
  1730. type: string
  1731. remoteKey:
  1732. description: Name of the resulting provider secret.
  1733. type: string
  1734. required:
  1735. - remoteKey
  1736. type: object
  1737. secretKey:
  1738. description: Secret Key to be pushed
  1739. type: string
  1740. required:
  1741. - remoteRef
  1742. type: object
  1743. metadata:
  1744. description: |-
  1745. Metadata is metadata attached to the secret.
  1746. The structure of metadata is provider specific, please look it up in the provider documentation.
  1747. x-kubernetes-preserve-unknown-fields: true
  1748. required:
  1749. - match
  1750. type: object
  1751. type: array
  1752. dataTo:
  1753. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  1754. items:
  1755. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  1756. properties:
  1757. conversionStrategy:
  1758. default: None
  1759. description: Used to define a conversion Strategy for the secret keys
  1760. enum:
  1761. - None
  1762. - ReverseUnicode
  1763. type: string
  1764. match:
  1765. description: |-
  1766. Match pattern for selecting keys from the source Secret.
  1767. If not specified, all keys are selected.
  1768. properties:
  1769. regexp:
  1770. description: |-
  1771. Regexp matches keys by regular expression.
  1772. If not specified, all keys are matched.
  1773. type: string
  1774. type: object
  1775. metadata:
  1776. description: |-
  1777. Metadata is metadata attached to the secret.
  1778. The structure of metadata is provider specific, please look it up in the provider documentation.
  1779. x-kubernetes-preserve-unknown-fields: true
  1780. remoteKey:
  1781. description: |-
  1782. RemoteKey is the name of the single provider secret that will receive ALL
  1783. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  1784. When set, per-key expansion is skipped and a single push is performed.
  1785. The provider's store prefix (if any) is still prepended to this value.
  1786. When not set, each matched key is pushed as its own individual provider secret.
  1787. type: string
  1788. rewrite:
  1789. description: |-
  1790. Rewrite operations to transform keys before pushing to the provider.
  1791. Operations are applied sequentially.
  1792. items:
  1793. description: PushSecretRewrite defines how to transform secret keys before pushing.
  1794. properties:
  1795. regexp:
  1796. description: Used to rewrite with regular expressions.
  1797. properties:
  1798. source:
  1799. description: Used to define the regular expression of a re.Compiler.
  1800. type: string
  1801. target:
  1802. description: Used to define the target pattern of a ReplaceAll operation.
  1803. type: string
  1804. required:
  1805. - source
  1806. - target
  1807. type: object
  1808. transform:
  1809. description: Used to apply string transformation on the secrets.
  1810. properties:
  1811. template:
  1812. description: |-
  1813. Used to define the template to apply on the secret name.
  1814. `.value ` will specify the secret name in the template.
  1815. type: string
  1816. required:
  1817. - template
  1818. type: object
  1819. type: object
  1820. x-kubernetes-validations:
  1821. - message: exactly one of regexp or transform must be set
  1822. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  1823. type: array
  1824. storeRef:
  1825. description: StoreRef specifies which SecretStore to push to. Required.
  1826. properties:
  1827. kind:
  1828. default: SecretStore
  1829. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1830. enum:
  1831. - SecretStore
  1832. - ClusterSecretStore
  1833. type: string
  1834. labelSelector:
  1835. description: Optionally, sync to secret stores with label selector
  1836. properties:
  1837. matchExpressions:
  1838. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1839. items:
  1840. description: |-
  1841. A label selector requirement is a selector that contains values, a key, and an operator that
  1842. relates the key and values.
  1843. properties:
  1844. key:
  1845. description: key is the label key that the selector applies to.
  1846. type: string
  1847. operator:
  1848. description: |-
  1849. operator represents a key's relationship to a set of values.
  1850. Valid operators are In, NotIn, Exists and DoesNotExist.
  1851. type: string
  1852. values:
  1853. description: |-
  1854. values is an array of string values. If the operator is In or NotIn,
  1855. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1856. the values array must be empty. This array is replaced during a strategic
  1857. merge patch.
  1858. items:
  1859. type: string
  1860. type: array
  1861. x-kubernetes-list-type: atomic
  1862. required:
  1863. - key
  1864. - operator
  1865. type: object
  1866. type: array
  1867. x-kubernetes-list-type: atomic
  1868. matchLabels:
  1869. additionalProperties:
  1870. type: string
  1871. description: |-
  1872. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1873. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1874. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1875. type: object
  1876. type: object
  1877. x-kubernetes-map-type: atomic
  1878. name:
  1879. description: Optionally, sync to the SecretStore of the given name
  1880. maxLength: 253
  1881. minLength: 1
  1882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1883. type: string
  1884. type: object
  1885. type: object
  1886. x-kubernetes-validations:
  1887. - message: storeRef must specify either name or labelSelector
  1888. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  1889. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  1890. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  1891. type: array
  1892. deletionPolicy:
  1893. default: None
  1894. description: Deletion Policy to handle Secrets in the provider.
  1895. enum:
  1896. - Delete
  1897. - None
  1898. type: string
  1899. refreshInterval:
  1900. default: 1h0m0s
  1901. description: The Interval to which External Secrets will try to push a secret definition
  1902. type: string
  1903. secretStoreRefs:
  1904. items:
  1905. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  1906. properties:
  1907. kind:
  1908. default: SecretStore
  1909. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1910. enum:
  1911. - SecretStore
  1912. - ClusterSecretStore
  1913. type: string
  1914. labelSelector:
  1915. description: Optionally, sync to secret stores with label selector
  1916. properties:
  1917. matchExpressions:
  1918. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1919. items:
  1920. description: |-
  1921. A label selector requirement is a selector that contains values, a key, and an operator that
  1922. relates the key and values.
  1923. properties:
  1924. key:
  1925. description: key is the label key that the selector applies to.
  1926. type: string
  1927. operator:
  1928. description: |-
  1929. operator represents a key's relationship to a set of values.
  1930. Valid operators are In, NotIn, Exists and DoesNotExist.
  1931. type: string
  1932. values:
  1933. description: |-
  1934. values is an array of string values. If the operator is In or NotIn,
  1935. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1936. the values array must be empty. This array is replaced during a strategic
  1937. merge patch.
  1938. items:
  1939. type: string
  1940. type: array
  1941. x-kubernetes-list-type: atomic
  1942. required:
  1943. - key
  1944. - operator
  1945. type: object
  1946. type: array
  1947. x-kubernetes-list-type: atomic
  1948. matchLabels:
  1949. additionalProperties:
  1950. type: string
  1951. description: |-
  1952. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1953. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1954. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1955. type: object
  1956. type: object
  1957. x-kubernetes-map-type: atomic
  1958. name:
  1959. description: Optionally, sync to the SecretStore of the given name
  1960. maxLength: 253
  1961. minLength: 1
  1962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1963. type: string
  1964. type: object
  1965. type: array
  1966. selector:
  1967. description: The Secret Selector (k8s source) for the Push Secret
  1968. maxProperties: 1
  1969. minProperties: 1
  1970. properties:
  1971. generatorRef:
  1972. description: Point to a generator to create a Secret.
  1973. properties:
  1974. apiVersion:
  1975. default: generators.external-secrets.io/v1alpha1
  1976. description: Specify the apiVersion of the generator resource
  1977. type: string
  1978. kind:
  1979. description: Specify the Kind of the generator resource
  1980. enum:
  1981. - ACRAccessToken
  1982. - BeyondtrustWorkloadCredentialsDynamicSecret
  1983. - ClusterGenerator
  1984. - CloudsmithAccessToken
  1985. - ECRAuthorizationToken
  1986. - Fake
  1987. - GCRAccessToken
  1988. - GithubAccessToken
  1989. - QuayAccessToken
  1990. - Password
  1991. - SSHKey
  1992. - STSSessionToken
  1993. - UUID
  1994. - VaultDynamicSecret
  1995. - Webhook
  1996. - Grafana
  1997. - MFA
  1998. type: string
  1999. name:
  2000. description: Specify the name of the generator resource
  2001. maxLength: 253
  2002. minLength: 1
  2003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2004. type: string
  2005. required:
  2006. - kind
  2007. - name
  2008. type: object
  2009. secret:
  2010. description: Select a Secret to Push.
  2011. properties:
  2012. name:
  2013. description: |-
  2014. Name of the Secret.
  2015. The Secret must exist in the same namespace as the PushSecret manifest.
  2016. maxLength: 253
  2017. minLength: 1
  2018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2019. type: string
  2020. selector:
  2021. description: Selector chooses secrets using a labelSelector.
  2022. properties:
  2023. matchExpressions:
  2024. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2025. items:
  2026. description: |-
  2027. A label selector requirement is a selector that contains values, a key, and an operator that
  2028. relates the key and values.
  2029. properties:
  2030. key:
  2031. description: key is the label key that the selector applies to.
  2032. type: string
  2033. operator:
  2034. description: |-
  2035. operator represents a key's relationship to a set of values.
  2036. Valid operators are In, NotIn, Exists and DoesNotExist.
  2037. type: string
  2038. values:
  2039. description: |-
  2040. values is an array of string values. If the operator is In or NotIn,
  2041. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2042. the values array must be empty. This array is replaced during a strategic
  2043. merge patch.
  2044. items:
  2045. type: string
  2046. type: array
  2047. x-kubernetes-list-type: atomic
  2048. required:
  2049. - key
  2050. - operator
  2051. type: object
  2052. type: array
  2053. x-kubernetes-list-type: atomic
  2054. matchLabels:
  2055. additionalProperties:
  2056. type: string
  2057. description: |-
  2058. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2059. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2060. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2061. type: object
  2062. type: object
  2063. x-kubernetes-map-type: atomic
  2064. type: object
  2065. type: object
  2066. template:
  2067. description: Template defines a blueprint for the created Secret resource.
  2068. properties:
  2069. data:
  2070. additionalProperties:
  2071. type: string
  2072. type: object
  2073. engineVersion:
  2074. default: v2
  2075. description: |-
  2076. EngineVersion specifies the template engine version
  2077. that should be used to compile/execute the
  2078. template specified in .data and .templateFrom[].
  2079. enum:
  2080. - v2
  2081. type: string
  2082. mergePolicy:
  2083. default: Replace
  2084. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  2085. enum:
  2086. - Replace
  2087. - Merge
  2088. type: string
  2089. metadata:
  2090. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2091. properties:
  2092. annotations:
  2093. additionalProperties:
  2094. type: string
  2095. type: object
  2096. finalizers:
  2097. items:
  2098. type: string
  2099. type: array
  2100. labels:
  2101. additionalProperties:
  2102. type: string
  2103. type: object
  2104. type: object
  2105. templateFrom:
  2106. items:
  2107. description: |-
  2108. TemplateFrom specifies a source for templates.
  2109. Each item in the list can either reference a ConfigMap or a Secret resource.
  2110. properties:
  2111. configMap:
  2112. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2113. properties:
  2114. items:
  2115. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2116. items:
  2117. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2118. properties:
  2119. key:
  2120. description: A key in the ConfigMap/Secret
  2121. maxLength: 253
  2122. minLength: 1
  2123. pattern: ^[-._a-zA-Z0-9]+$
  2124. type: string
  2125. templateAs:
  2126. default: Values
  2127. description: TemplateScope specifies how the template keys should be interpreted.
  2128. enum:
  2129. - Values
  2130. - KeysAndValues
  2131. type: string
  2132. required:
  2133. - key
  2134. type: object
  2135. type: array
  2136. name:
  2137. description: The name of the ConfigMap/Secret resource
  2138. maxLength: 253
  2139. minLength: 1
  2140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2141. type: string
  2142. required:
  2143. - items
  2144. - name
  2145. type: object
  2146. literal:
  2147. type: string
  2148. secret:
  2149. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2150. properties:
  2151. items:
  2152. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2153. items:
  2154. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2155. properties:
  2156. key:
  2157. description: A key in the ConfigMap/Secret
  2158. maxLength: 253
  2159. minLength: 1
  2160. pattern: ^[-._a-zA-Z0-9]+$
  2161. type: string
  2162. templateAs:
  2163. default: Values
  2164. description: TemplateScope specifies how the template keys should be interpreted.
  2165. enum:
  2166. - Values
  2167. - KeysAndValues
  2168. type: string
  2169. required:
  2170. - key
  2171. type: object
  2172. type: array
  2173. name:
  2174. description: The name of the ConfigMap/Secret resource
  2175. maxLength: 253
  2176. minLength: 1
  2177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2178. type: string
  2179. required:
  2180. - items
  2181. - name
  2182. type: object
  2183. target:
  2184. default: Data
  2185. description: |-
  2186. Target specifies where to place the template result.
  2187. For Secret resources, common values are: "Data", "Annotations", "Labels".
  2188. For custom resources (when spec.target.manifest is set), this supports
  2189. nested paths like "spec.database.config" or "data".
  2190. type: string
  2191. valuesDecodingStrategy:
  2192. default: None
  2193. description: Used to define a decoding Strategy for the rendered template values.
  2194. enum:
  2195. - Auto
  2196. - Base64
  2197. - Base64URL
  2198. - None
  2199. type: string
  2200. type: object
  2201. type: array
  2202. type:
  2203. type: string
  2204. type: object
  2205. updatePolicy:
  2206. default: Replace
  2207. description: UpdatePolicy to handle Secrets in the provider.
  2208. enum:
  2209. - Replace
  2210. - IfNotExists
  2211. type: string
  2212. required:
  2213. - secretStoreRefs
  2214. - selector
  2215. type: object
  2216. refreshTime:
  2217. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  2218. type: string
  2219. required:
  2220. - pushSecretSpec
  2221. type: object
  2222. status:
  2223. description: ClusterPushSecretStatus contains the status information for the ClusterPushSecret resource.
  2224. properties:
  2225. conditions:
  2226. items:
  2227. description: PushSecretStatusCondition indicates the status of the PushSecret.
  2228. properties:
  2229. lastTransitionTime:
  2230. format: date-time
  2231. type: string
  2232. message:
  2233. type: string
  2234. reason:
  2235. type: string
  2236. status:
  2237. type: string
  2238. type:
  2239. description: PushSecretConditionType indicates the condition of the PushSecret.
  2240. type: string
  2241. required:
  2242. - status
  2243. - type
  2244. type: object
  2245. type: array
  2246. failedNamespaces:
  2247. description: Failed namespaces are the namespaces that failed to apply an PushSecret
  2248. items:
  2249. description: ClusterPushSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  2250. properties:
  2251. namespace:
  2252. description: Namespace is the namespace that failed when trying to apply an PushSecret
  2253. type: string
  2254. reason:
  2255. description: Reason is why the PushSecret failed to apply to the namespace
  2256. type: string
  2257. required:
  2258. - namespace
  2259. type: object
  2260. type: array
  2261. provisionedNamespaces:
  2262. description: ProvisionedNamespaces are the namespaces where the ClusterPushSecret has secrets
  2263. items:
  2264. type: string
  2265. type: array
  2266. pushSecretName:
  2267. type: string
  2268. type: object
  2269. type: object
  2270. served: true
  2271. storage: true
  2272. subresources:
  2273. status: {}
  2274. ---
  2275. apiVersion: apiextensions.k8s.io/v1
  2276. kind: CustomResourceDefinition
  2277. metadata:
  2278. annotations:
  2279. controller-gen.kubebuilder.io/version: v0.19.0
  2280. labels:
  2281. external-secrets.io/component: controller
  2282. name: clustersecretstores.external-secrets.io
  2283. spec:
  2284. group: external-secrets.io
  2285. names:
  2286. categories:
  2287. - external-secrets
  2288. kind: ClusterSecretStore
  2289. listKind: ClusterSecretStoreList
  2290. plural: clustersecretstores
  2291. shortNames:
  2292. - css
  2293. singular: clustersecretstore
  2294. scope: Cluster
  2295. versions:
  2296. - additionalPrinterColumns:
  2297. - jsonPath: .metadata.creationTimestamp
  2298. name: AGE
  2299. type: date
  2300. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2301. name: Status
  2302. type: string
  2303. - jsonPath: .status.capabilities
  2304. name: Capabilities
  2305. type: string
  2306. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2307. name: Ready
  2308. type: string
  2309. name: v1
  2310. schema:
  2311. openAPIV3Schema:
  2312. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2313. properties:
  2314. apiVersion:
  2315. description: |-
  2316. APIVersion defines the versioned schema of this representation of an object.
  2317. Servers should convert recognized schemas to the latest internal value, and
  2318. may reject unrecognized values.
  2319. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2320. type: string
  2321. kind:
  2322. description: |-
  2323. Kind is a string value representing the REST resource this object represents.
  2324. Servers may infer this from the endpoint the client submits requests to.
  2325. Cannot be updated.
  2326. In CamelCase.
  2327. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2328. type: string
  2329. metadata:
  2330. type: object
  2331. spec:
  2332. description: SecretStoreSpec defines the desired state of SecretStore.
  2333. properties:
  2334. conditions:
  2335. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  2336. items:
  2337. description: |-
  2338. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2339. for a ClusterSecretStore instance.
  2340. properties:
  2341. namespaceRegexes:
  2342. description: Choose namespaces by using regex matching
  2343. items:
  2344. type: string
  2345. type: array
  2346. namespaceSelector:
  2347. description: Choose namespace using a labelSelector
  2348. properties:
  2349. matchExpressions:
  2350. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2351. items:
  2352. description: |-
  2353. A label selector requirement is a selector that contains values, a key, and an operator that
  2354. relates the key and values.
  2355. properties:
  2356. key:
  2357. description: key is the label key that the selector applies to.
  2358. type: string
  2359. operator:
  2360. description: |-
  2361. operator represents a key's relationship to a set of values.
  2362. Valid operators are In, NotIn, Exists and DoesNotExist.
  2363. type: string
  2364. values:
  2365. description: |-
  2366. values is an array of string values. If the operator is In or NotIn,
  2367. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2368. the values array must be empty. This array is replaced during a strategic
  2369. merge patch.
  2370. items:
  2371. type: string
  2372. type: array
  2373. x-kubernetes-list-type: atomic
  2374. required:
  2375. - key
  2376. - operator
  2377. type: object
  2378. type: array
  2379. x-kubernetes-list-type: atomic
  2380. matchLabels:
  2381. additionalProperties:
  2382. type: string
  2383. description: |-
  2384. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2385. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2386. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2387. type: object
  2388. type: object
  2389. x-kubernetes-map-type: atomic
  2390. namespaces:
  2391. description: Choose namespaces by name
  2392. items:
  2393. maxLength: 63
  2394. minLength: 1
  2395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2396. type: string
  2397. type: array
  2398. type: object
  2399. type: array
  2400. controller:
  2401. description: |-
  2402. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2403. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2404. type: string
  2405. provider:
  2406. description: Used to configure the provider. Only one provider may be set
  2407. maxProperties: 1
  2408. minProperties: 1
  2409. properties:
  2410. akeyless:
  2411. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2412. properties:
  2413. akeylessGWApiURL:
  2414. description: Akeyless GW API Url from which the secrets to be fetched from.
  2415. type: string
  2416. authSecretRef:
  2417. description: Auth configures how the operator authenticates with Akeyless.
  2418. properties:
  2419. kubernetesAuth:
  2420. description: |-
  2421. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2422. token stored in the named Secret resource.
  2423. properties:
  2424. accessID:
  2425. description: the Akeyless Kubernetes auth-method access-id
  2426. type: string
  2427. k8sConfName:
  2428. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2429. type: string
  2430. secretRef:
  2431. description: |-
  2432. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2433. for authenticating with Akeyless. If a name is specified without a key,
  2434. `token` is the default. If one is not specified, the one bound to
  2435. the controller will be used.
  2436. properties:
  2437. key:
  2438. description: |-
  2439. A key in the referenced Secret.
  2440. Some instances of this field may be defaulted, in others it may be required.
  2441. maxLength: 253
  2442. minLength: 1
  2443. pattern: ^[-._a-zA-Z0-9]+$
  2444. type: string
  2445. name:
  2446. description: The name of the Secret resource being referred to.
  2447. maxLength: 253
  2448. minLength: 1
  2449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2450. type: string
  2451. namespace:
  2452. description: |-
  2453. The namespace of the Secret resource being referred to.
  2454. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2455. maxLength: 63
  2456. minLength: 1
  2457. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2458. type: string
  2459. type: object
  2460. serviceAccountRef:
  2461. description: |-
  2462. Optional service account field containing the name of a kubernetes ServiceAccount.
  2463. If the service account is specified, the service account secret token JWT will be used
  2464. for authenticating with Akeyless. If the service account selector is not supplied,
  2465. the secretRef will be used instead.
  2466. properties:
  2467. audiences:
  2468. description: |-
  2469. Audience specifies the `aud` claim for the service account token
  2470. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2471. then this audiences will be appended to the list
  2472. items:
  2473. type: string
  2474. type: array
  2475. name:
  2476. description: The name of the ServiceAccount resource being referred to.
  2477. maxLength: 253
  2478. minLength: 1
  2479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2480. type: string
  2481. namespace:
  2482. description: |-
  2483. Namespace of the resource being referred to.
  2484. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2485. maxLength: 63
  2486. minLength: 1
  2487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2488. type: string
  2489. required:
  2490. - name
  2491. type: object
  2492. required:
  2493. - accessID
  2494. - k8sConfName
  2495. type: object
  2496. secretRef:
  2497. description: |-
  2498. Reference to a Secret that contains the details
  2499. to authenticate with Akeyless.
  2500. properties:
  2501. accessID:
  2502. description: The SecretAccessID is used for authentication
  2503. properties:
  2504. key:
  2505. description: |-
  2506. A key in the referenced Secret.
  2507. Some instances of this field may be defaulted, in others it may be required.
  2508. maxLength: 253
  2509. minLength: 1
  2510. pattern: ^[-._a-zA-Z0-9]+$
  2511. type: string
  2512. name:
  2513. description: The name of the Secret resource being referred to.
  2514. maxLength: 253
  2515. minLength: 1
  2516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2517. type: string
  2518. namespace:
  2519. description: |-
  2520. The namespace of the Secret resource being referred to.
  2521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2522. maxLength: 63
  2523. minLength: 1
  2524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2525. type: string
  2526. type: object
  2527. accessType:
  2528. description: |-
  2529. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2530. In some instances, `key` is a required field.
  2531. properties:
  2532. key:
  2533. description: |-
  2534. A key in the referenced Secret.
  2535. Some instances of this field may be defaulted, in others it may be required.
  2536. maxLength: 253
  2537. minLength: 1
  2538. pattern: ^[-._a-zA-Z0-9]+$
  2539. type: string
  2540. name:
  2541. description: The name of the Secret resource being referred to.
  2542. maxLength: 253
  2543. minLength: 1
  2544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2545. type: string
  2546. namespace:
  2547. description: |-
  2548. The namespace of the Secret resource being referred to.
  2549. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2550. maxLength: 63
  2551. minLength: 1
  2552. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2553. type: string
  2554. type: object
  2555. accessTypeParam:
  2556. description: |-
  2557. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2558. In some instances, `key` is a required field.
  2559. properties:
  2560. key:
  2561. description: |-
  2562. A key in the referenced Secret.
  2563. Some instances of this field may be defaulted, in others it may be required.
  2564. maxLength: 253
  2565. minLength: 1
  2566. pattern: ^[-._a-zA-Z0-9]+$
  2567. type: string
  2568. name:
  2569. description: The name of the Secret resource being referred to.
  2570. maxLength: 253
  2571. minLength: 1
  2572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2573. type: string
  2574. namespace:
  2575. description: |-
  2576. The namespace of the Secret resource being referred to.
  2577. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2578. maxLength: 63
  2579. minLength: 1
  2580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2581. type: string
  2582. type: object
  2583. type: object
  2584. type: object
  2585. caBundle:
  2586. description: |-
  2587. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2588. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2589. are used to validate the TLS connection.
  2590. format: byte
  2591. type: string
  2592. caProvider:
  2593. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2594. properties:
  2595. key:
  2596. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2597. maxLength: 253
  2598. minLength: 1
  2599. pattern: ^[-._a-zA-Z0-9]+$
  2600. type: string
  2601. name:
  2602. description: The name of the object located at the provider type.
  2603. maxLength: 253
  2604. minLength: 1
  2605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2606. type: string
  2607. namespace:
  2608. description: |-
  2609. The namespace the Provider type is in.
  2610. Can only be defined when used in a ClusterSecretStore.
  2611. maxLength: 63
  2612. minLength: 1
  2613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2614. type: string
  2615. type:
  2616. description: The type of provider to use such as "Secret", or "ConfigMap".
  2617. enum:
  2618. - Secret
  2619. - ConfigMap
  2620. type: string
  2621. required:
  2622. - name
  2623. - type
  2624. type: object
  2625. required:
  2626. - akeylessGWApiURL
  2627. - authSecretRef
  2628. type: object
  2629. aws:
  2630. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2631. properties:
  2632. additionalRoles:
  2633. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2634. items:
  2635. type: string
  2636. type: array
  2637. auth:
  2638. description: |-
  2639. Auth defines the information necessary to authenticate against AWS
  2640. if not set aws sdk will infer credentials from your environment
  2641. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2642. properties:
  2643. jwt:
  2644. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  2645. properties:
  2646. serviceAccountRef:
  2647. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  2648. properties:
  2649. audiences:
  2650. description: |-
  2651. Audience specifies the `aud` claim for the service account token
  2652. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2653. then this audiences will be appended to the list
  2654. items:
  2655. type: string
  2656. type: array
  2657. name:
  2658. description: The name of the ServiceAccount resource being referred to.
  2659. maxLength: 253
  2660. minLength: 1
  2661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2662. type: string
  2663. namespace:
  2664. description: |-
  2665. Namespace of the resource being referred to.
  2666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2667. maxLength: 63
  2668. minLength: 1
  2669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2670. type: string
  2671. required:
  2672. - name
  2673. type: object
  2674. type: object
  2675. secretRef:
  2676. description: |-
  2677. AWSAuthSecretRef holds secret references for AWS credentials
  2678. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2679. properties:
  2680. accessKeyIDSecretRef:
  2681. description: The AccessKeyID is used for authentication
  2682. properties:
  2683. key:
  2684. description: |-
  2685. A key in the referenced Secret.
  2686. Some instances of this field may be defaulted, in others it may be required.
  2687. maxLength: 253
  2688. minLength: 1
  2689. pattern: ^[-._a-zA-Z0-9]+$
  2690. type: string
  2691. name:
  2692. description: The name of the Secret resource being referred to.
  2693. maxLength: 253
  2694. minLength: 1
  2695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2696. type: string
  2697. namespace:
  2698. description: |-
  2699. The namespace of the Secret resource being referred to.
  2700. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2701. maxLength: 63
  2702. minLength: 1
  2703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2704. type: string
  2705. type: object
  2706. secretAccessKeySecretRef:
  2707. description: The SecretAccessKey is used for authentication
  2708. properties:
  2709. key:
  2710. description: |-
  2711. A key in the referenced Secret.
  2712. Some instances of this field may be defaulted, in others it may be required.
  2713. maxLength: 253
  2714. minLength: 1
  2715. pattern: ^[-._a-zA-Z0-9]+$
  2716. type: string
  2717. name:
  2718. description: The name of the Secret resource being referred to.
  2719. maxLength: 253
  2720. minLength: 1
  2721. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2722. type: string
  2723. namespace:
  2724. description: |-
  2725. The namespace of the Secret resource being referred to.
  2726. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2727. maxLength: 63
  2728. minLength: 1
  2729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2730. type: string
  2731. type: object
  2732. sessionTokenSecretRef:
  2733. description: |-
  2734. The SessionToken used for authentication
  2735. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2736. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2737. properties:
  2738. key:
  2739. description: |-
  2740. A key in the referenced Secret.
  2741. Some instances of this field may be defaulted, in others it may be required.
  2742. maxLength: 253
  2743. minLength: 1
  2744. pattern: ^[-._a-zA-Z0-9]+$
  2745. type: string
  2746. name:
  2747. description: The name of the Secret resource being referred to.
  2748. maxLength: 253
  2749. minLength: 1
  2750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2751. type: string
  2752. namespace:
  2753. description: |-
  2754. The namespace of the Secret resource being referred to.
  2755. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2756. maxLength: 63
  2757. minLength: 1
  2758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2759. type: string
  2760. type: object
  2761. type: object
  2762. type: object
  2763. customSessionTags:
  2764. additionalProperties:
  2765. type: string
  2766. description: |-
  2767. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  2768. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  2769. type: object
  2770. x-kubernetes-validations:
  2771. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  2772. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  2773. externalID:
  2774. description: AWS External ID set on assumed IAM roles
  2775. type: string
  2776. prefix:
  2777. description: Prefix adds a prefix to all retrieved values.
  2778. type: string
  2779. region:
  2780. description: AWS Region to be used for the provider
  2781. type: string
  2782. role:
  2783. description: Role is a Role ARN which the provider will assume
  2784. type: string
  2785. secretsManager:
  2786. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2787. properties:
  2788. forceDeleteWithoutRecovery:
  2789. description: |-
  2790. Specifies whether to delete the secret without any recovery window. You
  2791. can't use both this parameter and RecoveryWindowInDays in the same call.
  2792. If you don't use either, then by default Secrets Manager uses a 30 day
  2793. recovery window.
  2794. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2795. type: boolean
  2796. recoveryWindowInDays:
  2797. description: |-
  2798. The number of days from 7 to 30 that Secrets Manager waits before
  2799. permanently deleting the secret. You can't use both this parameter and
  2800. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2801. then by default Secrets Manager uses a 30-day recovery window.
  2802. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2803. format: int64
  2804. type: integer
  2805. type: object
  2806. service:
  2807. description: Service defines which service should be used to fetch the secrets
  2808. enum:
  2809. - SecretsManager
  2810. - ParameterStore
  2811. type: string
  2812. sessionTags:
  2813. description: AWS STS assume role session tags
  2814. items:
  2815. description: |-
  2816. Tag is a key-value pair that can be attached to an AWS resource.
  2817. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  2818. properties:
  2819. key:
  2820. type: string
  2821. value:
  2822. type: string
  2823. required:
  2824. - key
  2825. - value
  2826. type: object
  2827. type: array
  2828. sessionTagsPolicy:
  2829. default: None
  2830. description: |-
  2831. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  2832. None (default): no tags are added.
  2833. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  2834. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  2835. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  2836. enum:
  2837. - None
  2838. - Simple
  2839. - Custom
  2840. type: string
  2841. transitiveTagKeys:
  2842. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2843. items:
  2844. type: string
  2845. type: array
  2846. required:
  2847. - region
  2848. - service
  2849. type: object
  2850. azurekv:
  2851. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2852. properties:
  2853. authSecretRef:
  2854. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2855. properties:
  2856. clientCertificate:
  2857. description: The Azure ClientCertificate of the service principle used for authentication.
  2858. properties:
  2859. key:
  2860. description: |-
  2861. A key in the referenced Secret.
  2862. Some instances of this field may be defaulted, in others it may be required.
  2863. maxLength: 253
  2864. minLength: 1
  2865. pattern: ^[-._a-zA-Z0-9]+$
  2866. type: string
  2867. name:
  2868. description: The name of the Secret resource being referred to.
  2869. maxLength: 253
  2870. minLength: 1
  2871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2872. type: string
  2873. namespace:
  2874. description: |-
  2875. The namespace of the Secret resource being referred to.
  2876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2877. maxLength: 63
  2878. minLength: 1
  2879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2880. type: string
  2881. type: object
  2882. clientId:
  2883. description: The Azure clientId of the service principle or managed identity used for authentication.
  2884. properties:
  2885. key:
  2886. description: |-
  2887. A key in the referenced Secret.
  2888. Some instances of this field may be defaulted, in others it may be required.
  2889. maxLength: 253
  2890. minLength: 1
  2891. pattern: ^[-._a-zA-Z0-9]+$
  2892. type: string
  2893. name:
  2894. description: The name of the Secret resource being referred to.
  2895. maxLength: 253
  2896. minLength: 1
  2897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2898. type: string
  2899. namespace:
  2900. description: |-
  2901. The namespace of the Secret resource being referred to.
  2902. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2903. maxLength: 63
  2904. minLength: 1
  2905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2906. type: string
  2907. type: object
  2908. clientSecret:
  2909. description: The Azure ClientSecret of the service principle used for authentication.
  2910. properties:
  2911. key:
  2912. description: |-
  2913. A key in the referenced Secret.
  2914. Some instances of this field may be defaulted, in others it may be required.
  2915. maxLength: 253
  2916. minLength: 1
  2917. pattern: ^[-._a-zA-Z0-9]+$
  2918. type: string
  2919. name:
  2920. description: The name of the Secret resource being referred to.
  2921. maxLength: 253
  2922. minLength: 1
  2923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2924. type: string
  2925. namespace:
  2926. description: |-
  2927. The namespace of the Secret resource being referred to.
  2928. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2929. maxLength: 63
  2930. minLength: 1
  2931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2932. type: string
  2933. type: object
  2934. tenantId:
  2935. description: The Azure tenantId of the managed identity used for authentication.
  2936. properties:
  2937. key:
  2938. description: |-
  2939. A key in the referenced Secret.
  2940. Some instances of this field may be defaulted, in others it may be required.
  2941. maxLength: 253
  2942. minLength: 1
  2943. pattern: ^[-._a-zA-Z0-9]+$
  2944. type: string
  2945. name:
  2946. description: The name of the Secret resource being referred to.
  2947. maxLength: 253
  2948. minLength: 1
  2949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2950. type: string
  2951. namespace:
  2952. description: |-
  2953. The namespace of the Secret resource being referred to.
  2954. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2955. maxLength: 63
  2956. minLength: 1
  2957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2958. type: string
  2959. type: object
  2960. type: object
  2961. authType:
  2962. default: ServicePrincipal
  2963. description: |-
  2964. Auth type defines how to authenticate to the keyvault service.
  2965. Valid values are:
  2966. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2967. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2968. enum:
  2969. - ServicePrincipal
  2970. - ManagedIdentity
  2971. - WorkloadIdentity
  2972. type: string
  2973. customCloudConfig:
  2974. description: |-
  2975. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  2976. Required when EnvironmentType is AzureStackCloud.
  2977. Optional for other environment types - useful for Azure China when using Workload Identity
  2978. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  2979. standard China Cloud endpoint (login.chinacloudapi.cn).
  2980. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  2981. configuration is not supported with the legacy go-autorest SDK.
  2982. properties:
  2983. activeDirectoryEndpoint:
  2984. description: |-
  2985. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  2986. Required when using custom cloud configuration
  2987. type: string
  2988. keyVaultDNSSuffix:
  2989. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  2990. type: string
  2991. keyVaultEndpoint:
  2992. description: KeyVaultEndpoint is the Key Vault service endpoint
  2993. type: string
  2994. resourceManagerEndpoint:
  2995. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  2996. type: string
  2997. required:
  2998. - activeDirectoryEndpoint
  2999. type: object
  3000. environmentType:
  3001. default: PublicCloud
  3002. description: |-
  3003. EnvironmentType specifies the Azure cloud environment endpoints to use for
  3004. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  3005. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  3006. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  3007. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  3008. enum:
  3009. - PublicCloud
  3010. - USGovernmentCloud
  3011. - ChinaCloud
  3012. - GermanCloud
  3013. - AzureStackCloud
  3014. type: string
  3015. identityId:
  3016. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3017. type: string
  3018. serviceAccountRef:
  3019. description: |-
  3020. ServiceAccountRef specified the service account
  3021. that should be used when authenticating with WorkloadIdentity.
  3022. properties:
  3023. audiences:
  3024. description: |-
  3025. Audience specifies the `aud` claim for the service account token
  3026. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3027. then this audiences will be appended to the list
  3028. items:
  3029. type: string
  3030. type: array
  3031. name:
  3032. description: The name of the ServiceAccount resource being referred to.
  3033. maxLength: 253
  3034. minLength: 1
  3035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3036. type: string
  3037. namespace:
  3038. description: |-
  3039. Namespace of the resource being referred to.
  3040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3041. maxLength: 63
  3042. minLength: 1
  3043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3044. type: string
  3045. required:
  3046. - name
  3047. type: object
  3048. tenantId:
  3049. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3050. type: string
  3051. useAzureSDK:
  3052. default: false
  3053. description: |-
  3054. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3055. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3056. type: boolean
  3057. vaultUrl:
  3058. description: Vault Url from which the secrets to be fetched from.
  3059. type: string
  3060. required:
  3061. - vaultUrl
  3062. type: object
  3063. barbican:
  3064. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3065. properties:
  3066. auth:
  3067. description: BarbicanAuth contains the authentication information for Barbican.
  3068. properties:
  3069. password:
  3070. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3071. properties:
  3072. secretRef:
  3073. description: |-
  3074. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3075. In some instances, `key` is a required field.
  3076. properties:
  3077. key:
  3078. description: |-
  3079. A key in the referenced Secret.
  3080. Some instances of this field may be defaulted, in others it may be required.
  3081. maxLength: 253
  3082. minLength: 1
  3083. pattern: ^[-._a-zA-Z0-9]+$
  3084. type: string
  3085. name:
  3086. description: The name of the Secret resource being referred to.
  3087. maxLength: 253
  3088. minLength: 1
  3089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3090. type: string
  3091. namespace:
  3092. description: |-
  3093. The namespace of the Secret resource being referred to.
  3094. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3095. maxLength: 63
  3096. minLength: 1
  3097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3098. type: string
  3099. type: object
  3100. required:
  3101. - secretRef
  3102. type: object
  3103. username:
  3104. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3105. maxProperties: 1
  3106. minProperties: 1
  3107. properties:
  3108. secretRef:
  3109. description: |-
  3110. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3111. In some instances, `key` is a required field.
  3112. properties:
  3113. key:
  3114. description: |-
  3115. A key in the referenced Secret.
  3116. Some instances of this field may be defaulted, in others it may be required.
  3117. maxLength: 253
  3118. minLength: 1
  3119. pattern: ^[-._a-zA-Z0-9]+$
  3120. type: string
  3121. name:
  3122. description: The name of the Secret resource being referred to.
  3123. maxLength: 253
  3124. minLength: 1
  3125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3126. type: string
  3127. namespace:
  3128. description: |-
  3129. The namespace of the Secret resource being referred to.
  3130. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3131. maxLength: 63
  3132. minLength: 1
  3133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3134. type: string
  3135. type: object
  3136. value:
  3137. type: string
  3138. type: object
  3139. required:
  3140. - password
  3141. - username
  3142. type: object
  3143. authURL:
  3144. type: string
  3145. domainName:
  3146. type: string
  3147. region:
  3148. type: string
  3149. tenantName:
  3150. type: string
  3151. required:
  3152. - auth
  3153. type: object
  3154. beyondtrust:
  3155. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3156. properties:
  3157. auth:
  3158. description: Auth configures how the operator authenticates with Beyondtrust.
  3159. properties:
  3160. apiKey:
  3161. description: APIKey If not provided then ClientID/ClientSecret become required.
  3162. properties:
  3163. secretRef:
  3164. description: SecretRef references a key in a secret that will be used as value.
  3165. properties:
  3166. key:
  3167. description: |-
  3168. A key in the referenced Secret.
  3169. Some instances of this field may be defaulted, in others it may be required.
  3170. maxLength: 253
  3171. minLength: 1
  3172. pattern: ^[-._a-zA-Z0-9]+$
  3173. type: string
  3174. name:
  3175. description: The name of the Secret resource being referred to.
  3176. maxLength: 253
  3177. minLength: 1
  3178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3179. type: string
  3180. namespace:
  3181. description: |-
  3182. The namespace of the Secret resource being referred to.
  3183. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3184. maxLength: 63
  3185. minLength: 1
  3186. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3187. type: string
  3188. type: object
  3189. value:
  3190. description: Value can be specified directly to set a value without using a secret.
  3191. type: string
  3192. type: object
  3193. certificate:
  3194. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3195. properties:
  3196. secretRef:
  3197. description: SecretRef references a key in a secret that will be used as value.
  3198. properties:
  3199. key:
  3200. description: |-
  3201. A key in the referenced Secret.
  3202. Some instances of this field may be defaulted, in others it may be required.
  3203. maxLength: 253
  3204. minLength: 1
  3205. pattern: ^[-._a-zA-Z0-9]+$
  3206. type: string
  3207. name:
  3208. description: The name of the Secret resource being referred to.
  3209. maxLength: 253
  3210. minLength: 1
  3211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3212. type: string
  3213. namespace:
  3214. description: |-
  3215. The namespace of the Secret resource being referred to.
  3216. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3217. maxLength: 63
  3218. minLength: 1
  3219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3220. type: string
  3221. type: object
  3222. value:
  3223. description: Value can be specified directly to set a value without using a secret.
  3224. type: string
  3225. type: object
  3226. certificateKey:
  3227. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3228. properties:
  3229. secretRef:
  3230. description: SecretRef references a key in a secret that will be used as value.
  3231. properties:
  3232. key:
  3233. description: |-
  3234. A key in the referenced Secret.
  3235. Some instances of this field may be defaulted, in others it may be required.
  3236. maxLength: 253
  3237. minLength: 1
  3238. pattern: ^[-._a-zA-Z0-9]+$
  3239. type: string
  3240. name:
  3241. description: The name of the Secret resource being referred to.
  3242. maxLength: 253
  3243. minLength: 1
  3244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3245. type: string
  3246. namespace:
  3247. description: |-
  3248. The namespace of the Secret resource being referred to.
  3249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3250. maxLength: 63
  3251. minLength: 1
  3252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3253. type: string
  3254. type: object
  3255. value:
  3256. description: Value can be specified directly to set a value without using a secret.
  3257. type: string
  3258. type: object
  3259. clientId:
  3260. description: ClientID is the API OAuth Client ID.
  3261. properties:
  3262. secretRef:
  3263. description: SecretRef references a key in a secret that will be used as value.
  3264. properties:
  3265. key:
  3266. description: |-
  3267. A key in the referenced Secret.
  3268. Some instances of this field may be defaulted, in others it may be required.
  3269. maxLength: 253
  3270. minLength: 1
  3271. pattern: ^[-._a-zA-Z0-9]+$
  3272. type: string
  3273. name:
  3274. description: The name of the Secret resource being referred to.
  3275. maxLength: 253
  3276. minLength: 1
  3277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3278. type: string
  3279. namespace:
  3280. description: |-
  3281. The namespace of the Secret resource being referred to.
  3282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3283. maxLength: 63
  3284. minLength: 1
  3285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3286. type: string
  3287. type: object
  3288. value:
  3289. description: Value can be specified directly to set a value without using a secret.
  3290. type: string
  3291. type: object
  3292. clientSecret:
  3293. description: ClientSecret is the API OAuth Client Secret.
  3294. properties:
  3295. secretRef:
  3296. description: SecretRef references a key in a secret that will be used as value.
  3297. properties:
  3298. key:
  3299. description: |-
  3300. A key in the referenced Secret.
  3301. Some instances of this field may be defaulted, in others it may be required.
  3302. maxLength: 253
  3303. minLength: 1
  3304. pattern: ^[-._a-zA-Z0-9]+$
  3305. type: string
  3306. name:
  3307. description: The name of the Secret resource being referred to.
  3308. maxLength: 253
  3309. minLength: 1
  3310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3311. type: string
  3312. namespace:
  3313. description: |-
  3314. The namespace of the Secret resource being referred to.
  3315. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3316. maxLength: 63
  3317. minLength: 1
  3318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3319. type: string
  3320. type: object
  3321. value:
  3322. description: Value can be specified directly to set a value without using a secret.
  3323. type: string
  3324. type: object
  3325. type: object
  3326. server:
  3327. description: Auth configures how API server works.
  3328. properties:
  3329. apiUrl:
  3330. type: string
  3331. apiVersion:
  3332. type: string
  3333. clientTimeOutSeconds:
  3334. 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.
  3335. type: integer
  3336. decrypt:
  3337. default: true
  3338. 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.'
  3339. type: boolean
  3340. retrievalType:
  3341. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3342. type: string
  3343. separator:
  3344. description: A character that separates the folder names.
  3345. type: string
  3346. verifyCA:
  3347. type: boolean
  3348. required:
  3349. - apiUrl
  3350. - verifyCA
  3351. type: object
  3352. required:
  3353. - auth
  3354. - server
  3355. type: object
  3356. beyondtrustworkloadcredentials:
  3357. description: BeyondtrustWorkloadCredentials configures this store to sync secrets using the BeyondTrust Workload Credentials provider.
  3358. properties:
  3359. auth:
  3360. description: |-
  3361. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  3362. Currently supports API key authentication via Kubernetes secret reference.
  3363. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  3364. properties:
  3365. apikey:
  3366. description: |-
  3367. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  3368. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  3369. properties:
  3370. token:
  3371. description: |-
  3372. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  3373. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  3374. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  3375. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  3376. properties:
  3377. key:
  3378. description: |-
  3379. A key in the referenced Secret.
  3380. Some instances of this field may be defaulted, in others it may be required.
  3381. maxLength: 253
  3382. minLength: 1
  3383. pattern: ^[-._a-zA-Z0-9]+$
  3384. type: string
  3385. name:
  3386. description: The name of the Secret resource being referred to.
  3387. maxLength: 253
  3388. minLength: 1
  3389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3390. type: string
  3391. namespace:
  3392. description: |-
  3393. The namespace of the Secret resource being referred to.
  3394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3395. maxLength: 63
  3396. minLength: 1
  3397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3398. type: string
  3399. type: object
  3400. required:
  3401. - token
  3402. type: object
  3403. required:
  3404. - apikey
  3405. type: object
  3406. caBundle:
  3407. description: |-
  3408. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  3409. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  3410. If not set, the system's trusted root certificates are used.
  3411. format: byte
  3412. type: string
  3413. caProvider:
  3414. description: |-
  3415. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  3416. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  3417. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  3418. properties:
  3419. key:
  3420. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3421. maxLength: 253
  3422. minLength: 1
  3423. pattern: ^[-._a-zA-Z0-9]+$
  3424. type: string
  3425. name:
  3426. description: The name of the object located at the provider type.
  3427. maxLength: 253
  3428. minLength: 1
  3429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3430. type: string
  3431. namespace:
  3432. description: |-
  3433. The namespace the Provider type is in.
  3434. Can only be defined when used in a ClusterSecretStore.
  3435. maxLength: 63
  3436. minLength: 1
  3437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3438. type: string
  3439. type:
  3440. description: The type of provider to use such as "Secret", or "ConfigMap".
  3441. enum:
  3442. - Secret
  3443. - ConfigMap
  3444. type: string
  3445. required:
  3446. - name
  3447. - type
  3448. type: object
  3449. folderPath:
  3450. description: |-
  3451. FolderPath specifies the default folder path for secret retrieval.
  3452. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  3453. Example: "production/database" or "dev/api-keys"
  3454. Leave empty to retrieve secrets from the root folder.
  3455. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  3456. type: string
  3457. server:
  3458. description: |-
  3459. Server configures the BeyondTrust Workload Credentials server connection details.
  3460. Includes the API URL and Site ID for your BeyondTrust instance.
  3461. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  3462. properties:
  3463. apiUrl:
  3464. description: |-
  3465. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  3466. This should be the full URL to your BeyondTrust instance.
  3467. Example: https://api.beyondtrust.io/siie
  3468. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  3469. type: string
  3470. siteId:
  3471. description: |-
  3472. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  3473. This identifier is unique to your BeyondTrust Workload Credentials instance.
  3474. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  3475. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  3476. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  3477. type: string
  3478. required:
  3479. - apiUrl
  3480. - siteId
  3481. type: object
  3482. required:
  3483. - auth
  3484. - server
  3485. type: object
  3486. bitwardensecretsmanager:
  3487. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3488. properties:
  3489. apiURL:
  3490. type: string
  3491. auth:
  3492. description: |-
  3493. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3494. Make sure that the token being used has permissions on the given secret.
  3495. properties:
  3496. secretRef:
  3497. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3498. properties:
  3499. credentials:
  3500. description: AccessToken used for the bitwarden instance.
  3501. properties:
  3502. key:
  3503. description: |-
  3504. A key in the referenced Secret.
  3505. Some instances of this field may be defaulted, in others it may be required.
  3506. maxLength: 253
  3507. minLength: 1
  3508. pattern: ^[-._a-zA-Z0-9]+$
  3509. type: string
  3510. name:
  3511. description: The name of the Secret resource being referred to.
  3512. maxLength: 253
  3513. minLength: 1
  3514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3515. type: string
  3516. namespace:
  3517. description: |-
  3518. The namespace of the Secret resource being referred to.
  3519. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3520. maxLength: 63
  3521. minLength: 1
  3522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3523. type: string
  3524. type: object
  3525. required:
  3526. - credentials
  3527. type: object
  3528. required:
  3529. - secretRef
  3530. type: object
  3531. bitwardenServerSDKURL:
  3532. type: string
  3533. caBundle:
  3534. description: |-
  3535. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3536. can be performed.
  3537. type: string
  3538. caProvider:
  3539. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3540. properties:
  3541. key:
  3542. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3543. maxLength: 253
  3544. minLength: 1
  3545. pattern: ^[-._a-zA-Z0-9]+$
  3546. type: string
  3547. name:
  3548. description: The name of the object located at the provider type.
  3549. maxLength: 253
  3550. minLength: 1
  3551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3552. type: string
  3553. namespace:
  3554. description: |-
  3555. The namespace the Provider type is in.
  3556. Can only be defined when used in a ClusterSecretStore.
  3557. maxLength: 63
  3558. minLength: 1
  3559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3560. type: string
  3561. type:
  3562. description: The type of provider to use such as "Secret", or "ConfigMap".
  3563. enum:
  3564. - Secret
  3565. - ConfigMap
  3566. type: string
  3567. required:
  3568. - name
  3569. - type
  3570. type: object
  3571. identityURL:
  3572. type: string
  3573. organizationID:
  3574. description: OrganizationID determines which organization this secret store manages.
  3575. type: string
  3576. projectID:
  3577. description: ProjectID determines which project this secret store manages.
  3578. type: string
  3579. required:
  3580. - auth
  3581. - organizationID
  3582. - projectID
  3583. type: object
  3584. chef:
  3585. description: Chef configures this store to sync secrets with chef server
  3586. properties:
  3587. auth:
  3588. description: Auth defines the information necessary to authenticate against chef Server
  3589. properties:
  3590. secretRef:
  3591. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3592. properties:
  3593. privateKeySecretRef:
  3594. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3595. properties:
  3596. key:
  3597. description: |-
  3598. A key in the referenced Secret.
  3599. Some instances of this field may be defaulted, in others it may be required.
  3600. maxLength: 253
  3601. minLength: 1
  3602. pattern: ^[-._a-zA-Z0-9]+$
  3603. type: string
  3604. name:
  3605. description: The name of the Secret resource being referred to.
  3606. maxLength: 253
  3607. minLength: 1
  3608. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3609. type: string
  3610. namespace:
  3611. description: |-
  3612. The namespace of the Secret resource being referred to.
  3613. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3614. maxLength: 63
  3615. minLength: 1
  3616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3617. type: string
  3618. type: object
  3619. required:
  3620. - privateKeySecretRef
  3621. type: object
  3622. required:
  3623. - secretRef
  3624. type: object
  3625. serverUrl:
  3626. 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 "/"
  3627. type: string
  3628. username:
  3629. description: UserName should be the user ID on the chef server
  3630. type: string
  3631. required:
  3632. - auth
  3633. - serverUrl
  3634. - username
  3635. type: object
  3636. cloudrusm:
  3637. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3638. properties:
  3639. auth:
  3640. description: CSMAuth contains a secretRef for credentials.
  3641. properties:
  3642. secretRef:
  3643. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3644. properties:
  3645. accessKeyIDSecretRef:
  3646. description: The AccessKeyID is used for authentication
  3647. properties:
  3648. key:
  3649. description: |-
  3650. A key in the referenced Secret.
  3651. Some instances of this field may be defaulted, in others it may be required.
  3652. maxLength: 253
  3653. minLength: 1
  3654. pattern: ^[-._a-zA-Z0-9]+$
  3655. type: string
  3656. name:
  3657. description: The name of the Secret resource being referred to.
  3658. maxLength: 253
  3659. minLength: 1
  3660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3661. type: string
  3662. namespace:
  3663. description: |-
  3664. The namespace of the Secret resource being referred to.
  3665. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3666. maxLength: 63
  3667. minLength: 1
  3668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3669. type: string
  3670. type: object
  3671. accessKeySecretSecretRef:
  3672. description: The AccessKeySecret is used for authentication
  3673. properties:
  3674. key:
  3675. description: |-
  3676. A key in the referenced Secret.
  3677. Some instances of this field may be defaulted, in others it may be required.
  3678. maxLength: 253
  3679. minLength: 1
  3680. pattern: ^[-._a-zA-Z0-9]+$
  3681. type: string
  3682. name:
  3683. description: The name of the Secret resource being referred to.
  3684. maxLength: 253
  3685. minLength: 1
  3686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3687. type: string
  3688. namespace:
  3689. description: |-
  3690. The namespace of the Secret resource being referred to.
  3691. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3692. maxLength: 63
  3693. minLength: 1
  3694. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3695. type: string
  3696. type: object
  3697. required:
  3698. - accessKeyIDSecretRef
  3699. - accessKeySecretSecretRef
  3700. type: object
  3701. type: object
  3702. projectID:
  3703. description: ProjectID is the project, which the secrets are stored in.
  3704. type: string
  3705. required:
  3706. - auth
  3707. type: object
  3708. conjur:
  3709. description: Conjur configures this store to sync secrets using conjur provider
  3710. properties:
  3711. auth:
  3712. description: Defines authentication settings for connecting to Conjur.
  3713. properties:
  3714. apikey:
  3715. description: Authenticates with Conjur using an API key.
  3716. properties:
  3717. account:
  3718. description: Account is the Conjur organization account name.
  3719. type: string
  3720. apiKeyRef:
  3721. description: |-
  3722. A reference to a specific 'key' containing the Conjur API key
  3723. within a Secret resource. In some instances, `key` is a required field.
  3724. properties:
  3725. key:
  3726. description: |-
  3727. A key in the referenced Secret.
  3728. Some instances of this field may be defaulted, in others it may be required.
  3729. maxLength: 253
  3730. minLength: 1
  3731. pattern: ^[-._a-zA-Z0-9]+$
  3732. type: string
  3733. name:
  3734. description: The name of the Secret resource being referred to.
  3735. maxLength: 253
  3736. minLength: 1
  3737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3738. type: string
  3739. namespace:
  3740. description: |-
  3741. The namespace of the Secret resource being referred to.
  3742. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3743. maxLength: 63
  3744. minLength: 1
  3745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3746. type: string
  3747. type: object
  3748. userRef:
  3749. description: |-
  3750. A reference to a specific 'key' containing the Conjur username
  3751. within a Secret resource. In some instances, `key` is a required field.
  3752. properties:
  3753. key:
  3754. description: |-
  3755. A key in the referenced Secret.
  3756. Some instances of this field may be defaulted, in others it may be required.
  3757. maxLength: 253
  3758. minLength: 1
  3759. pattern: ^[-._a-zA-Z0-9]+$
  3760. type: string
  3761. name:
  3762. description: The name of the Secret resource being referred to.
  3763. maxLength: 253
  3764. minLength: 1
  3765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3766. type: string
  3767. namespace:
  3768. description: |-
  3769. The namespace of the Secret resource being referred to.
  3770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3771. maxLength: 63
  3772. minLength: 1
  3773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3774. type: string
  3775. type: object
  3776. required:
  3777. - account
  3778. - apiKeyRef
  3779. - userRef
  3780. type: object
  3781. jwt:
  3782. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3783. properties:
  3784. account:
  3785. description: Account is the Conjur organization account name.
  3786. type: string
  3787. hostId:
  3788. description: |-
  3789. Optional HostID for JWT authentication. This may be used depending
  3790. on how the Conjur JWT authenticator policy is configured.
  3791. type: string
  3792. secretRef:
  3793. description: |-
  3794. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3795. authenticate with Conjur using the JWT authentication method.
  3796. properties:
  3797. key:
  3798. description: |-
  3799. A key in the referenced Secret.
  3800. Some instances of this field may be defaulted, in others it may be required.
  3801. maxLength: 253
  3802. minLength: 1
  3803. pattern: ^[-._a-zA-Z0-9]+$
  3804. type: string
  3805. name:
  3806. description: The name of the Secret resource being referred to.
  3807. maxLength: 253
  3808. minLength: 1
  3809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3810. type: string
  3811. namespace:
  3812. description: |-
  3813. The namespace of the Secret resource being referred to.
  3814. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3815. maxLength: 63
  3816. minLength: 1
  3817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3818. type: string
  3819. type: object
  3820. serviceAccountRef:
  3821. description: |-
  3822. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3823. a token for with the `TokenRequest` API.
  3824. properties:
  3825. audiences:
  3826. description: |-
  3827. Audience specifies the `aud` claim for the service account token
  3828. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3829. then this audiences will be appended to the list
  3830. items:
  3831. type: string
  3832. type: array
  3833. name:
  3834. description: The name of the ServiceAccount resource being referred to.
  3835. maxLength: 253
  3836. minLength: 1
  3837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3838. type: string
  3839. namespace:
  3840. description: |-
  3841. Namespace of the resource being referred to.
  3842. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3843. maxLength: 63
  3844. minLength: 1
  3845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3846. type: string
  3847. required:
  3848. - name
  3849. type: object
  3850. serviceID:
  3851. description: The conjur authn jwt webservice id
  3852. type: string
  3853. required:
  3854. - account
  3855. - serviceID
  3856. type: object
  3857. type: object
  3858. caBundle:
  3859. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3860. type: string
  3861. caProvider:
  3862. description: |-
  3863. Used to provide custom certificate authority (CA) certificates
  3864. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3865. that contains a PEM-encoded certificate.
  3866. properties:
  3867. key:
  3868. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3869. maxLength: 253
  3870. minLength: 1
  3871. pattern: ^[-._a-zA-Z0-9]+$
  3872. type: string
  3873. name:
  3874. description: The name of the object located at the provider type.
  3875. maxLength: 253
  3876. minLength: 1
  3877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3878. type: string
  3879. namespace:
  3880. description: |-
  3881. The namespace the Provider type is in.
  3882. Can only be defined when used in a ClusterSecretStore.
  3883. maxLength: 63
  3884. minLength: 1
  3885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3886. type: string
  3887. type:
  3888. description: The type of provider to use such as "Secret", or "ConfigMap".
  3889. enum:
  3890. - Secret
  3891. - ConfigMap
  3892. type: string
  3893. required:
  3894. - name
  3895. - type
  3896. type: object
  3897. url:
  3898. description: URL is the endpoint of the Conjur instance.
  3899. type: string
  3900. required:
  3901. - auth
  3902. - url
  3903. type: object
  3904. delinea:
  3905. description: |-
  3906. Delinea DevOps Secrets Vault
  3907. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3908. properties:
  3909. clientId:
  3910. description: ClientID is the non-secret part of the credential.
  3911. properties:
  3912. secretRef:
  3913. description: SecretRef references a key in a secret that will be used as value.
  3914. properties:
  3915. key:
  3916. description: |-
  3917. A key in the referenced Secret.
  3918. Some instances of this field may be defaulted, in others it may be required.
  3919. maxLength: 253
  3920. minLength: 1
  3921. pattern: ^[-._a-zA-Z0-9]+$
  3922. type: string
  3923. name:
  3924. description: The name of the Secret resource being referred to.
  3925. maxLength: 253
  3926. minLength: 1
  3927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3928. type: string
  3929. namespace:
  3930. description: |-
  3931. The namespace of the Secret resource being referred to.
  3932. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3933. maxLength: 63
  3934. minLength: 1
  3935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3936. type: string
  3937. type: object
  3938. value:
  3939. description: Value can be specified directly to set a value without using a secret.
  3940. type: string
  3941. type: object
  3942. clientSecret:
  3943. description: ClientSecret is the secret part of the credential.
  3944. properties:
  3945. secretRef:
  3946. description: SecretRef references a key in a secret that will be used as value.
  3947. properties:
  3948. key:
  3949. description: |-
  3950. A key in the referenced Secret.
  3951. Some instances of this field may be defaulted, in others it may be required.
  3952. maxLength: 253
  3953. minLength: 1
  3954. pattern: ^[-._a-zA-Z0-9]+$
  3955. type: string
  3956. name:
  3957. description: The name of the Secret resource being referred to.
  3958. maxLength: 253
  3959. minLength: 1
  3960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3961. type: string
  3962. namespace:
  3963. description: |-
  3964. The namespace of the Secret resource being referred to.
  3965. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3966. maxLength: 63
  3967. minLength: 1
  3968. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3969. type: string
  3970. type: object
  3971. value:
  3972. description: Value can be specified directly to set a value without using a secret.
  3973. type: string
  3974. type: object
  3975. tenant:
  3976. description: Tenant is the chosen hostname / site name.
  3977. type: string
  3978. tld:
  3979. description: |-
  3980. TLD is based on the server location that was chosen during provisioning.
  3981. If unset, defaults to "com".
  3982. type: string
  3983. urlTemplate:
  3984. description: |-
  3985. URLTemplate
  3986. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  3987. type: string
  3988. required:
  3989. - clientId
  3990. - clientSecret
  3991. - tenant
  3992. type: object
  3993. doppler:
  3994. description: Doppler configures this store to sync secrets using the Doppler provider
  3995. properties:
  3996. auth:
  3997. description: Auth configures how the Operator authenticates with the Doppler API
  3998. properties:
  3999. oidcConfig:
  4000. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  4001. properties:
  4002. expirationSeconds:
  4003. default: 600
  4004. description: |-
  4005. ExpirationSeconds sets the ServiceAccount token validity duration.
  4006. Defaults to 10 minutes.
  4007. format: int64
  4008. type: integer
  4009. identity:
  4010. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  4011. type: string
  4012. serviceAccountRef:
  4013. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  4014. properties:
  4015. audiences:
  4016. description: |-
  4017. Audience specifies the `aud` claim for the service account token
  4018. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4019. then this audiences will be appended to the list
  4020. items:
  4021. type: string
  4022. type: array
  4023. name:
  4024. description: The name of the ServiceAccount resource being referred to.
  4025. maxLength: 253
  4026. minLength: 1
  4027. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4028. type: string
  4029. namespace:
  4030. description: |-
  4031. Namespace of the resource being referred to.
  4032. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4033. maxLength: 63
  4034. minLength: 1
  4035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4036. type: string
  4037. required:
  4038. - name
  4039. type: object
  4040. required:
  4041. - identity
  4042. - serviceAccountRef
  4043. type: object
  4044. secretRef:
  4045. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  4046. properties:
  4047. dopplerToken:
  4048. description: |-
  4049. The DopplerToken is used for authentication.
  4050. See https://docs.doppler.com/reference/api#authentication for auth token types.
  4051. The Key attribute defaults to dopplerToken if not specified.
  4052. properties:
  4053. key:
  4054. description: |-
  4055. A key in the referenced Secret.
  4056. Some instances of this field may be defaulted, in others it may be required.
  4057. maxLength: 253
  4058. minLength: 1
  4059. pattern: ^[-._a-zA-Z0-9]+$
  4060. type: string
  4061. name:
  4062. description: The name of the Secret resource being referred to.
  4063. maxLength: 253
  4064. minLength: 1
  4065. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4066. type: string
  4067. namespace:
  4068. description: |-
  4069. The namespace of the Secret resource being referred to.
  4070. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4071. maxLength: 63
  4072. minLength: 1
  4073. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4074. type: string
  4075. type: object
  4076. required:
  4077. - dopplerToken
  4078. type: object
  4079. type: object
  4080. x-kubernetes-validations:
  4081. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  4082. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  4083. config:
  4084. description: Doppler config (required if not using a Service Token)
  4085. type: string
  4086. format:
  4087. description: Format enables the downloading of secrets as a file (string)
  4088. enum:
  4089. - json
  4090. - dotnet-json
  4091. - env
  4092. - yaml
  4093. - docker
  4094. type: string
  4095. nameTransformer:
  4096. description: Environment variable compatible name transforms that change secret names to a different format
  4097. enum:
  4098. - upper-camel
  4099. - camel
  4100. - lower-snake
  4101. - tf-var
  4102. - dotnet-env
  4103. - lower-kebab
  4104. type: string
  4105. project:
  4106. description: Doppler project (required if not using a Service Token)
  4107. type: string
  4108. required:
  4109. - auth
  4110. type: object
  4111. dvls:
  4112. description: DVLS configures this store to sync secrets using Devolutions Server provider
  4113. properties:
  4114. auth:
  4115. description: Auth defines the authentication method to use.
  4116. properties:
  4117. secretRef:
  4118. description: SecretRef contains the Application ID and Application Secret for authentication.
  4119. properties:
  4120. appId:
  4121. description: AppID is the reference to the secret containing the Application ID.
  4122. properties:
  4123. key:
  4124. description: |-
  4125. A key in the referenced Secret.
  4126. Some instances of this field may be defaulted, in others it may be required.
  4127. maxLength: 253
  4128. minLength: 1
  4129. pattern: ^[-._a-zA-Z0-9]+$
  4130. type: string
  4131. name:
  4132. description: The name of the Secret resource being referred to.
  4133. maxLength: 253
  4134. minLength: 1
  4135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4136. type: string
  4137. namespace:
  4138. description: |-
  4139. The namespace of the Secret resource being referred to.
  4140. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4141. maxLength: 63
  4142. minLength: 1
  4143. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4144. type: string
  4145. type: object
  4146. appSecret:
  4147. description: AppSecret is the reference to the secret containing the Application Secret.
  4148. properties:
  4149. key:
  4150. description: |-
  4151. A key in the referenced Secret.
  4152. Some instances of this field may be defaulted, in others it may be required.
  4153. maxLength: 253
  4154. minLength: 1
  4155. pattern: ^[-._a-zA-Z0-9]+$
  4156. type: string
  4157. name:
  4158. description: The name of the Secret resource being referred to.
  4159. maxLength: 253
  4160. minLength: 1
  4161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4162. type: string
  4163. namespace:
  4164. description: |-
  4165. The namespace of the Secret resource being referred to.
  4166. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4167. maxLength: 63
  4168. minLength: 1
  4169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4170. type: string
  4171. type: object
  4172. required:
  4173. - appId
  4174. - appSecret
  4175. type: object
  4176. required:
  4177. - secretRef
  4178. type: object
  4179. insecure:
  4180. description: |-
  4181. Insecure allows connecting to DVLS over plain HTTP.
  4182. This is NOT RECOMMENDED for production use.
  4183. Set to true only if you understand the security implications.
  4184. type: boolean
  4185. serverUrl:
  4186. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4187. type: string
  4188. vault:
  4189. description: |-
  4190. Vault is the name or UUID of the vault to fetch secrets from.
  4191. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  4192. type: string
  4193. required:
  4194. - auth
  4195. - serverUrl
  4196. type: object
  4197. fake:
  4198. description: Fake configures a store with static key/value pairs
  4199. properties:
  4200. data:
  4201. items:
  4202. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4203. properties:
  4204. key:
  4205. type: string
  4206. value:
  4207. type: string
  4208. version:
  4209. type: string
  4210. required:
  4211. - key
  4212. - value
  4213. type: object
  4214. type: array
  4215. validationResult:
  4216. description: ValidationResult is defined type for the number of validation results.
  4217. type: integer
  4218. required:
  4219. - data
  4220. type: object
  4221. fortanix:
  4222. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4223. properties:
  4224. apiKey:
  4225. description: APIKey is the API token to access SDKMS Applications.
  4226. properties:
  4227. secretRef:
  4228. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4229. properties:
  4230. key:
  4231. description: |-
  4232. A key in the referenced Secret.
  4233. Some instances of this field may be defaulted, in others it may be required.
  4234. maxLength: 253
  4235. minLength: 1
  4236. pattern: ^[-._a-zA-Z0-9]+$
  4237. type: string
  4238. name:
  4239. description: The name of the Secret resource being referred to.
  4240. maxLength: 253
  4241. minLength: 1
  4242. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4243. type: string
  4244. namespace:
  4245. description: |-
  4246. The namespace of the Secret resource being referred to.
  4247. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4248. maxLength: 63
  4249. minLength: 1
  4250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4251. type: string
  4252. type: object
  4253. type: object
  4254. apiUrl:
  4255. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4256. type: string
  4257. type: object
  4258. gcpsm:
  4259. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4260. properties:
  4261. auth:
  4262. description: Auth defines the information necessary to authenticate against GCP
  4263. properties:
  4264. secretRef:
  4265. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4266. properties:
  4267. secretAccessKeySecretRef:
  4268. description: The SecretAccessKey is used for authentication
  4269. properties:
  4270. key:
  4271. description: |-
  4272. A key in the referenced Secret.
  4273. Some instances of this field may be defaulted, in others it may be required.
  4274. maxLength: 253
  4275. minLength: 1
  4276. pattern: ^[-._a-zA-Z0-9]+$
  4277. type: string
  4278. name:
  4279. description: The name of the Secret resource being referred to.
  4280. maxLength: 253
  4281. minLength: 1
  4282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4283. type: string
  4284. namespace:
  4285. description: |-
  4286. The namespace of the Secret resource being referred to.
  4287. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4288. maxLength: 63
  4289. minLength: 1
  4290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4291. type: string
  4292. type: object
  4293. type: object
  4294. workloadIdentity:
  4295. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4296. properties:
  4297. clusterLocation:
  4298. description: |-
  4299. ClusterLocation is the location of the cluster
  4300. If not specified, it fetches information from the metadata server
  4301. type: string
  4302. clusterName:
  4303. description: |-
  4304. ClusterName is the name of the cluster
  4305. If not specified, it fetches information from the metadata server
  4306. type: string
  4307. clusterProjectID:
  4308. description: |-
  4309. ClusterProjectID is the project ID of the cluster
  4310. If not specified, it fetches information from the metadata server
  4311. type: string
  4312. serviceAccountRef:
  4313. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4314. properties:
  4315. audiences:
  4316. description: |-
  4317. Audience specifies the `aud` claim for the service account token
  4318. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4319. then this audiences will be appended to the list
  4320. items:
  4321. type: string
  4322. type: array
  4323. name:
  4324. description: The name of the ServiceAccount resource being referred to.
  4325. maxLength: 253
  4326. minLength: 1
  4327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4328. type: string
  4329. namespace:
  4330. description: |-
  4331. Namespace of the resource being referred to.
  4332. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4333. maxLength: 63
  4334. minLength: 1
  4335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4336. type: string
  4337. required:
  4338. - name
  4339. type: object
  4340. required:
  4341. - serviceAccountRef
  4342. type: object
  4343. workloadIdentityFederation:
  4344. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4345. properties:
  4346. audience:
  4347. description: |-
  4348. 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.
  4349. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4350. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4351. type: string
  4352. awsSecurityCredentials:
  4353. description: |-
  4354. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4355. when using the AWS metadata server is not an option.
  4356. properties:
  4357. awsCredentialsSecretRef:
  4358. description: |-
  4359. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4360. Secret should be created with below names for keys
  4361. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4362. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4363. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4364. properties:
  4365. name:
  4366. description: name of the secret.
  4367. maxLength: 253
  4368. minLength: 1
  4369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4370. type: string
  4371. namespace:
  4372. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4373. maxLength: 63
  4374. minLength: 1
  4375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4376. type: string
  4377. required:
  4378. - name
  4379. type: object
  4380. region:
  4381. description: region is for configuring the AWS region to be used.
  4382. example: ap-south-1
  4383. maxLength: 50
  4384. minLength: 1
  4385. pattern: ^[a-z0-9-]+$
  4386. type: string
  4387. required:
  4388. - awsCredentialsSecretRef
  4389. - region
  4390. type: object
  4391. credConfig:
  4392. description: |-
  4393. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4394. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4395. serviceAccountRef must be used by providing operators service account details.
  4396. properties:
  4397. key:
  4398. description: key name holding the external account credential config.
  4399. maxLength: 253
  4400. minLength: 1
  4401. pattern: ^[-._a-zA-Z0-9]+$
  4402. type: string
  4403. name:
  4404. description: name of the configmap.
  4405. maxLength: 253
  4406. minLength: 1
  4407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4408. type: string
  4409. namespace:
  4410. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4411. maxLength: 63
  4412. minLength: 1
  4413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4414. type: string
  4415. required:
  4416. - key
  4417. - name
  4418. type: object
  4419. externalTokenEndpoint:
  4420. description: |-
  4421. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4422. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4423. URL is having the expected value.
  4424. type: string
  4425. gcpServiceAccountEmail:
  4426. description: |-
  4427. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  4428. after Workload Identity Federation. Use this to grant access through the service account's
  4429. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  4430. service_account_impersonation_url in the external account JSON from credConfig;
  4431. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  4432. on that ServiceAccount.
  4433. example: my-gsa@my-project.iam.gserviceaccount.com
  4434. minLength: 1
  4435. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  4436. type: string
  4437. serviceAccountRef:
  4438. description: |-
  4439. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4440. when Kubernetes is configured as provider in workload identity pool.
  4441. properties:
  4442. audiences:
  4443. description: |-
  4444. Audience specifies the `aud` claim for the service account token
  4445. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4446. then this audiences will be appended to the list
  4447. items:
  4448. type: string
  4449. type: array
  4450. name:
  4451. description: The name of the ServiceAccount resource being referred to.
  4452. maxLength: 253
  4453. minLength: 1
  4454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4455. type: string
  4456. namespace:
  4457. description: |-
  4458. Namespace of the resource being referred to.
  4459. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4460. maxLength: 63
  4461. minLength: 1
  4462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4463. type: string
  4464. required:
  4465. - name
  4466. type: object
  4467. type: object
  4468. type: object
  4469. location:
  4470. description: Location optionally defines a location for a secret
  4471. type: string
  4472. projectID:
  4473. description: ProjectID project where secret is located
  4474. type: string
  4475. secretVersionSelectionPolicy:
  4476. default: LatestOrFail
  4477. description: |-
  4478. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4479. when "latest" is disabled or destroyed.
  4480. Possible values are:
  4481. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4482. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4483. type: string
  4484. type: object
  4485. github:
  4486. description: |-
  4487. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4488. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4489. properties:
  4490. appID:
  4491. description: appID specifies the Github APP that will be used to authenticate the client
  4492. format: int64
  4493. type: integer
  4494. auth:
  4495. description: auth configures how secret-manager authenticates with a Github instance.
  4496. properties:
  4497. privateKey:
  4498. description: |-
  4499. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4500. In some instances, `key` is a required field.
  4501. properties:
  4502. key:
  4503. description: |-
  4504. A key in the referenced Secret.
  4505. Some instances of this field may be defaulted, in others it may be required.
  4506. maxLength: 253
  4507. minLength: 1
  4508. pattern: ^[-._a-zA-Z0-9]+$
  4509. type: string
  4510. name:
  4511. description: The name of the Secret resource being referred to.
  4512. maxLength: 253
  4513. minLength: 1
  4514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4515. type: string
  4516. namespace:
  4517. description: |-
  4518. The namespace of the Secret resource being referred to.
  4519. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4520. maxLength: 63
  4521. minLength: 1
  4522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4523. type: string
  4524. type: object
  4525. required:
  4526. - privateKey
  4527. type: object
  4528. environment:
  4529. description: environment will be used to fetch secrets from a particular environment within a github repository
  4530. type: string
  4531. installationID:
  4532. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4533. format: int64
  4534. type: integer
  4535. orgSecretVisibility:
  4536. description: |-
  4537. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  4538. Valid values are "all" or "private".
  4539. When unset, new secrets are created with visibility "all" and existing secrets preserve
  4540. whatever visibility they already have in GitHub.
  4541. enum:
  4542. - all
  4543. - private
  4544. type: string
  4545. organization:
  4546. description: organization will be used to fetch secrets from the Github organization
  4547. type: string
  4548. repository:
  4549. description: repository will be used to fetch secrets from the Github repository within an organization
  4550. type: string
  4551. uploadURL:
  4552. description: Upload URL for enterprise instances. Default to URL.
  4553. type: string
  4554. url:
  4555. default: https://github.com/
  4556. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4557. type: string
  4558. required:
  4559. - appID
  4560. - auth
  4561. - installationID
  4562. - organization
  4563. type: object
  4564. gitlab:
  4565. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4566. properties:
  4567. auth:
  4568. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4569. properties:
  4570. SecretRef:
  4571. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4572. properties:
  4573. accessToken:
  4574. description: AccessToken is used for authentication.
  4575. properties:
  4576. key:
  4577. description: |-
  4578. A key in the referenced Secret.
  4579. Some instances of this field may be defaulted, in others it may be required.
  4580. maxLength: 253
  4581. minLength: 1
  4582. pattern: ^[-._a-zA-Z0-9]+$
  4583. type: string
  4584. name:
  4585. description: The name of the Secret resource being referred to.
  4586. maxLength: 253
  4587. minLength: 1
  4588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4589. type: string
  4590. namespace:
  4591. description: |-
  4592. The namespace of the Secret resource being referred to.
  4593. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4594. maxLength: 63
  4595. minLength: 1
  4596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4597. type: string
  4598. type: object
  4599. type: object
  4600. required:
  4601. - SecretRef
  4602. type: object
  4603. caBundle:
  4604. description: |-
  4605. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4606. can be performed.
  4607. format: byte
  4608. type: string
  4609. caProvider:
  4610. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4611. properties:
  4612. key:
  4613. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4614. maxLength: 253
  4615. minLength: 1
  4616. pattern: ^[-._a-zA-Z0-9]+$
  4617. type: string
  4618. name:
  4619. description: The name of the object located at the provider type.
  4620. maxLength: 253
  4621. minLength: 1
  4622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4623. type: string
  4624. namespace:
  4625. description: |-
  4626. The namespace the Provider type is in.
  4627. Can only be defined when used in a ClusterSecretStore.
  4628. maxLength: 63
  4629. minLength: 1
  4630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4631. type: string
  4632. type:
  4633. description: The type of provider to use such as "Secret", or "ConfigMap".
  4634. enum:
  4635. - Secret
  4636. - ConfigMap
  4637. type: string
  4638. required:
  4639. - name
  4640. - type
  4641. type: object
  4642. environment:
  4643. 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)
  4644. type: string
  4645. groupIDs:
  4646. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4647. items:
  4648. type: string
  4649. type: array
  4650. inheritFromGroups:
  4651. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4652. type: boolean
  4653. projectID:
  4654. description: ProjectID specifies a project where secrets are located.
  4655. type: string
  4656. url:
  4657. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4658. type: string
  4659. required:
  4660. - auth
  4661. type: object
  4662. ibm:
  4663. description: IBM configures this store to sync secrets using IBM Cloud provider
  4664. properties:
  4665. auth:
  4666. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4667. maxProperties: 1
  4668. minProperties: 1
  4669. properties:
  4670. containerAuth:
  4671. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4672. properties:
  4673. iamEndpoint:
  4674. type: string
  4675. profile:
  4676. description: the IBM Trusted Profile
  4677. type: string
  4678. tokenLocation:
  4679. description: Location the token is mounted on the pod
  4680. type: string
  4681. required:
  4682. - profile
  4683. type: object
  4684. secretRef:
  4685. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4686. properties:
  4687. iamEndpoint:
  4688. description: The IAM endpoint used to obain a token
  4689. type: string
  4690. secretApiKeySecretRef:
  4691. description: The SecretAccessKey is used for authentication
  4692. properties:
  4693. key:
  4694. description: |-
  4695. A key in the referenced Secret.
  4696. Some instances of this field may be defaulted, in others it may be required.
  4697. maxLength: 253
  4698. minLength: 1
  4699. pattern: ^[-._a-zA-Z0-9]+$
  4700. type: string
  4701. name:
  4702. description: The name of the Secret resource being referred to.
  4703. maxLength: 253
  4704. minLength: 1
  4705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4706. type: string
  4707. namespace:
  4708. description: |-
  4709. The namespace of the Secret resource being referred to.
  4710. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4711. maxLength: 63
  4712. minLength: 1
  4713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4714. type: string
  4715. type: object
  4716. type: object
  4717. type: object
  4718. serviceUrl:
  4719. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4720. type: string
  4721. required:
  4722. - auth
  4723. type: object
  4724. infisical:
  4725. description: Infisical configures this store to sync secrets using the Infisical provider
  4726. properties:
  4727. auth:
  4728. description: Auth configures how the Operator authenticates with the Infisical API
  4729. properties:
  4730. awsAuthCredentials:
  4731. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4732. properties:
  4733. identityId:
  4734. description: |-
  4735. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4736. In some instances, `key` is a required field.
  4737. properties:
  4738. key:
  4739. description: |-
  4740. A key in the referenced Secret.
  4741. Some instances of this field may be defaulted, in others it may be required.
  4742. maxLength: 253
  4743. minLength: 1
  4744. pattern: ^[-._a-zA-Z0-9]+$
  4745. type: string
  4746. name:
  4747. description: The name of the Secret resource being referred to.
  4748. maxLength: 253
  4749. minLength: 1
  4750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4751. type: string
  4752. namespace:
  4753. description: |-
  4754. The namespace of the Secret resource being referred to.
  4755. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4756. maxLength: 63
  4757. minLength: 1
  4758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4759. type: string
  4760. type: object
  4761. required:
  4762. - identityId
  4763. type: object
  4764. azureAuthCredentials:
  4765. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4766. properties:
  4767. identityId:
  4768. description: |-
  4769. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4770. In some instances, `key` is a required field.
  4771. properties:
  4772. key:
  4773. description: |-
  4774. A key in the referenced Secret.
  4775. Some instances of this field may be defaulted, in others it may be required.
  4776. maxLength: 253
  4777. minLength: 1
  4778. pattern: ^[-._a-zA-Z0-9]+$
  4779. type: string
  4780. name:
  4781. description: The name of the Secret resource being referred to.
  4782. maxLength: 253
  4783. minLength: 1
  4784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4785. type: string
  4786. namespace:
  4787. description: |-
  4788. The namespace of the Secret resource being referred to.
  4789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4790. maxLength: 63
  4791. minLength: 1
  4792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4793. type: string
  4794. type: object
  4795. resource:
  4796. description: |-
  4797. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4798. In some instances, `key` is a required field.
  4799. properties:
  4800. key:
  4801. description: |-
  4802. A key in the referenced Secret.
  4803. Some instances of this field may be defaulted, in others it may be required.
  4804. maxLength: 253
  4805. minLength: 1
  4806. pattern: ^[-._a-zA-Z0-9]+$
  4807. type: string
  4808. name:
  4809. description: The name of the Secret resource being referred to.
  4810. maxLength: 253
  4811. minLength: 1
  4812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4813. type: string
  4814. namespace:
  4815. description: |-
  4816. The namespace of the Secret resource being referred to.
  4817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4818. maxLength: 63
  4819. minLength: 1
  4820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4821. type: string
  4822. type: object
  4823. required:
  4824. - identityId
  4825. type: object
  4826. gcpIamAuthCredentials:
  4827. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4828. properties:
  4829. identityId:
  4830. description: |-
  4831. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4832. In some instances, `key` is a required field.
  4833. properties:
  4834. key:
  4835. description: |-
  4836. A key in the referenced Secret.
  4837. Some instances of this field may be defaulted, in others it may be required.
  4838. maxLength: 253
  4839. minLength: 1
  4840. pattern: ^[-._a-zA-Z0-9]+$
  4841. type: string
  4842. name:
  4843. description: The name of the Secret resource being referred to.
  4844. maxLength: 253
  4845. minLength: 1
  4846. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4847. type: string
  4848. namespace:
  4849. description: |-
  4850. The namespace of the Secret resource being referred to.
  4851. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4852. maxLength: 63
  4853. minLength: 1
  4854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4855. type: string
  4856. type: object
  4857. serviceAccountKeyFilePath:
  4858. description: |-
  4859. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4860. In some instances, `key` is a required field.
  4861. properties:
  4862. key:
  4863. description: |-
  4864. A key in the referenced Secret.
  4865. Some instances of this field may be defaulted, in others it may be required.
  4866. maxLength: 253
  4867. minLength: 1
  4868. pattern: ^[-._a-zA-Z0-9]+$
  4869. type: string
  4870. name:
  4871. description: The name of the Secret resource being referred to.
  4872. maxLength: 253
  4873. minLength: 1
  4874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4875. type: string
  4876. namespace:
  4877. description: |-
  4878. The namespace of the Secret resource being referred to.
  4879. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4880. maxLength: 63
  4881. minLength: 1
  4882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4883. type: string
  4884. type: object
  4885. required:
  4886. - identityId
  4887. - serviceAccountKeyFilePath
  4888. type: object
  4889. gcpIdTokenAuthCredentials:
  4890. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4891. properties:
  4892. identityId:
  4893. description: |-
  4894. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4895. In some instances, `key` is a required field.
  4896. properties:
  4897. key:
  4898. description: |-
  4899. A key in the referenced Secret.
  4900. Some instances of this field may be defaulted, in others it may be required.
  4901. maxLength: 253
  4902. minLength: 1
  4903. pattern: ^[-._a-zA-Z0-9]+$
  4904. type: string
  4905. name:
  4906. description: The name of the Secret resource being referred to.
  4907. maxLength: 253
  4908. minLength: 1
  4909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4910. type: string
  4911. namespace:
  4912. description: |-
  4913. The namespace of the Secret resource being referred to.
  4914. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4915. maxLength: 63
  4916. minLength: 1
  4917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4918. type: string
  4919. type: object
  4920. required:
  4921. - identityId
  4922. type: object
  4923. jwtAuthCredentials:
  4924. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4925. properties:
  4926. identityId:
  4927. description: |-
  4928. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4929. In some instances, `key` is a required field.
  4930. properties:
  4931. key:
  4932. description: |-
  4933. A key in the referenced Secret.
  4934. Some instances of this field may be defaulted, in others it may be required.
  4935. maxLength: 253
  4936. minLength: 1
  4937. pattern: ^[-._a-zA-Z0-9]+$
  4938. type: string
  4939. name:
  4940. description: The name of the Secret resource being referred to.
  4941. maxLength: 253
  4942. minLength: 1
  4943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4944. type: string
  4945. namespace:
  4946. description: |-
  4947. The namespace of the Secret resource being referred to.
  4948. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4949. maxLength: 63
  4950. minLength: 1
  4951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4952. type: string
  4953. type: object
  4954. jwt:
  4955. description: |-
  4956. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4957. In some instances, `key` is a required field.
  4958. properties:
  4959. key:
  4960. description: |-
  4961. A key in the referenced Secret.
  4962. Some instances of this field may be defaulted, in others it may be required.
  4963. maxLength: 253
  4964. minLength: 1
  4965. pattern: ^[-._a-zA-Z0-9]+$
  4966. type: string
  4967. name:
  4968. description: The name of the Secret resource being referred to.
  4969. maxLength: 253
  4970. minLength: 1
  4971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4972. type: string
  4973. namespace:
  4974. description: |-
  4975. The namespace of the Secret resource being referred to.
  4976. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4977. maxLength: 63
  4978. minLength: 1
  4979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4980. type: string
  4981. type: object
  4982. required:
  4983. - identityId
  4984. - jwt
  4985. type: object
  4986. kubernetesAuthCredentials:
  4987. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  4988. properties:
  4989. identityId:
  4990. description: |-
  4991. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4992. In some instances, `key` is a required field.
  4993. properties:
  4994. key:
  4995. description: |-
  4996. A key in the referenced Secret.
  4997. Some instances of this field may be defaulted, in others it may be required.
  4998. maxLength: 253
  4999. minLength: 1
  5000. pattern: ^[-._a-zA-Z0-9]+$
  5001. type: string
  5002. name:
  5003. description: The name of the Secret resource being referred to.
  5004. maxLength: 253
  5005. minLength: 1
  5006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5007. type: string
  5008. namespace:
  5009. description: |-
  5010. The namespace of the Secret resource being referred to.
  5011. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5012. maxLength: 63
  5013. minLength: 1
  5014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5015. type: string
  5016. type: object
  5017. serviceAccountTokenPath:
  5018. description: |-
  5019. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5020. In some instances, `key` is a required field.
  5021. properties:
  5022. key:
  5023. description: |-
  5024. A key in the referenced Secret.
  5025. Some instances of this field may be defaulted, in others it may be required.
  5026. maxLength: 253
  5027. minLength: 1
  5028. pattern: ^[-._a-zA-Z0-9]+$
  5029. type: string
  5030. name:
  5031. description: The name of the Secret resource being referred to.
  5032. maxLength: 253
  5033. minLength: 1
  5034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5035. type: string
  5036. namespace:
  5037. description: |-
  5038. The namespace of the Secret resource being referred to.
  5039. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5040. maxLength: 63
  5041. minLength: 1
  5042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5043. type: string
  5044. type: object
  5045. required:
  5046. - identityId
  5047. type: object
  5048. ldapAuthCredentials:
  5049. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  5050. properties:
  5051. identityId:
  5052. description: |-
  5053. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5054. In some instances, `key` is a required field.
  5055. properties:
  5056. key:
  5057. description: |-
  5058. A key in the referenced Secret.
  5059. Some instances of this field may be defaulted, in others it may be required.
  5060. maxLength: 253
  5061. minLength: 1
  5062. pattern: ^[-._a-zA-Z0-9]+$
  5063. type: string
  5064. name:
  5065. description: The name of the Secret resource being referred to.
  5066. maxLength: 253
  5067. minLength: 1
  5068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5069. type: string
  5070. namespace:
  5071. description: |-
  5072. The namespace of the Secret resource being referred to.
  5073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5074. maxLength: 63
  5075. minLength: 1
  5076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5077. type: string
  5078. type: object
  5079. ldapPassword:
  5080. description: |-
  5081. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5082. In some instances, `key` is a required field.
  5083. properties:
  5084. key:
  5085. description: |-
  5086. A key in the referenced Secret.
  5087. Some instances of this field may be defaulted, in others it may be required.
  5088. maxLength: 253
  5089. minLength: 1
  5090. pattern: ^[-._a-zA-Z0-9]+$
  5091. type: string
  5092. name:
  5093. description: The name of the Secret resource being referred to.
  5094. maxLength: 253
  5095. minLength: 1
  5096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5097. type: string
  5098. namespace:
  5099. description: |-
  5100. The namespace of the Secret resource being referred to.
  5101. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5102. maxLength: 63
  5103. minLength: 1
  5104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5105. type: string
  5106. type: object
  5107. ldapUsername:
  5108. description: |-
  5109. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5110. In some instances, `key` is a required field.
  5111. properties:
  5112. key:
  5113. description: |-
  5114. A key in the referenced Secret.
  5115. Some instances of this field may be defaulted, in others it may be required.
  5116. maxLength: 253
  5117. minLength: 1
  5118. pattern: ^[-._a-zA-Z0-9]+$
  5119. type: string
  5120. name:
  5121. description: The name of the Secret resource being referred to.
  5122. maxLength: 253
  5123. minLength: 1
  5124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5125. type: string
  5126. namespace:
  5127. description: |-
  5128. The namespace of the Secret resource being referred to.
  5129. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5130. maxLength: 63
  5131. minLength: 1
  5132. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5133. type: string
  5134. type: object
  5135. required:
  5136. - identityId
  5137. - ldapPassword
  5138. - ldapUsername
  5139. type: object
  5140. ociAuthCredentials:
  5141. description: OciAuthCredentials represents the credentials for OCI authentication.
  5142. properties:
  5143. fingerprint:
  5144. description: |-
  5145. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5146. In some instances, `key` is a required field.
  5147. properties:
  5148. key:
  5149. description: |-
  5150. A key in the referenced Secret.
  5151. Some instances of this field may be defaulted, in others it may be required.
  5152. maxLength: 253
  5153. minLength: 1
  5154. pattern: ^[-._a-zA-Z0-9]+$
  5155. type: string
  5156. name:
  5157. description: The name of the Secret resource being referred to.
  5158. maxLength: 253
  5159. minLength: 1
  5160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5161. type: string
  5162. namespace:
  5163. description: |-
  5164. The namespace of the Secret resource being referred to.
  5165. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5166. maxLength: 63
  5167. minLength: 1
  5168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5169. type: string
  5170. type: object
  5171. identityId:
  5172. description: |-
  5173. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5174. In some instances, `key` is a required field.
  5175. properties:
  5176. key:
  5177. description: |-
  5178. A key in the referenced Secret.
  5179. Some instances of this field may be defaulted, in others it may be required.
  5180. maxLength: 253
  5181. minLength: 1
  5182. pattern: ^[-._a-zA-Z0-9]+$
  5183. type: string
  5184. name:
  5185. description: The name of the Secret resource being referred to.
  5186. maxLength: 253
  5187. minLength: 1
  5188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5189. type: string
  5190. namespace:
  5191. description: |-
  5192. The namespace of the Secret resource being referred to.
  5193. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5194. maxLength: 63
  5195. minLength: 1
  5196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5197. type: string
  5198. type: object
  5199. privateKey:
  5200. description: |-
  5201. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5202. In some instances, `key` is a required field.
  5203. properties:
  5204. key:
  5205. description: |-
  5206. A key in the referenced Secret.
  5207. Some instances of this field may be defaulted, in others it may be required.
  5208. maxLength: 253
  5209. minLength: 1
  5210. pattern: ^[-._a-zA-Z0-9]+$
  5211. type: string
  5212. name:
  5213. description: The name of the Secret resource being referred to.
  5214. maxLength: 253
  5215. minLength: 1
  5216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5217. type: string
  5218. namespace:
  5219. description: |-
  5220. The namespace of the Secret resource being referred to.
  5221. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5222. maxLength: 63
  5223. minLength: 1
  5224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5225. type: string
  5226. type: object
  5227. privateKeyPassphrase:
  5228. description: |-
  5229. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5230. In some instances, `key` is a required field.
  5231. properties:
  5232. key:
  5233. description: |-
  5234. A key in the referenced Secret.
  5235. Some instances of this field may be defaulted, in others it may be required.
  5236. maxLength: 253
  5237. minLength: 1
  5238. pattern: ^[-._a-zA-Z0-9]+$
  5239. type: string
  5240. name:
  5241. description: The name of the Secret resource being referred to.
  5242. maxLength: 253
  5243. minLength: 1
  5244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5245. type: string
  5246. namespace:
  5247. description: |-
  5248. The namespace of the Secret resource being referred to.
  5249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5250. maxLength: 63
  5251. minLength: 1
  5252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5253. type: string
  5254. type: object
  5255. region:
  5256. description: |-
  5257. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5258. In some instances, `key` is a required field.
  5259. properties:
  5260. key:
  5261. description: |-
  5262. A key in the referenced Secret.
  5263. Some instances of this field may be defaulted, in others it may be required.
  5264. maxLength: 253
  5265. minLength: 1
  5266. pattern: ^[-._a-zA-Z0-9]+$
  5267. type: string
  5268. name:
  5269. description: The name of the Secret resource being referred to.
  5270. maxLength: 253
  5271. minLength: 1
  5272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5273. type: string
  5274. namespace:
  5275. description: |-
  5276. The namespace of the Secret resource being referred to.
  5277. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5278. maxLength: 63
  5279. minLength: 1
  5280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5281. type: string
  5282. type: object
  5283. tenancyId:
  5284. description: |-
  5285. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5286. In some instances, `key` is a required field.
  5287. properties:
  5288. key:
  5289. description: |-
  5290. A key in the referenced Secret.
  5291. Some instances of this field may be defaulted, in others it may be required.
  5292. maxLength: 253
  5293. minLength: 1
  5294. pattern: ^[-._a-zA-Z0-9]+$
  5295. type: string
  5296. name:
  5297. description: The name of the Secret resource being referred to.
  5298. maxLength: 253
  5299. minLength: 1
  5300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5301. type: string
  5302. namespace:
  5303. description: |-
  5304. The namespace of the Secret resource being referred to.
  5305. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5306. maxLength: 63
  5307. minLength: 1
  5308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5309. type: string
  5310. type: object
  5311. userId:
  5312. description: |-
  5313. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5314. In some instances, `key` is a required field.
  5315. properties:
  5316. key:
  5317. description: |-
  5318. A key in the referenced Secret.
  5319. Some instances of this field may be defaulted, in others it may be required.
  5320. maxLength: 253
  5321. minLength: 1
  5322. pattern: ^[-._a-zA-Z0-9]+$
  5323. type: string
  5324. name:
  5325. description: The name of the Secret resource being referred to.
  5326. maxLength: 253
  5327. minLength: 1
  5328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5329. type: string
  5330. namespace:
  5331. description: |-
  5332. The namespace of the Secret resource being referred to.
  5333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5334. maxLength: 63
  5335. minLength: 1
  5336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5337. type: string
  5338. type: object
  5339. required:
  5340. - fingerprint
  5341. - identityId
  5342. - privateKey
  5343. - region
  5344. - tenancyId
  5345. - userId
  5346. type: object
  5347. tokenAuthCredentials:
  5348. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5349. properties:
  5350. accessToken:
  5351. description: |-
  5352. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5353. In some instances, `key` is a required field.
  5354. properties:
  5355. key:
  5356. description: |-
  5357. A key in the referenced Secret.
  5358. Some instances of this field may be defaulted, in others it may be required.
  5359. maxLength: 253
  5360. minLength: 1
  5361. pattern: ^[-._a-zA-Z0-9]+$
  5362. type: string
  5363. name:
  5364. description: The name of the Secret resource being referred to.
  5365. maxLength: 253
  5366. minLength: 1
  5367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5368. type: string
  5369. namespace:
  5370. description: |-
  5371. The namespace of the Secret resource being referred to.
  5372. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5373. maxLength: 63
  5374. minLength: 1
  5375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5376. type: string
  5377. type: object
  5378. required:
  5379. - accessToken
  5380. type: object
  5381. universalAuthCredentials:
  5382. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5383. properties:
  5384. clientId:
  5385. description: |-
  5386. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5387. In some instances, `key` is a required field.
  5388. properties:
  5389. key:
  5390. description: |-
  5391. A key in the referenced Secret.
  5392. Some instances of this field may be defaulted, in others it may be required.
  5393. maxLength: 253
  5394. minLength: 1
  5395. pattern: ^[-._a-zA-Z0-9]+$
  5396. type: string
  5397. name:
  5398. description: The name of the Secret resource being referred to.
  5399. maxLength: 253
  5400. minLength: 1
  5401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5402. type: string
  5403. namespace:
  5404. description: |-
  5405. The namespace of the Secret resource being referred to.
  5406. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5407. maxLength: 63
  5408. minLength: 1
  5409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5410. type: string
  5411. type: object
  5412. clientSecret:
  5413. description: |-
  5414. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5415. In some instances, `key` is a required field.
  5416. properties:
  5417. key:
  5418. description: |-
  5419. A key in the referenced Secret.
  5420. Some instances of this field may be defaulted, in others it may be required.
  5421. maxLength: 253
  5422. minLength: 1
  5423. pattern: ^[-._a-zA-Z0-9]+$
  5424. type: string
  5425. name:
  5426. description: The name of the Secret resource being referred to.
  5427. maxLength: 253
  5428. minLength: 1
  5429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5430. type: string
  5431. namespace:
  5432. description: |-
  5433. The namespace of the Secret resource being referred to.
  5434. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5435. maxLength: 63
  5436. minLength: 1
  5437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5438. type: string
  5439. type: object
  5440. required:
  5441. - clientId
  5442. - clientSecret
  5443. type: object
  5444. type: object
  5445. caBundle:
  5446. description: |-
  5447. CABundle is a PEM-encoded CA certificate bundle used to validate
  5448. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5449. format: byte
  5450. type: string
  5451. caProvider:
  5452. description: |-
  5453. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5454. The certificate is used to validate the Infisical server's TLS certificate.
  5455. Mutually exclusive with CABundle.
  5456. properties:
  5457. key:
  5458. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5459. maxLength: 253
  5460. minLength: 1
  5461. pattern: ^[-._a-zA-Z0-9]+$
  5462. type: string
  5463. name:
  5464. description: The name of the object located at the provider type.
  5465. maxLength: 253
  5466. minLength: 1
  5467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5468. type: string
  5469. namespace:
  5470. description: |-
  5471. The namespace the Provider type is in.
  5472. Can only be defined when used in a ClusterSecretStore.
  5473. maxLength: 63
  5474. minLength: 1
  5475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5476. type: string
  5477. type:
  5478. description: The type of provider to use such as "Secret", or "ConfigMap".
  5479. enum:
  5480. - Secret
  5481. - ConfigMap
  5482. type: string
  5483. required:
  5484. - name
  5485. - type
  5486. type: object
  5487. hostAPI:
  5488. default: https://app.infisical.com/api
  5489. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5490. type: string
  5491. secretsScope:
  5492. description: SecretsScope defines the scope of the secrets within the workspace
  5493. properties:
  5494. environmentSlug:
  5495. description: EnvironmentSlug is the required slug identifier for the environment.
  5496. type: string
  5497. expandSecretReferences:
  5498. default: true
  5499. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5500. type: boolean
  5501. organizationSlug:
  5502. description: |-
  5503. OrganizationSlug is the optional slug that identifies the organization that will be used
  5504. during authentication. Useful for sub-organization setups
  5505. type: string
  5506. projectSlug:
  5507. description: ProjectSlug is the required slug identifier for the project.
  5508. type: string
  5509. recursive:
  5510. default: false
  5511. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5512. type: boolean
  5513. secretsPath:
  5514. default: /
  5515. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5516. type: string
  5517. required:
  5518. - environmentSlug
  5519. - projectSlug
  5520. type: object
  5521. required:
  5522. - auth
  5523. - secretsScope
  5524. type: object
  5525. keepersecurity:
  5526. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5527. properties:
  5528. authRef:
  5529. description: |-
  5530. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5531. In some instances, `key` is a required field.
  5532. properties:
  5533. key:
  5534. description: |-
  5535. A key in the referenced Secret.
  5536. Some instances of this field may be defaulted, in others it may be required.
  5537. maxLength: 253
  5538. minLength: 1
  5539. pattern: ^[-._a-zA-Z0-9]+$
  5540. type: string
  5541. name:
  5542. description: The name of the Secret resource being referred to.
  5543. maxLength: 253
  5544. minLength: 1
  5545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5546. type: string
  5547. namespace:
  5548. description: |-
  5549. The namespace of the Secret resource being referred to.
  5550. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5551. maxLength: 63
  5552. minLength: 1
  5553. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5554. type: string
  5555. type: object
  5556. folderID:
  5557. type: string
  5558. getByTitleFallback:
  5559. type: boolean
  5560. required:
  5561. - authRef
  5562. - folderID
  5563. type: object
  5564. kubernetes:
  5565. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5566. properties:
  5567. auth:
  5568. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5569. maxProperties: 1
  5570. minProperties: 1
  5571. properties:
  5572. cert:
  5573. description: has both clientCert and clientKey as secretKeySelector
  5574. properties:
  5575. clientCert:
  5576. description: |-
  5577. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5578. In some instances, `key` is a required field.
  5579. properties:
  5580. key:
  5581. description: |-
  5582. A key in the referenced Secret.
  5583. Some instances of this field may be defaulted, in others it may be required.
  5584. maxLength: 253
  5585. minLength: 1
  5586. pattern: ^[-._a-zA-Z0-9]+$
  5587. type: string
  5588. name:
  5589. description: The name of the Secret resource being referred to.
  5590. maxLength: 253
  5591. minLength: 1
  5592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5593. type: string
  5594. namespace:
  5595. description: |-
  5596. The namespace of the Secret resource being referred to.
  5597. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5598. maxLength: 63
  5599. minLength: 1
  5600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5601. type: string
  5602. type: object
  5603. clientKey:
  5604. description: |-
  5605. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5606. In some instances, `key` is a required field.
  5607. properties:
  5608. key:
  5609. description: |-
  5610. A key in the referenced Secret.
  5611. Some instances of this field may be defaulted, in others it may be required.
  5612. maxLength: 253
  5613. minLength: 1
  5614. pattern: ^[-._a-zA-Z0-9]+$
  5615. type: string
  5616. name:
  5617. description: The name of the Secret resource being referred to.
  5618. maxLength: 253
  5619. minLength: 1
  5620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5621. type: string
  5622. namespace:
  5623. description: |-
  5624. The namespace of the Secret resource being referred to.
  5625. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5626. maxLength: 63
  5627. minLength: 1
  5628. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5629. type: string
  5630. type: object
  5631. type: object
  5632. serviceAccount:
  5633. description: points to a service account that should be used for authentication
  5634. properties:
  5635. audiences:
  5636. description: |-
  5637. Audience specifies the `aud` claim for the service account token
  5638. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5639. then this audiences will be appended to the list
  5640. items:
  5641. type: string
  5642. type: array
  5643. name:
  5644. description: The name of the ServiceAccount resource being referred to.
  5645. maxLength: 253
  5646. minLength: 1
  5647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5648. type: string
  5649. namespace:
  5650. description: |-
  5651. Namespace of the resource being referred to.
  5652. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5653. maxLength: 63
  5654. minLength: 1
  5655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5656. type: string
  5657. required:
  5658. - name
  5659. type: object
  5660. token:
  5661. description: use static token to authenticate with
  5662. properties:
  5663. bearerToken:
  5664. description: |-
  5665. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5666. In some instances, `key` is a required field.
  5667. properties:
  5668. key:
  5669. description: |-
  5670. A key in the referenced Secret.
  5671. Some instances of this field may be defaulted, in others it may be required.
  5672. maxLength: 253
  5673. minLength: 1
  5674. pattern: ^[-._a-zA-Z0-9]+$
  5675. type: string
  5676. name:
  5677. description: The name of the Secret resource being referred to.
  5678. maxLength: 253
  5679. minLength: 1
  5680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5681. type: string
  5682. namespace:
  5683. description: |-
  5684. The namespace of the Secret resource being referred to.
  5685. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5686. maxLength: 63
  5687. minLength: 1
  5688. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5689. type: string
  5690. type: object
  5691. type: object
  5692. type: object
  5693. authRef:
  5694. description: A reference to a secret that contains the auth information.
  5695. properties:
  5696. key:
  5697. description: |-
  5698. A key in the referenced Secret.
  5699. Some instances of this field may be defaulted, in others it may be required.
  5700. maxLength: 253
  5701. minLength: 1
  5702. pattern: ^[-._a-zA-Z0-9]+$
  5703. type: string
  5704. name:
  5705. description: The name of the Secret resource being referred to.
  5706. maxLength: 253
  5707. minLength: 1
  5708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5709. type: string
  5710. namespace:
  5711. description: |-
  5712. The namespace of the Secret resource being referred to.
  5713. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5714. maxLength: 63
  5715. minLength: 1
  5716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5717. type: string
  5718. type: object
  5719. remoteNamespace:
  5720. default: default
  5721. description: Remote namespace to fetch the secrets from
  5722. maxLength: 63
  5723. minLength: 1
  5724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5725. type: string
  5726. server:
  5727. description: configures the Kubernetes server Address.
  5728. properties:
  5729. caBundle:
  5730. description: CABundle is a base64-encoded CA certificate
  5731. format: byte
  5732. type: string
  5733. caProvider:
  5734. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5735. properties:
  5736. key:
  5737. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5738. maxLength: 253
  5739. minLength: 1
  5740. pattern: ^[-._a-zA-Z0-9]+$
  5741. type: string
  5742. name:
  5743. description: The name of the object located at the provider type.
  5744. maxLength: 253
  5745. minLength: 1
  5746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5747. type: string
  5748. namespace:
  5749. description: |-
  5750. The namespace the Provider type is in.
  5751. Can only be defined when used in a ClusterSecretStore.
  5752. maxLength: 63
  5753. minLength: 1
  5754. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5755. type: string
  5756. type:
  5757. description: The type of provider to use such as "Secret", or "ConfigMap".
  5758. enum:
  5759. - Secret
  5760. - ConfigMap
  5761. type: string
  5762. required:
  5763. - name
  5764. - type
  5765. type: object
  5766. url:
  5767. default: kubernetes.default
  5768. description: configures the Kubernetes server Address.
  5769. type: string
  5770. type: object
  5771. type: object
  5772. nebiusmysterybox:
  5773. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5774. properties:
  5775. apiDomain:
  5776. description: NebiusMysterybox API endpoint
  5777. type: string
  5778. auth:
  5779. description: Auth defines parameters to authenticate in MysteryBox
  5780. properties:
  5781. serviceAccountCredsSecretRef:
  5782. description: |-
  5783. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5784. document with service account credentials used to get an IAM token.
  5785. Expected JSON structure:
  5786. {
  5787. "subject-credentials": {
  5788. "alg": "RS256",
  5789. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5790. "kid": "<public-key-id>",
  5791. "iss": "<issuer-service-account-id>",
  5792. "sub": "<subject-service-account-id>"
  5793. }
  5794. }
  5795. properties:
  5796. key:
  5797. description: |-
  5798. A key in the referenced Secret.
  5799. Some instances of this field may be defaulted, in others it may be required.
  5800. maxLength: 253
  5801. minLength: 1
  5802. pattern: ^[-._a-zA-Z0-9]+$
  5803. type: string
  5804. name:
  5805. description: The name of the Secret resource being referred to.
  5806. maxLength: 253
  5807. minLength: 1
  5808. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5809. type: string
  5810. namespace:
  5811. description: |-
  5812. The namespace of the Secret resource being referred to.
  5813. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5814. maxLength: 63
  5815. minLength: 1
  5816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5817. type: string
  5818. type: object
  5819. tokenSecretRef:
  5820. description: Token authenticates with Nebius Mysterybox by presenting a token.
  5821. properties:
  5822. key:
  5823. description: |-
  5824. A key in the referenced Secret.
  5825. Some instances of this field may be defaulted, in others it may be required.
  5826. maxLength: 253
  5827. minLength: 1
  5828. pattern: ^[-._a-zA-Z0-9]+$
  5829. type: string
  5830. name:
  5831. description: The name of the Secret resource being referred to.
  5832. maxLength: 253
  5833. minLength: 1
  5834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5835. type: string
  5836. namespace:
  5837. description: |-
  5838. The namespace of the Secret resource being referred to.
  5839. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5840. maxLength: 63
  5841. minLength: 1
  5842. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5843. type: string
  5844. type: object
  5845. type: object
  5846. x-kubernetes-validations:
  5847. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5848. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5849. caProvider:
  5850. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5851. properties:
  5852. certSecretRef:
  5853. description: |-
  5854. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5855. In some instances, `key` is a required field.
  5856. properties:
  5857. key:
  5858. description: |-
  5859. A key in the referenced Secret.
  5860. Some instances of this field may be defaulted, in others it may be required.
  5861. maxLength: 253
  5862. minLength: 1
  5863. pattern: ^[-._a-zA-Z0-9]+$
  5864. type: string
  5865. name:
  5866. description: The name of the Secret resource being referred to.
  5867. maxLength: 253
  5868. minLength: 1
  5869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5870. type: string
  5871. namespace:
  5872. description: |-
  5873. The namespace of the Secret resource being referred to.
  5874. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5875. maxLength: 63
  5876. minLength: 1
  5877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5878. type: string
  5879. type: object
  5880. type: object
  5881. required:
  5882. - apiDomain
  5883. - auth
  5884. type: object
  5885. ngrok:
  5886. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5887. properties:
  5888. apiUrl:
  5889. default: https://api.ngrok.com
  5890. description: APIURL is the URL of the ngrok API.
  5891. type: string
  5892. auth:
  5893. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5894. maxProperties: 1
  5895. minProperties: 1
  5896. properties:
  5897. apiKey:
  5898. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5899. properties:
  5900. secretRef:
  5901. description: SecretRef is a reference to a secret containing the ngrok API key.
  5902. properties:
  5903. key:
  5904. description: |-
  5905. A key in the referenced Secret.
  5906. Some instances of this field may be defaulted, in others it may be required.
  5907. maxLength: 253
  5908. minLength: 1
  5909. pattern: ^[-._a-zA-Z0-9]+$
  5910. type: string
  5911. name:
  5912. description: The name of the Secret resource being referred to.
  5913. maxLength: 253
  5914. minLength: 1
  5915. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5916. type: string
  5917. namespace:
  5918. description: |-
  5919. The namespace of the Secret resource being referred to.
  5920. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5921. maxLength: 63
  5922. minLength: 1
  5923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5924. type: string
  5925. type: object
  5926. type: object
  5927. type: object
  5928. vault:
  5929. description: Vault configures the ngrok vault to sync secrets with.
  5930. properties:
  5931. name:
  5932. description: Name is the name of the ngrok vault to sync secrets with.
  5933. type: string
  5934. required:
  5935. - name
  5936. type: object
  5937. required:
  5938. - auth
  5939. - vault
  5940. type: object
  5941. onboardbase:
  5942. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5943. properties:
  5944. apiHost:
  5945. default: https://public.onboardbase.com/api/v1/
  5946. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5947. type: string
  5948. auth:
  5949. description: Auth configures how the Operator authenticates with the Onboardbase API
  5950. properties:
  5951. apiKeyRef:
  5952. description: |-
  5953. OnboardbaseAPIKey is the APIKey generated by an admin account.
  5954. It is used to recognize and authorize access to a project and environment within onboardbase
  5955. properties:
  5956. key:
  5957. description: |-
  5958. A key in the referenced Secret.
  5959. Some instances of this field may be defaulted, in others it may be required.
  5960. maxLength: 253
  5961. minLength: 1
  5962. pattern: ^[-._a-zA-Z0-9]+$
  5963. type: string
  5964. name:
  5965. description: The name of the Secret resource being referred to.
  5966. maxLength: 253
  5967. minLength: 1
  5968. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5969. type: string
  5970. namespace:
  5971. description: |-
  5972. The namespace of the Secret resource being referred to.
  5973. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5974. maxLength: 63
  5975. minLength: 1
  5976. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5977. type: string
  5978. type: object
  5979. passcodeRef:
  5980. description: OnboardbasePasscode is the passcode attached to the API Key
  5981. properties:
  5982. key:
  5983. description: |-
  5984. A key in the referenced Secret.
  5985. Some instances of this field may be defaulted, in others it may be required.
  5986. maxLength: 253
  5987. minLength: 1
  5988. pattern: ^[-._a-zA-Z0-9]+$
  5989. type: string
  5990. name:
  5991. description: The name of the Secret resource being referred to.
  5992. maxLength: 253
  5993. minLength: 1
  5994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5995. type: string
  5996. namespace:
  5997. description: |-
  5998. The namespace of the Secret resource being referred to.
  5999. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6000. maxLength: 63
  6001. minLength: 1
  6002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6003. type: string
  6004. type: object
  6005. required:
  6006. - apiKeyRef
  6007. - passcodeRef
  6008. type: object
  6009. environment:
  6010. default: development
  6011. description: Environment is the name of an environmnent within a project to pull the secrets from
  6012. type: string
  6013. project:
  6014. default: development
  6015. description: Project is an onboardbase project that the secrets should be pulled from
  6016. type: string
  6017. required:
  6018. - apiHost
  6019. - auth
  6020. - environment
  6021. - project
  6022. type: object
  6023. onepassword:
  6024. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  6025. properties:
  6026. auth:
  6027. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  6028. properties:
  6029. secretRef:
  6030. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  6031. properties:
  6032. connectTokenSecretRef:
  6033. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  6034. properties:
  6035. key:
  6036. description: |-
  6037. A key in the referenced Secret.
  6038. Some instances of this field may be defaulted, in others it may be required.
  6039. maxLength: 253
  6040. minLength: 1
  6041. pattern: ^[-._a-zA-Z0-9]+$
  6042. type: string
  6043. name:
  6044. description: The name of the Secret resource being referred to.
  6045. maxLength: 253
  6046. minLength: 1
  6047. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6048. type: string
  6049. namespace:
  6050. description: |-
  6051. The namespace of the Secret resource being referred to.
  6052. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6053. maxLength: 63
  6054. minLength: 1
  6055. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6056. type: string
  6057. type: object
  6058. required:
  6059. - connectTokenSecretRef
  6060. type: object
  6061. required:
  6062. - secretRef
  6063. type: object
  6064. connectHost:
  6065. description: ConnectHost defines the OnePassword Connect Server to connect to
  6066. type: string
  6067. vaults:
  6068. additionalProperties:
  6069. type: integer
  6070. description: Vaults defines which OnePassword vaults to search in which order
  6071. type: object
  6072. required:
  6073. - auth
  6074. - connectHost
  6075. - vaults
  6076. type: object
  6077. onepasswordSDK:
  6078. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  6079. properties:
  6080. auth:
  6081. description: Auth defines the information necessary to authenticate against OnePassword API.
  6082. properties:
  6083. serviceAccountSecretRef:
  6084. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  6085. properties:
  6086. key:
  6087. description: |-
  6088. A key in the referenced Secret.
  6089. Some instances of this field may be defaulted, in others it may be required.
  6090. maxLength: 253
  6091. minLength: 1
  6092. pattern: ^[-._a-zA-Z0-9]+$
  6093. type: string
  6094. name:
  6095. description: The name of the Secret resource being referred to.
  6096. maxLength: 253
  6097. minLength: 1
  6098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6099. type: string
  6100. namespace:
  6101. description: |-
  6102. The namespace of the Secret resource being referred to.
  6103. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6104. maxLength: 63
  6105. minLength: 1
  6106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6107. type: string
  6108. type: object
  6109. required:
  6110. - serviceAccountSecretRef
  6111. type: object
  6112. cache:
  6113. description: |-
  6114. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  6115. When enabled, secrets are cached with the specified TTL.
  6116. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  6117. If omitted, caching is disabled (default).
  6118. cache: {} is a valid option to set.
  6119. properties:
  6120. maxSize:
  6121. default: 100
  6122. description: |-
  6123. MaxSize is the maximum number of secrets to cache.
  6124. When the cache is full, least-recently-used entries are evicted.
  6125. minimum: 1
  6126. type: integer
  6127. ttl:
  6128. default: 5m
  6129. description: |-
  6130. TTL is the time-to-live for cached secrets.
  6131. Format: duration string (e.g., "5m", "1h", "30s")
  6132. type: string
  6133. type: object
  6134. integrationInfo:
  6135. description: |-
  6136. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  6137. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  6138. properties:
  6139. name:
  6140. default: 1Password SDK
  6141. description: Name defaults to "1Password SDK".
  6142. type: string
  6143. version:
  6144. default: v1.0.0
  6145. description: Version defaults to "v1.0.0".
  6146. type: string
  6147. type: object
  6148. vault:
  6149. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  6150. type: string
  6151. required:
  6152. - auth
  6153. - vault
  6154. type: object
  6155. openBao:
  6156. description: OpenBao configures this store to sync secrets using the OpenBao provider.
  6157. properties:
  6158. auth:
  6159. description: Auth configures how secret-manager authenticates with the OpenBao server.
  6160. maxProperties: 1
  6161. properties:
  6162. tokenSecretRef:
  6163. description: TokenSecretRef authenticates with OpenBao by presenting a token.
  6164. properties:
  6165. key:
  6166. description: |-
  6167. A key in the referenced Secret.
  6168. Some instances of this field may be defaulted, in others it may be required.
  6169. maxLength: 253
  6170. minLength: 1
  6171. pattern: ^[-._a-zA-Z0-9]+$
  6172. type: string
  6173. name:
  6174. description: The name of the Secret resource being referred to.
  6175. maxLength: 253
  6176. minLength: 1
  6177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6178. type: string
  6179. namespace:
  6180. description: |-
  6181. The namespace of the Secret resource being referred to.
  6182. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6183. maxLength: 63
  6184. minLength: 1
  6185. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6186. type: string
  6187. type: object
  6188. userPass:
  6189. description: UserPass authenticates with OpenBao by passing a username/password pair
  6190. properties:
  6191. path:
  6192. default: userpass
  6193. description: |-
  6194. Path where the UserPassword authentication backend is mounted
  6195. in OpenBao, e.g: "userpass"
  6196. type: string
  6197. secretRef:
  6198. description: |-
  6199. SecretRef to a key in a Secret resource containing password for the user
  6200. used to authenticate with OpenBao using the [UserPass authentication
  6201. method]
  6202. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  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. username:
  6228. description: |-
  6229. Username is a username used to authenticate using the [UserPass
  6230. authentication method]
  6231. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  6232. type: string
  6233. required:
  6234. - path
  6235. - username
  6236. type: object
  6237. type: object
  6238. caBundle:
  6239. description: |-
  6240. PEM encoded CA bundle used to validate the OpenBao server certificate. If
  6241. this and `caProvider` are not set the system root certificates are used
  6242. to validate the TLS connection.
  6243. format: byte
  6244. type: string
  6245. caProvider:
  6246. description: |-
  6247. The provider for the CA bundle to use to validate OpenBao server
  6248. certificate. If this and `caBundle` are not set the system root
  6249. certificates are used to validate the TLS connection.
  6250. properties:
  6251. key:
  6252. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6253. maxLength: 253
  6254. minLength: 1
  6255. pattern: ^[-._a-zA-Z0-9]+$
  6256. type: string
  6257. name:
  6258. description: The name of the object located at the provider type.
  6259. maxLength: 253
  6260. minLength: 1
  6261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6262. type: string
  6263. namespace:
  6264. description: |-
  6265. The namespace the Provider type is in.
  6266. Can only be defined when used in a ClusterSecretStore.
  6267. maxLength: 63
  6268. minLength: 1
  6269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6270. type: string
  6271. type:
  6272. description: The type of provider to use such as "Secret", or "ConfigMap".
  6273. enum:
  6274. - Secret
  6275. - ConfigMap
  6276. type: string
  6277. required:
  6278. - name
  6279. - type
  6280. type: object
  6281. path:
  6282. description: |-
  6283. Path is the mount path of the OpenBao KV backend endpoint, e.g:
  6284. "secret". The v2 KV secret engine version specific "/data" path suffix
  6285. for fetching secrets from OpenBao is optional and will be appended
  6286. if not present in specified path.
  6287. type: string
  6288. server:
  6289. description: 'Server is the connection address for the OpenBao server, e.g: `https://openbao.example.com:8200`.'
  6290. type: string
  6291. version:
  6292. default: v2
  6293. description: |-
  6294. Version is the OpenBao KV secret engine version. This can be either "v1" or
  6295. "v2". Version defaults to "v2".
  6296. enum:
  6297. - v1
  6298. - v2
  6299. type: string
  6300. required:
  6301. - server
  6302. type: object
  6303. x-kubernetes-validations:
  6304. - message: at most one of the fields in [caBundle caProvider] may be set
  6305. rule: '[has(self.caBundle),has(self.caProvider)].filter(x,x==true).size() <= 1'
  6306. oracle:
  6307. description: Oracle configures this store to sync secrets using Oracle Vault provider
  6308. properties:
  6309. auth:
  6310. description: |-
  6311. Auth configures how secret-manager authenticates with the Oracle Vault.
  6312. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  6313. properties:
  6314. secretRef:
  6315. description: SecretRef to pass through sensitive information.
  6316. properties:
  6317. fingerprint:
  6318. description: Fingerprint is the fingerprint of the API private key.
  6319. properties:
  6320. key:
  6321. description: |-
  6322. A key in the referenced Secret.
  6323. Some instances of this field may be defaulted, in others it may be required.
  6324. maxLength: 253
  6325. minLength: 1
  6326. pattern: ^[-._a-zA-Z0-9]+$
  6327. type: string
  6328. name:
  6329. description: The name of the Secret resource being referred to.
  6330. maxLength: 253
  6331. minLength: 1
  6332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6333. type: string
  6334. namespace:
  6335. description: |-
  6336. The namespace of the Secret resource being referred to.
  6337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6338. maxLength: 63
  6339. minLength: 1
  6340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6341. type: string
  6342. type: object
  6343. privatekey:
  6344. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6345. properties:
  6346. key:
  6347. description: |-
  6348. A key in the referenced Secret.
  6349. Some instances of this field may be defaulted, in others it may be required.
  6350. maxLength: 253
  6351. minLength: 1
  6352. pattern: ^[-._a-zA-Z0-9]+$
  6353. type: string
  6354. name:
  6355. description: The name of the Secret resource being referred to.
  6356. maxLength: 253
  6357. minLength: 1
  6358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6359. type: string
  6360. namespace:
  6361. description: |-
  6362. The namespace of the Secret resource being referred to.
  6363. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6364. maxLength: 63
  6365. minLength: 1
  6366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6367. type: string
  6368. type: object
  6369. required:
  6370. - fingerprint
  6371. - privatekey
  6372. type: object
  6373. tenancy:
  6374. description: Tenancy is the tenancy OCID where user is located.
  6375. type: string
  6376. user:
  6377. description: User is an access OCID specific to the account.
  6378. type: string
  6379. required:
  6380. - secretRef
  6381. - tenancy
  6382. - user
  6383. type: object
  6384. compartment:
  6385. description: |-
  6386. Compartment is the vault compartment OCID.
  6387. Required for PushSecret
  6388. type: string
  6389. encryptionKey:
  6390. description: |-
  6391. EncryptionKey is the OCID of the encryption key within the vault.
  6392. Required for PushSecret
  6393. type: string
  6394. principalType:
  6395. description: |-
  6396. The type of principal to use for authentication. If left blank, the Auth struct will
  6397. determine the principal type. This optional field must be specified if using
  6398. workload identity.
  6399. enum:
  6400. - ""
  6401. - UserPrincipal
  6402. - InstancePrincipal
  6403. - Workload
  6404. type: string
  6405. region:
  6406. description: Region is the region where vault is located.
  6407. type: string
  6408. serviceAccountRef:
  6409. description: |-
  6410. ServiceAccountRef specified the service account
  6411. that should be used when authenticating with WorkloadIdentity.
  6412. properties:
  6413. audiences:
  6414. description: |-
  6415. Audience specifies the `aud` claim for the service account token
  6416. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6417. then this audiences will be appended to the list
  6418. items:
  6419. type: string
  6420. type: array
  6421. name:
  6422. description: The name of the ServiceAccount resource being referred to.
  6423. maxLength: 253
  6424. minLength: 1
  6425. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6426. type: string
  6427. namespace:
  6428. description: |-
  6429. Namespace of the resource being referred to.
  6430. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6431. maxLength: 63
  6432. minLength: 1
  6433. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6434. type: string
  6435. required:
  6436. - name
  6437. type: object
  6438. vault:
  6439. description: Vault is the vault's OCID of the specific vault where secret is located.
  6440. type: string
  6441. required:
  6442. - region
  6443. - vault
  6444. type: object
  6445. ovh:
  6446. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6447. properties:
  6448. auth:
  6449. description: Authentication method (mtls or token).
  6450. properties:
  6451. mtls:
  6452. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6453. properties:
  6454. caBundle:
  6455. format: byte
  6456. type: string
  6457. caProvider:
  6458. description: |-
  6459. CAProvider provides a custom certificate authority for accessing the provider's store.
  6460. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6461. properties:
  6462. key:
  6463. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6464. maxLength: 253
  6465. minLength: 1
  6466. pattern: ^[-._a-zA-Z0-9]+$
  6467. type: string
  6468. name:
  6469. description: The name of the object located at the provider type.
  6470. maxLength: 253
  6471. minLength: 1
  6472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6473. type: string
  6474. namespace:
  6475. description: |-
  6476. The namespace the Provider type is in.
  6477. Can only be defined when used in a ClusterSecretStore.
  6478. maxLength: 63
  6479. minLength: 1
  6480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6481. type: string
  6482. type:
  6483. description: The type of provider to use such as "Secret", or "ConfigMap".
  6484. enum:
  6485. - Secret
  6486. - ConfigMap
  6487. type: string
  6488. required:
  6489. - name
  6490. - type
  6491. type: object
  6492. certSecretRef:
  6493. description: |-
  6494. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6495. In some instances, `key` is a required field.
  6496. properties:
  6497. key:
  6498. description: |-
  6499. A key in the referenced Secret.
  6500. Some instances of this field may be defaulted, in others it may be required.
  6501. maxLength: 253
  6502. minLength: 1
  6503. pattern: ^[-._a-zA-Z0-9]+$
  6504. type: string
  6505. name:
  6506. description: The name of the Secret resource being referred to.
  6507. maxLength: 253
  6508. minLength: 1
  6509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6510. type: string
  6511. namespace:
  6512. description: |-
  6513. The namespace of the Secret resource being referred to.
  6514. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6515. maxLength: 63
  6516. minLength: 1
  6517. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6518. type: string
  6519. type: object
  6520. keySecretRef:
  6521. description: |-
  6522. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6523. In some instances, `key` is a required field.
  6524. properties:
  6525. key:
  6526. description: |-
  6527. A key in the referenced Secret.
  6528. Some instances of this field may be defaulted, in others it may be required.
  6529. maxLength: 253
  6530. minLength: 1
  6531. pattern: ^[-._a-zA-Z0-9]+$
  6532. type: string
  6533. name:
  6534. description: The name of the Secret resource being referred to.
  6535. maxLength: 253
  6536. minLength: 1
  6537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6538. type: string
  6539. namespace:
  6540. description: |-
  6541. The namespace of the Secret resource being referred to.
  6542. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6543. maxLength: 63
  6544. minLength: 1
  6545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6546. type: string
  6547. type: object
  6548. required:
  6549. - certSecretRef
  6550. - keySecretRef
  6551. type: object
  6552. token:
  6553. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6554. properties:
  6555. tokenSecretRef:
  6556. description: |-
  6557. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6558. In some instances, `key` is a required field.
  6559. properties:
  6560. key:
  6561. description: |-
  6562. A key in the referenced Secret.
  6563. Some instances of this field may be defaulted, in others it may be required.
  6564. maxLength: 253
  6565. minLength: 1
  6566. pattern: ^[-._a-zA-Z0-9]+$
  6567. type: string
  6568. name:
  6569. description: The name of the Secret resource being referred to.
  6570. maxLength: 253
  6571. minLength: 1
  6572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6573. type: string
  6574. namespace:
  6575. description: |-
  6576. The namespace of the Secret resource being referred to.
  6577. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6578. maxLength: 63
  6579. minLength: 1
  6580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6581. type: string
  6582. type: object
  6583. required:
  6584. - tokenSecretRef
  6585. type: object
  6586. type: object
  6587. casRequired:
  6588. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6589. type: boolean
  6590. okmsTimeout:
  6591. default: 30
  6592. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6593. format: int32
  6594. minimum: 1
  6595. type: integer
  6596. okmsid:
  6597. description: specifies the OKMS ID.
  6598. type: string
  6599. server:
  6600. description: specifies the OKMS server endpoint.
  6601. type: string
  6602. required:
  6603. - auth
  6604. - okmsid
  6605. - server
  6606. type: object
  6607. passbolt:
  6608. description: |-
  6609. PassboltProvider provides access to Passbolt secrets manager.
  6610. See: https://www.passbolt.com.
  6611. properties:
  6612. auth:
  6613. description: Auth defines the information necessary to authenticate against Passbolt Server
  6614. properties:
  6615. passwordSecretRef:
  6616. description: |-
  6617. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6618. In some instances, `key` is a required field.
  6619. properties:
  6620. key:
  6621. description: |-
  6622. A key in the referenced Secret.
  6623. Some instances of this field may be defaulted, in others it may be required.
  6624. maxLength: 253
  6625. minLength: 1
  6626. pattern: ^[-._a-zA-Z0-9]+$
  6627. type: string
  6628. name:
  6629. description: The name of the Secret resource being referred to.
  6630. maxLength: 253
  6631. minLength: 1
  6632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6633. type: string
  6634. namespace:
  6635. description: |-
  6636. The namespace of the Secret resource being referred to.
  6637. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6638. maxLength: 63
  6639. minLength: 1
  6640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6641. type: string
  6642. type: object
  6643. privateKeySecretRef:
  6644. description: |-
  6645. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6646. In some instances, `key` is a required field.
  6647. properties:
  6648. key:
  6649. description: |-
  6650. A key in the referenced Secret.
  6651. Some instances of this field may be defaulted, in others it may be required.
  6652. maxLength: 253
  6653. minLength: 1
  6654. pattern: ^[-._a-zA-Z0-9]+$
  6655. type: string
  6656. name:
  6657. description: The name of the Secret resource being referred to.
  6658. maxLength: 253
  6659. minLength: 1
  6660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6661. type: string
  6662. namespace:
  6663. description: |-
  6664. The namespace of the Secret resource being referred to.
  6665. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6666. maxLength: 63
  6667. minLength: 1
  6668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6669. type: string
  6670. type: object
  6671. required:
  6672. - passwordSecretRef
  6673. - privateKeySecretRef
  6674. type: object
  6675. caBundle:
  6676. description: |-
  6677. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  6678. if the Host URL is using HTTPS protocol. If not set the system root certificates
  6679. are used to validate the TLS connection.
  6680. format: byte
  6681. type: string
  6682. caProvider:
  6683. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  6684. properties:
  6685. key:
  6686. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6687. maxLength: 253
  6688. minLength: 1
  6689. pattern: ^[-._a-zA-Z0-9]+$
  6690. type: string
  6691. name:
  6692. description: The name of the object located at the provider type.
  6693. maxLength: 253
  6694. minLength: 1
  6695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6696. type: string
  6697. namespace:
  6698. description: |-
  6699. The namespace the Provider type is in.
  6700. Can only be defined when used in a ClusterSecretStore.
  6701. maxLength: 63
  6702. minLength: 1
  6703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6704. type: string
  6705. type:
  6706. description: The type of provider to use such as "Secret", or "ConfigMap".
  6707. enum:
  6708. - Secret
  6709. - ConfigMap
  6710. type: string
  6711. required:
  6712. - name
  6713. - type
  6714. type: object
  6715. host:
  6716. description: Host defines the Passbolt Server to connect to
  6717. type: string
  6718. required:
  6719. - auth
  6720. - host
  6721. type: object
  6722. passworddepot:
  6723. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6724. properties:
  6725. auth:
  6726. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6727. properties:
  6728. secretRef:
  6729. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6730. properties:
  6731. credentials:
  6732. description: Username / Password is used for authentication.
  6733. properties:
  6734. key:
  6735. description: |-
  6736. A key in the referenced Secret.
  6737. Some instances of this field may be defaulted, in others it may be required.
  6738. maxLength: 253
  6739. minLength: 1
  6740. pattern: ^[-._a-zA-Z0-9]+$
  6741. type: string
  6742. name:
  6743. description: The name of the Secret resource being referred to.
  6744. maxLength: 253
  6745. minLength: 1
  6746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6747. type: string
  6748. namespace:
  6749. description: |-
  6750. The namespace of the Secret resource being referred to.
  6751. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6752. maxLength: 63
  6753. minLength: 1
  6754. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6755. type: string
  6756. type: object
  6757. type: object
  6758. required:
  6759. - secretRef
  6760. type: object
  6761. database:
  6762. description: Database to use as source
  6763. type: string
  6764. host:
  6765. description: URL configures the Password Depot instance URL.
  6766. type: string
  6767. required:
  6768. - auth
  6769. - database
  6770. - host
  6771. type: object
  6772. previder:
  6773. description: Previder configures this store to sync secrets using the Previder provider
  6774. properties:
  6775. auth:
  6776. description: PreviderAuth contains a secretRef for credentials.
  6777. properties:
  6778. secretRef:
  6779. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6780. properties:
  6781. accessToken:
  6782. description: The AccessToken is used for authentication
  6783. properties:
  6784. key:
  6785. description: |-
  6786. A key in the referenced Secret.
  6787. Some instances of this field may be defaulted, in others it may be required.
  6788. maxLength: 253
  6789. minLength: 1
  6790. pattern: ^[-._a-zA-Z0-9]+$
  6791. type: string
  6792. name:
  6793. description: The name of the Secret resource being referred to.
  6794. maxLength: 253
  6795. minLength: 1
  6796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6797. type: string
  6798. namespace:
  6799. description: |-
  6800. The namespace of the Secret resource being referred to.
  6801. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6802. maxLength: 63
  6803. minLength: 1
  6804. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6805. type: string
  6806. type: object
  6807. required:
  6808. - accessToken
  6809. type: object
  6810. type: object
  6811. baseUri:
  6812. type: string
  6813. required:
  6814. - auth
  6815. type: object
  6816. pulumi:
  6817. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6818. properties:
  6819. accessToken:
  6820. description: |-
  6821. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6822. Deprecated: Use auth.accessToken instead.
  6823. properties:
  6824. secretRef:
  6825. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6826. properties:
  6827. key:
  6828. description: |-
  6829. A key in the referenced Secret.
  6830. Some instances of this field may be defaulted, in others it may be required.
  6831. maxLength: 253
  6832. minLength: 1
  6833. pattern: ^[-._a-zA-Z0-9]+$
  6834. type: string
  6835. name:
  6836. description: The name of the Secret resource being referred to.
  6837. maxLength: 253
  6838. minLength: 1
  6839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6840. type: string
  6841. namespace:
  6842. description: |-
  6843. The namespace of the Secret resource being referred to.
  6844. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6845. maxLength: 63
  6846. minLength: 1
  6847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6848. type: string
  6849. type: object
  6850. type: object
  6851. apiUrl:
  6852. default: https://api.pulumi.com/api/esc
  6853. description: APIURL is the URL of the Pulumi API.
  6854. type: string
  6855. auth:
  6856. description: |-
  6857. Auth configures how the Operator authenticates with the Pulumi API.
  6858. Either auth or the deprecated accessToken field must be specified.
  6859. properties:
  6860. accessToken:
  6861. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  6862. properties:
  6863. secretRef:
  6864. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6865. properties:
  6866. key:
  6867. description: |-
  6868. A key in the referenced Secret.
  6869. Some instances of this field may be defaulted, in others it may be required.
  6870. maxLength: 253
  6871. minLength: 1
  6872. pattern: ^[-._a-zA-Z0-9]+$
  6873. type: string
  6874. name:
  6875. description: The name of the Secret resource being referred to.
  6876. maxLength: 253
  6877. minLength: 1
  6878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6879. type: string
  6880. namespace:
  6881. description: |-
  6882. The namespace of the Secret resource being referred to.
  6883. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6884. maxLength: 63
  6885. minLength: 1
  6886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6887. type: string
  6888. type: object
  6889. type: object
  6890. oidcConfig:
  6891. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  6892. properties:
  6893. expirationSeconds:
  6894. default: 600
  6895. description: |-
  6896. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  6897. Defaults to 10 minutes.
  6898. format: int64
  6899. minimum: 600
  6900. type: integer
  6901. organization:
  6902. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  6903. type: string
  6904. serviceAccountRef:
  6905. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  6906. properties:
  6907. audiences:
  6908. description: |-
  6909. Audience specifies the `aud` claim for the service account token
  6910. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6911. then this audiences will be appended to the list
  6912. items:
  6913. type: string
  6914. type: array
  6915. name:
  6916. description: The name of the ServiceAccount resource being referred to.
  6917. maxLength: 253
  6918. minLength: 1
  6919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6920. type: string
  6921. namespace:
  6922. description: |-
  6923. Namespace of the resource being referred to.
  6924. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6925. maxLength: 63
  6926. minLength: 1
  6927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6928. type: string
  6929. required:
  6930. - name
  6931. type: object
  6932. required:
  6933. - organization
  6934. - serviceAccountRef
  6935. type: object
  6936. type: object
  6937. x-kubernetes-validations:
  6938. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  6939. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  6940. environment:
  6941. description: |-
  6942. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  6943. dynamically retrieved values from supported providers including all major clouds,
  6944. and other Pulumi ESC environments.
  6945. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  6946. type: string
  6947. organization:
  6948. description: |-
  6949. Organization are a space to collaborate on shared projects and stacks.
  6950. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  6951. type: string
  6952. project:
  6953. description: Project is the name of the Pulumi ESC project the environment belongs to.
  6954. type: string
  6955. required:
  6956. - environment
  6957. - organization
  6958. - project
  6959. type: object
  6960. x-kubernetes-validations:
  6961. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  6962. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  6963. scaleway:
  6964. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  6965. properties:
  6966. accessKey:
  6967. description: AccessKey is the non-secret part of the api key.
  6968. properties:
  6969. secretRef:
  6970. description: SecretRef references a key in a secret that will be used as value.
  6971. properties:
  6972. key:
  6973. description: |-
  6974. A key in the referenced Secret.
  6975. Some instances of this field may be defaulted, in others it may be required.
  6976. maxLength: 253
  6977. minLength: 1
  6978. pattern: ^[-._a-zA-Z0-9]+$
  6979. type: string
  6980. name:
  6981. description: The name of the Secret resource being referred to.
  6982. maxLength: 253
  6983. minLength: 1
  6984. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6985. type: string
  6986. namespace:
  6987. description: |-
  6988. The namespace of the Secret resource being referred to.
  6989. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6990. maxLength: 63
  6991. minLength: 1
  6992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6993. type: string
  6994. type: object
  6995. value:
  6996. description: Value can be specified directly to set a value without using a secret.
  6997. type: string
  6998. type: object
  6999. apiUrl:
  7000. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  7001. type: string
  7002. projectId:
  7003. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  7004. type: string
  7005. region:
  7006. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  7007. type: string
  7008. secretKey:
  7009. description: SecretKey is the non-secret part of the api key.
  7010. properties:
  7011. secretRef:
  7012. description: SecretRef references a key in a secret that will be used as value.
  7013. properties:
  7014. key:
  7015. description: |-
  7016. A key in the referenced Secret.
  7017. Some instances of this field may be defaulted, in others it may be required.
  7018. maxLength: 253
  7019. minLength: 1
  7020. pattern: ^[-._a-zA-Z0-9]+$
  7021. type: string
  7022. name:
  7023. description: The name of the Secret resource being referred to.
  7024. maxLength: 253
  7025. minLength: 1
  7026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7027. type: string
  7028. namespace:
  7029. description: |-
  7030. The namespace of the Secret resource being referred to.
  7031. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7032. maxLength: 63
  7033. minLength: 1
  7034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7035. type: string
  7036. type: object
  7037. value:
  7038. description: Value can be specified directly to set a value without using a secret.
  7039. type: string
  7040. type: object
  7041. required:
  7042. - accessKey
  7043. - projectId
  7044. - region
  7045. - secretKey
  7046. type: object
  7047. secretserver:
  7048. description: |-
  7049. SecretServer configures this store to sync secrets using SecretServer provider
  7050. https://docs.delinea.com/online-help/secret-server/start.htm
  7051. properties:
  7052. caBundle:
  7053. description: |-
  7054. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  7055. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  7056. are used to validate the TLS connection.
  7057. format: byte
  7058. type: string
  7059. caProvider:
  7060. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  7061. properties:
  7062. key:
  7063. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7064. maxLength: 253
  7065. minLength: 1
  7066. pattern: ^[-._a-zA-Z0-9]+$
  7067. type: string
  7068. name:
  7069. description: The name of the object located at the provider type.
  7070. maxLength: 253
  7071. minLength: 1
  7072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7073. type: string
  7074. namespace:
  7075. description: |-
  7076. The namespace the Provider type is in.
  7077. Can only be defined when used in a ClusterSecretStore.
  7078. maxLength: 63
  7079. minLength: 1
  7080. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7081. type: string
  7082. type:
  7083. description: The type of provider to use such as "Secret", or "ConfigMap".
  7084. enum:
  7085. - Secret
  7086. - ConfigMap
  7087. type: string
  7088. required:
  7089. - name
  7090. - type
  7091. type: object
  7092. domain:
  7093. description: Domain is the secret server domain.
  7094. type: string
  7095. password:
  7096. description: Password is the secret server account password.
  7097. properties:
  7098. secretRef:
  7099. description: SecretRef references a key in a secret that will be used as value.
  7100. properties:
  7101. key:
  7102. description: |-
  7103. A key in the referenced Secret.
  7104. Some instances of this field may be defaulted, in others it may be required.
  7105. maxLength: 253
  7106. minLength: 1
  7107. pattern: ^[-._a-zA-Z0-9]+$
  7108. type: string
  7109. name:
  7110. description: The name of the Secret resource being referred to.
  7111. maxLength: 253
  7112. minLength: 1
  7113. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7114. type: string
  7115. namespace:
  7116. description: |-
  7117. The namespace of the Secret resource being referred to.
  7118. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7119. maxLength: 63
  7120. minLength: 1
  7121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7122. type: string
  7123. type: object
  7124. value:
  7125. description: Value can be specified directly to set a value without using a secret.
  7126. type: string
  7127. type: object
  7128. serverURL:
  7129. description: |-
  7130. ServerURL
  7131. URL to your secret server installation
  7132. type: string
  7133. username:
  7134. description: Username is the secret server account username.
  7135. properties:
  7136. secretRef:
  7137. description: SecretRef references a key in a secret that will be used as value.
  7138. properties:
  7139. key:
  7140. description: |-
  7141. A key in the referenced Secret.
  7142. Some instances of this field may be defaulted, in others it may be required.
  7143. maxLength: 253
  7144. minLength: 1
  7145. pattern: ^[-._a-zA-Z0-9]+$
  7146. type: string
  7147. name:
  7148. description: The name of the Secret resource being referred to.
  7149. maxLength: 253
  7150. minLength: 1
  7151. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7152. type: string
  7153. namespace:
  7154. description: |-
  7155. The namespace of the Secret resource being referred to.
  7156. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7157. maxLength: 63
  7158. minLength: 1
  7159. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7160. type: string
  7161. type: object
  7162. value:
  7163. description: Value can be specified directly to set a value without using a secret.
  7164. type: string
  7165. type: object
  7166. required:
  7167. - password
  7168. - serverURL
  7169. - username
  7170. type: object
  7171. senhasegura:
  7172. description: Senhasegura configures this store to sync secrets using senhasegura provider
  7173. properties:
  7174. auth:
  7175. description: Auth defines parameters to authenticate in senhasegura
  7176. properties:
  7177. clientId:
  7178. type: string
  7179. clientSecretSecretRef:
  7180. description: |-
  7181. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7182. In some instances, `key` is a required field.
  7183. properties:
  7184. key:
  7185. description: |-
  7186. A key in the referenced Secret.
  7187. Some instances of this field may be defaulted, in others it may be required.
  7188. maxLength: 253
  7189. minLength: 1
  7190. pattern: ^[-._a-zA-Z0-9]+$
  7191. type: string
  7192. name:
  7193. description: The name of the Secret resource being referred to.
  7194. maxLength: 253
  7195. minLength: 1
  7196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7197. type: string
  7198. namespace:
  7199. description: |-
  7200. The namespace of the Secret resource being referred to.
  7201. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7202. maxLength: 63
  7203. minLength: 1
  7204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7205. type: string
  7206. type: object
  7207. required:
  7208. - clientId
  7209. - clientSecretSecretRef
  7210. type: object
  7211. ignoreSslCertificate:
  7212. default: false
  7213. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  7214. type: boolean
  7215. module:
  7216. description: Module defines which senhasegura module should be used to get secrets
  7217. type: string
  7218. url:
  7219. description: URL of senhasegura
  7220. type: string
  7221. required:
  7222. - auth
  7223. - module
  7224. - url
  7225. type: object
  7226. vault:
  7227. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  7228. properties:
  7229. auth:
  7230. description: Auth configures how secret-manager authenticates with the Vault server.
  7231. properties:
  7232. appRole:
  7233. description: |-
  7234. AppRole authenticates with Vault using the App Role auth mechanism,
  7235. with the role and secret stored in a Kubernetes Secret resource.
  7236. properties:
  7237. path:
  7238. default: approle
  7239. description: |-
  7240. Path where the App Role authentication backend is mounted
  7241. in Vault, e.g: "approle"
  7242. type: string
  7243. roleId:
  7244. description: |-
  7245. RoleID configured in the App Role authentication backend when setting
  7246. up the authentication backend in Vault.
  7247. type: string
  7248. roleRef:
  7249. description: |-
  7250. Reference to a key in a Secret that contains the App Role ID used
  7251. to authenticate with Vault.
  7252. The `key` field must be specified and denotes which entry within the Secret
  7253. resource is used as the app role id.
  7254. properties:
  7255. key:
  7256. description: |-
  7257. A key in the referenced Secret.
  7258. Some instances of this field may be defaulted, in others it may be required.
  7259. maxLength: 253
  7260. minLength: 1
  7261. pattern: ^[-._a-zA-Z0-9]+$
  7262. type: string
  7263. name:
  7264. description: The name of the Secret resource being referred to.
  7265. maxLength: 253
  7266. minLength: 1
  7267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7268. type: string
  7269. namespace:
  7270. description: |-
  7271. The namespace of the Secret resource being referred to.
  7272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7273. maxLength: 63
  7274. minLength: 1
  7275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7276. type: string
  7277. type: object
  7278. secretRef:
  7279. description: |-
  7280. Reference to a key in a Secret that contains the App Role secret used
  7281. to authenticate with Vault.
  7282. The `key` field must be specified and denotes which entry within the Secret
  7283. resource is used as the app role secret.
  7284. properties:
  7285. key:
  7286. description: |-
  7287. A key in the referenced Secret.
  7288. Some instances of this field may be defaulted, in others it may be required.
  7289. maxLength: 253
  7290. minLength: 1
  7291. pattern: ^[-._a-zA-Z0-9]+$
  7292. type: string
  7293. name:
  7294. description: The name of the Secret resource being referred to.
  7295. maxLength: 253
  7296. minLength: 1
  7297. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7298. type: string
  7299. namespace:
  7300. description: |-
  7301. The namespace of the Secret resource being referred to.
  7302. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7303. maxLength: 63
  7304. minLength: 1
  7305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7306. type: string
  7307. type: object
  7308. required:
  7309. - path
  7310. - secretRef
  7311. type: object
  7312. cert:
  7313. description: |-
  7314. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7315. Cert authentication method
  7316. properties:
  7317. clientCert:
  7318. description: |-
  7319. ClientCert is a certificate to authenticate using the Cert Vault
  7320. authentication method
  7321. properties:
  7322. key:
  7323. description: |-
  7324. A key in the referenced Secret.
  7325. Some instances of this field may be defaulted, in others it may be required.
  7326. maxLength: 253
  7327. minLength: 1
  7328. pattern: ^[-._a-zA-Z0-9]+$
  7329. type: string
  7330. name:
  7331. description: The name of the Secret resource being referred to.
  7332. maxLength: 253
  7333. minLength: 1
  7334. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7335. type: string
  7336. namespace:
  7337. description: |-
  7338. The namespace of the Secret resource being referred to.
  7339. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7340. maxLength: 63
  7341. minLength: 1
  7342. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7343. type: string
  7344. type: object
  7345. path:
  7346. default: cert
  7347. description: |-
  7348. Path where the Certificate authentication backend is mounted
  7349. in Vault, e.g: "cert"
  7350. type: string
  7351. secretRef:
  7352. description: |-
  7353. SecretRef to a key in a Secret resource containing client private key to
  7354. authenticate with Vault using the Cert authentication method
  7355. properties:
  7356. key:
  7357. description: |-
  7358. A key in the referenced Secret.
  7359. Some instances of this field may be defaulted, in others it may be required.
  7360. maxLength: 253
  7361. minLength: 1
  7362. pattern: ^[-._a-zA-Z0-9]+$
  7363. type: string
  7364. name:
  7365. description: The name of the Secret resource being referred to.
  7366. maxLength: 253
  7367. minLength: 1
  7368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7369. type: string
  7370. namespace:
  7371. description: |-
  7372. The namespace of the Secret resource being referred to.
  7373. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7374. maxLength: 63
  7375. minLength: 1
  7376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7377. type: string
  7378. type: object
  7379. vaultRole:
  7380. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  7381. type: string
  7382. type: object
  7383. gcp:
  7384. description: |-
  7385. Gcp authenticates with Vault using Google Cloud Platform authentication method
  7386. GCP authentication method
  7387. properties:
  7388. location:
  7389. description: Location optionally defines a location/region for the secret
  7390. type: string
  7391. path:
  7392. default: gcp
  7393. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  7394. type: string
  7395. projectID:
  7396. description: Project ID of the Google Cloud Platform project
  7397. type: string
  7398. role:
  7399. 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.
  7400. type: string
  7401. secretRef:
  7402. description: Specify credentials in a Secret object
  7403. properties:
  7404. secretAccessKeySecretRef:
  7405. description: The SecretAccessKey is used for authentication
  7406. properties:
  7407. key:
  7408. description: |-
  7409. A key in the referenced Secret.
  7410. Some instances of this field may be defaulted, in others it may be required.
  7411. maxLength: 253
  7412. minLength: 1
  7413. pattern: ^[-._a-zA-Z0-9]+$
  7414. type: string
  7415. name:
  7416. description: The name of the Secret resource being referred to.
  7417. maxLength: 253
  7418. minLength: 1
  7419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7420. type: string
  7421. namespace:
  7422. description: |-
  7423. The namespace of the Secret resource being referred to.
  7424. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7425. maxLength: 63
  7426. minLength: 1
  7427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7428. type: string
  7429. type: object
  7430. type: object
  7431. serviceAccountRef:
  7432. description: ServiceAccountRef to a service account for impersonation
  7433. properties:
  7434. audiences:
  7435. description: |-
  7436. Audience specifies the `aud` claim for the service account token
  7437. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7438. then this audiences will be appended to the list
  7439. items:
  7440. type: string
  7441. type: array
  7442. name:
  7443. description: The name of the ServiceAccount resource being referred to.
  7444. maxLength: 253
  7445. minLength: 1
  7446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7447. type: string
  7448. namespace:
  7449. description: |-
  7450. Namespace of the resource being referred to.
  7451. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7452. maxLength: 63
  7453. minLength: 1
  7454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7455. type: string
  7456. required:
  7457. - name
  7458. type: object
  7459. workloadIdentity:
  7460. description: Specify a service account with Workload Identity
  7461. properties:
  7462. clusterLocation:
  7463. description: |-
  7464. ClusterLocation is the location of the cluster
  7465. If not specified, it fetches information from the metadata server
  7466. type: string
  7467. clusterName:
  7468. description: |-
  7469. ClusterName is the name of the cluster
  7470. If not specified, it fetches information from the metadata server
  7471. type: string
  7472. clusterProjectID:
  7473. description: |-
  7474. ClusterProjectID is the project ID of the cluster
  7475. If not specified, it fetches information from the metadata server
  7476. type: string
  7477. serviceAccountRef:
  7478. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7479. properties:
  7480. audiences:
  7481. description: |-
  7482. Audience specifies the `aud` claim for the service account token
  7483. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7484. then this audiences will be appended to the list
  7485. items:
  7486. type: string
  7487. type: array
  7488. name:
  7489. description: The name of the ServiceAccount resource being referred to.
  7490. maxLength: 253
  7491. minLength: 1
  7492. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7493. type: string
  7494. namespace:
  7495. description: |-
  7496. Namespace of the resource being referred to.
  7497. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7498. maxLength: 63
  7499. minLength: 1
  7500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7501. type: string
  7502. required:
  7503. - name
  7504. type: object
  7505. required:
  7506. - serviceAccountRef
  7507. type: object
  7508. required:
  7509. - role
  7510. type: object
  7511. iam:
  7512. description: |-
  7513. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7514. AWS IAM authentication method
  7515. properties:
  7516. externalID:
  7517. description: AWS External ID set on assumed IAM roles
  7518. type: string
  7519. jwt:
  7520. description: Specify a service account with IRSA enabled
  7521. properties:
  7522. serviceAccountRef:
  7523. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7524. properties:
  7525. audiences:
  7526. description: |-
  7527. Audience specifies the `aud` claim for the service account token
  7528. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7529. then this audiences will be appended to the list
  7530. items:
  7531. type: string
  7532. type: array
  7533. name:
  7534. description: The name of the ServiceAccount resource being referred to.
  7535. maxLength: 253
  7536. minLength: 1
  7537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7538. type: string
  7539. namespace:
  7540. description: |-
  7541. Namespace of the resource being referred to.
  7542. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7543. maxLength: 63
  7544. minLength: 1
  7545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7546. type: string
  7547. required:
  7548. - name
  7549. type: object
  7550. type: object
  7551. path:
  7552. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7553. type: string
  7554. region:
  7555. description: AWS region
  7556. type: string
  7557. role:
  7558. description: This is the AWS role to be assumed before talking to vault
  7559. type: string
  7560. secretRef:
  7561. description: Specify credentials in a Secret object
  7562. properties:
  7563. accessKeyIDSecretRef:
  7564. description: The AccessKeyID is used for authentication
  7565. properties:
  7566. key:
  7567. description: |-
  7568. A key in the referenced Secret.
  7569. Some instances of this field may be defaulted, in others it may be required.
  7570. maxLength: 253
  7571. minLength: 1
  7572. pattern: ^[-._a-zA-Z0-9]+$
  7573. type: string
  7574. name:
  7575. description: The name of the Secret resource being referred to.
  7576. maxLength: 253
  7577. minLength: 1
  7578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7579. type: string
  7580. namespace:
  7581. description: |-
  7582. The namespace of the Secret resource being referred to.
  7583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7584. maxLength: 63
  7585. minLength: 1
  7586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7587. type: string
  7588. type: object
  7589. secretAccessKeySecretRef:
  7590. description: The SecretAccessKey is used for authentication
  7591. properties:
  7592. key:
  7593. description: |-
  7594. A key in the referenced Secret.
  7595. Some instances of this field may be defaulted, in others it may be required.
  7596. maxLength: 253
  7597. minLength: 1
  7598. pattern: ^[-._a-zA-Z0-9]+$
  7599. type: string
  7600. name:
  7601. description: The name of the Secret resource being referred to.
  7602. maxLength: 253
  7603. minLength: 1
  7604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7605. type: string
  7606. namespace:
  7607. description: |-
  7608. The namespace of the Secret resource being referred to.
  7609. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7610. maxLength: 63
  7611. minLength: 1
  7612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7613. type: string
  7614. type: object
  7615. sessionTokenSecretRef:
  7616. description: |-
  7617. The SessionToken used for authentication
  7618. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7619. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7620. properties:
  7621. key:
  7622. description: |-
  7623. A key in the referenced Secret.
  7624. Some instances of this field may be defaulted, in others it may be required.
  7625. maxLength: 253
  7626. minLength: 1
  7627. pattern: ^[-._a-zA-Z0-9]+$
  7628. type: string
  7629. name:
  7630. description: The name of the Secret resource being referred to.
  7631. maxLength: 253
  7632. minLength: 1
  7633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7634. type: string
  7635. namespace:
  7636. description: |-
  7637. The namespace of the Secret resource being referred to.
  7638. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7639. maxLength: 63
  7640. minLength: 1
  7641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7642. type: string
  7643. type: object
  7644. type: object
  7645. vaultAwsIamServerID:
  7646. 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'
  7647. type: string
  7648. vaultRole:
  7649. 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
  7650. type: string
  7651. required:
  7652. - vaultRole
  7653. type: object
  7654. jwt:
  7655. description: |-
  7656. Jwt authenticates with Vault by passing role and JWT token using the
  7657. JWT/OIDC authentication method
  7658. properties:
  7659. kubernetesServiceAccountToken:
  7660. description: |-
  7661. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7662. a token for with the `TokenRequest` API.
  7663. properties:
  7664. audiences:
  7665. description: |-
  7666. Optional audiences field that will be used to request a temporary Kubernetes service
  7667. account token for the service account referenced by `serviceAccountRef`.
  7668. Defaults to a single audience `vault` it not specified.
  7669. Deprecated: use serviceAccountRef.Audiences instead
  7670. items:
  7671. type: string
  7672. type: array
  7673. expirationSeconds:
  7674. description: |-
  7675. Optional expiration time in seconds that will be used to request a temporary
  7676. Kubernetes service account token for the service account referenced by
  7677. `serviceAccountRef`.
  7678. Deprecated: this will be removed in the future.
  7679. Defaults to 10 minutes.
  7680. format: int64
  7681. type: integer
  7682. serviceAccountRef:
  7683. description: Service account field containing the name of a kubernetes ServiceAccount.
  7684. properties:
  7685. audiences:
  7686. description: |-
  7687. Audience specifies the `aud` claim for the service account token
  7688. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7689. then this audiences will be appended to the list
  7690. items:
  7691. type: string
  7692. type: array
  7693. name:
  7694. description: The name of the ServiceAccount resource being referred to.
  7695. maxLength: 253
  7696. minLength: 1
  7697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7698. type: string
  7699. namespace:
  7700. description: |-
  7701. Namespace of the resource being referred to.
  7702. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7703. maxLength: 63
  7704. minLength: 1
  7705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7706. type: string
  7707. required:
  7708. - name
  7709. type: object
  7710. required:
  7711. - serviceAccountRef
  7712. type: object
  7713. path:
  7714. default: jwt
  7715. description: |-
  7716. Path where the JWT authentication backend is mounted
  7717. in Vault, e.g: "jwt"
  7718. type: string
  7719. role:
  7720. description: |-
  7721. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7722. authentication method
  7723. type: string
  7724. secretRef:
  7725. description: |-
  7726. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7727. authenticate with Vault using the JWT/OIDC authentication method.
  7728. properties:
  7729. key:
  7730. description: |-
  7731. A key in the referenced Secret.
  7732. Some instances of this field may be defaulted, in others it may be required.
  7733. maxLength: 253
  7734. minLength: 1
  7735. pattern: ^[-._a-zA-Z0-9]+$
  7736. type: string
  7737. name:
  7738. description: The name of the Secret resource being referred to.
  7739. maxLength: 253
  7740. minLength: 1
  7741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7742. type: string
  7743. namespace:
  7744. description: |-
  7745. The namespace of the Secret resource being referred to.
  7746. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7747. maxLength: 63
  7748. minLength: 1
  7749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7750. type: string
  7751. type: object
  7752. required:
  7753. - path
  7754. type: object
  7755. kubernetes:
  7756. description: |-
  7757. Kubernetes authenticates with Vault by passing the ServiceAccount
  7758. token stored in the named Secret resource to the Vault server.
  7759. properties:
  7760. mountPath:
  7761. default: kubernetes
  7762. description: |-
  7763. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7764. "kubernetes"
  7765. type: string
  7766. role:
  7767. description: |-
  7768. A required field containing the Vault Role to assume. A Role binds a
  7769. Kubernetes ServiceAccount with a set of Vault policies.
  7770. type: string
  7771. secretRef:
  7772. description: |-
  7773. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7774. for authenticating with Vault. If a name is specified without a key,
  7775. `token` is the default. If one is not specified, the one bound to
  7776. the controller will be used.
  7777. properties:
  7778. key:
  7779. description: |-
  7780. A key in the referenced Secret.
  7781. Some instances of this field may be defaulted, in others it may be required.
  7782. maxLength: 253
  7783. minLength: 1
  7784. pattern: ^[-._a-zA-Z0-9]+$
  7785. type: string
  7786. name:
  7787. description: The name of the Secret resource being referred to.
  7788. maxLength: 253
  7789. minLength: 1
  7790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7791. type: string
  7792. namespace:
  7793. description: |-
  7794. The namespace of the Secret resource being referred to.
  7795. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7796. maxLength: 63
  7797. minLength: 1
  7798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7799. type: string
  7800. type: object
  7801. serviceAccountRef:
  7802. description: |-
  7803. Optional service account field containing the name of a kubernetes ServiceAccount.
  7804. If the service account is specified, the service account secret token JWT will be used
  7805. for authenticating with Vault. If the service account selector is not supplied,
  7806. the secretRef will be used instead.
  7807. properties:
  7808. audiences:
  7809. description: |-
  7810. Audience specifies the `aud` claim for the service account token
  7811. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7812. then this audiences will be appended to the list
  7813. items:
  7814. type: string
  7815. type: array
  7816. name:
  7817. description: The name of the ServiceAccount resource being referred to.
  7818. maxLength: 253
  7819. minLength: 1
  7820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7821. type: string
  7822. namespace:
  7823. description: |-
  7824. Namespace of the resource being referred to.
  7825. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7826. maxLength: 63
  7827. minLength: 1
  7828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7829. type: string
  7830. required:
  7831. - name
  7832. type: object
  7833. required:
  7834. - mountPath
  7835. - role
  7836. type: object
  7837. ldap:
  7838. description: |-
  7839. Ldap authenticates with Vault by passing username/password pair using
  7840. the LDAP authentication method
  7841. properties:
  7842. path:
  7843. default: ldap
  7844. description: |-
  7845. Path where the LDAP authentication backend is mounted
  7846. in Vault, e.g: "ldap"
  7847. type: string
  7848. secretRef:
  7849. description: |-
  7850. SecretRef to a key in a Secret resource containing password for the LDAP
  7851. user used to authenticate with Vault using the LDAP authentication
  7852. method
  7853. properties:
  7854. key:
  7855. description: |-
  7856. A key in the referenced Secret.
  7857. Some instances of this field may be defaulted, in others it may be required.
  7858. maxLength: 253
  7859. minLength: 1
  7860. pattern: ^[-._a-zA-Z0-9]+$
  7861. type: string
  7862. name:
  7863. description: The name of the Secret resource being referred to.
  7864. maxLength: 253
  7865. minLength: 1
  7866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7867. type: string
  7868. namespace:
  7869. description: |-
  7870. The namespace of the Secret resource being referred to.
  7871. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7872. maxLength: 63
  7873. minLength: 1
  7874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7875. type: string
  7876. type: object
  7877. username:
  7878. description: |-
  7879. Username is an LDAP username used to authenticate using the LDAP Vault
  7880. authentication method
  7881. type: string
  7882. required:
  7883. - path
  7884. - username
  7885. type: object
  7886. namespace:
  7887. description: |-
  7888. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  7889. Namespaces is a set of features within Vault Enterprise that allows
  7890. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7891. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7892. This will default to Vault.Namespace field if set, or empty otherwise
  7893. type: string
  7894. tokenSecretRef:
  7895. description: TokenSecretRef authenticates with Vault by presenting a token.
  7896. properties:
  7897. key:
  7898. description: |-
  7899. A key in the referenced Secret.
  7900. Some instances of this field may be defaulted, in others it may be required.
  7901. maxLength: 253
  7902. minLength: 1
  7903. pattern: ^[-._a-zA-Z0-9]+$
  7904. type: string
  7905. name:
  7906. description: The name of the Secret resource being referred to.
  7907. maxLength: 253
  7908. minLength: 1
  7909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7910. type: string
  7911. namespace:
  7912. description: |-
  7913. The namespace of the Secret resource being referred to.
  7914. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7915. maxLength: 63
  7916. minLength: 1
  7917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7918. type: string
  7919. type: object
  7920. userPass:
  7921. description: UserPass authenticates with Vault by passing username/password pair
  7922. properties:
  7923. path:
  7924. default: userpass
  7925. description: |-
  7926. Path where the UserPassword authentication backend is mounted
  7927. in Vault, e.g: "userpass"
  7928. type: string
  7929. secretRef:
  7930. description: |-
  7931. SecretRef to a key in a Secret resource containing password for the
  7932. user used to authenticate with Vault using the UserPass authentication
  7933. method
  7934. properties:
  7935. key:
  7936. description: |-
  7937. A key in the referenced Secret.
  7938. Some instances of this field may be defaulted, in others it may be required.
  7939. maxLength: 253
  7940. minLength: 1
  7941. pattern: ^[-._a-zA-Z0-9]+$
  7942. type: string
  7943. name:
  7944. description: The name of the Secret resource being referred to.
  7945. maxLength: 253
  7946. minLength: 1
  7947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7948. type: string
  7949. namespace:
  7950. description: |-
  7951. The namespace of the Secret resource being referred to.
  7952. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7953. maxLength: 63
  7954. minLength: 1
  7955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7956. type: string
  7957. type: object
  7958. username:
  7959. description: |-
  7960. Username is a username used to authenticate using the UserPass Vault
  7961. authentication method
  7962. type: string
  7963. required:
  7964. - path
  7965. - username
  7966. type: object
  7967. type: object
  7968. caBundle:
  7969. description: |-
  7970. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7971. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7972. plain HTTP protocol connection. If not set the system root certificates
  7973. are used to validate the TLS connection.
  7974. format: byte
  7975. type: string
  7976. caProvider:
  7977. description: The provider for the CA bundle to use to validate Vault server certificate.
  7978. properties:
  7979. key:
  7980. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7981. maxLength: 253
  7982. minLength: 1
  7983. pattern: ^[-._a-zA-Z0-9]+$
  7984. type: string
  7985. name:
  7986. description: The name of the object located at the provider type.
  7987. maxLength: 253
  7988. minLength: 1
  7989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7990. type: string
  7991. namespace:
  7992. description: |-
  7993. The namespace the Provider type is in.
  7994. Can only be defined when used in a ClusterSecretStore.
  7995. maxLength: 63
  7996. minLength: 1
  7997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7998. type: string
  7999. type:
  8000. description: The type of provider to use such as "Secret", or "ConfigMap".
  8001. enum:
  8002. - Secret
  8003. - ConfigMap
  8004. type: string
  8005. required:
  8006. - name
  8007. - type
  8008. type: object
  8009. checkAndSet:
  8010. description: |-
  8011. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  8012. Only applies to Vault KV v2 stores. When enabled, write operations must include
  8013. the current version of the secret to prevent unintentional overwrites.
  8014. properties:
  8015. required:
  8016. description: |-
  8017. Required when true, all write operations must include a check-and-set parameter.
  8018. This helps prevent unintentional overwrites of secrets.
  8019. type: boolean
  8020. type: object
  8021. forwardInconsistent:
  8022. description: |-
  8023. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  8024. leader instead of simply retrying within a loop. This can increase performance if
  8025. the option is enabled serverside.
  8026. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  8027. type: boolean
  8028. headers:
  8029. additionalProperties:
  8030. type: string
  8031. description: Headers to be added in Vault request
  8032. type: object
  8033. namespace:
  8034. description: |-
  8035. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  8036. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  8037. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  8038. type: string
  8039. path:
  8040. description: |-
  8041. Path is the mount path of the Vault KV backend endpoint, e.g:
  8042. "secret". The v2 KV secret engine version specific "/data" path suffix
  8043. for fetching secrets from Vault is optional and will be appended
  8044. if not present in specified path.
  8045. type: string
  8046. readYourWrites:
  8047. description: |-
  8048. ReadYourWrites ensures isolated read-after-write semantics by
  8049. providing discovered cluster replication states in each request.
  8050. More information about eventual consistency in Vault can be found here
  8051. https://www.vaultproject.io/docs/enterprise/consistency
  8052. type: boolean
  8053. server:
  8054. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  8055. type: string
  8056. tls:
  8057. description: |-
  8058. The configuration used for client side related TLS communication, when the Vault server
  8059. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  8060. This parameter is ignored for plain HTTP protocol connection.
  8061. It's worth noting this configuration is different from the "TLS certificates auth method",
  8062. which is available under the `auth.cert` section.
  8063. properties:
  8064. certSecretRef:
  8065. description: |-
  8066. CertSecretRef is a certificate added to the transport layer
  8067. when communicating with the Vault server.
  8068. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  8069. properties:
  8070. key:
  8071. description: |-
  8072. A key in the referenced Secret.
  8073. Some instances of this field may be defaulted, in others it may be required.
  8074. maxLength: 253
  8075. minLength: 1
  8076. pattern: ^[-._a-zA-Z0-9]+$
  8077. type: string
  8078. name:
  8079. description: The name of the Secret resource being referred to.
  8080. maxLength: 253
  8081. minLength: 1
  8082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8083. type: string
  8084. namespace:
  8085. description: |-
  8086. The namespace of the Secret resource being referred to.
  8087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8088. maxLength: 63
  8089. minLength: 1
  8090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8091. type: string
  8092. type: object
  8093. keySecretRef:
  8094. description: |-
  8095. KeySecretRef to a key in a Secret resource containing client private key
  8096. added to the transport layer when communicating with the Vault server.
  8097. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  8098. properties:
  8099. key:
  8100. description: |-
  8101. A key in the referenced Secret.
  8102. Some instances of this field may be defaulted, in others it may be required.
  8103. maxLength: 253
  8104. minLength: 1
  8105. pattern: ^[-._a-zA-Z0-9]+$
  8106. type: string
  8107. name:
  8108. description: The name of the Secret resource being referred to.
  8109. maxLength: 253
  8110. minLength: 1
  8111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8112. type: string
  8113. namespace:
  8114. description: |-
  8115. The namespace of the Secret resource being referred to.
  8116. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8117. maxLength: 63
  8118. minLength: 1
  8119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8120. type: string
  8121. type: object
  8122. type: object
  8123. version:
  8124. default: v2
  8125. description: |-
  8126. Version is the Vault KV secret engine version. This can be either "v1" or
  8127. "v2". Version defaults to "v2".
  8128. enum:
  8129. - v1
  8130. - v2
  8131. type: string
  8132. required:
  8133. - server
  8134. type: object
  8135. volcengine:
  8136. description: Volcengine configures this store to sync secrets using the Volcengine provider
  8137. properties:
  8138. auth:
  8139. description: |-
  8140. Auth defines the authentication method to use.
  8141. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  8142. properties:
  8143. secretRef:
  8144. description: |-
  8145. SecretRef defines the static credentials to use for authentication.
  8146. If not set, IRSA is used.
  8147. properties:
  8148. accessKeyID:
  8149. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  8150. properties:
  8151. key:
  8152. description: |-
  8153. A key in the referenced Secret.
  8154. Some instances of this field may be defaulted, in others it may be required.
  8155. maxLength: 253
  8156. minLength: 1
  8157. pattern: ^[-._a-zA-Z0-9]+$
  8158. type: string
  8159. name:
  8160. description: The name of the Secret resource being referred to.
  8161. maxLength: 253
  8162. minLength: 1
  8163. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8164. type: string
  8165. namespace:
  8166. description: |-
  8167. The namespace of the Secret resource being referred to.
  8168. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8169. maxLength: 63
  8170. minLength: 1
  8171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8172. type: string
  8173. type: object
  8174. secretAccessKey:
  8175. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  8176. properties:
  8177. key:
  8178. description: |-
  8179. A key in the referenced Secret.
  8180. Some instances of this field may be defaulted, in others it may be required.
  8181. maxLength: 253
  8182. minLength: 1
  8183. pattern: ^[-._a-zA-Z0-9]+$
  8184. type: string
  8185. name:
  8186. description: The name of the Secret resource being referred to.
  8187. maxLength: 253
  8188. minLength: 1
  8189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8190. type: string
  8191. namespace:
  8192. description: |-
  8193. The namespace of the Secret resource being referred to.
  8194. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8195. maxLength: 63
  8196. minLength: 1
  8197. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8198. type: string
  8199. type: object
  8200. token:
  8201. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  8202. properties:
  8203. key:
  8204. description: |-
  8205. A key in the referenced Secret.
  8206. Some instances of this field may be defaulted, in others it may be required.
  8207. maxLength: 253
  8208. minLength: 1
  8209. pattern: ^[-._a-zA-Z0-9]+$
  8210. type: string
  8211. name:
  8212. description: The name of the Secret resource being referred to.
  8213. maxLength: 253
  8214. minLength: 1
  8215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8216. type: string
  8217. namespace:
  8218. description: |-
  8219. The namespace of the Secret resource being referred to.
  8220. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8221. maxLength: 63
  8222. minLength: 1
  8223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8224. type: string
  8225. type: object
  8226. required:
  8227. - accessKeyID
  8228. - secretAccessKey
  8229. type: object
  8230. type: object
  8231. region:
  8232. description: Region specifies the Volcengine region to connect to.
  8233. type: string
  8234. required:
  8235. - region
  8236. type: object
  8237. webhook:
  8238. description: Webhook configures this store to sync secrets using a generic templated webhook
  8239. properties:
  8240. auth:
  8241. description: Auth specifies a authorization protocol. Only one protocol may be set.
  8242. maxProperties: 1
  8243. minProperties: 1
  8244. properties:
  8245. ntlm:
  8246. description: NTLMProtocol configures the store to use NTLM for auth
  8247. properties:
  8248. passwordSecret:
  8249. description: |-
  8250. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8251. In some instances, `key` is a required field.
  8252. properties:
  8253. key:
  8254. description: |-
  8255. A key in the referenced Secret.
  8256. Some instances of this field may be defaulted, in others it may be required.
  8257. maxLength: 253
  8258. minLength: 1
  8259. pattern: ^[-._a-zA-Z0-9]+$
  8260. type: string
  8261. name:
  8262. description: The name of the Secret resource being referred to.
  8263. maxLength: 253
  8264. minLength: 1
  8265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8266. type: string
  8267. namespace:
  8268. description: |-
  8269. The namespace of the Secret resource being referred to.
  8270. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8271. maxLength: 63
  8272. minLength: 1
  8273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8274. type: string
  8275. type: object
  8276. usernameSecret:
  8277. description: |-
  8278. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8279. In some instances, `key` is a required field.
  8280. properties:
  8281. key:
  8282. description: |-
  8283. A key in the referenced Secret.
  8284. Some instances of this field may be defaulted, in others it may be required.
  8285. maxLength: 253
  8286. minLength: 1
  8287. pattern: ^[-._a-zA-Z0-9]+$
  8288. type: string
  8289. name:
  8290. description: The name of the Secret resource being referred to.
  8291. maxLength: 253
  8292. minLength: 1
  8293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8294. type: string
  8295. namespace:
  8296. description: |-
  8297. The namespace of the Secret resource being referred to.
  8298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8299. maxLength: 63
  8300. minLength: 1
  8301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8302. type: string
  8303. type: object
  8304. required:
  8305. - passwordSecret
  8306. - usernameSecret
  8307. type: object
  8308. type: object
  8309. body:
  8310. description: Body
  8311. type: string
  8312. caBundle:
  8313. description: |-
  8314. PEM encoded CA bundle used to validate webhook server certificate. Only used
  8315. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8316. plain HTTP protocol connection. If not set the system root certificates
  8317. are used to validate the TLS connection.
  8318. format: byte
  8319. type: string
  8320. caProvider:
  8321. description: The provider for the CA bundle to use to validate webhook server certificate.
  8322. properties:
  8323. key:
  8324. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8325. maxLength: 253
  8326. minLength: 1
  8327. pattern: ^[-._a-zA-Z0-9]+$
  8328. type: string
  8329. name:
  8330. description: The name of the object located at the provider type.
  8331. maxLength: 253
  8332. minLength: 1
  8333. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8334. type: string
  8335. namespace:
  8336. description: The namespace the Provider type is in.
  8337. maxLength: 63
  8338. minLength: 1
  8339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8340. type: string
  8341. type:
  8342. description: The type of provider to use such as "Secret", or "ConfigMap".
  8343. enum:
  8344. - Secret
  8345. - ConfigMap
  8346. type: string
  8347. required:
  8348. - name
  8349. - type
  8350. type: object
  8351. headers:
  8352. additionalProperties:
  8353. type: string
  8354. description: Headers
  8355. type: object
  8356. method:
  8357. description: Webhook Method
  8358. type: string
  8359. result:
  8360. description: Result formatting
  8361. properties:
  8362. jsonPath:
  8363. description: Json path of return value
  8364. type: string
  8365. type: object
  8366. secrets:
  8367. description: |-
  8368. Secrets to fill in templates
  8369. These secrets will be passed to the templating function as key value pairs under the given name
  8370. items:
  8371. description: WebhookSecret defines a secret that will be passed to the webhook request.
  8372. properties:
  8373. name:
  8374. description: Name of this secret in templates
  8375. type: string
  8376. secretRef:
  8377. description: Secret ref to fill in credentials
  8378. properties:
  8379. key:
  8380. description: |-
  8381. A key in the referenced Secret.
  8382. Some instances of this field may be defaulted, in others it may be required.
  8383. maxLength: 253
  8384. minLength: 1
  8385. pattern: ^[-._a-zA-Z0-9]+$
  8386. type: string
  8387. name:
  8388. description: The name of the Secret resource being referred to.
  8389. maxLength: 253
  8390. minLength: 1
  8391. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8392. type: string
  8393. namespace:
  8394. description: |-
  8395. The namespace of the Secret resource being referred to.
  8396. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8397. maxLength: 63
  8398. minLength: 1
  8399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8400. type: string
  8401. type: object
  8402. required:
  8403. - name
  8404. - secretRef
  8405. type: object
  8406. type: array
  8407. timeout:
  8408. description: Timeout
  8409. type: string
  8410. url:
  8411. description: Webhook url to call
  8412. type: string
  8413. required:
  8414. - url
  8415. type: object
  8416. yandexcertificatemanager:
  8417. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8418. properties:
  8419. apiEndpoint:
  8420. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8421. type: string
  8422. auth:
  8423. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8424. properties:
  8425. authorizedKeySecretRef:
  8426. description: The authorized key used for authentication
  8427. properties:
  8428. key:
  8429. description: |-
  8430. A key in the referenced Secret.
  8431. Some instances of this field may be defaulted, in others it may be required.
  8432. maxLength: 253
  8433. minLength: 1
  8434. pattern: ^[-._a-zA-Z0-9]+$
  8435. type: string
  8436. name:
  8437. description: The name of the Secret resource being referred to.
  8438. maxLength: 253
  8439. minLength: 1
  8440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8441. type: string
  8442. namespace:
  8443. description: |-
  8444. The namespace of the Secret resource being referred to.
  8445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8446. maxLength: 63
  8447. minLength: 1
  8448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8449. type: string
  8450. type: object
  8451. type: object
  8452. caProvider:
  8453. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8454. properties:
  8455. certSecretRef:
  8456. description: |-
  8457. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8458. In some instances, `key` is a required field.
  8459. properties:
  8460. key:
  8461. description: |-
  8462. A key in the referenced Secret.
  8463. Some instances of this field may be defaulted, in others it may be required.
  8464. maxLength: 253
  8465. minLength: 1
  8466. pattern: ^[-._a-zA-Z0-9]+$
  8467. type: string
  8468. name:
  8469. description: The name of the Secret resource being referred to.
  8470. maxLength: 253
  8471. minLength: 1
  8472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8473. type: string
  8474. namespace:
  8475. description: |-
  8476. The namespace of the Secret resource being referred to.
  8477. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8478. maxLength: 63
  8479. minLength: 1
  8480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8481. type: string
  8482. type: object
  8483. type: object
  8484. fetching:
  8485. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  8486. maxProperties: 1
  8487. minProperties: 1
  8488. properties:
  8489. byID:
  8490. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8491. type: object
  8492. byName:
  8493. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8494. properties:
  8495. folderID:
  8496. description: The folder to fetch secrets from
  8497. type: string
  8498. required:
  8499. - folderID
  8500. type: object
  8501. type: object
  8502. required:
  8503. - auth
  8504. type: object
  8505. yandexlockbox:
  8506. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8507. properties:
  8508. apiEndpoint:
  8509. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8510. type: string
  8511. auth:
  8512. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8513. properties:
  8514. authorizedKeySecretRef:
  8515. description: The authorized key used for authentication
  8516. properties:
  8517. key:
  8518. description: |-
  8519. A key in the referenced Secret.
  8520. Some instances of this field may be defaulted, in others it may be required.
  8521. maxLength: 253
  8522. minLength: 1
  8523. pattern: ^[-._a-zA-Z0-9]+$
  8524. type: string
  8525. name:
  8526. description: The name of the Secret resource being referred to.
  8527. maxLength: 253
  8528. minLength: 1
  8529. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8530. type: string
  8531. namespace:
  8532. description: |-
  8533. The namespace of the Secret resource being referred to.
  8534. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8535. maxLength: 63
  8536. minLength: 1
  8537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8538. type: string
  8539. type: object
  8540. type: object
  8541. caProvider:
  8542. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8543. properties:
  8544. certSecretRef:
  8545. description: |-
  8546. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8547. In some instances, `key` is a required field.
  8548. properties:
  8549. key:
  8550. description: |-
  8551. A key in the referenced Secret.
  8552. Some instances of this field may be defaulted, in others it may be required.
  8553. maxLength: 253
  8554. minLength: 1
  8555. pattern: ^[-._a-zA-Z0-9]+$
  8556. type: string
  8557. name:
  8558. description: The name of the Secret resource being referred to.
  8559. maxLength: 253
  8560. minLength: 1
  8561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8562. type: string
  8563. namespace:
  8564. description: |-
  8565. The namespace of the Secret resource being referred to.
  8566. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8567. maxLength: 63
  8568. minLength: 1
  8569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8570. type: string
  8571. type: object
  8572. type: object
  8573. fetching:
  8574. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8575. maxProperties: 1
  8576. minProperties: 1
  8577. properties:
  8578. byID:
  8579. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8580. type: object
  8581. byName:
  8582. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8583. properties:
  8584. folderID:
  8585. description: The folder to fetch secrets from
  8586. type: string
  8587. required:
  8588. - folderID
  8589. type: object
  8590. type: object
  8591. required:
  8592. - auth
  8593. type: object
  8594. type: object
  8595. refreshInterval:
  8596. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8597. type: integer
  8598. retrySettings:
  8599. description: Used to configure HTTP retries on failures.
  8600. properties:
  8601. maxRetries:
  8602. format: int32
  8603. type: integer
  8604. retryInterval:
  8605. type: string
  8606. type: object
  8607. required:
  8608. - provider
  8609. type: object
  8610. status:
  8611. description: SecretStoreStatus defines the observed state of the SecretStore.
  8612. properties:
  8613. capabilities:
  8614. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8615. type: string
  8616. conditions:
  8617. items:
  8618. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8619. properties:
  8620. lastTransitionTime:
  8621. format: date-time
  8622. type: string
  8623. message:
  8624. type: string
  8625. reason:
  8626. type: string
  8627. status:
  8628. type: string
  8629. type:
  8630. description: SecretStoreConditionType represents the condition of the SecretStore.
  8631. type: string
  8632. required:
  8633. - status
  8634. - type
  8635. type: object
  8636. type: array
  8637. type: object
  8638. type: object
  8639. served: true
  8640. storage: true
  8641. subresources:
  8642. status: {}
  8643. - additionalPrinterColumns:
  8644. - jsonPath: .metadata.creationTimestamp
  8645. name: AGE
  8646. type: date
  8647. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8648. name: Status
  8649. type: string
  8650. - jsonPath: .status.capabilities
  8651. name: Capabilities
  8652. type: string
  8653. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8654. name: Ready
  8655. type: string
  8656. deprecated: true
  8657. name: v1beta1
  8658. schema:
  8659. openAPIV3Schema:
  8660. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8661. properties:
  8662. apiVersion:
  8663. description: |-
  8664. APIVersion defines the versioned schema of this representation of an object.
  8665. Servers should convert recognized schemas to the latest internal value, and
  8666. may reject unrecognized values.
  8667. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8668. type: string
  8669. kind:
  8670. description: |-
  8671. Kind is a string value representing the REST resource this object represents.
  8672. Servers may infer this from the endpoint the client submits requests to.
  8673. Cannot be updated.
  8674. In CamelCase.
  8675. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8676. type: string
  8677. metadata:
  8678. type: object
  8679. spec:
  8680. description: SecretStoreSpec defines the desired state of SecretStore.
  8681. properties:
  8682. conditions:
  8683. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8684. items:
  8685. description: |-
  8686. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8687. for a ClusterSecretStore instance.
  8688. properties:
  8689. namespaceRegexes:
  8690. description: Choose namespaces by using regex matching
  8691. items:
  8692. type: string
  8693. type: array
  8694. namespaceSelector:
  8695. description: Choose namespace using a labelSelector
  8696. properties:
  8697. matchExpressions:
  8698. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8699. items:
  8700. description: |-
  8701. A label selector requirement is a selector that contains values, a key, and an operator that
  8702. relates the key and values.
  8703. properties:
  8704. key:
  8705. description: key is the label key that the selector applies to.
  8706. type: string
  8707. operator:
  8708. description: |-
  8709. operator represents a key's relationship to a set of values.
  8710. Valid operators are In, NotIn, Exists and DoesNotExist.
  8711. type: string
  8712. values:
  8713. description: |-
  8714. values is an array of string values. If the operator is In or NotIn,
  8715. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8716. the values array must be empty. This array is replaced during a strategic
  8717. merge patch.
  8718. items:
  8719. type: string
  8720. type: array
  8721. x-kubernetes-list-type: atomic
  8722. required:
  8723. - key
  8724. - operator
  8725. type: object
  8726. type: array
  8727. x-kubernetes-list-type: atomic
  8728. matchLabels:
  8729. additionalProperties:
  8730. type: string
  8731. description: |-
  8732. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8733. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8734. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8735. type: object
  8736. type: object
  8737. x-kubernetes-map-type: atomic
  8738. namespaces:
  8739. description: Choose namespaces by name
  8740. items:
  8741. maxLength: 63
  8742. minLength: 1
  8743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8744. type: string
  8745. type: array
  8746. type: object
  8747. type: array
  8748. controller:
  8749. description: |-
  8750. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8751. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8752. type: string
  8753. provider:
  8754. description: Used to configure the provider. Only one provider may be set
  8755. maxProperties: 1
  8756. minProperties: 1
  8757. properties:
  8758. akeyless:
  8759. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8760. properties:
  8761. akeylessGWApiURL:
  8762. description: Akeyless GW API Url from which the secrets to be fetched from.
  8763. type: string
  8764. authSecretRef:
  8765. description: Auth configures how the operator authenticates with Akeyless.
  8766. properties:
  8767. kubernetesAuth:
  8768. description: |-
  8769. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8770. token stored in the named Secret resource.
  8771. properties:
  8772. accessID:
  8773. description: the Akeyless Kubernetes auth-method access-id
  8774. type: string
  8775. k8sConfName:
  8776. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8777. type: string
  8778. secretRef:
  8779. description: |-
  8780. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8781. for authenticating with Akeyless. If a name is specified without a key,
  8782. `token` is the default. If one is not specified, the one bound to
  8783. the controller will be used.
  8784. properties:
  8785. key:
  8786. description: |-
  8787. A key in the referenced Secret.
  8788. Some instances of this field may be defaulted, in others it may be required.
  8789. maxLength: 253
  8790. minLength: 1
  8791. pattern: ^[-._a-zA-Z0-9]+$
  8792. type: string
  8793. name:
  8794. description: The name of the Secret resource being referred to.
  8795. maxLength: 253
  8796. minLength: 1
  8797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8798. type: string
  8799. namespace:
  8800. description: |-
  8801. The namespace of the Secret resource being referred to.
  8802. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8803. maxLength: 63
  8804. minLength: 1
  8805. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8806. type: string
  8807. type: object
  8808. serviceAccountRef:
  8809. description: |-
  8810. Optional service account field containing the name of a kubernetes ServiceAccount.
  8811. If the service account is specified, the service account secret token JWT will be used
  8812. for authenticating with Akeyless. If the service account selector is not supplied,
  8813. the secretRef will be used instead.
  8814. properties:
  8815. audiences:
  8816. description: |-
  8817. Audience specifies the `aud` claim for the service account token
  8818. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8819. then this audiences will be appended to the list
  8820. items:
  8821. type: string
  8822. type: array
  8823. name:
  8824. description: The name of the ServiceAccount resource being referred to.
  8825. maxLength: 253
  8826. minLength: 1
  8827. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8828. type: string
  8829. namespace:
  8830. description: |-
  8831. Namespace of the resource being referred to.
  8832. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8833. maxLength: 63
  8834. minLength: 1
  8835. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8836. type: string
  8837. required:
  8838. - name
  8839. type: object
  8840. required:
  8841. - accessID
  8842. - k8sConfName
  8843. type: object
  8844. secretRef:
  8845. description: |-
  8846. Reference to a Secret that contains the details
  8847. to authenticate with Akeyless.
  8848. properties:
  8849. accessID:
  8850. description: The SecretAccessID is used for authentication
  8851. properties:
  8852. key:
  8853. description: |-
  8854. A key in the referenced Secret.
  8855. Some instances of this field may be defaulted, in others it may be required.
  8856. maxLength: 253
  8857. minLength: 1
  8858. pattern: ^[-._a-zA-Z0-9]+$
  8859. type: string
  8860. name:
  8861. description: The name of the Secret resource being referred to.
  8862. maxLength: 253
  8863. minLength: 1
  8864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8865. type: string
  8866. namespace:
  8867. description: |-
  8868. The namespace of the Secret resource being referred to.
  8869. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8870. maxLength: 63
  8871. minLength: 1
  8872. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8873. type: string
  8874. type: object
  8875. accessType:
  8876. description: |-
  8877. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8878. In some instances, `key` is a required field.
  8879. properties:
  8880. key:
  8881. description: |-
  8882. A key in the referenced Secret.
  8883. Some instances of this field may be defaulted, in others it may be required.
  8884. maxLength: 253
  8885. minLength: 1
  8886. pattern: ^[-._a-zA-Z0-9]+$
  8887. type: string
  8888. name:
  8889. description: The name of the Secret resource being referred to.
  8890. maxLength: 253
  8891. minLength: 1
  8892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8893. type: string
  8894. namespace:
  8895. description: |-
  8896. The namespace of the Secret resource being referred to.
  8897. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8898. maxLength: 63
  8899. minLength: 1
  8900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8901. type: string
  8902. type: object
  8903. accessTypeParam:
  8904. description: |-
  8905. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8906. In some instances, `key` is a required field.
  8907. properties:
  8908. key:
  8909. description: |-
  8910. A key in the referenced Secret.
  8911. Some instances of this field may be defaulted, in others it may be required.
  8912. maxLength: 253
  8913. minLength: 1
  8914. pattern: ^[-._a-zA-Z0-9]+$
  8915. type: string
  8916. name:
  8917. description: The name of the Secret resource being referred to.
  8918. maxLength: 253
  8919. minLength: 1
  8920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8921. type: string
  8922. namespace:
  8923. description: |-
  8924. The namespace of the Secret resource being referred to.
  8925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8926. maxLength: 63
  8927. minLength: 1
  8928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8929. type: string
  8930. type: object
  8931. type: object
  8932. type: object
  8933. caBundle:
  8934. description: |-
  8935. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8936. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8937. are used to validate the TLS connection.
  8938. format: byte
  8939. type: string
  8940. caProvider:
  8941. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8942. properties:
  8943. key:
  8944. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8945. maxLength: 253
  8946. minLength: 1
  8947. pattern: ^[-._a-zA-Z0-9]+$
  8948. type: string
  8949. name:
  8950. description: The name of the object located at the provider type.
  8951. maxLength: 253
  8952. minLength: 1
  8953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8954. type: string
  8955. namespace:
  8956. description: |-
  8957. The namespace the Provider type is in.
  8958. Can only be defined when used in a ClusterSecretStore.
  8959. maxLength: 63
  8960. minLength: 1
  8961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8962. type: string
  8963. type:
  8964. description: The type of provider to use such as "Secret", or "ConfigMap".
  8965. enum:
  8966. - Secret
  8967. - ConfigMap
  8968. type: string
  8969. required:
  8970. - name
  8971. - type
  8972. type: object
  8973. required:
  8974. - akeylessGWApiURL
  8975. - authSecretRef
  8976. type: object
  8977. alibaba:
  8978. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8979. properties:
  8980. auth:
  8981. description: AlibabaAuth contains a secretRef for credentials.
  8982. properties:
  8983. rrsa:
  8984. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  8985. properties:
  8986. oidcProviderArn:
  8987. type: string
  8988. oidcTokenFilePath:
  8989. type: string
  8990. roleArn:
  8991. type: string
  8992. sessionName:
  8993. type: string
  8994. required:
  8995. - oidcProviderArn
  8996. - oidcTokenFilePath
  8997. - roleArn
  8998. - sessionName
  8999. type: object
  9000. secretRef:
  9001. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  9002. properties:
  9003. accessKeyIDSecretRef:
  9004. description: The AccessKeyID is used for authentication
  9005. properties:
  9006. key:
  9007. description: |-
  9008. A key in the referenced Secret.
  9009. Some instances of this field may be defaulted, in others it may be required.
  9010. maxLength: 253
  9011. minLength: 1
  9012. pattern: ^[-._a-zA-Z0-9]+$
  9013. type: string
  9014. name:
  9015. description: The name of the Secret resource being referred to.
  9016. maxLength: 253
  9017. minLength: 1
  9018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9019. type: string
  9020. namespace:
  9021. description: |-
  9022. The namespace of the Secret resource being referred to.
  9023. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9024. maxLength: 63
  9025. minLength: 1
  9026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9027. type: string
  9028. type: object
  9029. accessKeySecretSecretRef:
  9030. description: The AccessKeySecret is used for authentication
  9031. properties:
  9032. key:
  9033. description: |-
  9034. A key in the referenced Secret.
  9035. Some instances of this field may be defaulted, in others it may be required.
  9036. maxLength: 253
  9037. minLength: 1
  9038. pattern: ^[-._a-zA-Z0-9]+$
  9039. type: string
  9040. name:
  9041. description: The name of the Secret resource being referred to.
  9042. maxLength: 253
  9043. minLength: 1
  9044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9045. type: string
  9046. namespace:
  9047. description: |-
  9048. The namespace of the Secret resource being referred to.
  9049. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9050. maxLength: 63
  9051. minLength: 1
  9052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9053. type: string
  9054. type: object
  9055. required:
  9056. - accessKeyIDSecretRef
  9057. - accessKeySecretSecretRef
  9058. type: object
  9059. type: object
  9060. regionID:
  9061. description: Alibaba Region to be used for the provider
  9062. type: string
  9063. required:
  9064. - auth
  9065. - regionID
  9066. type: object
  9067. aws:
  9068. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  9069. properties:
  9070. additionalRoles:
  9071. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  9072. items:
  9073. type: string
  9074. type: array
  9075. auth:
  9076. description: |-
  9077. Auth defines the information necessary to authenticate against AWS
  9078. if not set aws sdk will infer credentials from your environment
  9079. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  9080. properties:
  9081. jwt:
  9082. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  9083. properties:
  9084. serviceAccountRef:
  9085. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  9086. properties:
  9087. audiences:
  9088. description: |-
  9089. Audience specifies the `aud` claim for the service account token
  9090. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9091. then this audiences will be appended to the list
  9092. items:
  9093. type: string
  9094. type: array
  9095. name:
  9096. description: The name of the ServiceAccount resource being referred to.
  9097. maxLength: 253
  9098. minLength: 1
  9099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9100. type: string
  9101. namespace:
  9102. description: |-
  9103. Namespace of the resource being referred to.
  9104. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9105. maxLength: 63
  9106. minLength: 1
  9107. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9108. type: string
  9109. required:
  9110. - name
  9111. type: object
  9112. type: object
  9113. secretRef:
  9114. description: |-
  9115. AWSAuthSecretRef holds secret references for AWS credentials
  9116. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  9117. properties:
  9118. accessKeyIDSecretRef:
  9119. description: The AccessKeyID is used for authentication
  9120. properties:
  9121. key:
  9122. description: |-
  9123. A key in the referenced Secret.
  9124. Some instances of this field may be defaulted, in others it may be required.
  9125. maxLength: 253
  9126. minLength: 1
  9127. pattern: ^[-._a-zA-Z0-9]+$
  9128. type: string
  9129. name:
  9130. description: The name of the Secret resource being referred to.
  9131. maxLength: 253
  9132. minLength: 1
  9133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9134. type: string
  9135. namespace:
  9136. description: |-
  9137. The namespace of the Secret resource being referred to.
  9138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9139. maxLength: 63
  9140. minLength: 1
  9141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9142. type: string
  9143. type: object
  9144. secretAccessKeySecretRef:
  9145. description: The SecretAccessKey is used for authentication
  9146. properties:
  9147. key:
  9148. description: |-
  9149. A key in the referenced Secret.
  9150. Some instances of this field may be defaulted, in others it may be required.
  9151. maxLength: 253
  9152. minLength: 1
  9153. pattern: ^[-._a-zA-Z0-9]+$
  9154. type: string
  9155. name:
  9156. description: The name of the Secret resource being referred to.
  9157. maxLength: 253
  9158. minLength: 1
  9159. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9160. type: string
  9161. namespace:
  9162. description: |-
  9163. The namespace of the Secret resource being referred to.
  9164. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9165. maxLength: 63
  9166. minLength: 1
  9167. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9168. type: string
  9169. type: object
  9170. sessionTokenSecretRef:
  9171. description: |-
  9172. The SessionToken used for authentication
  9173. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  9174. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  9175. properties:
  9176. key:
  9177. description: |-
  9178. A key in the referenced Secret.
  9179. Some instances of this field may be defaulted, in others it may be required.
  9180. maxLength: 253
  9181. minLength: 1
  9182. pattern: ^[-._a-zA-Z0-9]+$
  9183. type: string
  9184. name:
  9185. description: The name of the Secret resource being referred to.
  9186. maxLength: 253
  9187. minLength: 1
  9188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9189. type: string
  9190. namespace:
  9191. description: |-
  9192. The namespace of the Secret resource being referred to.
  9193. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9194. maxLength: 63
  9195. minLength: 1
  9196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9197. type: string
  9198. type: object
  9199. type: object
  9200. type: object
  9201. externalID:
  9202. description: AWS External ID set on assumed IAM roles
  9203. type: string
  9204. prefix:
  9205. description: Prefix adds a prefix to all retrieved values.
  9206. type: string
  9207. region:
  9208. description: AWS Region to be used for the provider
  9209. type: string
  9210. role:
  9211. description: Role is a Role ARN which the provider will assume
  9212. type: string
  9213. secretsManager:
  9214. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  9215. properties:
  9216. forceDeleteWithoutRecovery:
  9217. description: |-
  9218. Specifies whether to delete the secret without any recovery window. You
  9219. can't use both this parameter and RecoveryWindowInDays in the same call.
  9220. If you don't use either, then by default Secrets Manager uses a 30 day
  9221. recovery window.
  9222. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  9223. type: boolean
  9224. recoveryWindowInDays:
  9225. description: |-
  9226. The number of days from 7 to 30 that Secrets Manager waits before
  9227. permanently deleting the secret. You can't use both this parameter and
  9228. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  9229. then by default Secrets Manager uses a 30 day recovery window.
  9230. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  9231. format: int64
  9232. type: integer
  9233. type: object
  9234. service:
  9235. description: Service defines which service should be used to fetch the secrets
  9236. enum:
  9237. - SecretsManager
  9238. - ParameterStore
  9239. type: string
  9240. sessionTags:
  9241. description: AWS STS assume role session tags
  9242. items:
  9243. description: Tag defines a tag key and value for AWS resources.
  9244. properties:
  9245. key:
  9246. type: string
  9247. value:
  9248. type: string
  9249. required:
  9250. - key
  9251. - value
  9252. type: object
  9253. type: array
  9254. transitiveTagKeys:
  9255. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  9256. items:
  9257. type: string
  9258. type: array
  9259. required:
  9260. - region
  9261. - service
  9262. type: object
  9263. azurekv:
  9264. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  9265. properties:
  9266. authSecretRef:
  9267. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9268. properties:
  9269. clientCertificate:
  9270. description: The Azure ClientCertificate of the service principle used for authentication.
  9271. properties:
  9272. key:
  9273. description: |-
  9274. A key in the referenced Secret.
  9275. Some instances of this field may be defaulted, in others it may be required.
  9276. maxLength: 253
  9277. minLength: 1
  9278. pattern: ^[-._a-zA-Z0-9]+$
  9279. type: string
  9280. name:
  9281. description: The name of the Secret resource being referred to.
  9282. maxLength: 253
  9283. minLength: 1
  9284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9285. type: string
  9286. namespace:
  9287. description: |-
  9288. The namespace of the Secret resource being referred to.
  9289. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9290. maxLength: 63
  9291. minLength: 1
  9292. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9293. type: string
  9294. type: object
  9295. clientId:
  9296. description: The Azure clientId of the service principle or managed identity used for authentication.
  9297. properties:
  9298. key:
  9299. description: |-
  9300. A key in the referenced Secret.
  9301. Some instances of this field may be defaulted, in others it may be required.
  9302. maxLength: 253
  9303. minLength: 1
  9304. pattern: ^[-._a-zA-Z0-9]+$
  9305. type: string
  9306. name:
  9307. description: The name of the Secret resource being referred to.
  9308. maxLength: 253
  9309. minLength: 1
  9310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9311. type: string
  9312. namespace:
  9313. description: |-
  9314. The namespace of the Secret resource being referred to.
  9315. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9316. maxLength: 63
  9317. minLength: 1
  9318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9319. type: string
  9320. type: object
  9321. clientSecret:
  9322. description: The Azure ClientSecret of the service principle used for authentication.
  9323. properties:
  9324. key:
  9325. description: |-
  9326. A key in the referenced Secret.
  9327. Some instances of this field may be defaulted, in others it may be required.
  9328. maxLength: 253
  9329. minLength: 1
  9330. pattern: ^[-._a-zA-Z0-9]+$
  9331. type: string
  9332. name:
  9333. description: The name of the Secret resource being referred to.
  9334. maxLength: 253
  9335. minLength: 1
  9336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9337. type: string
  9338. namespace:
  9339. description: |-
  9340. The namespace of the Secret resource being referred to.
  9341. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9342. maxLength: 63
  9343. minLength: 1
  9344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9345. type: string
  9346. type: object
  9347. tenantId:
  9348. description: The Azure tenantId of the managed identity used for authentication.
  9349. properties:
  9350. key:
  9351. description: |-
  9352. A key in the referenced Secret.
  9353. Some instances of this field may be defaulted, in others it may be required.
  9354. maxLength: 253
  9355. minLength: 1
  9356. pattern: ^[-._a-zA-Z0-9]+$
  9357. type: string
  9358. name:
  9359. description: The name of the Secret resource being referred to.
  9360. maxLength: 253
  9361. minLength: 1
  9362. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9363. type: string
  9364. namespace:
  9365. description: |-
  9366. The namespace of the Secret resource being referred to.
  9367. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9368. maxLength: 63
  9369. minLength: 1
  9370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9371. type: string
  9372. type: object
  9373. type: object
  9374. authType:
  9375. default: ServicePrincipal
  9376. description: |-
  9377. Auth type defines how to authenticate to the keyvault service.
  9378. Valid values are:
  9379. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  9380. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  9381. enum:
  9382. - ServicePrincipal
  9383. - ManagedIdentity
  9384. - WorkloadIdentity
  9385. type: string
  9386. environmentType:
  9387. default: PublicCloud
  9388. description: |-
  9389. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9390. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9391. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9392. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9393. enum:
  9394. - PublicCloud
  9395. - USGovernmentCloud
  9396. - ChinaCloud
  9397. - GermanCloud
  9398. type: string
  9399. identityId:
  9400. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9401. type: string
  9402. serviceAccountRef:
  9403. description: |-
  9404. ServiceAccountRef specified the service account
  9405. that should be used when authenticating with WorkloadIdentity.
  9406. properties:
  9407. audiences:
  9408. description: |-
  9409. Audience specifies the `aud` claim for the service account token
  9410. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9411. then this audiences will be appended to the list
  9412. items:
  9413. type: string
  9414. type: array
  9415. name:
  9416. description: The name of the ServiceAccount resource being referred to.
  9417. maxLength: 253
  9418. minLength: 1
  9419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9420. type: string
  9421. namespace:
  9422. description: |-
  9423. Namespace of the resource being referred to.
  9424. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9425. maxLength: 63
  9426. minLength: 1
  9427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9428. type: string
  9429. required:
  9430. - name
  9431. type: object
  9432. tenantId:
  9433. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9434. type: string
  9435. vaultUrl:
  9436. description: Vault Url from which the secrets to be fetched from.
  9437. type: string
  9438. required:
  9439. - vaultUrl
  9440. type: object
  9441. beyondtrust:
  9442. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  9443. properties:
  9444. auth:
  9445. description: Auth configures how the operator authenticates with Beyondtrust.
  9446. properties:
  9447. apiKey:
  9448. description: APIKey If not provided then ClientID/ClientSecret become required.
  9449. properties:
  9450. secretRef:
  9451. description: SecretRef references a key in a secret that will be used as value.
  9452. properties:
  9453. key:
  9454. description: |-
  9455. A key in the referenced Secret.
  9456. Some instances of this field may be defaulted, in others it may be required.
  9457. maxLength: 253
  9458. minLength: 1
  9459. pattern: ^[-._a-zA-Z0-9]+$
  9460. type: string
  9461. name:
  9462. description: The name of the Secret resource being referred to.
  9463. maxLength: 253
  9464. minLength: 1
  9465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9466. type: string
  9467. namespace:
  9468. description: |-
  9469. The namespace of the Secret resource being referred to.
  9470. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9471. maxLength: 63
  9472. minLength: 1
  9473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9474. type: string
  9475. type: object
  9476. value:
  9477. description: Value can be specified directly to set a value without using a secret.
  9478. type: string
  9479. type: object
  9480. certificate:
  9481. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  9482. properties:
  9483. secretRef:
  9484. description: SecretRef references a key in a secret that will be used as value.
  9485. properties:
  9486. key:
  9487. description: |-
  9488. A key in the referenced Secret.
  9489. Some instances of this field may be defaulted, in others it may be required.
  9490. maxLength: 253
  9491. minLength: 1
  9492. pattern: ^[-._a-zA-Z0-9]+$
  9493. type: string
  9494. name:
  9495. description: The name of the Secret resource being referred to.
  9496. maxLength: 253
  9497. minLength: 1
  9498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9499. type: string
  9500. namespace:
  9501. description: |-
  9502. The namespace of the Secret resource being referred to.
  9503. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9504. maxLength: 63
  9505. minLength: 1
  9506. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9507. type: string
  9508. type: object
  9509. value:
  9510. description: Value can be specified directly to set a value without using a secret.
  9511. type: string
  9512. type: object
  9513. certificateKey:
  9514. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9515. properties:
  9516. secretRef:
  9517. description: SecretRef references a key in a secret that will be used as value.
  9518. properties:
  9519. key:
  9520. description: |-
  9521. A key in the referenced Secret.
  9522. Some instances of this field may be defaulted, in others it may be required.
  9523. maxLength: 253
  9524. minLength: 1
  9525. pattern: ^[-._a-zA-Z0-9]+$
  9526. type: string
  9527. name:
  9528. description: The name of the Secret resource being referred to.
  9529. maxLength: 253
  9530. minLength: 1
  9531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9532. type: string
  9533. namespace:
  9534. description: |-
  9535. The namespace of the Secret resource being referred to.
  9536. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9537. maxLength: 63
  9538. minLength: 1
  9539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9540. type: string
  9541. type: object
  9542. value:
  9543. description: Value can be specified directly to set a value without using a secret.
  9544. type: string
  9545. type: object
  9546. clientId:
  9547. description: ClientID is the API OAuth Client ID.
  9548. properties:
  9549. secretRef:
  9550. description: SecretRef references a key in a secret that will be used as value.
  9551. properties:
  9552. key:
  9553. description: |-
  9554. A key in the referenced Secret.
  9555. Some instances of this field may be defaulted, in others it may be required.
  9556. maxLength: 253
  9557. minLength: 1
  9558. pattern: ^[-._a-zA-Z0-9]+$
  9559. type: string
  9560. name:
  9561. description: The name of the Secret resource being referred to.
  9562. maxLength: 253
  9563. minLength: 1
  9564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9565. type: string
  9566. namespace:
  9567. description: |-
  9568. The namespace of the Secret resource being referred to.
  9569. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9570. maxLength: 63
  9571. minLength: 1
  9572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9573. type: string
  9574. type: object
  9575. value:
  9576. description: Value can be specified directly to set a value without using a secret.
  9577. type: string
  9578. type: object
  9579. clientSecret:
  9580. description: ClientSecret is the API OAuth Client Secret.
  9581. properties:
  9582. secretRef:
  9583. description: SecretRef references a key in a secret that will be used as value.
  9584. properties:
  9585. key:
  9586. description: |-
  9587. A key in the referenced Secret.
  9588. Some instances of this field may be defaulted, in others it may be required.
  9589. maxLength: 253
  9590. minLength: 1
  9591. pattern: ^[-._a-zA-Z0-9]+$
  9592. type: string
  9593. name:
  9594. description: The name of the Secret resource being referred to.
  9595. maxLength: 253
  9596. minLength: 1
  9597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9598. type: string
  9599. namespace:
  9600. description: |-
  9601. The namespace of the Secret resource being referred to.
  9602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9603. maxLength: 63
  9604. minLength: 1
  9605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9606. type: string
  9607. type: object
  9608. value:
  9609. description: Value can be specified directly to set a value without using a secret.
  9610. type: string
  9611. type: object
  9612. type: object
  9613. server:
  9614. description: Auth configures how API server works.
  9615. properties:
  9616. apiUrl:
  9617. type: string
  9618. apiVersion:
  9619. type: string
  9620. clientTimeOutSeconds:
  9621. 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.
  9622. type: integer
  9623. decrypt:
  9624. default: true
  9625. 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.'
  9626. type: boolean
  9627. retrievalType:
  9628. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9629. type: string
  9630. separator:
  9631. description: A character that separates the folder names.
  9632. type: string
  9633. verifyCA:
  9634. type: boolean
  9635. required:
  9636. - apiUrl
  9637. - verifyCA
  9638. type: object
  9639. required:
  9640. - auth
  9641. - server
  9642. type: object
  9643. bitwardensecretsmanager:
  9644. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9645. properties:
  9646. apiURL:
  9647. type: string
  9648. auth:
  9649. description: |-
  9650. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9651. Make sure that the token being used has permissions on the given secret.
  9652. properties:
  9653. secretRef:
  9654. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9655. properties:
  9656. credentials:
  9657. description: AccessToken used for the bitwarden instance.
  9658. properties:
  9659. key:
  9660. description: |-
  9661. A key in the referenced Secret.
  9662. Some instances of this field may be defaulted, in others it may be required.
  9663. maxLength: 253
  9664. minLength: 1
  9665. pattern: ^[-._a-zA-Z0-9]+$
  9666. type: string
  9667. name:
  9668. description: The name of the Secret resource being referred to.
  9669. maxLength: 253
  9670. minLength: 1
  9671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9672. type: string
  9673. namespace:
  9674. description: |-
  9675. The namespace of the Secret resource being referred to.
  9676. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9677. maxLength: 63
  9678. minLength: 1
  9679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9680. type: string
  9681. type: object
  9682. required:
  9683. - credentials
  9684. type: object
  9685. required:
  9686. - secretRef
  9687. type: object
  9688. bitwardenServerSDKURL:
  9689. type: string
  9690. caBundle:
  9691. description: |-
  9692. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9693. can be performed.
  9694. type: string
  9695. caProvider:
  9696. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9697. properties:
  9698. key:
  9699. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9700. maxLength: 253
  9701. minLength: 1
  9702. pattern: ^[-._a-zA-Z0-9]+$
  9703. type: string
  9704. name:
  9705. description: The name of the object located at the provider type.
  9706. maxLength: 253
  9707. minLength: 1
  9708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9709. type: string
  9710. namespace:
  9711. description: |-
  9712. The namespace the Provider type is in.
  9713. Can only be defined when used in a ClusterSecretStore.
  9714. maxLength: 63
  9715. minLength: 1
  9716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9717. type: string
  9718. type:
  9719. description: The type of provider to use such as "Secret", or "ConfigMap".
  9720. enum:
  9721. - Secret
  9722. - ConfigMap
  9723. type: string
  9724. required:
  9725. - name
  9726. - type
  9727. type: object
  9728. identityURL:
  9729. type: string
  9730. organizationID:
  9731. description: OrganizationID determines which organization this secret store manages.
  9732. type: string
  9733. projectID:
  9734. description: ProjectID determines which project this secret store manages.
  9735. type: string
  9736. required:
  9737. - auth
  9738. - organizationID
  9739. - projectID
  9740. type: object
  9741. chef:
  9742. description: Chef configures this store to sync secrets with chef server
  9743. properties:
  9744. auth:
  9745. description: Auth defines the information necessary to authenticate against chef Server
  9746. properties:
  9747. secretRef:
  9748. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9749. properties:
  9750. privateKeySecretRef:
  9751. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9752. properties:
  9753. key:
  9754. description: |-
  9755. A key in the referenced Secret.
  9756. Some instances of this field may be defaulted, in others it may be required.
  9757. maxLength: 253
  9758. minLength: 1
  9759. pattern: ^[-._a-zA-Z0-9]+$
  9760. type: string
  9761. name:
  9762. description: The name of the Secret resource being referred to.
  9763. maxLength: 253
  9764. minLength: 1
  9765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9766. type: string
  9767. namespace:
  9768. description: |-
  9769. The namespace of the Secret resource being referred to.
  9770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9771. maxLength: 63
  9772. minLength: 1
  9773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9774. type: string
  9775. type: object
  9776. required:
  9777. - privateKeySecretRef
  9778. type: object
  9779. required:
  9780. - secretRef
  9781. type: object
  9782. serverUrl:
  9783. 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 "/"
  9784. type: string
  9785. username:
  9786. description: UserName should be the user ID on the chef server
  9787. type: string
  9788. required:
  9789. - auth
  9790. - serverUrl
  9791. - username
  9792. type: object
  9793. cloudrusm:
  9794. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9795. properties:
  9796. auth:
  9797. description: CSMAuth contains a secretRef for credentials.
  9798. properties:
  9799. secretRef:
  9800. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9801. properties:
  9802. accessKeyIDSecretRef:
  9803. description: The AccessKeyID is used for authentication
  9804. properties:
  9805. key:
  9806. description: |-
  9807. A key in the referenced Secret.
  9808. Some instances of this field may be defaulted, in others it may be required.
  9809. maxLength: 253
  9810. minLength: 1
  9811. pattern: ^[-._a-zA-Z0-9]+$
  9812. type: string
  9813. name:
  9814. description: The name of the Secret resource being referred to.
  9815. maxLength: 253
  9816. minLength: 1
  9817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9818. type: string
  9819. namespace:
  9820. description: |-
  9821. The namespace of the Secret resource being referred to.
  9822. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9823. maxLength: 63
  9824. minLength: 1
  9825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9826. type: string
  9827. type: object
  9828. accessKeySecretSecretRef:
  9829. description: The AccessKeySecret is used for authentication
  9830. properties:
  9831. key:
  9832. description: |-
  9833. A key in the referenced Secret.
  9834. Some instances of this field may be defaulted, in others it may be required.
  9835. maxLength: 253
  9836. minLength: 1
  9837. pattern: ^[-._a-zA-Z0-9]+$
  9838. type: string
  9839. name:
  9840. description: The name of the Secret resource being referred to.
  9841. maxLength: 253
  9842. minLength: 1
  9843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9844. type: string
  9845. namespace:
  9846. description: |-
  9847. The namespace of the Secret resource being referred to.
  9848. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9849. maxLength: 63
  9850. minLength: 1
  9851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9852. type: string
  9853. type: object
  9854. required:
  9855. - accessKeyIDSecretRef
  9856. - accessKeySecretSecretRef
  9857. type: object
  9858. type: object
  9859. projectID:
  9860. description: ProjectID is the project, which the secrets are stored in.
  9861. type: string
  9862. required:
  9863. - auth
  9864. type: object
  9865. conjur:
  9866. description: Conjur configures this store to sync secrets using conjur provider
  9867. properties:
  9868. auth:
  9869. description: Defines authentication settings for connecting to Conjur.
  9870. properties:
  9871. apikey:
  9872. description: Authenticates with Conjur using an API key.
  9873. properties:
  9874. account:
  9875. description: Account is the Conjur organization account name.
  9876. type: string
  9877. apiKeyRef:
  9878. description: |-
  9879. A reference to a specific 'key' containing the Conjur API key
  9880. within a Secret resource. In some instances, `key` is a required field.
  9881. properties:
  9882. key:
  9883. description: |-
  9884. A key in the referenced Secret.
  9885. Some instances of this field may be defaulted, in others it may be required.
  9886. maxLength: 253
  9887. minLength: 1
  9888. pattern: ^[-._a-zA-Z0-9]+$
  9889. type: string
  9890. name:
  9891. description: The name of the Secret resource being referred to.
  9892. maxLength: 253
  9893. minLength: 1
  9894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9895. type: string
  9896. namespace:
  9897. description: |-
  9898. The namespace of the Secret resource being referred to.
  9899. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9900. maxLength: 63
  9901. minLength: 1
  9902. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9903. type: string
  9904. type: object
  9905. userRef:
  9906. description: |-
  9907. A reference to a specific 'key' containing the Conjur username
  9908. within a Secret resource. In some instances, `key` is a required field.
  9909. properties:
  9910. key:
  9911. description: |-
  9912. A key in the referenced Secret.
  9913. Some instances of this field may be defaulted, in others it may be required.
  9914. maxLength: 253
  9915. minLength: 1
  9916. pattern: ^[-._a-zA-Z0-9]+$
  9917. type: string
  9918. name:
  9919. description: The name of the Secret resource being referred to.
  9920. maxLength: 253
  9921. minLength: 1
  9922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9923. type: string
  9924. namespace:
  9925. description: |-
  9926. The namespace of the Secret resource being referred to.
  9927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9928. maxLength: 63
  9929. minLength: 1
  9930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9931. type: string
  9932. type: object
  9933. required:
  9934. - account
  9935. - apiKeyRef
  9936. - userRef
  9937. type: object
  9938. jwt:
  9939. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  9940. properties:
  9941. account:
  9942. description: Account is the Conjur organization account name.
  9943. type: string
  9944. hostId:
  9945. description: |-
  9946. Optional HostID for JWT authentication. This may be used depending
  9947. on how the Conjur JWT authenticator policy is configured.
  9948. type: string
  9949. secretRef:
  9950. description: |-
  9951. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9952. authenticate with Conjur using the JWT authentication method.
  9953. properties:
  9954. key:
  9955. description: |-
  9956. A key in the referenced Secret.
  9957. Some instances of this field may be defaulted, in others it may be required.
  9958. maxLength: 253
  9959. minLength: 1
  9960. pattern: ^[-._a-zA-Z0-9]+$
  9961. type: string
  9962. name:
  9963. description: The name of the Secret resource being referred to.
  9964. maxLength: 253
  9965. minLength: 1
  9966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9967. type: string
  9968. namespace:
  9969. description: |-
  9970. The namespace of the Secret resource being referred to.
  9971. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9972. maxLength: 63
  9973. minLength: 1
  9974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9975. type: string
  9976. type: object
  9977. serviceAccountRef:
  9978. description: |-
  9979. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  9980. a token for with the `TokenRequest` API.
  9981. properties:
  9982. audiences:
  9983. description: |-
  9984. Audience specifies the `aud` claim for the service account token
  9985. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9986. then this audiences will be appended to the list
  9987. items:
  9988. type: string
  9989. type: array
  9990. name:
  9991. description: The name of the ServiceAccount resource being referred to.
  9992. maxLength: 253
  9993. minLength: 1
  9994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9995. type: string
  9996. namespace:
  9997. description: |-
  9998. Namespace of the resource being referred to.
  9999. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10000. maxLength: 63
  10001. minLength: 1
  10002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10003. type: string
  10004. required:
  10005. - name
  10006. type: object
  10007. serviceID:
  10008. description: The conjur authn jwt webservice id
  10009. type: string
  10010. required:
  10011. - account
  10012. - serviceID
  10013. type: object
  10014. type: object
  10015. caBundle:
  10016. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  10017. type: string
  10018. caProvider:
  10019. description: |-
  10020. Used to provide custom certificate authority (CA) certificates
  10021. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  10022. that contains a PEM-encoded certificate.
  10023. properties:
  10024. key:
  10025. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10026. maxLength: 253
  10027. minLength: 1
  10028. pattern: ^[-._a-zA-Z0-9]+$
  10029. type: string
  10030. name:
  10031. description: The name of the object located at the provider type.
  10032. maxLength: 253
  10033. minLength: 1
  10034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10035. type: string
  10036. namespace:
  10037. description: |-
  10038. The namespace the Provider type is in.
  10039. Can only be defined when used in a ClusterSecretStore.
  10040. maxLength: 63
  10041. minLength: 1
  10042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10043. type: string
  10044. type:
  10045. description: The type of provider to use such as "Secret", or "ConfigMap".
  10046. enum:
  10047. - Secret
  10048. - ConfigMap
  10049. type: string
  10050. required:
  10051. - name
  10052. - type
  10053. type: object
  10054. url:
  10055. description: URL is the endpoint of the Conjur instance.
  10056. type: string
  10057. required:
  10058. - auth
  10059. - url
  10060. type: object
  10061. delinea:
  10062. description: |-
  10063. Delinea DevOps Secrets Vault
  10064. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  10065. properties:
  10066. clientId:
  10067. description: ClientID is the non-secret part of the credential.
  10068. properties:
  10069. secretRef:
  10070. description: SecretRef references a key in a secret that will be used as value.
  10071. properties:
  10072. key:
  10073. description: |-
  10074. A key in the referenced Secret.
  10075. Some instances of this field may be defaulted, in others it may be required.
  10076. maxLength: 253
  10077. minLength: 1
  10078. pattern: ^[-._a-zA-Z0-9]+$
  10079. type: string
  10080. name:
  10081. description: The name of the Secret resource being referred to.
  10082. maxLength: 253
  10083. minLength: 1
  10084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10085. type: string
  10086. namespace:
  10087. description: |-
  10088. The namespace of the Secret resource being referred to.
  10089. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10090. maxLength: 63
  10091. minLength: 1
  10092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10093. type: string
  10094. type: object
  10095. value:
  10096. description: Value can be specified directly to set a value without using a secret.
  10097. type: string
  10098. type: object
  10099. clientSecret:
  10100. description: ClientSecret is the secret part of the credential.
  10101. properties:
  10102. secretRef:
  10103. description: SecretRef references a key in a secret that will be used as value.
  10104. properties:
  10105. key:
  10106. description: |-
  10107. A key in the referenced Secret.
  10108. Some instances of this field may be defaulted, in others it may be required.
  10109. maxLength: 253
  10110. minLength: 1
  10111. pattern: ^[-._a-zA-Z0-9]+$
  10112. type: string
  10113. name:
  10114. description: The name of the Secret resource being referred to.
  10115. maxLength: 253
  10116. minLength: 1
  10117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10118. type: string
  10119. namespace:
  10120. description: |-
  10121. The namespace of the Secret resource being referred to.
  10122. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10123. maxLength: 63
  10124. minLength: 1
  10125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10126. type: string
  10127. type: object
  10128. value:
  10129. description: Value can be specified directly to set a value without using a secret.
  10130. type: string
  10131. type: object
  10132. tenant:
  10133. description: Tenant is the chosen hostname / site name.
  10134. type: string
  10135. tld:
  10136. description: |-
  10137. TLD is based on the server location that was chosen during provisioning.
  10138. If unset, defaults to "com".
  10139. type: string
  10140. urlTemplate:
  10141. description: |-
  10142. URLTemplate
  10143. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  10144. type: string
  10145. required:
  10146. - clientId
  10147. - clientSecret
  10148. - tenant
  10149. type: object
  10150. device42:
  10151. description: Device42 configures this store to sync secrets using the Device42 provider
  10152. properties:
  10153. auth:
  10154. description: Auth configures how secret-manager authenticates with a Device42 instance.
  10155. properties:
  10156. secretRef:
  10157. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  10158. properties:
  10159. credentials:
  10160. description: Username / Password is used for authentication.
  10161. properties:
  10162. key:
  10163. description: |-
  10164. A key in the referenced Secret.
  10165. Some instances of this field may be defaulted, in others it may be required.
  10166. maxLength: 253
  10167. minLength: 1
  10168. pattern: ^[-._a-zA-Z0-9]+$
  10169. type: string
  10170. name:
  10171. description: The name of the Secret resource being referred to.
  10172. maxLength: 253
  10173. minLength: 1
  10174. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10175. type: string
  10176. namespace:
  10177. description: |-
  10178. The namespace of the Secret resource being referred to.
  10179. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10180. maxLength: 63
  10181. minLength: 1
  10182. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10183. type: string
  10184. type: object
  10185. type: object
  10186. required:
  10187. - secretRef
  10188. type: object
  10189. host:
  10190. description: URL configures the Device42 instance URL.
  10191. type: string
  10192. required:
  10193. - auth
  10194. - host
  10195. type: object
  10196. doppler:
  10197. description: Doppler configures this store to sync secrets using the Doppler provider
  10198. properties:
  10199. auth:
  10200. description: Auth configures how the Operator authenticates with the Doppler API
  10201. properties:
  10202. secretRef:
  10203. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  10204. properties:
  10205. dopplerToken:
  10206. description: |-
  10207. The DopplerToken is used for authentication.
  10208. See https://docs.doppler.com/reference/api#authentication for auth token types.
  10209. The Key attribute defaults to dopplerToken if not specified.
  10210. properties:
  10211. key:
  10212. description: |-
  10213. A key in the referenced Secret.
  10214. Some instances of this field may be defaulted, in others it may be required.
  10215. maxLength: 253
  10216. minLength: 1
  10217. pattern: ^[-._a-zA-Z0-9]+$
  10218. type: string
  10219. name:
  10220. description: The name of the Secret resource being referred to.
  10221. maxLength: 253
  10222. minLength: 1
  10223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10224. type: string
  10225. namespace:
  10226. description: |-
  10227. The namespace of the Secret resource being referred to.
  10228. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10229. maxLength: 63
  10230. minLength: 1
  10231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10232. type: string
  10233. type: object
  10234. required:
  10235. - dopplerToken
  10236. type: object
  10237. required:
  10238. - secretRef
  10239. type: object
  10240. config:
  10241. description: Doppler config (required if not using a Service Token)
  10242. type: string
  10243. format:
  10244. description: Format enables the downloading of secrets as a file (string)
  10245. enum:
  10246. - json
  10247. - dotnet-json
  10248. - env
  10249. - yaml
  10250. - docker
  10251. type: string
  10252. nameTransformer:
  10253. description: Environment variable compatible name transforms that change secret names to a different format
  10254. enum:
  10255. - upper-camel
  10256. - camel
  10257. - lower-snake
  10258. - tf-var
  10259. - dotnet-env
  10260. - lower-kebab
  10261. type: string
  10262. project:
  10263. description: Doppler project (required if not using a Service Token)
  10264. type: string
  10265. required:
  10266. - auth
  10267. type: object
  10268. fake:
  10269. description: Fake configures a store with static key/value pairs
  10270. properties:
  10271. data:
  10272. items:
  10273. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  10274. properties:
  10275. key:
  10276. type: string
  10277. value:
  10278. type: string
  10279. version:
  10280. type: string
  10281. required:
  10282. - key
  10283. - value
  10284. type: object
  10285. type: array
  10286. required:
  10287. - data
  10288. type: object
  10289. fortanix:
  10290. description: Fortanix configures this store to sync secrets using the Fortanix provider
  10291. properties:
  10292. apiKey:
  10293. description: APIKey is the API token to access SDKMS Applications.
  10294. properties:
  10295. secretRef:
  10296. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  10297. properties:
  10298. key:
  10299. description: |-
  10300. A key in the referenced Secret.
  10301. Some instances of this field may be defaulted, in others it may be required.
  10302. maxLength: 253
  10303. minLength: 1
  10304. pattern: ^[-._a-zA-Z0-9]+$
  10305. type: string
  10306. name:
  10307. description: The name of the Secret resource being referred to.
  10308. maxLength: 253
  10309. minLength: 1
  10310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10311. type: string
  10312. namespace:
  10313. description: |-
  10314. The namespace of the Secret resource being referred to.
  10315. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10316. maxLength: 63
  10317. minLength: 1
  10318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10319. type: string
  10320. type: object
  10321. type: object
  10322. apiUrl:
  10323. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  10324. type: string
  10325. type: object
  10326. gcpsm:
  10327. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  10328. properties:
  10329. auth:
  10330. description: Auth defines the information necessary to authenticate against GCP
  10331. properties:
  10332. secretRef:
  10333. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  10334. properties:
  10335. secretAccessKeySecretRef:
  10336. description: The SecretAccessKey is used for authentication
  10337. properties:
  10338. key:
  10339. description: |-
  10340. A key in the referenced Secret.
  10341. Some instances of this field may be defaulted, in others it may be required.
  10342. maxLength: 253
  10343. minLength: 1
  10344. pattern: ^[-._a-zA-Z0-9]+$
  10345. type: string
  10346. name:
  10347. description: The name of the Secret resource being referred to.
  10348. maxLength: 253
  10349. minLength: 1
  10350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10351. type: string
  10352. namespace:
  10353. description: |-
  10354. The namespace of the Secret resource being referred to.
  10355. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10356. maxLength: 63
  10357. minLength: 1
  10358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10359. type: string
  10360. type: object
  10361. type: object
  10362. workloadIdentity:
  10363. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  10364. properties:
  10365. clusterLocation:
  10366. description: |-
  10367. ClusterLocation is the location of the cluster
  10368. If not specified, it fetches information from the metadata server
  10369. type: string
  10370. clusterName:
  10371. description: |-
  10372. ClusterName is the name of the cluster
  10373. If not specified, it fetches information from the metadata server
  10374. type: string
  10375. clusterProjectID:
  10376. description: |-
  10377. ClusterProjectID is the project ID of the cluster
  10378. If not specified, it fetches information from the metadata server
  10379. type: string
  10380. serviceAccountRef:
  10381. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  10382. properties:
  10383. audiences:
  10384. description: |-
  10385. Audience specifies the `aud` claim for the service account token
  10386. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10387. then this audiences will be appended to the list
  10388. items:
  10389. type: string
  10390. type: array
  10391. name:
  10392. description: The name of the ServiceAccount resource being referred to.
  10393. maxLength: 253
  10394. minLength: 1
  10395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10396. type: string
  10397. namespace:
  10398. description: |-
  10399. Namespace of the resource being referred to.
  10400. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10401. maxLength: 63
  10402. minLength: 1
  10403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10404. type: string
  10405. required:
  10406. - name
  10407. type: object
  10408. required:
  10409. - serviceAccountRef
  10410. type: object
  10411. type: object
  10412. location:
  10413. description: Location optionally defines a location for a secret
  10414. type: string
  10415. projectID:
  10416. description: ProjectID project where secret is located
  10417. type: string
  10418. type: object
  10419. github:
  10420. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  10421. properties:
  10422. appID:
  10423. description: appID specifies the Github APP that will be used to authenticate the client
  10424. format: int64
  10425. type: integer
  10426. auth:
  10427. description: auth configures how secret-manager authenticates with a Github instance.
  10428. properties:
  10429. privateKey:
  10430. description: |-
  10431. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10432. In some instances, `key` is a required field.
  10433. properties:
  10434. key:
  10435. description: |-
  10436. A key in the referenced Secret.
  10437. Some instances of this field may be defaulted, in others it may be required.
  10438. maxLength: 253
  10439. minLength: 1
  10440. pattern: ^[-._a-zA-Z0-9]+$
  10441. type: string
  10442. name:
  10443. description: The name of the Secret resource being referred to.
  10444. maxLength: 253
  10445. minLength: 1
  10446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10447. type: string
  10448. namespace:
  10449. description: |-
  10450. The namespace of the Secret resource being referred to.
  10451. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10452. maxLength: 63
  10453. minLength: 1
  10454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10455. type: string
  10456. type: object
  10457. required:
  10458. - privateKey
  10459. type: object
  10460. environment:
  10461. description: environment will be used to fetch secrets from a particular environment within a github repository
  10462. type: string
  10463. installationID:
  10464. description: installationID specifies the Github APP installation that will be used to authenticate the client
  10465. format: int64
  10466. type: integer
  10467. organization:
  10468. description: organization will be used to fetch secrets from the Github organization
  10469. type: string
  10470. repository:
  10471. description: repository will be used to fetch secrets from the Github repository within an organization
  10472. type: string
  10473. uploadURL:
  10474. description: Upload URL for enterprise instances. Default to URL.
  10475. type: string
  10476. url:
  10477. default: https://github.com/
  10478. description: URL configures the Github instance URL. Defaults to https://github.com/.
  10479. type: string
  10480. required:
  10481. - appID
  10482. - auth
  10483. - installationID
  10484. - organization
  10485. type: object
  10486. gitlab:
  10487. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10488. properties:
  10489. auth:
  10490. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10491. properties:
  10492. SecretRef:
  10493. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10494. properties:
  10495. accessToken:
  10496. description: AccessToken is used for authentication.
  10497. properties:
  10498. key:
  10499. description: |-
  10500. A key in the referenced Secret.
  10501. Some instances of this field may be defaulted, in others it may be required.
  10502. maxLength: 253
  10503. minLength: 1
  10504. pattern: ^[-._a-zA-Z0-9]+$
  10505. type: string
  10506. name:
  10507. description: The name of the Secret resource being referred to.
  10508. maxLength: 253
  10509. minLength: 1
  10510. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10511. type: string
  10512. namespace:
  10513. description: |-
  10514. The namespace of the Secret resource being referred to.
  10515. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10516. maxLength: 63
  10517. minLength: 1
  10518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10519. type: string
  10520. type: object
  10521. type: object
  10522. required:
  10523. - SecretRef
  10524. type: object
  10525. caBundle:
  10526. description: |-
  10527. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10528. can be performed.
  10529. format: byte
  10530. type: string
  10531. caProvider:
  10532. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10533. properties:
  10534. key:
  10535. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10536. maxLength: 253
  10537. minLength: 1
  10538. pattern: ^[-._a-zA-Z0-9]+$
  10539. type: string
  10540. name:
  10541. description: The name of the object located at the provider type.
  10542. maxLength: 253
  10543. minLength: 1
  10544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10545. type: string
  10546. namespace:
  10547. description: |-
  10548. The namespace the Provider type is in.
  10549. Can only be defined when used in a ClusterSecretStore.
  10550. maxLength: 63
  10551. minLength: 1
  10552. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10553. type: string
  10554. type:
  10555. description: The type of provider to use such as "Secret", or "ConfigMap".
  10556. enum:
  10557. - Secret
  10558. - ConfigMap
  10559. type: string
  10560. required:
  10561. - name
  10562. - type
  10563. type: object
  10564. environment:
  10565. 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)
  10566. type: string
  10567. groupIDs:
  10568. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10569. items:
  10570. type: string
  10571. type: array
  10572. inheritFromGroups:
  10573. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10574. type: boolean
  10575. projectID:
  10576. description: ProjectID specifies a project where secrets are located.
  10577. type: string
  10578. url:
  10579. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10580. type: string
  10581. required:
  10582. - auth
  10583. type: object
  10584. ibm:
  10585. description: IBM configures this store to sync secrets using IBM Cloud provider
  10586. properties:
  10587. auth:
  10588. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10589. maxProperties: 1
  10590. minProperties: 1
  10591. properties:
  10592. containerAuth:
  10593. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10594. properties:
  10595. iamEndpoint:
  10596. type: string
  10597. profile:
  10598. description: the IBM Trusted Profile
  10599. type: string
  10600. tokenLocation:
  10601. description: Location the token is mounted on the pod
  10602. type: string
  10603. required:
  10604. - profile
  10605. type: object
  10606. secretRef:
  10607. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10608. properties:
  10609. secretApiKeySecretRef:
  10610. description: The SecretAccessKey is used for authentication
  10611. properties:
  10612. key:
  10613. description: |-
  10614. A key in the referenced Secret.
  10615. Some instances of this field may be defaulted, in others it may be required.
  10616. maxLength: 253
  10617. minLength: 1
  10618. pattern: ^[-._a-zA-Z0-9]+$
  10619. type: string
  10620. name:
  10621. description: The name of the Secret resource being referred to.
  10622. maxLength: 253
  10623. minLength: 1
  10624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10625. type: string
  10626. namespace:
  10627. description: |-
  10628. The namespace of the Secret resource being referred to.
  10629. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10630. maxLength: 63
  10631. minLength: 1
  10632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10633. type: string
  10634. type: object
  10635. type: object
  10636. type: object
  10637. serviceUrl:
  10638. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10639. type: string
  10640. required:
  10641. - auth
  10642. type: object
  10643. infisical:
  10644. description: Infisical configures this store to sync secrets using the Infisical provider
  10645. properties:
  10646. auth:
  10647. description: Auth configures how the Operator authenticates with the Infisical API
  10648. properties:
  10649. universalAuthCredentials:
  10650. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10651. properties:
  10652. clientId:
  10653. description: |-
  10654. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10655. In some instances, `key` is a required field.
  10656. properties:
  10657. key:
  10658. description: |-
  10659. A key in the referenced Secret.
  10660. Some instances of this field may be defaulted, in others it may be required.
  10661. maxLength: 253
  10662. minLength: 1
  10663. pattern: ^[-._a-zA-Z0-9]+$
  10664. type: string
  10665. name:
  10666. description: The name of the Secret resource being referred to.
  10667. maxLength: 253
  10668. minLength: 1
  10669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10670. type: string
  10671. namespace:
  10672. description: |-
  10673. The namespace of the Secret resource being referred to.
  10674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10675. maxLength: 63
  10676. minLength: 1
  10677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10678. type: string
  10679. type: object
  10680. clientSecret:
  10681. description: |-
  10682. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10683. In some instances, `key` is a required field.
  10684. properties:
  10685. key:
  10686. description: |-
  10687. A key in the referenced Secret.
  10688. Some instances of this field may be defaulted, in others it may be required.
  10689. maxLength: 253
  10690. minLength: 1
  10691. pattern: ^[-._a-zA-Z0-9]+$
  10692. type: string
  10693. name:
  10694. description: The name of the Secret resource being referred to.
  10695. maxLength: 253
  10696. minLength: 1
  10697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10698. type: string
  10699. namespace:
  10700. description: |-
  10701. The namespace of the Secret resource being referred to.
  10702. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10703. maxLength: 63
  10704. minLength: 1
  10705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10706. type: string
  10707. type: object
  10708. required:
  10709. - clientId
  10710. - clientSecret
  10711. type: object
  10712. type: object
  10713. hostAPI:
  10714. default: https://app.infisical.com/api
  10715. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10716. type: string
  10717. secretsScope:
  10718. description: SecretsScope defines the scope of the secrets within the workspace
  10719. properties:
  10720. environmentSlug:
  10721. description: EnvironmentSlug is the required slug identifier for the environment.
  10722. type: string
  10723. expandSecretReferences:
  10724. default: true
  10725. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10726. type: boolean
  10727. projectSlug:
  10728. description: ProjectSlug is the required slug identifier for the project.
  10729. type: string
  10730. recursive:
  10731. default: false
  10732. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10733. type: boolean
  10734. secretsPath:
  10735. default: /
  10736. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10737. type: string
  10738. required:
  10739. - environmentSlug
  10740. - projectSlug
  10741. type: object
  10742. required:
  10743. - auth
  10744. - secretsScope
  10745. type: object
  10746. keepersecurity:
  10747. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10748. properties:
  10749. authRef:
  10750. description: |-
  10751. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10752. In some instances, `key` is a required field.
  10753. properties:
  10754. key:
  10755. description: |-
  10756. A key in the referenced Secret.
  10757. Some instances of this field may be defaulted, in others it may be required.
  10758. maxLength: 253
  10759. minLength: 1
  10760. pattern: ^[-._a-zA-Z0-9]+$
  10761. type: string
  10762. name:
  10763. description: The name of the Secret resource being referred to.
  10764. maxLength: 253
  10765. minLength: 1
  10766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10767. type: string
  10768. namespace:
  10769. description: |-
  10770. The namespace of the Secret resource being referred to.
  10771. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10772. maxLength: 63
  10773. minLength: 1
  10774. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10775. type: string
  10776. type: object
  10777. folderID:
  10778. type: string
  10779. required:
  10780. - authRef
  10781. - folderID
  10782. type: object
  10783. kubernetes:
  10784. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10785. properties:
  10786. auth:
  10787. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10788. maxProperties: 1
  10789. minProperties: 1
  10790. properties:
  10791. cert:
  10792. description: has both clientCert and clientKey as secretKeySelector
  10793. properties:
  10794. clientCert:
  10795. description: |-
  10796. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10797. In some instances, `key` is a required field.
  10798. properties:
  10799. key:
  10800. description: |-
  10801. A key in the referenced Secret.
  10802. Some instances of this field may be defaulted, in others it may be required.
  10803. maxLength: 253
  10804. minLength: 1
  10805. pattern: ^[-._a-zA-Z0-9]+$
  10806. type: string
  10807. name:
  10808. description: The name of the Secret resource being referred to.
  10809. maxLength: 253
  10810. minLength: 1
  10811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10812. type: string
  10813. namespace:
  10814. description: |-
  10815. The namespace of the Secret resource being referred to.
  10816. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10817. maxLength: 63
  10818. minLength: 1
  10819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10820. type: string
  10821. type: object
  10822. clientKey:
  10823. description: |-
  10824. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10825. In some instances, `key` is a required field.
  10826. properties:
  10827. key:
  10828. description: |-
  10829. A key in the referenced Secret.
  10830. Some instances of this field may be defaulted, in others it may be required.
  10831. maxLength: 253
  10832. minLength: 1
  10833. pattern: ^[-._a-zA-Z0-9]+$
  10834. type: string
  10835. name:
  10836. description: The name of the Secret resource being referred to.
  10837. maxLength: 253
  10838. minLength: 1
  10839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10840. type: string
  10841. namespace:
  10842. description: |-
  10843. The namespace of the Secret resource being referred to.
  10844. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10845. maxLength: 63
  10846. minLength: 1
  10847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10848. type: string
  10849. type: object
  10850. type: object
  10851. serviceAccount:
  10852. description: points to a service account that should be used for authentication
  10853. properties:
  10854. audiences:
  10855. description: |-
  10856. Audience specifies the `aud` claim for the service account token
  10857. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10858. then this audiences will be appended to the list
  10859. items:
  10860. type: string
  10861. type: array
  10862. name:
  10863. description: The name of the ServiceAccount resource being referred to.
  10864. maxLength: 253
  10865. minLength: 1
  10866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10867. type: string
  10868. namespace:
  10869. description: |-
  10870. Namespace of the resource being referred to.
  10871. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10872. maxLength: 63
  10873. minLength: 1
  10874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10875. type: string
  10876. required:
  10877. - name
  10878. type: object
  10879. token:
  10880. description: use static token to authenticate with
  10881. properties:
  10882. bearerToken:
  10883. description: |-
  10884. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10885. In some instances, `key` is a required field.
  10886. properties:
  10887. key:
  10888. description: |-
  10889. A key in the referenced Secret.
  10890. Some instances of this field may be defaulted, in others it may be required.
  10891. maxLength: 253
  10892. minLength: 1
  10893. pattern: ^[-._a-zA-Z0-9]+$
  10894. type: string
  10895. name:
  10896. description: The name of the Secret resource being referred to.
  10897. maxLength: 253
  10898. minLength: 1
  10899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10900. type: string
  10901. namespace:
  10902. description: |-
  10903. The namespace of the Secret resource being referred to.
  10904. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10905. maxLength: 63
  10906. minLength: 1
  10907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10908. type: string
  10909. type: object
  10910. type: object
  10911. type: object
  10912. authRef:
  10913. description: A reference to a secret that contains the auth information.
  10914. properties:
  10915. key:
  10916. description: |-
  10917. A key in the referenced Secret.
  10918. Some instances of this field may be defaulted, in others it may be required.
  10919. maxLength: 253
  10920. minLength: 1
  10921. pattern: ^[-._a-zA-Z0-9]+$
  10922. type: string
  10923. name:
  10924. description: The name of the Secret resource being referred to.
  10925. maxLength: 253
  10926. minLength: 1
  10927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10928. type: string
  10929. namespace:
  10930. description: |-
  10931. The namespace of the Secret resource being referred to.
  10932. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10933. maxLength: 63
  10934. minLength: 1
  10935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10936. type: string
  10937. type: object
  10938. remoteNamespace:
  10939. default: default
  10940. description: Remote namespace to fetch the secrets from
  10941. maxLength: 63
  10942. minLength: 1
  10943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10944. type: string
  10945. server:
  10946. description: configures the Kubernetes server Address.
  10947. properties:
  10948. caBundle:
  10949. description: CABundle is a base64-encoded CA certificate
  10950. format: byte
  10951. type: string
  10952. caProvider:
  10953. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  10954. properties:
  10955. key:
  10956. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10957. maxLength: 253
  10958. minLength: 1
  10959. pattern: ^[-._a-zA-Z0-9]+$
  10960. type: string
  10961. name:
  10962. description: The name of the object located at the provider type.
  10963. maxLength: 253
  10964. minLength: 1
  10965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10966. type: string
  10967. namespace:
  10968. description: |-
  10969. The namespace the Provider type is in.
  10970. Can only be defined when used in a ClusterSecretStore.
  10971. maxLength: 63
  10972. minLength: 1
  10973. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10974. type: string
  10975. type:
  10976. description: The type of provider to use such as "Secret", or "ConfigMap".
  10977. enum:
  10978. - Secret
  10979. - ConfigMap
  10980. type: string
  10981. required:
  10982. - name
  10983. - type
  10984. type: object
  10985. url:
  10986. default: kubernetes.default
  10987. description: configures the Kubernetes server Address.
  10988. type: string
  10989. type: object
  10990. type: object
  10991. onboardbase:
  10992. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  10993. properties:
  10994. apiHost:
  10995. default: https://public.onboardbase.com/api/v1/
  10996. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  10997. type: string
  10998. auth:
  10999. description: Auth configures how the Operator authenticates with the Onboardbase API
  11000. properties:
  11001. apiKeyRef:
  11002. description: |-
  11003. OnboardbaseAPIKey is the APIKey generated by an admin account.
  11004. It is used to recognize and authorize access to a project and environment within onboardbase
  11005. properties:
  11006. key:
  11007. description: |-
  11008. A key in the referenced Secret.
  11009. Some instances of this field may be defaulted, in others it may be required.
  11010. maxLength: 253
  11011. minLength: 1
  11012. pattern: ^[-._a-zA-Z0-9]+$
  11013. type: string
  11014. name:
  11015. description: The name of the Secret resource being referred to.
  11016. maxLength: 253
  11017. minLength: 1
  11018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11019. type: string
  11020. namespace:
  11021. description: |-
  11022. The namespace of the Secret resource being referred to.
  11023. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11024. maxLength: 63
  11025. minLength: 1
  11026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11027. type: string
  11028. type: object
  11029. passcodeRef:
  11030. description: OnboardbasePasscode is the passcode attached to the API Key
  11031. properties:
  11032. key:
  11033. description: |-
  11034. A key in the referenced Secret.
  11035. Some instances of this field may be defaulted, in others it may be required.
  11036. maxLength: 253
  11037. minLength: 1
  11038. pattern: ^[-._a-zA-Z0-9]+$
  11039. type: string
  11040. name:
  11041. description: The name of the Secret resource being referred to.
  11042. maxLength: 253
  11043. minLength: 1
  11044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11045. type: string
  11046. namespace:
  11047. description: |-
  11048. The namespace of the Secret resource being referred to.
  11049. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11050. maxLength: 63
  11051. minLength: 1
  11052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11053. type: string
  11054. type: object
  11055. required:
  11056. - apiKeyRef
  11057. - passcodeRef
  11058. type: object
  11059. environment:
  11060. default: development
  11061. description: Environment is the name of an environmnent within a project to pull the secrets from
  11062. type: string
  11063. project:
  11064. default: development
  11065. description: Project is an onboardbase project that the secrets should be pulled from
  11066. type: string
  11067. required:
  11068. - apiHost
  11069. - auth
  11070. - environment
  11071. - project
  11072. type: object
  11073. onepassword:
  11074. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  11075. properties:
  11076. auth:
  11077. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  11078. properties:
  11079. secretRef:
  11080. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  11081. properties:
  11082. connectTokenSecretRef:
  11083. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  11084. properties:
  11085. key:
  11086. description: |-
  11087. A key in the referenced Secret.
  11088. Some instances of this field may be defaulted, in others it may be required.
  11089. maxLength: 253
  11090. minLength: 1
  11091. pattern: ^[-._a-zA-Z0-9]+$
  11092. type: string
  11093. name:
  11094. description: The name of the Secret resource being referred to.
  11095. maxLength: 253
  11096. minLength: 1
  11097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11098. type: string
  11099. namespace:
  11100. description: |-
  11101. The namespace of the Secret resource being referred to.
  11102. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11103. maxLength: 63
  11104. minLength: 1
  11105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11106. type: string
  11107. type: object
  11108. required:
  11109. - connectTokenSecretRef
  11110. type: object
  11111. required:
  11112. - secretRef
  11113. type: object
  11114. connectHost:
  11115. description: ConnectHost defines the OnePassword Connect Server to connect to
  11116. type: string
  11117. vaults:
  11118. additionalProperties:
  11119. type: integer
  11120. description: Vaults defines which OnePassword vaults to search in which order
  11121. type: object
  11122. required:
  11123. - auth
  11124. - connectHost
  11125. - vaults
  11126. type: object
  11127. oracle:
  11128. description: Oracle configures this store to sync secrets using Oracle Vault provider
  11129. properties:
  11130. auth:
  11131. description: |-
  11132. Auth configures how secret-manager authenticates with the Oracle Vault.
  11133. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  11134. properties:
  11135. secretRef:
  11136. description: SecretRef to pass through sensitive information.
  11137. properties:
  11138. fingerprint:
  11139. description: Fingerprint is the fingerprint of the API private key.
  11140. properties:
  11141. key:
  11142. description: |-
  11143. A key in the referenced Secret.
  11144. Some instances of this field may be defaulted, in others it may be required.
  11145. maxLength: 253
  11146. minLength: 1
  11147. pattern: ^[-._a-zA-Z0-9]+$
  11148. type: string
  11149. name:
  11150. description: The name of the Secret resource being referred to.
  11151. maxLength: 253
  11152. minLength: 1
  11153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11154. type: string
  11155. namespace:
  11156. description: |-
  11157. The namespace of the Secret resource being referred to.
  11158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11159. maxLength: 63
  11160. minLength: 1
  11161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11162. type: string
  11163. type: object
  11164. privatekey:
  11165. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  11166. properties:
  11167. key:
  11168. description: |-
  11169. A key in the referenced Secret.
  11170. Some instances of this field may be defaulted, in others it may be required.
  11171. maxLength: 253
  11172. minLength: 1
  11173. pattern: ^[-._a-zA-Z0-9]+$
  11174. type: string
  11175. name:
  11176. description: The name of the Secret resource being referred to.
  11177. maxLength: 253
  11178. minLength: 1
  11179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11180. type: string
  11181. namespace:
  11182. description: |-
  11183. The namespace of the Secret resource being referred to.
  11184. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11185. maxLength: 63
  11186. minLength: 1
  11187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11188. type: string
  11189. type: object
  11190. required:
  11191. - fingerprint
  11192. - privatekey
  11193. type: object
  11194. tenancy:
  11195. description: Tenancy is the tenancy OCID where user is located.
  11196. type: string
  11197. user:
  11198. description: User is an access OCID specific to the account.
  11199. type: string
  11200. required:
  11201. - secretRef
  11202. - tenancy
  11203. - user
  11204. type: object
  11205. compartment:
  11206. description: |-
  11207. Compartment is the vault compartment OCID.
  11208. Required for PushSecret
  11209. type: string
  11210. encryptionKey:
  11211. description: |-
  11212. EncryptionKey is the OCID of the encryption key within the vault.
  11213. Required for PushSecret
  11214. type: string
  11215. principalType:
  11216. description: |-
  11217. The type of principal to use for authentication. If left blank, the Auth struct will
  11218. determine the principal type. This optional field must be specified if using
  11219. workload identity.
  11220. enum:
  11221. - ""
  11222. - UserPrincipal
  11223. - InstancePrincipal
  11224. - Workload
  11225. type: string
  11226. region:
  11227. description: Region is the region where vault is located.
  11228. type: string
  11229. serviceAccountRef:
  11230. description: |-
  11231. ServiceAccountRef specified the service account
  11232. that should be used when authenticating with WorkloadIdentity.
  11233. properties:
  11234. audiences:
  11235. description: |-
  11236. Audience specifies the `aud` claim for the service account token
  11237. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11238. then this audiences will be appended to the list
  11239. items:
  11240. type: string
  11241. type: array
  11242. name:
  11243. description: The name of the ServiceAccount resource being referred to.
  11244. maxLength: 253
  11245. minLength: 1
  11246. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11247. type: string
  11248. namespace:
  11249. description: |-
  11250. Namespace of the resource being referred to.
  11251. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11252. maxLength: 63
  11253. minLength: 1
  11254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11255. type: string
  11256. required:
  11257. - name
  11258. type: object
  11259. vault:
  11260. description: Vault is the vault's OCID of the specific vault where secret is located.
  11261. type: string
  11262. required:
  11263. - region
  11264. - vault
  11265. type: object
  11266. passbolt:
  11267. description: PassboltProvider defines configuration for the Passbolt provider.
  11268. properties:
  11269. auth:
  11270. description: Auth defines the information necessary to authenticate against Passbolt Server
  11271. properties:
  11272. passwordSecretRef:
  11273. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  11274. properties:
  11275. key:
  11276. description: |-
  11277. A key in the referenced Secret.
  11278. Some instances of this field may be defaulted, in others it may be required.
  11279. maxLength: 253
  11280. minLength: 1
  11281. pattern: ^[-._a-zA-Z0-9]+$
  11282. type: string
  11283. name:
  11284. description: The name of the Secret resource being referred to.
  11285. maxLength: 253
  11286. minLength: 1
  11287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11288. type: string
  11289. namespace:
  11290. description: |-
  11291. The namespace of the Secret resource being referred to.
  11292. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11293. maxLength: 63
  11294. minLength: 1
  11295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11296. type: string
  11297. type: object
  11298. privateKeySecretRef:
  11299. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  11300. properties:
  11301. key:
  11302. description: |-
  11303. A key in the referenced Secret.
  11304. Some instances of this field may be defaulted, in others it may be required.
  11305. maxLength: 253
  11306. minLength: 1
  11307. pattern: ^[-._a-zA-Z0-9]+$
  11308. type: string
  11309. name:
  11310. description: The name of the Secret resource being referred to.
  11311. maxLength: 253
  11312. minLength: 1
  11313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11314. type: string
  11315. namespace:
  11316. description: |-
  11317. The namespace of the Secret resource being referred to.
  11318. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11319. maxLength: 63
  11320. minLength: 1
  11321. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11322. type: string
  11323. type: object
  11324. required:
  11325. - passwordSecretRef
  11326. - privateKeySecretRef
  11327. type: object
  11328. host:
  11329. description: Host defines the Passbolt Server to connect to
  11330. type: string
  11331. required:
  11332. - auth
  11333. - host
  11334. type: object
  11335. passworddepot:
  11336. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  11337. properties:
  11338. auth:
  11339. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  11340. properties:
  11341. secretRef:
  11342. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  11343. properties:
  11344. credentials:
  11345. description: Username / Password is used for authentication.
  11346. properties:
  11347. key:
  11348. description: |-
  11349. A key in the referenced Secret.
  11350. Some instances of this field may be defaulted, in others it may be required.
  11351. maxLength: 253
  11352. minLength: 1
  11353. pattern: ^[-._a-zA-Z0-9]+$
  11354. type: string
  11355. name:
  11356. description: The name of the Secret resource being referred to.
  11357. maxLength: 253
  11358. minLength: 1
  11359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11360. type: string
  11361. namespace:
  11362. description: |-
  11363. The namespace of the Secret resource being referred to.
  11364. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11365. maxLength: 63
  11366. minLength: 1
  11367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11368. type: string
  11369. type: object
  11370. type: object
  11371. required:
  11372. - secretRef
  11373. type: object
  11374. database:
  11375. description: Database to use as source
  11376. type: string
  11377. host:
  11378. description: URL configures the Password Depot instance URL.
  11379. type: string
  11380. required:
  11381. - auth
  11382. - database
  11383. - host
  11384. type: object
  11385. previder:
  11386. description: Previder configures this store to sync secrets using the Previder provider
  11387. properties:
  11388. auth:
  11389. description: PreviderAuth contains a secretRef for credentials.
  11390. properties:
  11391. secretRef:
  11392. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  11393. properties:
  11394. accessToken:
  11395. description: The AccessToken is used for authentication
  11396. properties:
  11397. key:
  11398. description: |-
  11399. A key in the referenced Secret.
  11400. Some instances of this field may be defaulted, in others it may be required.
  11401. maxLength: 253
  11402. minLength: 1
  11403. pattern: ^[-._a-zA-Z0-9]+$
  11404. type: string
  11405. name:
  11406. description: The name of the Secret resource being referred to.
  11407. maxLength: 253
  11408. minLength: 1
  11409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11410. type: string
  11411. namespace:
  11412. description: |-
  11413. The namespace of the Secret resource being referred to.
  11414. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11415. maxLength: 63
  11416. minLength: 1
  11417. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11418. type: string
  11419. type: object
  11420. required:
  11421. - accessToken
  11422. type: object
  11423. type: object
  11424. baseUri:
  11425. type: string
  11426. required:
  11427. - auth
  11428. type: object
  11429. pulumi:
  11430. description: Pulumi configures this store to sync secrets using the Pulumi provider
  11431. properties:
  11432. accessToken:
  11433. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  11434. properties:
  11435. secretRef:
  11436. description: SecretRef is a reference to a secret containing the Pulumi API token.
  11437. properties:
  11438. key:
  11439. description: |-
  11440. A key in the referenced Secret.
  11441. Some instances of this field may be defaulted, in others it may be required.
  11442. maxLength: 253
  11443. minLength: 1
  11444. pattern: ^[-._a-zA-Z0-9]+$
  11445. type: string
  11446. name:
  11447. description: The name of the Secret resource being referred to.
  11448. maxLength: 253
  11449. minLength: 1
  11450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11451. type: string
  11452. namespace:
  11453. description: |-
  11454. The namespace of the Secret resource being referred to.
  11455. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11456. maxLength: 63
  11457. minLength: 1
  11458. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11459. type: string
  11460. type: object
  11461. type: object
  11462. apiUrl:
  11463. default: https://api.pulumi.com/api/esc
  11464. description: APIURL is the URL of the Pulumi API.
  11465. type: string
  11466. environment:
  11467. description: |-
  11468. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  11469. dynamically retrieved values from supported providers including all major clouds,
  11470. and other Pulumi ESC environments.
  11471. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  11472. type: string
  11473. organization:
  11474. description: |-
  11475. Organization are a space to collaborate on shared projects and stacks.
  11476. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  11477. type: string
  11478. project:
  11479. description: Project is the name of the Pulumi ESC project the environment belongs to.
  11480. type: string
  11481. required:
  11482. - accessToken
  11483. - environment
  11484. - organization
  11485. - project
  11486. type: object
  11487. scaleway:
  11488. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11489. properties:
  11490. accessKey:
  11491. description: AccessKey is the non-secret part of the api key.
  11492. properties:
  11493. secretRef:
  11494. description: SecretRef references a key in a secret that will be used as value.
  11495. properties:
  11496. key:
  11497. description: |-
  11498. A key in the referenced Secret.
  11499. Some instances of this field may be defaulted, in others it may be required.
  11500. maxLength: 253
  11501. minLength: 1
  11502. pattern: ^[-._a-zA-Z0-9]+$
  11503. type: string
  11504. name:
  11505. description: The name of the Secret resource being referred to.
  11506. maxLength: 253
  11507. minLength: 1
  11508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11509. type: string
  11510. namespace:
  11511. description: |-
  11512. The namespace of the Secret resource being referred to.
  11513. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11514. maxLength: 63
  11515. minLength: 1
  11516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11517. type: string
  11518. type: object
  11519. value:
  11520. description: Value can be specified directly to set a value without using a secret.
  11521. type: string
  11522. type: object
  11523. apiUrl:
  11524. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11525. type: string
  11526. projectId:
  11527. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11528. type: string
  11529. region:
  11530. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11531. type: string
  11532. secretKey:
  11533. description: SecretKey is the non-secret part of the api key.
  11534. properties:
  11535. secretRef:
  11536. description: SecretRef references a key in a secret that will be used as value.
  11537. properties:
  11538. key:
  11539. description: |-
  11540. A key in the referenced Secret.
  11541. Some instances of this field may be defaulted, in others it may be required.
  11542. maxLength: 253
  11543. minLength: 1
  11544. pattern: ^[-._a-zA-Z0-9]+$
  11545. type: string
  11546. name:
  11547. description: The name of the Secret resource being referred to.
  11548. maxLength: 253
  11549. minLength: 1
  11550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11551. type: string
  11552. namespace:
  11553. description: |-
  11554. The namespace of the Secret resource being referred to.
  11555. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11556. maxLength: 63
  11557. minLength: 1
  11558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11559. type: string
  11560. type: object
  11561. value:
  11562. description: Value can be specified directly to set a value without using a secret.
  11563. type: string
  11564. type: object
  11565. required:
  11566. - accessKey
  11567. - projectId
  11568. - region
  11569. - secretKey
  11570. type: object
  11571. secretserver:
  11572. description: |-
  11573. SecretServer configures this store to sync secrets using SecretServer provider
  11574. https://docs.delinea.com/online-help/secret-server/start.htm
  11575. properties:
  11576. password:
  11577. description: Password is the secret server account password.
  11578. properties:
  11579. secretRef:
  11580. description: SecretRef references a key in a secret that will be used as value.
  11581. properties:
  11582. key:
  11583. description: |-
  11584. A key in the referenced Secret.
  11585. Some instances of this field may be defaulted, in others it may be required.
  11586. maxLength: 253
  11587. minLength: 1
  11588. pattern: ^[-._a-zA-Z0-9]+$
  11589. type: string
  11590. name:
  11591. description: The name of the Secret resource being referred to.
  11592. maxLength: 253
  11593. minLength: 1
  11594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11595. type: string
  11596. namespace:
  11597. description: |-
  11598. The namespace of the Secret resource being referred to.
  11599. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11600. maxLength: 63
  11601. minLength: 1
  11602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11603. type: string
  11604. type: object
  11605. value:
  11606. description: Value can be specified directly to set a value without using a secret.
  11607. type: string
  11608. type: object
  11609. serverURL:
  11610. description: |-
  11611. ServerURL
  11612. URL to your secret server installation
  11613. type: string
  11614. username:
  11615. description: Username is the secret server account username.
  11616. properties:
  11617. secretRef:
  11618. description: SecretRef references a key in a secret that will be used as value.
  11619. properties:
  11620. key:
  11621. description: |-
  11622. A key in the referenced Secret.
  11623. Some instances of this field may be defaulted, in others it may be required.
  11624. maxLength: 253
  11625. minLength: 1
  11626. pattern: ^[-._a-zA-Z0-9]+$
  11627. type: string
  11628. name:
  11629. description: The name of the Secret resource being referred to.
  11630. maxLength: 253
  11631. minLength: 1
  11632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11633. type: string
  11634. namespace:
  11635. description: |-
  11636. The namespace of the Secret resource being referred to.
  11637. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11638. maxLength: 63
  11639. minLength: 1
  11640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11641. type: string
  11642. type: object
  11643. value:
  11644. description: Value can be specified directly to set a value without using a secret.
  11645. type: string
  11646. type: object
  11647. required:
  11648. - password
  11649. - serverURL
  11650. - username
  11651. type: object
  11652. senhasegura:
  11653. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11654. properties:
  11655. auth:
  11656. description: Auth defines parameters to authenticate in senhasegura
  11657. properties:
  11658. clientId:
  11659. type: string
  11660. clientSecretSecretRef:
  11661. description: |-
  11662. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11663. In some instances, `key` is a required field.
  11664. properties:
  11665. key:
  11666. description: |-
  11667. A key in the referenced Secret.
  11668. Some instances of this field may be defaulted, in others it may be required.
  11669. maxLength: 253
  11670. minLength: 1
  11671. pattern: ^[-._a-zA-Z0-9]+$
  11672. type: string
  11673. name:
  11674. description: The name of the Secret resource being referred to.
  11675. maxLength: 253
  11676. minLength: 1
  11677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11678. type: string
  11679. namespace:
  11680. description: |-
  11681. The namespace of the Secret resource being referred to.
  11682. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11683. maxLength: 63
  11684. minLength: 1
  11685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11686. type: string
  11687. type: object
  11688. required:
  11689. - clientId
  11690. - clientSecretSecretRef
  11691. type: object
  11692. ignoreSslCertificate:
  11693. default: false
  11694. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11695. type: boolean
  11696. module:
  11697. description: Module defines which senhasegura module should be used to get secrets
  11698. type: string
  11699. url:
  11700. description: URL of senhasegura
  11701. type: string
  11702. required:
  11703. - auth
  11704. - module
  11705. - url
  11706. type: object
  11707. vault:
  11708. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11709. properties:
  11710. auth:
  11711. description: Auth configures how secret-manager authenticates with the Vault server.
  11712. properties:
  11713. appRole:
  11714. description: |-
  11715. AppRole authenticates with Vault using the App Role auth mechanism,
  11716. with the role and secret stored in a Kubernetes Secret resource.
  11717. properties:
  11718. path:
  11719. default: approle
  11720. description: |-
  11721. Path where the App Role authentication backend is mounted
  11722. in Vault, e.g: "approle"
  11723. type: string
  11724. roleId:
  11725. description: |-
  11726. RoleID configured in the App Role authentication backend when setting
  11727. up the authentication backend in Vault.
  11728. type: string
  11729. roleRef:
  11730. description: |-
  11731. Reference to a key in a Secret that contains the App Role ID used
  11732. to authenticate with Vault.
  11733. The `key` field must be specified and denotes which entry within the Secret
  11734. resource is used as the app role id.
  11735. properties:
  11736. key:
  11737. description: |-
  11738. A key in the referenced Secret.
  11739. Some instances of this field may be defaulted, in others it may be required.
  11740. maxLength: 253
  11741. minLength: 1
  11742. pattern: ^[-._a-zA-Z0-9]+$
  11743. type: string
  11744. name:
  11745. description: The name of the Secret resource being referred to.
  11746. maxLength: 253
  11747. minLength: 1
  11748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11749. type: string
  11750. namespace:
  11751. description: |-
  11752. The namespace of the Secret resource being referred to.
  11753. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11754. maxLength: 63
  11755. minLength: 1
  11756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11757. type: string
  11758. type: object
  11759. secretRef:
  11760. description: |-
  11761. Reference to a key in a Secret that contains the App Role secret used
  11762. to authenticate with Vault.
  11763. The `key` field must be specified and denotes which entry within the Secret
  11764. resource is used as the app role secret.
  11765. properties:
  11766. key:
  11767. description: |-
  11768. A key in the referenced Secret.
  11769. Some instances of this field may be defaulted, in others it may be required.
  11770. maxLength: 253
  11771. minLength: 1
  11772. pattern: ^[-._a-zA-Z0-9]+$
  11773. type: string
  11774. name:
  11775. description: The name of the Secret resource being referred to.
  11776. maxLength: 253
  11777. minLength: 1
  11778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11779. type: string
  11780. namespace:
  11781. description: |-
  11782. The namespace of the Secret resource being referred to.
  11783. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11784. maxLength: 63
  11785. minLength: 1
  11786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11787. type: string
  11788. type: object
  11789. required:
  11790. - path
  11791. - secretRef
  11792. type: object
  11793. cert:
  11794. description: |-
  11795. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11796. Cert authentication method
  11797. properties:
  11798. clientCert:
  11799. description: |-
  11800. ClientCert is a certificate to authenticate using the Cert Vault
  11801. authentication method
  11802. properties:
  11803. key:
  11804. description: |-
  11805. A key in the referenced Secret.
  11806. Some instances of this field may be defaulted, in others it may be required.
  11807. maxLength: 253
  11808. minLength: 1
  11809. pattern: ^[-._a-zA-Z0-9]+$
  11810. type: string
  11811. name:
  11812. description: The name of the Secret resource being referred to.
  11813. maxLength: 253
  11814. minLength: 1
  11815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11816. type: string
  11817. namespace:
  11818. description: |-
  11819. The namespace of the Secret resource being referred to.
  11820. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11821. maxLength: 63
  11822. minLength: 1
  11823. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11824. type: string
  11825. type: object
  11826. secretRef:
  11827. description: |-
  11828. SecretRef to a key in a Secret resource containing client private key to
  11829. authenticate with Vault using the Cert authentication method
  11830. properties:
  11831. key:
  11832. description: |-
  11833. A key in the referenced Secret.
  11834. Some instances of this field may be defaulted, in others it may be required.
  11835. maxLength: 253
  11836. minLength: 1
  11837. pattern: ^[-._a-zA-Z0-9]+$
  11838. type: string
  11839. name:
  11840. description: The name of the Secret resource being referred to.
  11841. maxLength: 253
  11842. minLength: 1
  11843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11844. type: string
  11845. namespace:
  11846. description: |-
  11847. The namespace of the Secret resource being referred to.
  11848. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11849. maxLength: 63
  11850. minLength: 1
  11851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11852. type: string
  11853. type: object
  11854. type: object
  11855. iam:
  11856. description: |-
  11857. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11858. AWS IAM authentication method
  11859. properties:
  11860. externalID:
  11861. description: AWS External ID set on assumed IAM roles
  11862. type: string
  11863. jwt:
  11864. description: Specify a service account with IRSA enabled
  11865. properties:
  11866. serviceAccountRef:
  11867. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  11868. properties:
  11869. audiences:
  11870. description: |-
  11871. Audience specifies the `aud` claim for the service account token
  11872. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11873. then this audiences will be appended to the list
  11874. items:
  11875. type: string
  11876. type: array
  11877. name:
  11878. description: The name of the ServiceAccount resource being referred to.
  11879. maxLength: 253
  11880. minLength: 1
  11881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11882. type: string
  11883. namespace:
  11884. description: |-
  11885. Namespace of the resource being referred to.
  11886. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11887. maxLength: 63
  11888. minLength: 1
  11889. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11890. type: string
  11891. required:
  11892. - name
  11893. type: object
  11894. type: object
  11895. path:
  11896. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11897. type: string
  11898. region:
  11899. description: AWS region
  11900. type: string
  11901. role:
  11902. description: This is the AWS role to be assumed before talking to vault
  11903. type: string
  11904. secretRef:
  11905. description: Specify credentials in a Secret object
  11906. properties:
  11907. accessKeyIDSecretRef:
  11908. description: The AccessKeyID is used for authentication
  11909. properties:
  11910. key:
  11911. description: |-
  11912. A key in the referenced Secret.
  11913. Some instances of this field may be defaulted, in others it may be required.
  11914. maxLength: 253
  11915. minLength: 1
  11916. pattern: ^[-._a-zA-Z0-9]+$
  11917. type: string
  11918. name:
  11919. description: The name of the Secret resource being referred to.
  11920. maxLength: 253
  11921. minLength: 1
  11922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11923. type: string
  11924. namespace:
  11925. description: |-
  11926. The namespace of the Secret resource being referred to.
  11927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11928. maxLength: 63
  11929. minLength: 1
  11930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11931. type: string
  11932. type: object
  11933. secretAccessKeySecretRef:
  11934. description: The SecretAccessKey is used for authentication
  11935. properties:
  11936. key:
  11937. description: |-
  11938. A key in the referenced Secret.
  11939. Some instances of this field may be defaulted, in others it may be required.
  11940. maxLength: 253
  11941. minLength: 1
  11942. pattern: ^[-._a-zA-Z0-9]+$
  11943. type: string
  11944. name:
  11945. description: The name of the Secret resource being referred to.
  11946. maxLength: 253
  11947. minLength: 1
  11948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11949. type: string
  11950. namespace:
  11951. description: |-
  11952. The namespace of the Secret resource being referred to.
  11953. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11954. maxLength: 63
  11955. minLength: 1
  11956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11957. type: string
  11958. type: object
  11959. sessionTokenSecretRef:
  11960. description: |-
  11961. The SessionToken used for authentication
  11962. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11963. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11964. properties:
  11965. key:
  11966. description: |-
  11967. A key in the referenced Secret.
  11968. Some instances of this field may be defaulted, in others it may be required.
  11969. maxLength: 253
  11970. minLength: 1
  11971. pattern: ^[-._a-zA-Z0-9]+$
  11972. type: string
  11973. name:
  11974. description: The name of the Secret resource being referred to.
  11975. maxLength: 253
  11976. minLength: 1
  11977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11978. type: string
  11979. namespace:
  11980. description: |-
  11981. The namespace of the Secret resource being referred to.
  11982. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11983. maxLength: 63
  11984. minLength: 1
  11985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11986. type: string
  11987. type: object
  11988. type: object
  11989. vaultAwsIamServerID:
  11990. 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'
  11991. type: string
  11992. vaultRole:
  11993. 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
  11994. type: string
  11995. required:
  11996. - vaultRole
  11997. type: object
  11998. jwt:
  11999. description: |-
  12000. Jwt authenticates with Vault by passing role and JWT token using the
  12001. JWT/OIDC authentication method
  12002. properties:
  12003. kubernetesServiceAccountToken:
  12004. description: |-
  12005. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  12006. a token for with the `TokenRequest` API.
  12007. properties:
  12008. audiences:
  12009. description: |-
  12010. Optional audiences field that will be used to request a temporary Kubernetes service
  12011. account token for the service account referenced by `serviceAccountRef`.
  12012. Defaults to a single audience `vault` it not specified.
  12013. Deprecated: use serviceAccountRef.Audiences instead
  12014. items:
  12015. type: string
  12016. type: array
  12017. expirationSeconds:
  12018. description: |-
  12019. Optional expiration time in seconds that will be used to request a temporary
  12020. Kubernetes service account token for the service account referenced by
  12021. `serviceAccountRef`.
  12022. Deprecated: this will be removed in the future.
  12023. Defaults to 10 minutes.
  12024. format: int64
  12025. type: integer
  12026. serviceAccountRef:
  12027. description: Service account field containing the name of a kubernetes ServiceAccount.
  12028. properties:
  12029. audiences:
  12030. description: |-
  12031. Audience specifies the `aud` claim for the service account token
  12032. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  12033. then this audiences will be appended to the list
  12034. items:
  12035. type: string
  12036. type: array
  12037. name:
  12038. description: The name of the ServiceAccount resource being referred to.
  12039. maxLength: 253
  12040. minLength: 1
  12041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12042. type: string
  12043. namespace:
  12044. description: |-
  12045. Namespace of the resource being referred to.
  12046. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12047. maxLength: 63
  12048. minLength: 1
  12049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12050. type: string
  12051. required:
  12052. - name
  12053. type: object
  12054. required:
  12055. - serviceAccountRef
  12056. type: object
  12057. path:
  12058. default: jwt
  12059. description: |-
  12060. Path where the JWT authentication backend is mounted
  12061. in Vault, e.g: "jwt"
  12062. type: string
  12063. role:
  12064. description: |-
  12065. Role is a JWT role to authenticate using the JWT/OIDC Vault
  12066. authentication method
  12067. type: string
  12068. secretRef:
  12069. description: |-
  12070. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  12071. authenticate with Vault using the JWT/OIDC authentication method.
  12072. properties:
  12073. key:
  12074. description: |-
  12075. A key in the referenced Secret.
  12076. Some instances of this field may be defaulted, in others it may be required.
  12077. maxLength: 253
  12078. minLength: 1
  12079. pattern: ^[-._a-zA-Z0-9]+$
  12080. type: string
  12081. name:
  12082. description: The name of the Secret resource being referred to.
  12083. maxLength: 253
  12084. minLength: 1
  12085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12086. type: string
  12087. namespace:
  12088. description: |-
  12089. The namespace of the Secret resource being referred to.
  12090. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12091. maxLength: 63
  12092. minLength: 1
  12093. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12094. type: string
  12095. type: object
  12096. required:
  12097. - path
  12098. type: object
  12099. kubernetes:
  12100. description: |-
  12101. Kubernetes authenticates with Vault by passing the ServiceAccount
  12102. token stored in the named Secret resource to the Vault server.
  12103. properties:
  12104. mountPath:
  12105. default: kubernetes
  12106. description: |-
  12107. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  12108. "kubernetes"
  12109. type: string
  12110. role:
  12111. description: |-
  12112. A required field containing the Vault Role to assume. A Role binds a
  12113. Kubernetes ServiceAccount with a set of Vault policies.
  12114. type: string
  12115. secretRef:
  12116. description: |-
  12117. Optional secret field containing a Kubernetes ServiceAccount JWT used
  12118. for authenticating with Vault. If a name is specified without a key,
  12119. `token` is the default. If one is not specified, the one bound to
  12120. the controller will be used.
  12121. properties:
  12122. key:
  12123. description: |-
  12124. A key in the referenced Secret.
  12125. Some instances of this field may be defaulted, in others it may be required.
  12126. maxLength: 253
  12127. minLength: 1
  12128. pattern: ^[-._a-zA-Z0-9]+$
  12129. type: string
  12130. name:
  12131. description: The name of the Secret resource being referred to.
  12132. maxLength: 253
  12133. minLength: 1
  12134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12135. type: string
  12136. namespace:
  12137. description: |-
  12138. The namespace of the Secret resource being referred to.
  12139. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12140. maxLength: 63
  12141. minLength: 1
  12142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12143. type: string
  12144. type: object
  12145. serviceAccountRef:
  12146. description: |-
  12147. Optional service account field containing the name of a kubernetes ServiceAccount.
  12148. If the service account is specified, the service account secret token JWT will be used
  12149. for authenticating with Vault. If the service account selector is not supplied,
  12150. the secretRef will be used instead.
  12151. properties:
  12152. audiences:
  12153. description: |-
  12154. Audience specifies the `aud` claim for the service account token
  12155. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  12156. then this audiences will be appended to the list
  12157. items:
  12158. type: string
  12159. type: array
  12160. name:
  12161. description: The name of the ServiceAccount resource being referred to.
  12162. maxLength: 253
  12163. minLength: 1
  12164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12165. type: string
  12166. namespace:
  12167. description: |-
  12168. Namespace of the resource being referred to.
  12169. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12170. maxLength: 63
  12171. minLength: 1
  12172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12173. type: string
  12174. required:
  12175. - name
  12176. type: object
  12177. required:
  12178. - mountPath
  12179. - role
  12180. type: object
  12181. ldap:
  12182. description: |-
  12183. Ldap authenticates with Vault by passing username/password pair using
  12184. the LDAP authentication method
  12185. properties:
  12186. path:
  12187. default: ldap
  12188. description: |-
  12189. Path where the LDAP authentication backend is mounted
  12190. in Vault, e.g: "ldap"
  12191. type: string
  12192. secretRef:
  12193. description: |-
  12194. SecretRef to a key in a Secret resource containing password for the LDAP
  12195. user used to authenticate with Vault using the LDAP authentication
  12196. method
  12197. properties:
  12198. key:
  12199. description: |-
  12200. A key in the referenced Secret.
  12201. Some instances of this field may be defaulted, in others it may be required.
  12202. maxLength: 253
  12203. minLength: 1
  12204. pattern: ^[-._a-zA-Z0-9]+$
  12205. type: string
  12206. name:
  12207. description: The name of the Secret resource being referred to.
  12208. maxLength: 253
  12209. minLength: 1
  12210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12211. type: string
  12212. namespace:
  12213. description: |-
  12214. The namespace of the Secret resource being referred to.
  12215. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12216. maxLength: 63
  12217. minLength: 1
  12218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12219. type: string
  12220. type: object
  12221. username:
  12222. description: |-
  12223. Username is an LDAP username used to authenticate using the LDAP Vault
  12224. authentication method
  12225. type: string
  12226. required:
  12227. - path
  12228. - username
  12229. type: object
  12230. namespace:
  12231. description: |-
  12232. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  12233. Namespaces is a set of features within Vault Enterprise that allows
  12234. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12235. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12236. This will default to Vault.Namespace field if set, or empty otherwise
  12237. type: string
  12238. tokenSecretRef:
  12239. description: TokenSecretRef authenticates with Vault by presenting a token.
  12240. properties:
  12241. key:
  12242. description: |-
  12243. A key in the referenced Secret.
  12244. Some instances of this field may be defaulted, in others it may be required.
  12245. maxLength: 253
  12246. minLength: 1
  12247. pattern: ^[-._a-zA-Z0-9]+$
  12248. type: string
  12249. name:
  12250. description: The name of the Secret resource being referred to.
  12251. maxLength: 253
  12252. minLength: 1
  12253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12254. type: string
  12255. namespace:
  12256. description: |-
  12257. The namespace of the Secret resource being referred to.
  12258. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12259. maxLength: 63
  12260. minLength: 1
  12261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12262. type: string
  12263. type: object
  12264. userPass:
  12265. description: UserPass authenticates with Vault by passing username/password pair
  12266. properties:
  12267. path:
  12268. default: userpass
  12269. description: |-
  12270. Path where the UserPassword authentication backend is mounted
  12271. in Vault, e.g: "userpass"
  12272. type: string
  12273. secretRef:
  12274. description: |-
  12275. SecretRef to a key in a Secret resource containing password for the
  12276. user used to authenticate with Vault using the UserPass authentication
  12277. method
  12278. properties:
  12279. key:
  12280. description: |-
  12281. A key in the referenced Secret.
  12282. Some instances of this field may be defaulted, in others it may be required.
  12283. maxLength: 253
  12284. minLength: 1
  12285. pattern: ^[-._a-zA-Z0-9]+$
  12286. type: string
  12287. name:
  12288. description: The name of the Secret resource being referred to.
  12289. maxLength: 253
  12290. minLength: 1
  12291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12292. type: string
  12293. namespace:
  12294. description: |-
  12295. The namespace of the Secret resource being referred to.
  12296. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12297. maxLength: 63
  12298. minLength: 1
  12299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12300. type: string
  12301. type: object
  12302. username:
  12303. description: |-
  12304. Username is a username used to authenticate using the UserPass Vault
  12305. authentication method
  12306. type: string
  12307. required:
  12308. - path
  12309. - username
  12310. type: object
  12311. type: object
  12312. caBundle:
  12313. description: |-
  12314. PEM encoded CA bundle used to validate Vault server certificate. Only used
  12315. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12316. plain HTTP protocol connection. If not set the system root certificates
  12317. are used to validate the TLS connection.
  12318. format: byte
  12319. type: string
  12320. caProvider:
  12321. description: The provider for the CA bundle to use to validate Vault server certificate.
  12322. properties:
  12323. key:
  12324. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12325. maxLength: 253
  12326. minLength: 1
  12327. pattern: ^[-._a-zA-Z0-9]+$
  12328. type: string
  12329. name:
  12330. description: The name of the object located at the provider type.
  12331. maxLength: 253
  12332. minLength: 1
  12333. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12334. type: string
  12335. namespace:
  12336. description: |-
  12337. The namespace the Provider type is in.
  12338. Can only be defined when used in a ClusterSecretStore.
  12339. maxLength: 63
  12340. minLength: 1
  12341. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12342. type: string
  12343. type:
  12344. description: The type of provider to use such as "Secret", or "ConfigMap".
  12345. enum:
  12346. - Secret
  12347. - ConfigMap
  12348. type: string
  12349. required:
  12350. - name
  12351. - type
  12352. type: object
  12353. forwardInconsistent:
  12354. description: |-
  12355. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12356. leader instead of simply retrying within a loop. This can increase performance if
  12357. the option is enabled serverside.
  12358. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12359. type: boolean
  12360. headers:
  12361. additionalProperties:
  12362. type: string
  12363. description: Headers to be added in Vault request
  12364. type: object
  12365. namespace:
  12366. description: |-
  12367. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12368. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12369. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12370. type: string
  12371. path:
  12372. description: |-
  12373. Path is the mount path of the Vault KV backend endpoint, e.g:
  12374. "secret". The v2 KV secret engine version specific "/data" path suffix
  12375. for fetching secrets from Vault is optional and will be appended
  12376. if not present in specified path.
  12377. type: string
  12378. readYourWrites:
  12379. description: |-
  12380. ReadYourWrites ensures isolated read-after-write semantics by
  12381. providing discovered cluster replication states in each request.
  12382. More information about eventual consistency in Vault can be found here
  12383. https://www.vaultproject.io/docs/enterprise/consistency
  12384. type: boolean
  12385. server:
  12386. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12387. type: string
  12388. tls:
  12389. description: |-
  12390. The configuration used for client side related TLS communication, when the Vault server
  12391. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12392. This parameter is ignored for plain HTTP protocol connection.
  12393. It's worth noting this configuration is different from the "TLS certificates auth method",
  12394. which is available under the `auth.cert` section.
  12395. properties:
  12396. certSecretRef:
  12397. description: |-
  12398. CertSecretRef is a certificate added to the transport layer
  12399. when communicating with the Vault server.
  12400. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12401. properties:
  12402. key:
  12403. description: |-
  12404. A key in the referenced Secret.
  12405. Some instances of this field may be defaulted, in others it may be required.
  12406. maxLength: 253
  12407. minLength: 1
  12408. pattern: ^[-._a-zA-Z0-9]+$
  12409. type: string
  12410. name:
  12411. description: The name of the Secret resource being referred to.
  12412. maxLength: 253
  12413. minLength: 1
  12414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12415. type: string
  12416. namespace:
  12417. description: |-
  12418. The namespace of the Secret resource being referred to.
  12419. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12420. maxLength: 63
  12421. minLength: 1
  12422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12423. type: string
  12424. type: object
  12425. keySecretRef:
  12426. description: |-
  12427. KeySecretRef to a key in a Secret resource containing client private key
  12428. added to the transport layer when communicating with the Vault server.
  12429. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  12430. properties:
  12431. key:
  12432. description: |-
  12433. A key in the referenced Secret.
  12434. Some instances of this field may be defaulted, in others it may be required.
  12435. maxLength: 253
  12436. minLength: 1
  12437. pattern: ^[-._a-zA-Z0-9]+$
  12438. type: string
  12439. name:
  12440. description: The name of the Secret resource being referred to.
  12441. maxLength: 253
  12442. minLength: 1
  12443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12444. type: string
  12445. namespace:
  12446. description: |-
  12447. The namespace of the Secret resource being referred to.
  12448. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12449. maxLength: 63
  12450. minLength: 1
  12451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12452. type: string
  12453. type: object
  12454. type: object
  12455. version:
  12456. default: v2
  12457. description: |-
  12458. Version is the Vault KV secret engine version. This can be either "v1" or
  12459. "v2". Version defaults to "v2".
  12460. enum:
  12461. - v1
  12462. - v2
  12463. type: string
  12464. required:
  12465. - server
  12466. type: object
  12467. webhook:
  12468. description: Webhook configures this store to sync secrets using a generic templated webhook
  12469. properties:
  12470. auth:
  12471. description: Auth specifies a authorization protocol. Only one protocol may be set.
  12472. maxProperties: 1
  12473. minProperties: 1
  12474. properties:
  12475. ntlm:
  12476. description: NTLMProtocol configures the store to use NTLM for auth
  12477. properties:
  12478. passwordSecret:
  12479. description: |-
  12480. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12481. In some instances, `key` is a required field.
  12482. properties:
  12483. key:
  12484. description: |-
  12485. A key in the referenced Secret.
  12486. Some instances of this field may be defaulted, in others it may be required.
  12487. maxLength: 253
  12488. minLength: 1
  12489. pattern: ^[-._a-zA-Z0-9]+$
  12490. type: string
  12491. name:
  12492. description: The name of the Secret resource being referred to.
  12493. maxLength: 253
  12494. minLength: 1
  12495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12496. type: string
  12497. namespace:
  12498. description: |-
  12499. The namespace of the Secret resource being referred to.
  12500. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12501. maxLength: 63
  12502. minLength: 1
  12503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12504. type: string
  12505. type: object
  12506. usernameSecret:
  12507. description: |-
  12508. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12509. In some instances, `key` is a required field.
  12510. properties:
  12511. key:
  12512. description: |-
  12513. A key in the referenced Secret.
  12514. Some instances of this field may be defaulted, in others it may be required.
  12515. maxLength: 253
  12516. minLength: 1
  12517. pattern: ^[-._a-zA-Z0-9]+$
  12518. type: string
  12519. name:
  12520. description: The name of the Secret resource being referred to.
  12521. maxLength: 253
  12522. minLength: 1
  12523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12524. type: string
  12525. namespace:
  12526. description: |-
  12527. The namespace of the Secret resource being referred to.
  12528. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12529. maxLength: 63
  12530. minLength: 1
  12531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12532. type: string
  12533. type: object
  12534. required:
  12535. - passwordSecret
  12536. - usernameSecret
  12537. type: object
  12538. type: object
  12539. body:
  12540. description: Body
  12541. type: string
  12542. caBundle:
  12543. description: |-
  12544. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12545. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12546. plain HTTP protocol connection. If not set the system root certificates
  12547. are used to validate the TLS connection.
  12548. format: byte
  12549. type: string
  12550. caProvider:
  12551. description: The provider for the CA bundle to use to validate webhook server certificate.
  12552. properties:
  12553. key:
  12554. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12555. maxLength: 253
  12556. minLength: 1
  12557. pattern: ^[-._a-zA-Z0-9]+$
  12558. type: string
  12559. name:
  12560. description: The name of the object located at the provider type.
  12561. maxLength: 253
  12562. minLength: 1
  12563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12564. type: string
  12565. namespace:
  12566. description: The namespace the Provider type is in.
  12567. maxLength: 63
  12568. minLength: 1
  12569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12570. type: string
  12571. type:
  12572. description: The type of provider to use such as "Secret", or "ConfigMap".
  12573. enum:
  12574. - Secret
  12575. - ConfigMap
  12576. type: string
  12577. required:
  12578. - name
  12579. - type
  12580. type: object
  12581. headers:
  12582. additionalProperties:
  12583. type: string
  12584. description: Headers
  12585. type: object
  12586. method:
  12587. description: Webhook Method
  12588. type: string
  12589. result:
  12590. description: Result formatting
  12591. properties:
  12592. jsonPath:
  12593. description: Json path of return value
  12594. type: string
  12595. type: object
  12596. secrets:
  12597. description: |-
  12598. Secrets to fill in templates
  12599. These secrets will be passed to the templating function as key value pairs under the given name
  12600. items:
  12601. description: WebhookSecret defines a secret to be used in webhook templates.
  12602. properties:
  12603. name:
  12604. description: Name of this secret in templates
  12605. type: string
  12606. secretRef:
  12607. description: Secret ref to fill in credentials
  12608. properties:
  12609. key:
  12610. description: |-
  12611. A key in the referenced Secret.
  12612. Some instances of this field may be defaulted, in others it may be required.
  12613. maxLength: 253
  12614. minLength: 1
  12615. pattern: ^[-._a-zA-Z0-9]+$
  12616. type: string
  12617. name:
  12618. description: The name of the Secret resource being referred to.
  12619. maxLength: 253
  12620. minLength: 1
  12621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12622. type: string
  12623. namespace:
  12624. description: |-
  12625. The namespace of the Secret resource being referred to.
  12626. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12627. maxLength: 63
  12628. minLength: 1
  12629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12630. type: string
  12631. type: object
  12632. required:
  12633. - name
  12634. - secretRef
  12635. type: object
  12636. type: array
  12637. timeout:
  12638. description: Timeout
  12639. type: string
  12640. url:
  12641. description: Webhook url to call
  12642. type: string
  12643. required:
  12644. - result
  12645. - url
  12646. type: object
  12647. yandexcertificatemanager:
  12648. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12649. properties:
  12650. apiEndpoint:
  12651. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12652. type: string
  12653. auth:
  12654. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12655. properties:
  12656. authorizedKeySecretRef:
  12657. description: The authorized key used for authentication
  12658. properties:
  12659. key:
  12660. description: |-
  12661. A key in the referenced Secret.
  12662. Some instances of this field may be defaulted, in others it may be required.
  12663. maxLength: 253
  12664. minLength: 1
  12665. pattern: ^[-._a-zA-Z0-9]+$
  12666. type: string
  12667. name:
  12668. description: The name of the Secret resource being referred to.
  12669. maxLength: 253
  12670. minLength: 1
  12671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12672. type: string
  12673. namespace:
  12674. description: |-
  12675. The namespace of the Secret resource being referred to.
  12676. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12677. maxLength: 63
  12678. minLength: 1
  12679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12680. type: string
  12681. type: object
  12682. type: object
  12683. caProvider:
  12684. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12685. properties:
  12686. certSecretRef:
  12687. description: |-
  12688. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12689. In some instances, `key` is a required field.
  12690. properties:
  12691. key:
  12692. description: |-
  12693. A key in the referenced Secret.
  12694. Some instances of this field may be defaulted, in others it may be required.
  12695. maxLength: 253
  12696. minLength: 1
  12697. pattern: ^[-._a-zA-Z0-9]+$
  12698. type: string
  12699. name:
  12700. description: The name of the Secret resource being referred to.
  12701. maxLength: 253
  12702. minLength: 1
  12703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12704. type: string
  12705. namespace:
  12706. description: |-
  12707. The namespace of the Secret resource being referred to.
  12708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12709. maxLength: 63
  12710. minLength: 1
  12711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12712. type: string
  12713. type: object
  12714. type: object
  12715. required:
  12716. - auth
  12717. type: object
  12718. yandexlockbox:
  12719. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12720. properties:
  12721. apiEndpoint:
  12722. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12723. type: string
  12724. auth:
  12725. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12726. properties:
  12727. authorizedKeySecretRef:
  12728. description: The authorized key used for authentication
  12729. properties:
  12730. key:
  12731. description: |-
  12732. A key in the referenced Secret.
  12733. Some instances of this field may be defaulted, in others it may be required.
  12734. maxLength: 253
  12735. minLength: 1
  12736. pattern: ^[-._a-zA-Z0-9]+$
  12737. type: string
  12738. name:
  12739. description: The name of the Secret resource being referred to.
  12740. maxLength: 253
  12741. minLength: 1
  12742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12743. type: string
  12744. namespace:
  12745. description: |-
  12746. The namespace of the Secret resource being referred to.
  12747. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12748. maxLength: 63
  12749. minLength: 1
  12750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12751. type: string
  12752. type: object
  12753. type: object
  12754. caProvider:
  12755. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12756. properties:
  12757. certSecretRef:
  12758. description: |-
  12759. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12760. In some instances, `key` is a required field.
  12761. properties:
  12762. key:
  12763. description: |-
  12764. A key in the referenced Secret.
  12765. Some instances of this field may be defaulted, in others it may be required.
  12766. maxLength: 253
  12767. minLength: 1
  12768. pattern: ^[-._a-zA-Z0-9]+$
  12769. type: string
  12770. name:
  12771. description: The name of the Secret resource being referred to.
  12772. maxLength: 253
  12773. minLength: 1
  12774. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12775. type: string
  12776. namespace:
  12777. description: |-
  12778. The namespace of the Secret resource being referred to.
  12779. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12780. maxLength: 63
  12781. minLength: 1
  12782. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12783. type: string
  12784. type: object
  12785. type: object
  12786. required:
  12787. - auth
  12788. type: object
  12789. type: object
  12790. refreshInterval:
  12791. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12792. type: integer
  12793. retrySettings:
  12794. description: Used to configure HTTP retries on failures.
  12795. properties:
  12796. maxRetries:
  12797. description: MaxRetries is the maximum number of retry attempts.
  12798. format: int32
  12799. type: integer
  12800. retryInterval:
  12801. description: RetryInterval is the interval between retry attempts.
  12802. type: string
  12803. type: object
  12804. required:
  12805. - provider
  12806. type: object
  12807. status:
  12808. description: SecretStoreStatus defines the observed state of the SecretStore.
  12809. properties:
  12810. capabilities:
  12811. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12812. type: string
  12813. conditions:
  12814. items:
  12815. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12816. properties:
  12817. lastTransitionTime:
  12818. format: date-time
  12819. type: string
  12820. message:
  12821. type: string
  12822. reason:
  12823. type: string
  12824. status:
  12825. type: string
  12826. type:
  12827. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12828. type: string
  12829. required:
  12830. - status
  12831. - type
  12832. type: object
  12833. type: array
  12834. type: object
  12835. type: object
  12836. served: false
  12837. storage: false
  12838. subresources:
  12839. status: {}
  12840. ---
  12841. apiVersion: apiextensions.k8s.io/v1
  12842. kind: CustomResourceDefinition
  12843. metadata:
  12844. annotations:
  12845. controller-gen.kubebuilder.io/version: v0.19.0
  12846. labels:
  12847. external-secrets.io/component: controller
  12848. name: externalsecrets.external-secrets.io
  12849. spec:
  12850. group: external-secrets.io
  12851. names:
  12852. categories:
  12853. - external-secrets
  12854. kind: ExternalSecret
  12855. listKind: ExternalSecretList
  12856. plural: externalsecrets
  12857. shortNames:
  12858. - es
  12859. singular: externalsecret
  12860. scope: Namespaced
  12861. versions:
  12862. - additionalPrinterColumns:
  12863. - jsonPath: .spec.secretStoreRef.kind
  12864. name: StoreType
  12865. type: string
  12866. - jsonPath: .spec.secretStoreRef.name
  12867. name: Store
  12868. type: string
  12869. - jsonPath: .spec.refreshInterval
  12870. name: Refresh Interval
  12871. type: string
  12872. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  12873. name: Status
  12874. type: string
  12875. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12876. name: Ready
  12877. type: string
  12878. - jsonPath: .status.refreshTime
  12879. name: Last Sync
  12880. type: date
  12881. name: v1
  12882. schema:
  12883. openAPIV3Schema:
  12884. description: |-
  12885. ExternalSecret is the Schema for the external-secrets API.
  12886. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  12887. properties:
  12888. apiVersion:
  12889. description: |-
  12890. APIVersion defines the versioned schema of this representation of an object.
  12891. Servers should convert recognized schemas to the latest internal value, and
  12892. may reject unrecognized values.
  12893. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12894. type: string
  12895. kind:
  12896. description: |-
  12897. Kind is a string value representing the REST resource this object represents.
  12898. Servers may infer this from the endpoint the client submits requests to.
  12899. Cannot be updated.
  12900. In CamelCase.
  12901. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12902. type: string
  12903. metadata:
  12904. type: object
  12905. spec:
  12906. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  12907. properties:
  12908. data:
  12909. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  12910. items:
  12911. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  12912. properties:
  12913. remoteRef:
  12914. description: |-
  12915. RemoteRef points to the remote secret and defines
  12916. which secret (version/property/..) to fetch.
  12917. properties:
  12918. conversionStrategy:
  12919. default: Default
  12920. description: Used to define a conversion Strategy
  12921. enum:
  12922. - Default
  12923. - Unicode
  12924. type: string
  12925. decodingStrategy:
  12926. default: None
  12927. description: Used to define a decoding Strategy
  12928. enum:
  12929. - Auto
  12930. - Base64
  12931. - Base64URL
  12932. - None
  12933. type: string
  12934. key:
  12935. description: Key is the key used in the Provider, mandatory
  12936. type: string
  12937. metadataPolicy:
  12938. default: None
  12939. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12940. enum:
  12941. - None
  12942. - Fetch
  12943. type: string
  12944. nullBytePolicy:
  12945. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12946. enum:
  12947. - Ignore
  12948. - Fail
  12949. type: string
  12950. property:
  12951. description: Used to select a specific property of the Provider value (if a map), if supported
  12952. type: string
  12953. version:
  12954. description: Used to select a specific version of the Provider value, if supported
  12955. type: string
  12956. required:
  12957. - key
  12958. type: object
  12959. secretKey:
  12960. description: The key in the Kubernetes Secret to store the value.
  12961. maxLength: 253
  12962. minLength: 1
  12963. pattern: ^[-._a-zA-Z0-9]+$
  12964. type: string
  12965. sourceRef:
  12966. description: |-
  12967. SourceRef allows you to override the source
  12968. from which the value will be pulled.
  12969. maxProperties: 1
  12970. minProperties: 1
  12971. properties:
  12972. generatorRef:
  12973. description: |-
  12974. GeneratorRef points to a generator custom resource.
  12975. Deprecated: The generatorRef is not implemented in .data[].
  12976. this will be removed with v1.
  12977. properties:
  12978. apiVersion:
  12979. default: generators.external-secrets.io/v1alpha1
  12980. description: Specify the apiVersion of the generator resource
  12981. type: string
  12982. kind:
  12983. description: Specify the Kind of the generator resource
  12984. enum:
  12985. - ACRAccessToken
  12986. - BeyondtrustWorkloadCredentialsDynamicSecret
  12987. - ClusterGenerator
  12988. - CloudsmithAccessToken
  12989. - ECRAuthorizationToken
  12990. - Fake
  12991. - GCRAccessToken
  12992. - GithubAccessToken
  12993. - QuayAccessToken
  12994. - Password
  12995. - SSHKey
  12996. - STSSessionToken
  12997. - UUID
  12998. - VaultDynamicSecret
  12999. - Webhook
  13000. - Grafana
  13001. - MFA
  13002. type: string
  13003. name:
  13004. description: Specify the name of the generator resource
  13005. maxLength: 253
  13006. minLength: 1
  13007. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13008. type: string
  13009. required:
  13010. - kind
  13011. - name
  13012. type: object
  13013. storeRef:
  13014. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13015. properties:
  13016. kind:
  13017. description: |-
  13018. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13019. Defaults to `SecretStore`
  13020. enum:
  13021. - SecretStore
  13022. - ClusterSecretStore
  13023. type: string
  13024. name:
  13025. description: Name of the SecretStore resource
  13026. maxLength: 253
  13027. minLength: 1
  13028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13029. type: string
  13030. type: object
  13031. type: object
  13032. required:
  13033. - remoteRef
  13034. - secretKey
  13035. type: object
  13036. type: array
  13037. dataFrom:
  13038. description: |-
  13039. DataFrom is used to fetch all properties from a specific Provider data
  13040. If multiple entries are specified, the Secret keys are merged in the specified order
  13041. items:
  13042. description: |-
  13043. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  13044. when using DataFrom to fetch multiple values from a Provider.
  13045. properties:
  13046. extract:
  13047. description: |-
  13048. Used to extract multiple key/value pairs from one secret
  13049. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13050. properties:
  13051. conversionStrategy:
  13052. default: Default
  13053. description: Used to define a conversion Strategy
  13054. enum:
  13055. - Default
  13056. - Unicode
  13057. type: string
  13058. decodingStrategy:
  13059. default: None
  13060. description: Used to define a decoding Strategy
  13061. enum:
  13062. - Auto
  13063. - Base64
  13064. - Base64URL
  13065. - None
  13066. type: string
  13067. key:
  13068. description: Key is the key used in the Provider, mandatory
  13069. type: string
  13070. metadataPolicy:
  13071. default: None
  13072. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13073. enum:
  13074. - None
  13075. - Fetch
  13076. type: string
  13077. nullBytePolicy:
  13078. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  13079. enum:
  13080. - Ignore
  13081. - Fail
  13082. type: string
  13083. property:
  13084. description: Used to select a specific property of the Provider value (if a map), if supported
  13085. type: string
  13086. version:
  13087. description: Used to select a specific version of the Provider value, if supported
  13088. type: string
  13089. required:
  13090. - key
  13091. type: object
  13092. find:
  13093. description: |-
  13094. Used to find secrets based on tags or regular expressions
  13095. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13096. properties:
  13097. conversionStrategy:
  13098. default: Default
  13099. description: Used to define a conversion Strategy
  13100. enum:
  13101. - Default
  13102. - Unicode
  13103. type: string
  13104. decodingStrategy:
  13105. default: None
  13106. description: Used to define a decoding Strategy
  13107. enum:
  13108. - Auto
  13109. - Base64
  13110. - Base64URL
  13111. - None
  13112. type: string
  13113. name:
  13114. description: Finds secrets based on the name.
  13115. properties:
  13116. regexp:
  13117. description: Finds secrets base
  13118. type: string
  13119. type: object
  13120. nullBytePolicy:
  13121. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  13122. enum:
  13123. - Ignore
  13124. - Fail
  13125. type: string
  13126. path:
  13127. description: A root path to start the find operations.
  13128. type: string
  13129. tags:
  13130. additionalProperties:
  13131. type: string
  13132. description: Find secrets based on tags.
  13133. type: object
  13134. type: object
  13135. rewrite:
  13136. description: |-
  13137. Used to rewrite secret Keys after getting them from the secret Provider
  13138. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13139. items:
  13140. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  13141. maxProperties: 1
  13142. minProperties: 1
  13143. properties:
  13144. merge:
  13145. description: |-
  13146. Used to merge key/values in one single Secret
  13147. The resulting key will contain all values from the specified secrets
  13148. properties:
  13149. conflictPolicy:
  13150. default: Error
  13151. description: Used to define the policy to use in conflict resolution.
  13152. enum:
  13153. - Ignore
  13154. - Error
  13155. type: string
  13156. into:
  13157. default: ""
  13158. description: |-
  13159. Used to define the target key of the merge operation.
  13160. Required if strategy is JSON. Ignored otherwise.
  13161. type: string
  13162. priority:
  13163. description: Used to define key priority in conflict resolution.
  13164. items:
  13165. type: string
  13166. type: array
  13167. priorityPolicy:
  13168. default: Strict
  13169. description: Used to define the policy when a key in the priority list does not exist in the input.
  13170. enum:
  13171. - IgnoreNotFound
  13172. - Strict
  13173. type: string
  13174. strategy:
  13175. default: Extract
  13176. description: Used to define the strategy to use in the merge operation.
  13177. enum:
  13178. - Extract
  13179. - JSON
  13180. type: string
  13181. type: object
  13182. regexp:
  13183. description: |-
  13184. Used to rewrite with regular expressions.
  13185. The resulting key will be the output of a regexp.ReplaceAll operation.
  13186. properties:
  13187. source:
  13188. description: Used to define the regular expression of a re.Compiler.
  13189. type: string
  13190. target:
  13191. description: Used to define the target pattern of a ReplaceAll operation.
  13192. type: string
  13193. required:
  13194. - source
  13195. - target
  13196. type: object
  13197. transform:
  13198. description: |-
  13199. Used to apply string transformation on the secrets.
  13200. The resulting key will be the output of the template applied by the operation.
  13201. properties:
  13202. template:
  13203. description: |-
  13204. Used to define the template to apply on the secret name.
  13205. `.value ` will specify the secret name in the template.
  13206. type: string
  13207. required:
  13208. - template
  13209. type: object
  13210. type: object
  13211. type: array
  13212. sourceRef:
  13213. description: |-
  13214. SourceRef points to a store or generator
  13215. which contains secret values ready to use.
  13216. Use this in combination with Extract or Find pull values out of
  13217. a specific SecretStore.
  13218. When sourceRef points to a generator Extract or Find is not supported.
  13219. The generator returns a static map of values
  13220. maxProperties: 1
  13221. minProperties: 1
  13222. properties:
  13223. generatorRef:
  13224. description: GeneratorRef points to a generator custom resource.
  13225. properties:
  13226. apiVersion:
  13227. default: generators.external-secrets.io/v1alpha1
  13228. description: Specify the apiVersion of the generator resource
  13229. type: string
  13230. kind:
  13231. description: Specify the Kind of the generator resource
  13232. enum:
  13233. - ACRAccessToken
  13234. - BeyondtrustWorkloadCredentialsDynamicSecret
  13235. - ClusterGenerator
  13236. - CloudsmithAccessToken
  13237. - ECRAuthorizationToken
  13238. - Fake
  13239. - GCRAccessToken
  13240. - GithubAccessToken
  13241. - QuayAccessToken
  13242. - Password
  13243. - SSHKey
  13244. - STSSessionToken
  13245. - UUID
  13246. - VaultDynamicSecret
  13247. - Webhook
  13248. - Grafana
  13249. - MFA
  13250. type: string
  13251. name:
  13252. description: Specify the name of the generator resource
  13253. maxLength: 253
  13254. minLength: 1
  13255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13256. type: string
  13257. required:
  13258. - kind
  13259. - name
  13260. type: object
  13261. storeRef:
  13262. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13263. properties:
  13264. kind:
  13265. description: |-
  13266. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13267. Defaults to `SecretStore`
  13268. enum:
  13269. - SecretStore
  13270. - ClusterSecretStore
  13271. type: string
  13272. name:
  13273. description: Name of the SecretStore resource
  13274. maxLength: 253
  13275. minLength: 1
  13276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13277. type: string
  13278. type: object
  13279. type: object
  13280. type: object
  13281. type: array
  13282. refreshInterval:
  13283. default: 1h0m0s
  13284. description: |-
  13285. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13286. specified as Golang Duration strings.
  13287. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13288. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13289. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13290. type: string
  13291. refreshPolicy:
  13292. description: |-
  13293. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13294. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13295. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13296. No periodic updates occur if refreshInterval is 0.
  13297. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13298. enum:
  13299. - CreatedOnce
  13300. - Periodic
  13301. - OnChange
  13302. type: string
  13303. secretStoreRef:
  13304. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13305. properties:
  13306. kind:
  13307. description: |-
  13308. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13309. Defaults to `SecretStore`
  13310. enum:
  13311. - SecretStore
  13312. - ClusterSecretStore
  13313. type: string
  13314. name:
  13315. description: Name of the SecretStore resource
  13316. maxLength: 253
  13317. minLength: 1
  13318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13319. type: string
  13320. type: object
  13321. target:
  13322. default:
  13323. creationPolicy: Owner
  13324. deletionPolicy: Retain
  13325. description: |-
  13326. ExternalSecretTarget defines the Kubernetes Secret to be created,
  13327. there can be only one target per ExternalSecret.
  13328. properties:
  13329. creationPolicy:
  13330. default: Owner
  13331. description: |-
  13332. CreationPolicy defines rules on how to create the resulting Secret.
  13333. Defaults to "Owner"
  13334. enum:
  13335. - Owner
  13336. - Orphan
  13337. - Merge
  13338. - None
  13339. type: string
  13340. deletionPolicy:
  13341. default: Retain
  13342. description: |-
  13343. DeletionPolicy defines rules on how to delete the resulting Secret.
  13344. Defaults to "Retain"
  13345. enum:
  13346. - Delete
  13347. - Merge
  13348. - Retain
  13349. type: string
  13350. immutable:
  13351. description: Immutable defines if the final secret will be immutable
  13352. type: boolean
  13353. manifest:
  13354. description: |-
  13355. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  13356. When specified, ExternalSecret will create the resource type defined here
  13357. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  13358. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  13359. properties:
  13360. apiVersion:
  13361. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  13362. minLength: 1
  13363. type: string
  13364. kind:
  13365. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  13366. minLength: 1
  13367. type: string
  13368. required:
  13369. - apiVersion
  13370. - kind
  13371. type: object
  13372. name:
  13373. description: |-
  13374. The name of the Secret resource to be managed.
  13375. Defaults to the .metadata.name of the ExternalSecret resource
  13376. maxLength: 253
  13377. minLength: 1
  13378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13379. type: string
  13380. template:
  13381. description: Template defines a blueprint for the created Secret resource.
  13382. properties:
  13383. data:
  13384. additionalProperties:
  13385. type: string
  13386. type: object
  13387. engineVersion:
  13388. default: v2
  13389. description: |-
  13390. EngineVersion specifies the template engine version
  13391. that should be used to compile/execute the
  13392. template specified in .data and .templateFrom[].
  13393. enum:
  13394. - v2
  13395. type: string
  13396. mergePolicy:
  13397. default: Replace
  13398. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  13399. enum:
  13400. - Replace
  13401. - Merge
  13402. type: string
  13403. metadata:
  13404. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13405. properties:
  13406. annotations:
  13407. additionalProperties:
  13408. type: string
  13409. type: object
  13410. finalizers:
  13411. items:
  13412. type: string
  13413. type: array
  13414. labels:
  13415. additionalProperties:
  13416. type: string
  13417. type: object
  13418. type: object
  13419. templateFrom:
  13420. items:
  13421. description: |-
  13422. TemplateFrom specifies a source for templates.
  13423. Each item in the list can either reference a ConfigMap or a Secret resource.
  13424. properties:
  13425. configMap:
  13426. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13427. properties:
  13428. items:
  13429. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13430. items:
  13431. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13432. properties:
  13433. key:
  13434. description: A key in the ConfigMap/Secret
  13435. maxLength: 253
  13436. minLength: 1
  13437. pattern: ^[-._a-zA-Z0-9]+$
  13438. type: string
  13439. templateAs:
  13440. default: Values
  13441. description: TemplateScope specifies how the template keys should be interpreted.
  13442. enum:
  13443. - Values
  13444. - KeysAndValues
  13445. type: string
  13446. required:
  13447. - key
  13448. type: object
  13449. type: array
  13450. name:
  13451. description: The name of the ConfigMap/Secret resource
  13452. maxLength: 253
  13453. minLength: 1
  13454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13455. type: string
  13456. required:
  13457. - items
  13458. - name
  13459. type: object
  13460. literal:
  13461. type: string
  13462. secret:
  13463. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13464. properties:
  13465. items:
  13466. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13467. items:
  13468. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13469. properties:
  13470. key:
  13471. description: A key in the ConfigMap/Secret
  13472. maxLength: 253
  13473. minLength: 1
  13474. pattern: ^[-._a-zA-Z0-9]+$
  13475. type: string
  13476. templateAs:
  13477. default: Values
  13478. description: TemplateScope specifies how the template keys should be interpreted.
  13479. enum:
  13480. - Values
  13481. - KeysAndValues
  13482. type: string
  13483. required:
  13484. - key
  13485. type: object
  13486. type: array
  13487. name:
  13488. description: The name of the ConfigMap/Secret resource
  13489. maxLength: 253
  13490. minLength: 1
  13491. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13492. type: string
  13493. required:
  13494. - items
  13495. - name
  13496. type: object
  13497. target:
  13498. default: Data
  13499. description: |-
  13500. Target specifies where to place the template result.
  13501. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13502. For custom resources (when spec.target.manifest is set), this supports
  13503. nested paths like "spec.database.config" or "data".
  13504. type: string
  13505. valuesDecodingStrategy:
  13506. default: None
  13507. description: Used to define a decoding Strategy for the rendered template values.
  13508. enum:
  13509. - Auto
  13510. - Base64
  13511. - Base64URL
  13512. - None
  13513. type: string
  13514. type: object
  13515. type: array
  13516. type:
  13517. type: string
  13518. type: object
  13519. type: object
  13520. type: object
  13521. status:
  13522. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13523. properties:
  13524. binding:
  13525. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13526. properties:
  13527. name:
  13528. default: ""
  13529. description: |-
  13530. Name of the referent.
  13531. This field is effectively required, but due to backwards compatibility is
  13532. allowed to be empty. Instances of this type with an empty value here are
  13533. almost certainly wrong.
  13534. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13535. type: string
  13536. type: object
  13537. x-kubernetes-map-type: atomic
  13538. conditions:
  13539. items:
  13540. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13541. properties:
  13542. lastTransitionTime:
  13543. format: date-time
  13544. type: string
  13545. message:
  13546. type: string
  13547. reason:
  13548. type: string
  13549. status:
  13550. type: string
  13551. type:
  13552. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13553. enum:
  13554. - Ready
  13555. - Deleted
  13556. type: string
  13557. required:
  13558. - status
  13559. - type
  13560. type: object
  13561. type: array
  13562. refreshTime:
  13563. description: |-
  13564. refreshTime is the time and date the external secret was fetched and
  13565. the target secret updated
  13566. format: date-time
  13567. nullable: true
  13568. type: string
  13569. syncedResourceVersion:
  13570. description: SyncedResourceVersion keeps track of the last synced version
  13571. type: string
  13572. type: object
  13573. type: object
  13574. selectableFields:
  13575. - jsonPath: .spec.secretStoreRef.name
  13576. - jsonPath: .spec.secretStoreRef.kind
  13577. - jsonPath: .spec.target.name
  13578. - jsonPath: .spec.refreshInterval
  13579. served: true
  13580. storage: true
  13581. subresources:
  13582. status: {}
  13583. - additionalPrinterColumns:
  13584. - jsonPath: .spec.secretStoreRef.kind
  13585. name: StoreType
  13586. type: string
  13587. - jsonPath: .spec.secretStoreRef.name
  13588. name: Store
  13589. type: string
  13590. - jsonPath: .spec.refreshInterval
  13591. name: Refresh Interval
  13592. type: string
  13593. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13594. name: Status
  13595. type: string
  13596. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13597. name: Ready
  13598. type: string
  13599. - jsonPath: .status.refreshTime
  13600. name: Last Sync
  13601. type: date
  13602. deprecated: true
  13603. name: v1beta1
  13604. schema:
  13605. openAPIV3Schema:
  13606. description: ExternalSecret is the schema for the external-secrets API.
  13607. properties:
  13608. apiVersion:
  13609. description: |-
  13610. APIVersion defines the versioned schema of this representation of an object.
  13611. Servers should convert recognized schemas to the latest internal value, and
  13612. may reject unrecognized values.
  13613. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13614. type: string
  13615. kind:
  13616. description: |-
  13617. Kind is a string value representing the REST resource this object represents.
  13618. Servers may infer this from the endpoint the client submits requests to.
  13619. Cannot be updated.
  13620. In CamelCase.
  13621. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13622. type: string
  13623. metadata:
  13624. type: object
  13625. spec:
  13626. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13627. properties:
  13628. data:
  13629. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13630. items:
  13631. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13632. properties:
  13633. remoteRef:
  13634. description: |-
  13635. RemoteRef points to the remote secret and defines
  13636. which secret (version/property/..) to fetch.
  13637. properties:
  13638. conversionStrategy:
  13639. default: Default
  13640. description: Used to define a conversion Strategy
  13641. enum:
  13642. - Default
  13643. - Unicode
  13644. type: string
  13645. decodingStrategy:
  13646. default: None
  13647. description: Used to define a decoding Strategy
  13648. enum:
  13649. - Auto
  13650. - Base64
  13651. - Base64URL
  13652. - None
  13653. type: string
  13654. key:
  13655. description: Key is the key used in the Provider, mandatory
  13656. type: string
  13657. metadataPolicy:
  13658. default: None
  13659. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13660. enum:
  13661. - None
  13662. - Fetch
  13663. type: string
  13664. property:
  13665. description: Used to select a specific property of the Provider value (if a map), if supported
  13666. type: string
  13667. version:
  13668. description: Used to select a specific version of the Provider value, if supported
  13669. type: string
  13670. required:
  13671. - key
  13672. type: object
  13673. secretKey:
  13674. description: The key in the Kubernetes Secret to store the value.
  13675. maxLength: 253
  13676. minLength: 1
  13677. pattern: ^[-._a-zA-Z0-9]+$
  13678. type: string
  13679. sourceRef:
  13680. description: |-
  13681. SourceRef allows you to override the source
  13682. from which the value will be pulled.
  13683. maxProperties: 1
  13684. minProperties: 1
  13685. properties:
  13686. generatorRef:
  13687. description: |-
  13688. GeneratorRef points to a generator custom resource.
  13689. Deprecated: The generatorRef is not implemented in .data[].
  13690. this will be removed with v1.
  13691. properties:
  13692. apiVersion:
  13693. default: generators.external-secrets.io/v1alpha1
  13694. description: Specify the apiVersion of the generator resource
  13695. type: string
  13696. kind:
  13697. description: Specify the Kind of the generator resource
  13698. enum:
  13699. - ACRAccessToken
  13700. - ClusterGenerator
  13701. - ECRAuthorizationToken
  13702. - Fake
  13703. - GCRAccessToken
  13704. - GithubAccessToken
  13705. - QuayAccessToken
  13706. - Password
  13707. - SSHKey
  13708. - STSSessionToken
  13709. - UUID
  13710. - VaultDynamicSecret
  13711. - Webhook
  13712. - Grafana
  13713. type: string
  13714. name:
  13715. description: Specify the name of the generator resource
  13716. maxLength: 253
  13717. minLength: 1
  13718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13719. type: string
  13720. required:
  13721. - kind
  13722. - name
  13723. type: object
  13724. storeRef:
  13725. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13726. properties:
  13727. kind:
  13728. description: |-
  13729. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13730. Defaults to `SecretStore`
  13731. enum:
  13732. - SecretStore
  13733. - ClusterSecretStore
  13734. type: string
  13735. name:
  13736. description: Name of the SecretStore resource
  13737. maxLength: 253
  13738. minLength: 1
  13739. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13740. type: string
  13741. type: object
  13742. type: object
  13743. required:
  13744. - remoteRef
  13745. - secretKey
  13746. type: object
  13747. type: array
  13748. dataFrom:
  13749. description: |-
  13750. DataFrom is used to fetch all properties from a specific Provider data
  13751. If multiple entries are specified, the Secret keys are merged in the specified order
  13752. items:
  13753. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13754. properties:
  13755. extract:
  13756. description: |-
  13757. Used to extract multiple key/value pairs from one secret
  13758. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13759. properties:
  13760. conversionStrategy:
  13761. default: Default
  13762. description: Used to define a conversion Strategy
  13763. enum:
  13764. - Default
  13765. - Unicode
  13766. type: string
  13767. decodingStrategy:
  13768. default: None
  13769. description: Used to define a decoding Strategy
  13770. enum:
  13771. - Auto
  13772. - Base64
  13773. - Base64URL
  13774. - None
  13775. type: string
  13776. key:
  13777. description: Key is the key used in the Provider, mandatory
  13778. type: string
  13779. metadataPolicy:
  13780. default: None
  13781. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13782. enum:
  13783. - None
  13784. - Fetch
  13785. type: string
  13786. property:
  13787. description: Used to select a specific property of the Provider value (if a map), if supported
  13788. type: string
  13789. version:
  13790. description: Used to select a specific version of the Provider value, if supported
  13791. type: string
  13792. required:
  13793. - key
  13794. type: object
  13795. find:
  13796. description: |-
  13797. Used to find secrets based on tags or regular expressions
  13798. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13799. properties:
  13800. conversionStrategy:
  13801. default: Default
  13802. description: Used to define a conversion Strategy
  13803. enum:
  13804. - Default
  13805. - Unicode
  13806. type: string
  13807. decodingStrategy:
  13808. default: None
  13809. description: Used to define a decoding Strategy
  13810. enum:
  13811. - Auto
  13812. - Base64
  13813. - Base64URL
  13814. - None
  13815. type: string
  13816. name:
  13817. description: Finds secrets based on the name.
  13818. properties:
  13819. regexp:
  13820. description: Finds secrets base
  13821. type: string
  13822. type: object
  13823. path:
  13824. description: A root path to start the find operations.
  13825. type: string
  13826. tags:
  13827. additionalProperties:
  13828. type: string
  13829. description: Find secrets based on tags.
  13830. type: object
  13831. type: object
  13832. rewrite:
  13833. description: |-
  13834. Used to rewrite secret Keys after getting them from the secret Provider
  13835. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13836. items:
  13837. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  13838. maxProperties: 1
  13839. minProperties: 1
  13840. properties:
  13841. regexp:
  13842. description: |-
  13843. Used to rewrite with regular expressions.
  13844. The resulting key will be the output of a regexp.ReplaceAll operation.
  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: |-
  13858. Used to apply string transformation on the secrets.
  13859. The resulting key will be the output of the template applied by the operation.
  13860. properties:
  13861. template:
  13862. description: |-
  13863. Used to define the template to apply on the secret name.
  13864. `.value ` will specify the secret name in the template.
  13865. type: string
  13866. required:
  13867. - template
  13868. type: object
  13869. type: object
  13870. type: array
  13871. sourceRef:
  13872. description: |-
  13873. SourceRef points to a store or generator
  13874. which contains secret values ready to use.
  13875. Use this in combination with Extract or Find pull values out of
  13876. a specific SecretStore.
  13877. When sourceRef points to a generator Extract or Find is not supported.
  13878. The generator returns a static map of values
  13879. maxProperties: 1
  13880. minProperties: 1
  13881. properties:
  13882. generatorRef:
  13883. description: GeneratorRef points to a generator custom resource.
  13884. properties:
  13885. apiVersion:
  13886. default: generators.external-secrets.io/v1alpha1
  13887. description: Specify the apiVersion of the generator resource
  13888. type: string
  13889. kind:
  13890. description: Specify the Kind of the generator resource
  13891. enum:
  13892. - ACRAccessToken
  13893. - ClusterGenerator
  13894. - ECRAuthorizationToken
  13895. - Fake
  13896. - GCRAccessToken
  13897. - GithubAccessToken
  13898. - QuayAccessToken
  13899. - Password
  13900. - SSHKey
  13901. - STSSessionToken
  13902. - UUID
  13903. - VaultDynamicSecret
  13904. - Webhook
  13905. - Grafana
  13906. type: string
  13907. name:
  13908. description: Specify the name of the generator resource
  13909. maxLength: 253
  13910. minLength: 1
  13911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13912. type: string
  13913. required:
  13914. - kind
  13915. - name
  13916. type: object
  13917. storeRef:
  13918. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13919. properties:
  13920. kind:
  13921. description: |-
  13922. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13923. Defaults to `SecretStore`
  13924. enum:
  13925. - SecretStore
  13926. - ClusterSecretStore
  13927. type: string
  13928. name:
  13929. description: Name of the SecretStore resource
  13930. maxLength: 253
  13931. minLength: 1
  13932. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13933. type: string
  13934. type: object
  13935. type: object
  13936. type: object
  13937. type: array
  13938. refreshInterval:
  13939. default: 1h0m0s
  13940. description: |-
  13941. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13942. specified as Golang Duration strings.
  13943. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13944. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13945. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13946. type: string
  13947. refreshPolicy:
  13948. description: |-
  13949. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13950. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13951. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13952. No periodic updates occur if refreshInterval is 0.
  13953. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13954. enum:
  13955. - CreatedOnce
  13956. - Periodic
  13957. - OnChange
  13958. type: string
  13959. secretStoreRef:
  13960. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13961. properties:
  13962. kind:
  13963. description: |-
  13964. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13965. Defaults to `SecretStore`
  13966. enum:
  13967. - SecretStore
  13968. - ClusterSecretStore
  13969. type: string
  13970. name:
  13971. description: Name of the SecretStore resource
  13972. maxLength: 253
  13973. minLength: 1
  13974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13975. type: string
  13976. type: object
  13977. target:
  13978. default:
  13979. creationPolicy: Owner
  13980. deletionPolicy: Retain
  13981. description: |-
  13982. ExternalSecretTarget defines the Kubernetes Secret to be created
  13983. There can be only one target per ExternalSecret.
  13984. properties:
  13985. creationPolicy:
  13986. default: Owner
  13987. description: |-
  13988. CreationPolicy defines rules on how to create the resulting Secret.
  13989. Defaults to "Owner"
  13990. enum:
  13991. - Owner
  13992. - Orphan
  13993. - Merge
  13994. - None
  13995. type: string
  13996. deletionPolicy:
  13997. default: Retain
  13998. description: |-
  13999. DeletionPolicy defines rules on how to delete the resulting Secret.
  14000. Defaults to "Retain"
  14001. enum:
  14002. - Delete
  14003. - Merge
  14004. - Retain
  14005. type: string
  14006. immutable:
  14007. description: Immutable defines if the final secret will be immutable
  14008. type: boolean
  14009. name:
  14010. description: |-
  14011. The name of the Secret resource to be managed.
  14012. Defaults to the .metadata.name of the ExternalSecret resource
  14013. maxLength: 253
  14014. minLength: 1
  14015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14016. type: string
  14017. template:
  14018. description: Template defines a blueprint for the created Secret resource.
  14019. properties:
  14020. data:
  14021. additionalProperties:
  14022. type: string
  14023. type: object
  14024. engineVersion:
  14025. default: v2
  14026. description: |-
  14027. EngineVersion specifies the template engine version
  14028. that should be used to compile/execute the
  14029. template specified in .data and .templateFrom[].
  14030. enum:
  14031. - v2
  14032. type: string
  14033. mergePolicy:
  14034. default: Replace
  14035. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  14036. enum:
  14037. - Replace
  14038. - Merge
  14039. type: string
  14040. metadata:
  14041. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14042. properties:
  14043. annotations:
  14044. additionalProperties:
  14045. type: string
  14046. type: object
  14047. labels:
  14048. additionalProperties:
  14049. type: string
  14050. type: object
  14051. type: object
  14052. templateFrom:
  14053. items:
  14054. description: TemplateFrom defines a source for template data.
  14055. properties:
  14056. configMap:
  14057. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  14058. properties:
  14059. items:
  14060. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14061. items:
  14062. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  14063. properties:
  14064. key:
  14065. description: A key in the ConfigMap/Secret
  14066. maxLength: 253
  14067. minLength: 1
  14068. pattern: ^[-._a-zA-Z0-9]+$
  14069. type: string
  14070. templateAs:
  14071. default: Values
  14072. description: TemplateScope defines the scope of the template when processing template data.
  14073. enum:
  14074. - Values
  14075. - KeysAndValues
  14076. type: string
  14077. required:
  14078. - key
  14079. type: object
  14080. type: array
  14081. name:
  14082. description: The name of the ConfigMap/Secret resource
  14083. maxLength: 253
  14084. minLength: 1
  14085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14086. type: string
  14087. required:
  14088. - items
  14089. - name
  14090. type: object
  14091. literal:
  14092. type: string
  14093. secret:
  14094. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  14095. properties:
  14096. items:
  14097. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14098. items:
  14099. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  14100. properties:
  14101. key:
  14102. description: A key in the ConfigMap/Secret
  14103. maxLength: 253
  14104. minLength: 1
  14105. pattern: ^[-._a-zA-Z0-9]+$
  14106. type: string
  14107. templateAs:
  14108. default: Values
  14109. description: TemplateScope defines the scope of the template when processing template data.
  14110. enum:
  14111. - Values
  14112. - KeysAndValues
  14113. type: string
  14114. required:
  14115. - key
  14116. type: object
  14117. type: array
  14118. name:
  14119. description: The name of the ConfigMap/Secret resource
  14120. maxLength: 253
  14121. minLength: 1
  14122. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14123. type: string
  14124. required:
  14125. - items
  14126. - name
  14127. type: object
  14128. target:
  14129. default: Data
  14130. description: TemplateTarget defines the target field where the template result will be stored.
  14131. enum:
  14132. - Data
  14133. - Annotations
  14134. - Labels
  14135. type: string
  14136. type: object
  14137. type: array
  14138. type:
  14139. type: string
  14140. type: object
  14141. type: object
  14142. type: object
  14143. status:
  14144. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  14145. properties:
  14146. binding:
  14147. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  14148. properties:
  14149. name:
  14150. default: ""
  14151. description: |-
  14152. Name of the referent.
  14153. This field is effectively required, but due to backwards compatibility is
  14154. allowed to be empty. Instances of this type with an empty value here are
  14155. almost certainly wrong.
  14156. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  14157. type: string
  14158. type: object
  14159. x-kubernetes-map-type: atomic
  14160. conditions:
  14161. items:
  14162. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  14163. properties:
  14164. lastTransitionTime:
  14165. format: date-time
  14166. type: string
  14167. message:
  14168. type: string
  14169. reason:
  14170. type: string
  14171. status:
  14172. type: string
  14173. type:
  14174. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  14175. type: string
  14176. required:
  14177. - status
  14178. - type
  14179. type: object
  14180. type: array
  14181. refreshTime:
  14182. description: |-
  14183. refreshTime is the time and date the external secret was fetched and
  14184. the target secret updated
  14185. format: date-time
  14186. nullable: true
  14187. type: string
  14188. syncedResourceVersion:
  14189. description: SyncedResourceVersion keeps track of the last synced version
  14190. type: string
  14191. type: object
  14192. type: object
  14193. served: false
  14194. storage: false
  14195. subresources:
  14196. status: {}
  14197. ---
  14198. apiVersion: apiextensions.k8s.io/v1
  14199. kind: CustomResourceDefinition
  14200. metadata:
  14201. annotations:
  14202. controller-gen.kubebuilder.io/version: v0.19.0
  14203. labels:
  14204. external-secrets.io/component: controller
  14205. name: pushsecrets.external-secrets.io
  14206. spec:
  14207. group: external-secrets.io
  14208. names:
  14209. categories:
  14210. - external-secrets
  14211. kind: PushSecret
  14212. listKind: PushSecretList
  14213. plural: pushsecrets
  14214. shortNames:
  14215. - ps
  14216. singular: pushsecret
  14217. scope: Namespaced
  14218. versions:
  14219. - additionalPrinterColumns:
  14220. - jsonPath: .metadata.creationTimestamp
  14221. name: AGE
  14222. type: date
  14223. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14224. name: Status
  14225. type: string
  14226. - jsonPath: .status.refreshTime
  14227. name: Last Sync
  14228. type: date
  14229. name: v1alpha1
  14230. schema:
  14231. openAPIV3Schema:
  14232. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  14233. properties:
  14234. apiVersion:
  14235. description: |-
  14236. APIVersion defines the versioned schema of this representation of an object.
  14237. Servers should convert recognized schemas to the latest internal value, and
  14238. may reject unrecognized values.
  14239. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14240. type: string
  14241. kind:
  14242. description: |-
  14243. Kind is a string value representing the REST resource this object represents.
  14244. Servers may infer this from the endpoint the client submits requests to.
  14245. Cannot be updated.
  14246. In CamelCase.
  14247. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14248. type: string
  14249. metadata:
  14250. type: object
  14251. spec:
  14252. description: PushSecretSpec configures the behavior of the PushSecret.
  14253. properties:
  14254. data:
  14255. description: Secret Data that should be pushed to providers
  14256. items:
  14257. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14258. properties:
  14259. conversionStrategy:
  14260. default: None
  14261. description: Used to define a conversion Strategy for the secret keys
  14262. enum:
  14263. - None
  14264. - ReverseUnicode
  14265. type: string
  14266. match:
  14267. description: Match a given Secret Key to be pushed to the provider.
  14268. properties:
  14269. remoteRef:
  14270. description: Remote Refs to push to providers.
  14271. properties:
  14272. property:
  14273. description: Name of the property in the resulting secret
  14274. type: string
  14275. remoteKey:
  14276. description: Name of the resulting provider secret.
  14277. type: string
  14278. required:
  14279. - remoteKey
  14280. type: object
  14281. secretKey:
  14282. description: Secret Key to be pushed
  14283. type: string
  14284. required:
  14285. - remoteRef
  14286. type: object
  14287. metadata:
  14288. description: |-
  14289. Metadata is metadata attached to the secret.
  14290. The structure of metadata is provider specific, please look it up in the provider documentation.
  14291. x-kubernetes-preserve-unknown-fields: true
  14292. required:
  14293. - match
  14294. type: object
  14295. type: array
  14296. dataTo:
  14297. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  14298. items:
  14299. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  14300. properties:
  14301. conversionStrategy:
  14302. default: None
  14303. description: Used to define a conversion Strategy for the secret keys
  14304. enum:
  14305. - None
  14306. - ReverseUnicode
  14307. type: string
  14308. match:
  14309. description: |-
  14310. Match pattern for selecting keys from the source Secret.
  14311. If not specified, all keys are selected.
  14312. properties:
  14313. regexp:
  14314. description: |-
  14315. Regexp matches keys by regular expression.
  14316. If not specified, all keys are matched.
  14317. type: string
  14318. type: object
  14319. metadata:
  14320. description: |-
  14321. Metadata is metadata attached to the secret.
  14322. The structure of metadata is provider specific, please look it up in the provider documentation.
  14323. x-kubernetes-preserve-unknown-fields: true
  14324. remoteKey:
  14325. description: |-
  14326. RemoteKey is the name of the single provider secret that will receive ALL
  14327. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  14328. When set, per-key expansion is skipped and a single push is performed.
  14329. The provider's store prefix (if any) is still prepended to this value.
  14330. When not set, each matched key is pushed as its own individual provider secret.
  14331. type: string
  14332. rewrite:
  14333. description: |-
  14334. Rewrite operations to transform keys before pushing to the provider.
  14335. Operations are applied sequentially.
  14336. items:
  14337. description: PushSecretRewrite defines how to transform secret keys before pushing.
  14338. properties:
  14339. regexp:
  14340. description: Used to rewrite with regular expressions.
  14341. properties:
  14342. source:
  14343. description: Used to define the regular expression of a re.Compiler.
  14344. type: string
  14345. target:
  14346. description: Used to define the target pattern of a ReplaceAll operation.
  14347. type: string
  14348. required:
  14349. - source
  14350. - target
  14351. type: object
  14352. transform:
  14353. description: Used to apply string transformation on the secrets.
  14354. properties:
  14355. template:
  14356. description: |-
  14357. Used to define the template to apply on the secret name.
  14358. `.value ` will specify the secret name in the template.
  14359. type: string
  14360. required:
  14361. - template
  14362. type: object
  14363. type: object
  14364. x-kubernetes-validations:
  14365. - message: exactly one of regexp or transform must be set
  14366. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  14367. type: array
  14368. storeRef:
  14369. description: StoreRef specifies which SecretStore to push to. Required.
  14370. properties:
  14371. kind:
  14372. default: SecretStore
  14373. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14374. enum:
  14375. - SecretStore
  14376. - ClusterSecretStore
  14377. type: string
  14378. labelSelector:
  14379. description: Optionally, sync to secret stores with label selector
  14380. properties:
  14381. matchExpressions:
  14382. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14383. items:
  14384. description: |-
  14385. A label selector requirement is a selector that contains values, a key, and an operator that
  14386. relates the key and values.
  14387. properties:
  14388. key:
  14389. description: key is the label key that the selector applies to.
  14390. type: string
  14391. operator:
  14392. description: |-
  14393. operator represents a key's relationship to a set of values.
  14394. Valid operators are In, NotIn, Exists and DoesNotExist.
  14395. type: string
  14396. values:
  14397. description: |-
  14398. values is an array of string values. If the operator is In or NotIn,
  14399. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14400. the values array must be empty. This array is replaced during a strategic
  14401. merge patch.
  14402. items:
  14403. type: string
  14404. type: array
  14405. x-kubernetes-list-type: atomic
  14406. required:
  14407. - key
  14408. - operator
  14409. type: object
  14410. type: array
  14411. x-kubernetes-list-type: atomic
  14412. matchLabels:
  14413. additionalProperties:
  14414. type: string
  14415. description: |-
  14416. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14417. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14418. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14419. type: object
  14420. type: object
  14421. x-kubernetes-map-type: atomic
  14422. name:
  14423. description: Optionally, sync to the SecretStore of the given name
  14424. maxLength: 253
  14425. minLength: 1
  14426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14427. type: string
  14428. type: object
  14429. type: object
  14430. x-kubernetes-validations:
  14431. - message: storeRef must specify either name or labelSelector
  14432. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  14433. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  14434. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  14435. type: array
  14436. deletionPolicy:
  14437. default: None
  14438. description: Deletion Policy to handle Secrets in the provider.
  14439. enum:
  14440. - Delete
  14441. - None
  14442. type: string
  14443. refreshInterval:
  14444. default: 1h0m0s
  14445. description: The Interval to which External Secrets will try to push a secret definition
  14446. type: string
  14447. secretStoreRefs:
  14448. items:
  14449. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  14450. properties:
  14451. kind:
  14452. default: SecretStore
  14453. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14454. enum:
  14455. - SecretStore
  14456. - ClusterSecretStore
  14457. type: string
  14458. labelSelector:
  14459. description: Optionally, sync to secret stores with label selector
  14460. properties:
  14461. matchExpressions:
  14462. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14463. items:
  14464. description: |-
  14465. A label selector requirement is a selector that contains values, a key, and an operator that
  14466. relates the key and values.
  14467. properties:
  14468. key:
  14469. description: key is the label key that the selector applies to.
  14470. type: string
  14471. operator:
  14472. description: |-
  14473. operator represents a key's relationship to a set of values.
  14474. Valid operators are In, NotIn, Exists and DoesNotExist.
  14475. type: string
  14476. values:
  14477. description: |-
  14478. values is an array of string values. If the operator is In or NotIn,
  14479. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14480. the values array must be empty. This array is replaced during a strategic
  14481. merge patch.
  14482. items:
  14483. type: string
  14484. type: array
  14485. x-kubernetes-list-type: atomic
  14486. required:
  14487. - key
  14488. - operator
  14489. type: object
  14490. type: array
  14491. x-kubernetes-list-type: atomic
  14492. matchLabels:
  14493. additionalProperties:
  14494. type: string
  14495. description: |-
  14496. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14497. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14498. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14499. type: object
  14500. type: object
  14501. x-kubernetes-map-type: atomic
  14502. name:
  14503. description: Optionally, sync to the SecretStore of the given name
  14504. maxLength: 253
  14505. minLength: 1
  14506. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14507. type: string
  14508. type: object
  14509. type: array
  14510. selector:
  14511. description: The Secret Selector (k8s source) for the Push Secret
  14512. maxProperties: 1
  14513. minProperties: 1
  14514. properties:
  14515. generatorRef:
  14516. description: Point to a generator to create a Secret.
  14517. properties:
  14518. apiVersion:
  14519. default: generators.external-secrets.io/v1alpha1
  14520. description: Specify the apiVersion of the generator resource
  14521. type: string
  14522. kind:
  14523. description: Specify the Kind of the generator resource
  14524. enum:
  14525. - ACRAccessToken
  14526. - BeyondtrustWorkloadCredentialsDynamicSecret
  14527. - ClusterGenerator
  14528. - CloudsmithAccessToken
  14529. - ECRAuthorizationToken
  14530. - Fake
  14531. - GCRAccessToken
  14532. - GithubAccessToken
  14533. - QuayAccessToken
  14534. - Password
  14535. - SSHKey
  14536. - STSSessionToken
  14537. - UUID
  14538. - VaultDynamicSecret
  14539. - Webhook
  14540. - Grafana
  14541. - MFA
  14542. type: string
  14543. name:
  14544. description: Specify the name of the generator resource
  14545. maxLength: 253
  14546. minLength: 1
  14547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14548. type: string
  14549. required:
  14550. - kind
  14551. - name
  14552. type: object
  14553. secret:
  14554. description: Select a Secret to Push.
  14555. properties:
  14556. name:
  14557. description: |-
  14558. Name of the Secret.
  14559. The Secret must exist in the same namespace as the PushSecret manifest.
  14560. maxLength: 253
  14561. minLength: 1
  14562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14563. type: string
  14564. selector:
  14565. description: Selector chooses secrets using a labelSelector.
  14566. properties:
  14567. matchExpressions:
  14568. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14569. items:
  14570. description: |-
  14571. A label selector requirement is a selector that contains values, a key, and an operator that
  14572. relates the key and values.
  14573. properties:
  14574. key:
  14575. description: key is the label key that the selector applies to.
  14576. type: string
  14577. operator:
  14578. description: |-
  14579. operator represents a key's relationship to a set of values.
  14580. Valid operators are In, NotIn, Exists and DoesNotExist.
  14581. type: string
  14582. values:
  14583. description: |-
  14584. values is an array of string values. If the operator is In or NotIn,
  14585. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14586. the values array must be empty. This array is replaced during a strategic
  14587. merge patch.
  14588. items:
  14589. type: string
  14590. type: array
  14591. x-kubernetes-list-type: atomic
  14592. required:
  14593. - key
  14594. - operator
  14595. type: object
  14596. type: array
  14597. x-kubernetes-list-type: atomic
  14598. matchLabels:
  14599. additionalProperties:
  14600. type: string
  14601. description: |-
  14602. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14603. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14604. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14605. type: object
  14606. type: object
  14607. x-kubernetes-map-type: atomic
  14608. type: object
  14609. type: object
  14610. template:
  14611. description: Template defines a blueprint for the created Secret resource.
  14612. properties:
  14613. data:
  14614. additionalProperties:
  14615. type: string
  14616. type: object
  14617. engineVersion:
  14618. default: v2
  14619. description: |-
  14620. EngineVersion specifies the template engine version
  14621. that should be used to compile/execute the
  14622. template specified in .data and .templateFrom[].
  14623. enum:
  14624. - v2
  14625. type: string
  14626. mergePolicy:
  14627. default: Replace
  14628. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14629. enum:
  14630. - Replace
  14631. - Merge
  14632. type: string
  14633. metadata:
  14634. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14635. properties:
  14636. annotations:
  14637. additionalProperties:
  14638. type: string
  14639. type: object
  14640. finalizers:
  14641. items:
  14642. type: string
  14643. type: array
  14644. labels:
  14645. additionalProperties:
  14646. type: string
  14647. type: object
  14648. type: object
  14649. templateFrom:
  14650. items:
  14651. description: |-
  14652. TemplateFrom specifies a source for templates.
  14653. Each item in the list can either reference a ConfigMap or a Secret resource.
  14654. properties:
  14655. configMap:
  14656. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14657. properties:
  14658. items:
  14659. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14660. items:
  14661. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14662. properties:
  14663. key:
  14664. description: A key in the ConfigMap/Secret
  14665. maxLength: 253
  14666. minLength: 1
  14667. pattern: ^[-._a-zA-Z0-9]+$
  14668. type: string
  14669. templateAs:
  14670. default: Values
  14671. description: TemplateScope specifies how the template keys should be interpreted.
  14672. enum:
  14673. - Values
  14674. - KeysAndValues
  14675. type: string
  14676. required:
  14677. - key
  14678. type: object
  14679. type: array
  14680. name:
  14681. description: The name of the ConfigMap/Secret resource
  14682. maxLength: 253
  14683. minLength: 1
  14684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14685. type: string
  14686. required:
  14687. - items
  14688. - name
  14689. type: object
  14690. literal:
  14691. type: string
  14692. secret:
  14693. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14694. properties:
  14695. items:
  14696. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14697. items:
  14698. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14699. properties:
  14700. key:
  14701. description: A key in the ConfigMap/Secret
  14702. maxLength: 253
  14703. minLength: 1
  14704. pattern: ^[-._a-zA-Z0-9]+$
  14705. type: string
  14706. templateAs:
  14707. default: Values
  14708. description: TemplateScope specifies how the template keys should be interpreted.
  14709. enum:
  14710. - Values
  14711. - KeysAndValues
  14712. type: string
  14713. required:
  14714. - key
  14715. type: object
  14716. type: array
  14717. name:
  14718. description: The name of the ConfigMap/Secret resource
  14719. maxLength: 253
  14720. minLength: 1
  14721. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14722. type: string
  14723. required:
  14724. - items
  14725. - name
  14726. type: object
  14727. target:
  14728. default: Data
  14729. description: |-
  14730. Target specifies where to place the template result.
  14731. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14732. For custom resources (when spec.target.manifest is set), this supports
  14733. nested paths like "spec.database.config" or "data".
  14734. type: string
  14735. valuesDecodingStrategy:
  14736. default: None
  14737. description: Used to define a decoding Strategy for the rendered template values.
  14738. enum:
  14739. - Auto
  14740. - Base64
  14741. - Base64URL
  14742. - None
  14743. type: string
  14744. type: object
  14745. type: array
  14746. type:
  14747. type: string
  14748. type: object
  14749. updatePolicy:
  14750. default: Replace
  14751. description: UpdatePolicy to handle Secrets in the provider.
  14752. enum:
  14753. - Replace
  14754. - IfNotExists
  14755. type: string
  14756. required:
  14757. - secretStoreRefs
  14758. - selector
  14759. type: object
  14760. status:
  14761. description: PushSecretStatus indicates the history of the status of PushSecret.
  14762. properties:
  14763. conditions:
  14764. items:
  14765. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14766. properties:
  14767. lastTransitionTime:
  14768. format: date-time
  14769. type: string
  14770. message:
  14771. type: string
  14772. reason:
  14773. type: string
  14774. status:
  14775. type: string
  14776. type:
  14777. description: PushSecretConditionType indicates the condition of the PushSecret.
  14778. type: string
  14779. required:
  14780. - status
  14781. - type
  14782. type: object
  14783. type: array
  14784. refreshTime:
  14785. description: |-
  14786. refreshTime is the time and date the external secret was fetched and
  14787. the target secret updated
  14788. format: date-time
  14789. nullable: true
  14790. type: string
  14791. syncedPushSecrets:
  14792. additionalProperties:
  14793. additionalProperties:
  14794. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14795. properties:
  14796. conversionStrategy:
  14797. default: None
  14798. description: Used to define a conversion Strategy for the secret keys
  14799. enum:
  14800. - None
  14801. - ReverseUnicode
  14802. type: string
  14803. match:
  14804. description: Match a given Secret Key to be pushed to the provider.
  14805. properties:
  14806. remoteRef:
  14807. description: Remote Refs to push to providers.
  14808. properties:
  14809. property:
  14810. description: Name of the property in the resulting secret
  14811. type: string
  14812. remoteKey:
  14813. description: Name of the resulting provider secret.
  14814. type: string
  14815. required:
  14816. - remoteKey
  14817. type: object
  14818. secretKey:
  14819. description: Secret Key to be pushed
  14820. type: string
  14821. required:
  14822. - remoteRef
  14823. type: object
  14824. metadata:
  14825. description: |-
  14826. Metadata is metadata attached to the secret.
  14827. The structure of metadata is provider specific, please look it up in the provider documentation.
  14828. x-kubernetes-preserve-unknown-fields: true
  14829. required:
  14830. - match
  14831. type: object
  14832. type: object
  14833. description: |-
  14834. Synced PushSecrets, including secrets that already exist in provider.
  14835. Matches secret stores to PushSecretData that was stored to that secret store.
  14836. type: object
  14837. syncedResourceVersion:
  14838. description: SyncedResourceVersion keeps track of the last synced version.
  14839. type: string
  14840. type: object
  14841. type: object
  14842. served: true
  14843. storage: true
  14844. subresources:
  14845. status: {}
  14846. ---
  14847. apiVersion: apiextensions.k8s.io/v1
  14848. kind: CustomResourceDefinition
  14849. metadata:
  14850. annotations:
  14851. controller-gen.kubebuilder.io/version: v0.19.0
  14852. labels:
  14853. external-secrets.io/component: controller
  14854. name: secretstores.external-secrets.io
  14855. spec:
  14856. group: external-secrets.io
  14857. names:
  14858. categories:
  14859. - external-secrets
  14860. kind: SecretStore
  14861. listKind: SecretStoreList
  14862. plural: secretstores
  14863. shortNames:
  14864. - ss
  14865. singular: secretstore
  14866. scope: Namespaced
  14867. versions:
  14868. - additionalPrinterColumns:
  14869. - jsonPath: .metadata.creationTimestamp
  14870. name: AGE
  14871. type: date
  14872. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14873. name: Status
  14874. type: string
  14875. - jsonPath: .status.capabilities
  14876. name: Capabilities
  14877. type: string
  14878. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14879. name: Ready
  14880. type: string
  14881. name: v1
  14882. schema:
  14883. openAPIV3Schema:
  14884. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  14885. properties:
  14886. apiVersion:
  14887. description: |-
  14888. APIVersion defines the versioned schema of this representation of an object.
  14889. Servers should convert recognized schemas to the latest internal value, and
  14890. may reject unrecognized values.
  14891. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14892. type: string
  14893. kind:
  14894. description: |-
  14895. Kind is a string value representing the REST resource this object represents.
  14896. Servers may infer this from the endpoint the client submits requests to.
  14897. Cannot be updated.
  14898. In CamelCase.
  14899. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14900. type: string
  14901. metadata:
  14902. type: object
  14903. spec:
  14904. description: SecretStoreSpec defines the desired state of SecretStore.
  14905. properties:
  14906. conditions:
  14907. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  14908. items:
  14909. description: |-
  14910. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  14911. for a ClusterSecretStore instance.
  14912. properties:
  14913. namespaceRegexes:
  14914. description: Choose namespaces by using regex matching
  14915. items:
  14916. type: string
  14917. type: array
  14918. namespaceSelector:
  14919. description: Choose namespace using a labelSelector
  14920. properties:
  14921. matchExpressions:
  14922. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14923. items:
  14924. description: |-
  14925. A label selector requirement is a selector that contains values, a key, and an operator that
  14926. relates the key and values.
  14927. properties:
  14928. key:
  14929. description: key is the label key that the selector applies to.
  14930. type: string
  14931. operator:
  14932. description: |-
  14933. operator represents a key's relationship to a set of values.
  14934. Valid operators are In, NotIn, Exists and DoesNotExist.
  14935. type: string
  14936. values:
  14937. description: |-
  14938. values is an array of string values. If the operator is In or NotIn,
  14939. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14940. the values array must be empty. This array is replaced during a strategic
  14941. merge patch.
  14942. items:
  14943. type: string
  14944. type: array
  14945. x-kubernetes-list-type: atomic
  14946. required:
  14947. - key
  14948. - operator
  14949. type: object
  14950. type: array
  14951. x-kubernetes-list-type: atomic
  14952. matchLabels:
  14953. additionalProperties:
  14954. type: string
  14955. description: |-
  14956. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14957. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14958. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14959. type: object
  14960. type: object
  14961. x-kubernetes-map-type: atomic
  14962. namespaces:
  14963. description: Choose namespaces by name
  14964. items:
  14965. maxLength: 63
  14966. minLength: 1
  14967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14968. type: string
  14969. type: array
  14970. type: object
  14971. type: array
  14972. controller:
  14973. description: |-
  14974. Used to select the correct ESO controller (think: ingress.ingressClassName)
  14975. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  14976. type: string
  14977. provider:
  14978. description: Used to configure the provider. Only one provider may be set
  14979. maxProperties: 1
  14980. minProperties: 1
  14981. properties:
  14982. akeyless:
  14983. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  14984. properties:
  14985. akeylessGWApiURL:
  14986. description: Akeyless GW API Url from which the secrets to be fetched from.
  14987. type: string
  14988. authSecretRef:
  14989. description: Auth configures how the operator authenticates with Akeyless.
  14990. properties:
  14991. kubernetesAuth:
  14992. description: |-
  14993. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  14994. token stored in the named Secret resource.
  14995. properties:
  14996. accessID:
  14997. description: the Akeyless Kubernetes auth-method access-id
  14998. type: string
  14999. k8sConfName:
  15000. description: Kubernetes-auth configuration name in Akeyless-Gateway
  15001. type: string
  15002. secretRef:
  15003. description: |-
  15004. Optional secret field containing a Kubernetes ServiceAccount JWT used
  15005. for authenticating with Akeyless. If a name is specified without a key,
  15006. `token` is the default. If one is not specified, the one bound to
  15007. the controller will be used.
  15008. properties:
  15009. key:
  15010. description: |-
  15011. A key in the referenced Secret.
  15012. Some instances of this field may be defaulted, in others it may be required.
  15013. maxLength: 253
  15014. minLength: 1
  15015. pattern: ^[-._a-zA-Z0-9]+$
  15016. type: string
  15017. name:
  15018. description: The name of the Secret resource being referred to.
  15019. maxLength: 253
  15020. minLength: 1
  15021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15022. type: string
  15023. namespace:
  15024. description: |-
  15025. The namespace of the Secret resource being referred to.
  15026. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15027. maxLength: 63
  15028. minLength: 1
  15029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15030. type: string
  15031. type: object
  15032. serviceAccountRef:
  15033. description: |-
  15034. Optional service account field containing the name of a kubernetes ServiceAccount.
  15035. If the service account is specified, the service account secret token JWT will be used
  15036. for authenticating with Akeyless. If the service account selector is not supplied,
  15037. the secretRef will be used instead.
  15038. properties:
  15039. audiences:
  15040. description: |-
  15041. Audience specifies the `aud` claim for the service account token
  15042. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15043. then this audiences will be appended to the list
  15044. items:
  15045. type: string
  15046. type: array
  15047. name:
  15048. description: The name of the ServiceAccount resource being referred to.
  15049. maxLength: 253
  15050. minLength: 1
  15051. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15052. type: string
  15053. namespace:
  15054. description: |-
  15055. Namespace of the resource being referred to.
  15056. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15057. maxLength: 63
  15058. minLength: 1
  15059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15060. type: string
  15061. required:
  15062. - name
  15063. type: object
  15064. required:
  15065. - accessID
  15066. - k8sConfName
  15067. type: object
  15068. secretRef:
  15069. description: |-
  15070. Reference to a Secret that contains the details
  15071. to authenticate with Akeyless.
  15072. properties:
  15073. accessID:
  15074. description: The SecretAccessID is used for authentication
  15075. properties:
  15076. key:
  15077. description: |-
  15078. A key in the referenced Secret.
  15079. Some instances of this field may be defaulted, in others it may be required.
  15080. maxLength: 253
  15081. minLength: 1
  15082. pattern: ^[-._a-zA-Z0-9]+$
  15083. type: string
  15084. name:
  15085. description: The name of the Secret resource being referred to.
  15086. maxLength: 253
  15087. minLength: 1
  15088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15089. type: string
  15090. namespace:
  15091. description: |-
  15092. The namespace of the Secret resource being referred to.
  15093. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15094. maxLength: 63
  15095. minLength: 1
  15096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15097. type: string
  15098. type: object
  15099. accessType:
  15100. description: |-
  15101. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15102. In some instances, `key` is a required field.
  15103. properties:
  15104. key:
  15105. description: |-
  15106. A key in the referenced Secret.
  15107. Some instances of this field may be defaulted, in others it may be required.
  15108. maxLength: 253
  15109. minLength: 1
  15110. pattern: ^[-._a-zA-Z0-9]+$
  15111. type: string
  15112. name:
  15113. description: The name of the Secret resource being referred to.
  15114. maxLength: 253
  15115. minLength: 1
  15116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15117. type: string
  15118. namespace:
  15119. description: |-
  15120. The namespace of the Secret resource being referred to.
  15121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15122. maxLength: 63
  15123. minLength: 1
  15124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15125. type: string
  15126. type: object
  15127. accessTypeParam:
  15128. description: |-
  15129. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15130. In some instances, `key` is a required field.
  15131. properties:
  15132. key:
  15133. description: |-
  15134. A key in the referenced Secret.
  15135. Some instances of this field may be defaulted, in others it may be required.
  15136. maxLength: 253
  15137. minLength: 1
  15138. pattern: ^[-._a-zA-Z0-9]+$
  15139. type: string
  15140. name:
  15141. description: The name of the Secret resource being referred to.
  15142. maxLength: 253
  15143. minLength: 1
  15144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15145. type: string
  15146. namespace:
  15147. description: |-
  15148. The namespace of the Secret resource being referred to.
  15149. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15150. maxLength: 63
  15151. minLength: 1
  15152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15153. type: string
  15154. type: object
  15155. type: object
  15156. type: object
  15157. caBundle:
  15158. description: |-
  15159. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  15160. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  15161. are used to validate the TLS connection.
  15162. format: byte
  15163. type: string
  15164. caProvider:
  15165. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  15166. properties:
  15167. key:
  15168. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15169. maxLength: 253
  15170. minLength: 1
  15171. pattern: ^[-._a-zA-Z0-9]+$
  15172. type: string
  15173. name:
  15174. description: The name of the object located at the provider type.
  15175. maxLength: 253
  15176. minLength: 1
  15177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15178. type: string
  15179. namespace:
  15180. description: |-
  15181. The namespace the Provider type is in.
  15182. Can only be defined when used in a ClusterSecretStore.
  15183. maxLength: 63
  15184. minLength: 1
  15185. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15186. type: string
  15187. type:
  15188. description: The type of provider to use such as "Secret", or "ConfigMap".
  15189. enum:
  15190. - Secret
  15191. - ConfigMap
  15192. type: string
  15193. required:
  15194. - name
  15195. - type
  15196. type: object
  15197. required:
  15198. - akeylessGWApiURL
  15199. - authSecretRef
  15200. type: object
  15201. aws:
  15202. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  15203. properties:
  15204. additionalRoles:
  15205. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  15206. items:
  15207. type: string
  15208. type: array
  15209. auth:
  15210. description: |-
  15211. Auth defines the information necessary to authenticate against AWS
  15212. if not set aws sdk will infer credentials from your environment
  15213. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  15214. properties:
  15215. jwt:
  15216. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  15217. properties:
  15218. serviceAccountRef:
  15219. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  15220. properties:
  15221. audiences:
  15222. description: |-
  15223. Audience specifies the `aud` claim for the service account token
  15224. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15225. then this audiences will be appended to the list
  15226. items:
  15227. type: string
  15228. type: array
  15229. name:
  15230. description: The name of the ServiceAccount resource being referred to.
  15231. maxLength: 253
  15232. minLength: 1
  15233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15234. type: string
  15235. namespace:
  15236. description: |-
  15237. Namespace of the resource being referred to.
  15238. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15239. maxLength: 63
  15240. minLength: 1
  15241. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15242. type: string
  15243. required:
  15244. - name
  15245. type: object
  15246. type: object
  15247. secretRef:
  15248. description: |-
  15249. AWSAuthSecretRef holds secret references for AWS credentials
  15250. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  15251. properties:
  15252. accessKeyIDSecretRef:
  15253. description: The AccessKeyID is used for authentication
  15254. properties:
  15255. key:
  15256. description: |-
  15257. A key in the referenced Secret.
  15258. Some instances of this field may be defaulted, in others it may be required.
  15259. maxLength: 253
  15260. minLength: 1
  15261. pattern: ^[-._a-zA-Z0-9]+$
  15262. type: string
  15263. name:
  15264. description: The name of the Secret resource being referred to.
  15265. maxLength: 253
  15266. minLength: 1
  15267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15268. type: string
  15269. namespace:
  15270. description: |-
  15271. The namespace of the Secret resource being referred to.
  15272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15273. maxLength: 63
  15274. minLength: 1
  15275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15276. type: string
  15277. type: object
  15278. secretAccessKeySecretRef:
  15279. description: The SecretAccessKey is used for authentication
  15280. properties:
  15281. key:
  15282. description: |-
  15283. A key in the referenced Secret.
  15284. Some instances of this field may be defaulted, in others it may be required.
  15285. maxLength: 253
  15286. minLength: 1
  15287. pattern: ^[-._a-zA-Z0-9]+$
  15288. type: string
  15289. name:
  15290. description: The name of the Secret resource being referred to.
  15291. maxLength: 253
  15292. minLength: 1
  15293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15294. type: string
  15295. namespace:
  15296. description: |-
  15297. The namespace of the Secret resource being referred to.
  15298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15299. maxLength: 63
  15300. minLength: 1
  15301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15302. type: string
  15303. type: object
  15304. sessionTokenSecretRef:
  15305. description: |-
  15306. The SessionToken used for authentication
  15307. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  15308. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  15309. properties:
  15310. key:
  15311. description: |-
  15312. A key in the referenced Secret.
  15313. Some instances of this field may be defaulted, in others it may be required.
  15314. maxLength: 253
  15315. minLength: 1
  15316. pattern: ^[-._a-zA-Z0-9]+$
  15317. type: string
  15318. name:
  15319. description: The name of the Secret resource being referred to.
  15320. maxLength: 253
  15321. minLength: 1
  15322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15323. type: string
  15324. namespace:
  15325. description: |-
  15326. The namespace of the Secret resource being referred to.
  15327. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15328. maxLength: 63
  15329. minLength: 1
  15330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15331. type: string
  15332. type: object
  15333. type: object
  15334. type: object
  15335. customSessionTags:
  15336. additionalProperties:
  15337. type: string
  15338. description: |-
  15339. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  15340. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  15341. type: object
  15342. x-kubernetes-validations:
  15343. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  15344. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  15345. externalID:
  15346. description: AWS External ID set on assumed IAM roles
  15347. type: string
  15348. prefix:
  15349. description: Prefix adds a prefix to all retrieved values.
  15350. type: string
  15351. region:
  15352. description: AWS Region to be used for the provider
  15353. type: string
  15354. role:
  15355. description: Role is a Role ARN which the provider will assume
  15356. type: string
  15357. secretsManager:
  15358. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  15359. properties:
  15360. forceDeleteWithoutRecovery:
  15361. description: |-
  15362. Specifies whether to delete the secret without any recovery window. You
  15363. can't use both this parameter and RecoveryWindowInDays in the same call.
  15364. If you don't use either, then by default Secrets Manager uses a 30 day
  15365. recovery window.
  15366. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  15367. type: boolean
  15368. recoveryWindowInDays:
  15369. description: |-
  15370. The number of days from 7 to 30 that Secrets Manager waits before
  15371. permanently deleting the secret. You can't use both this parameter and
  15372. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  15373. then by default Secrets Manager uses a 30-day recovery window.
  15374. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  15375. format: int64
  15376. type: integer
  15377. type: object
  15378. service:
  15379. description: Service defines which service should be used to fetch the secrets
  15380. enum:
  15381. - SecretsManager
  15382. - ParameterStore
  15383. type: string
  15384. sessionTags:
  15385. description: AWS STS assume role session tags
  15386. items:
  15387. description: |-
  15388. Tag is a key-value pair that can be attached to an AWS resource.
  15389. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  15390. properties:
  15391. key:
  15392. type: string
  15393. value:
  15394. type: string
  15395. required:
  15396. - key
  15397. - value
  15398. type: object
  15399. type: array
  15400. sessionTagsPolicy:
  15401. default: None
  15402. description: |-
  15403. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  15404. None (default): no tags are added.
  15405. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  15406. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  15407. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  15408. enum:
  15409. - None
  15410. - Simple
  15411. - Custom
  15412. type: string
  15413. transitiveTagKeys:
  15414. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  15415. items:
  15416. type: string
  15417. type: array
  15418. required:
  15419. - region
  15420. - service
  15421. type: object
  15422. azurekv:
  15423. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  15424. properties:
  15425. authSecretRef:
  15426. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15427. properties:
  15428. clientCertificate:
  15429. description: The Azure ClientCertificate of the service principle used for authentication.
  15430. properties:
  15431. key:
  15432. description: |-
  15433. A key in the referenced Secret.
  15434. Some instances of this field may be defaulted, in others it may be required.
  15435. maxLength: 253
  15436. minLength: 1
  15437. pattern: ^[-._a-zA-Z0-9]+$
  15438. type: string
  15439. name:
  15440. description: The name of the Secret resource being referred to.
  15441. maxLength: 253
  15442. minLength: 1
  15443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15444. type: string
  15445. namespace:
  15446. description: |-
  15447. The namespace of the Secret resource being referred to.
  15448. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15449. maxLength: 63
  15450. minLength: 1
  15451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15452. type: string
  15453. type: object
  15454. clientId:
  15455. description: The Azure clientId of the service principle or managed identity used for authentication.
  15456. properties:
  15457. key:
  15458. description: |-
  15459. A key in the referenced Secret.
  15460. Some instances of this field may be defaulted, in others it may be required.
  15461. maxLength: 253
  15462. minLength: 1
  15463. pattern: ^[-._a-zA-Z0-9]+$
  15464. type: string
  15465. name:
  15466. description: The name of the Secret resource being referred to.
  15467. maxLength: 253
  15468. minLength: 1
  15469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15470. type: string
  15471. namespace:
  15472. description: |-
  15473. The namespace of the Secret resource being referred to.
  15474. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15475. maxLength: 63
  15476. minLength: 1
  15477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15478. type: string
  15479. type: object
  15480. clientSecret:
  15481. description: The Azure ClientSecret of the service principle used for authentication.
  15482. properties:
  15483. key:
  15484. description: |-
  15485. A key in the referenced Secret.
  15486. Some instances of this field may be defaulted, in others it may be required.
  15487. maxLength: 253
  15488. minLength: 1
  15489. pattern: ^[-._a-zA-Z0-9]+$
  15490. type: string
  15491. name:
  15492. description: The name of the Secret resource being referred to.
  15493. maxLength: 253
  15494. minLength: 1
  15495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15496. type: string
  15497. namespace:
  15498. description: |-
  15499. The namespace of the Secret resource being referred to.
  15500. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15501. maxLength: 63
  15502. minLength: 1
  15503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15504. type: string
  15505. type: object
  15506. tenantId:
  15507. description: The Azure tenantId of the managed identity 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. type: object
  15533. authType:
  15534. default: ServicePrincipal
  15535. description: |-
  15536. Auth type defines how to authenticate to the keyvault service.
  15537. Valid values are:
  15538. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15539. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15540. enum:
  15541. - ServicePrincipal
  15542. - ManagedIdentity
  15543. - WorkloadIdentity
  15544. type: string
  15545. customCloudConfig:
  15546. description: |-
  15547. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15548. Required when EnvironmentType is AzureStackCloud.
  15549. Optional for other environment types - useful for Azure China when using Workload Identity
  15550. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15551. standard China Cloud endpoint (login.chinacloudapi.cn).
  15552. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15553. configuration is not supported with the legacy go-autorest SDK.
  15554. properties:
  15555. activeDirectoryEndpoint:
  15556. description: |-
  15557. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15558. Required when using custom cloud configuration
  15559. type: string
  15560. keyVaultDNSSuffix:
  15561. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15562. type: string
  15563. keyVaultEndpoint:
  15564. description: KeyVaultEndpoint is the Key Vault service endpoint
  15565. type: string
  15566. resourceManagerEndpoint:
  15567. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15568. type: string
  15569. required:
  15570. - activeDirectoryEndpoint
  15571. type: object
  15572. environmentType:
  15573. default: PublicCloud
  15574. description: |-
  15575. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15576. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15577. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15578. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15579. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15580. enum:
  15581. - PublicCloud
  15582. - USGovernmentCloud
  15583. - ChinaCloud
  15584. - GermanCloud
  15585. - AzureStackCloud
  15586. type: string
  15587. identityId:
  15588. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15589. type: string
  15590. serviceAccountRef:
  15591. description: |-
  15592. ServiceAccountRef specified the service account
  15593. that should be used when authenticating with WorkloadIdentity.
  15594. properties:
  15595. audiences:
  15596. description: |-
  15597. Audience specifies the `aud` claim for the service account token
  15598. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15599. then this audiences will be appended to the list
  15600. items:
  15601. type: string
  15602. type: array
  15603. name:
  15604. description: The name of the ServiceAccount resource being referred to.
  15605. maxLength: 253
  15606. minLength: 1
  15607. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15608. type: string
  15609. namespace:
  15610. description: |-
  15611. Namespace of the resource being referred to.
  15612. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15613. maxLength: 63
  15614. minLength: 1
  15615. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15616. type: string
  15617. required:
  15618. - name
  15619. type: object
  15620. tenantId:
  15621. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15622. type: string
  15623. useAzureSDK:
  15624. default: false
  15625. description: |-
  15626. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15627. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15628. type: boolean
  15629. vaultUrl:
  15630. description: Vault Url from which the secrets to be fetched from.
  15631. type: string
  15632. required:
  15633. - vaultUrl
  15634. type: object
  15635. barbican:
  15636. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15637. properties:
  15638. auth:
  15639. description: BarbicanAuth contains the authentication information for Barbican.
  15640. properties:
  15641. password:
  15642. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15643. properties:
  15644. secretRef:
  15645. description: |-
  15646. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15647. In some instances, `key` is a required field.
  15648. properties:
  15649. key:
  15650. description: |-
  15651. A key in the referenced Secret.
  15652. Some instances of this field may be defaulted, in others it may be required.
  15653. maxLength: 253
  15654. minLength: 1
  15655. pattern: ^[-._a-zA-Z0-9]+$
  15656. type: string
  15657. name:
  15658. description: The name of the Secret resource being referred to.
  15659. maxLength: 253
  15660. minLength: 1
  15661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15662. type: string
  15663. namespace:
  15664. description: |-
  15665. The namespace of the Secret resource being referred to.
  15666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15667. maxLength: 63
  15668. minLength: 1
  15669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15670. type: string
  15671. type: object
  15672. required:
  15673. - secretRef
  15674. type: object
  15675. username:
  15676. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15677. maxProperties: 1
  15678. minProperties: 1
  15679. properties:
  15680. secretRef:
  15681. description: |-
  15682. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15683. In some instances, `key` is a required field.
  15684. properties:
  15685. key:
  15686. description: |-
  15687. A key in the referenced Secret.
  15688. Some instances of this field may be defaulted, in others it may be required.
  15689. maxLength: 253
  15690. minLength: 1
  15691. pattern: ^[-._a-zA-Z0-9]+$
  15692. type: string
  15693. name:
  15694. description: The name of the Secret resource being referred to.
  15695. maxLength: 253
  15696. minLength: 1
  15697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15698. type: string
  15699. namespace:
  15700. description: |-
  15701. The namespace of the Secret resource being referred to.
  15702. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15703. maxLength: 63
  15704. minLength: 1
  15705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15706. type: string
  15707. type: object
  15708. value:
  15709. type: string
  15710. type: object
  15711. required:
  15712. - password
  15713. - username
  15714. type: object
  15715. authURL:
  15716. type: string
  15717. domainName:
  15718. type: string
  15719. region:
  15720. type: string
  15721. tenantName:
  15722. type: string
  15723. required:
  15724. - auth
  15725. type: object
  15726. beyondtrust:
  15727. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15728. properties:
  15729. auth:
  15730. description: Auth configures how the operator authenticates with Beyondtrust.
  15731. properties:
  15732. apiKey:
  15733. description: APIKey If not provided then ClientID/ClientSecret become required.
  15734. properties:
  15735. secretRef:
  15736. description: SecretRef references a key in a secret that will be used as value.
  15737. properties:
  15738. key:
  15739. description: |-
  15740. A key in the referenced Secret.
  15741. Some instances of this field may be defaulted, in others it may be required.
  15742. maxLength: 253
  15743. minLength: 1
  15744. pattern: ^[-._a-zA-Z0-9]+$
  15745. type: string
  15746. name:
  15747. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  15761. value:
  15762. description: Value can be specified directly to set a value without using a secret.
  15763. type: string
  15764. type: object
  15765. certificate:
  15766. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15767. properties:
  15768. secretRef:
  15769. description: SecretRef references a key in a secret that will be used as value.
  15770. properties:
  15771. key:
  15772. description: |-
  15773. A key in the referenced Secret.
  15774. Some instances of this field may be defaulted, in others it may be required.
  15775. maxLength: 253
  15776. minLength: 1
  15777. pattern: ^[-._a-zA-Z0-9]+$
  15778. type: string
  15779. name:
  15780. description: The name of the Secret resource being referred to.
  15781. maxLength: 253
  15782. minLength: 1
  15783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15784. type: string
  15785. namespace:
  15786. description: |-
  15787. The namespace of the Secret resource being referred to.
  15788. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15789. maxLength: 63
  15790. minLength: 1
  15791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15792. type: string
  15793. type: object
  15794. value:
  15795. description: Value can be specified directly to set a value without using a secret.
  15796. type: string
  15797. type: object
  15798. certificateKey:
  15799. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15800. properties:
  15801. secretRef:
  15802. description: SecretRef references a key in a secret that will be used as value.
  15803. properties:
  15804. key:
  15805. description: |-
  15806. A key in the referenced Secret.
  15807. Some instances of this field may be defaulted, in others it may be required.
  15808. maxLength: 253
  15809. minLength: 1
  15810. pattern: ^[-._a-zA-Z0-9]+$
  15811. type: string
  15812. name:
  15813. description: The name of the Secret resource being referred to.
  15814. maxLength: 253
  15815. minLength: 1
  15816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15817. type: string
  15818. namespace:
  15819. description: |-
  15820. The namespace of the Secret resource being referred to.
  15821. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15822. maxLength: 63
  15823. minLength: 1
  15824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15825. type: string
  15826. type: object
  15827. value:
  15828. description: Value can be specified directly to set a value without using a secret.
  15829. type: string
  15830. type: object
  15831. clientId:
  15832. description: ClientID is the API OAuth Client ID.
  15833. properties:
  15834. secretRef:
  15835. description: SecretRef references a key in a secret that will be used as value.
  15836. properties:
  15837. key:
  15838. description: |-
  15839. A key in the referenced Secret.
  15840. Some instances of this field may be defaulted, in others it may be required.
  15841. maxLength: 253
  15842. minLength: 1
  15843. pattern: ^[-._a-zA-Z0-9]+$
  15844. type: string
  15845. name:
  15846. description: The name of the Secret resource being referred to.
  15847. maxLength: 253
  15848. minLength: 1
  15849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15850. type: string
  15851. namespace:
  15852. description: |-
  15853. The namespace of the Secret resource being referred to.
  15854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15855. maxLength: 63
  15856. minLength: 1
  15857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15858. type: string
  15859. type: object
  15860. value:
  15861. description: Value can be specified directly to set a value without using a secret.
  15862. type: string
  15863. type: object
  15864. clientSecret:
  15865. description: ClientSecret is the API OAuth Client Secret.
  15866. properties:
  15867. secretRef:
  15868. description: SecretRef references a key in a secret that will be used as value.
  15869. properties:
  15870. key:
  15871. description: |-
  15872. A key in the referenced Secret.
  15873. Some instances of this field may be defaulted, in others it may be required.
  15874. maxLength: 253
  15875. minLength: 1
  15876. pattern: ^[-._a-zA-Z0-9]+$
  15877. type: string
  15878. name:
  15879. description: The name of the Secret resource being referred to.
  15880. maxLength: 253
  15881. minLength: 1
  15882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15883. type: string
  15884. namespace:
  15885. description: |-
  15886. The namespace of the Secret resource being referred to.
  15887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15888. maxLength: 63
  15889. minLength: 1
  15890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15891. type: string
  15892. type: object
  15893. value:
  15894. description: Value can be specified directly to set a value without using a secret.
  15895. type: string
  15896. type: object
  15897. type: object
  15898. server:
  15899. description: Auth configures how API server works.
  15900. properties:
  15901. apiUrl:
  15902. type: string
  15903. apiVersion:
  15904. type: string
  15905. clientTimeOutSeconds:
  15906. 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.
  15907. type: integer
  15908. decrypt:
  15909. default: true
  15910. 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.'
  15911. type: boolean
  15912. retrievalType:
  15913. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  15914. type: string
  15915. separator:
  15916. description: A character that separates the folder names.
  15917. type: string
  15918. verifyCA:
  15919. type: boolean
  15920. required:
  15921. - apiUrl
  15922. - verifyCA
  15923. type: object
  15924. required:
  15925. - auth
  15926. - server
  15927. type: object
  15928. beyondtrustworkloadcredentials:
  15929. description: BeyondtrustWorkloadCredentials configures this store to sync secrets using the BeyondTrust Workload Credentials provider.
  15930. properties:
  15931. auth:
  15932. description: |-
  15933. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  15934. Currently supports API key authentication via Kubernetes secret reference.
  15935. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  15936. properties:
  15937. apikey:
  15938. description: |-
  15939. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  15940. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  15941. properties:
  15942. token:
  15943. description: |-
  15944. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  15945. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  15946. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  15947. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  15948. properties:
  15949. key:
  15950. description: |-
  15951. A key in the referenced Secret.
  15952. Some instances of this field may be defaulted, in others it may be required.
  15953. maxLength: 253
  15954. minLength: 1
  15955. pattern: ^[-._a-zA-Z0-9]+$
  15956. type: string
  15957. name:
  15958. description: The name of the Secret resource being referred to.
  15959. maxLength: 253
  15960. minLength: 1
  15961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15962. type: string
  15963. namespace:
  15964. description: |-
  15965. The namespace of the Secret resource being referred to.
  15966. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15967. maxLength: 63
  15968. minLength: 1
  15969. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15970. type: string
  15971. type: object
  15972. required:
  15973. - token
  15974. type: object
  15975. required:
  15976. - apikey
  15977. type: object
  15978. caBundle:
  15979. description: |-
  15980. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  15981. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  15982. If not set, the system's trusted root certificates are used.
  15983. format: byte
  15984. type: string
  15985. caProvider:
  15986. description: |-
  15987. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  15988. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  15989. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  15990. properties:
  15991. key:
  15992. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15993. maxLength: 253
  15994. minLength: 1
  15995. pattern: ^[-._a-zA-Z0-9]+$
  15996. type: string
  15997. name:
  15998. description: The name of the object located at the provider type.
  15999. maxLength: 253
  16000. minLength: 1
  16001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16002. type: string
  16003. namespace:
  16004. description: |-
  16005. The namespace the Provider type is in.
  16006. Can only be defined when used in a ClusterSecretStore.
  16007. maxLength: 63
  16008. minLength: 1
  16009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16010. type: string
  16011. type:
  16012. description: The type of provider to use such as "Secret", or "ConfigMap".
  16013. enum:
  16014. - Secret
  16015. - ConfigMap
  16016. type: string
  16017. required:
  16018. - name
  16019. - type
  16020. type: object
  16021. folderPath:
  16022. description: |-
  16023. FolderPath specifies the default folder path for secret retrieval.
  16024. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  16025. Example: "production/database" or "dev/api-keys"
  16026. Leave empty to retrieve secrets from the root folder.
  16027. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  16028. type: string
  16029. server:
  16030. description: |-
  16031. Server configures the BeyondTrust Workload Credentials server connection details.
  16032. Includes the API URL and Site ID for your BeyondTrust instance.
  16033. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  16034. properties:
  16035. apiUrl:
  16036. description: |-
  16037. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  16038. This should be the full URL to your BeyondTrust instance.
  16039. Example: https://api.beyondtrust.io/siie
  16040. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  16041. type: string
  16042. siteId:
  16043. description: |-
  16044. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  16045. This identifier is unique to your BeyondTrust Workload Credentials instance.
  16046. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  16047. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  16048. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  16049. type: string
  16050. required:
  16051. - apiUrl
  16052. - siteId
  16053. type: object
  16054. required:
  16055. - auth
  16056. - server
  16057. type: object
  16058. bitwardensecretsmanager:
  16059. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  16060. properties:
  16061. apiURL:
  16062. type: string
  16063. auth:
  16064. description: |-
  16065. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  16066. Make sure that the token being used has permissions on the given secret.
  16067. properties:
  16068. secretRef:
  16069. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  16070. properties:
  16071. credentials:
  16072. description: AccessToken used for the bitwarden instance.
  16073. properties:
  16074. key:
  16075. description: |-
  16076. A key in the referenced Secret.
  16077. Some instances of this field may be defaulted, in others it may be required.
  16078. maxLength: 253
  16079. minLength: 1
  16080. pattern: ^[-._a-zA-Z0-9]+$
  16081. type: string
  16082. name:
  16083. description: The name of the Secret resource being referred to.
  16084. maxLength: 253
  16085. minLength: 1
  16086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16087. type: string
  16088. namespace:
  16089. description: |-
  16090. The namespace of the Secret resource being referred to.
  16091. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16092. maxLength: 63
  16093. minLength: 1
  16094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16095. type: string
  16096. type: object
  16097. required:
  16098. - credentials
  16099. type: object
  16100. required:
  16101. - secretRef
  16102. type: object
  16103. bitwardenServerSDKURL:
  16104. type: string
  16105. caBundle:
  16106. description: |-
  16107. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16108. can be performed.
  16109. type: string
  16110. caProvider:
  16111. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16112. properties:
  16113. key:
  16114. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16115. maxLength: 253
  16116. minLength: 1
  16117. pattern: ^[-._a-zA-Z0-9]+$
  16118. type: string
  16119. name:
  16120. description: The name of the object located at the provider type.
  16121. maxLength: 253
  16122. minLength: 1
  16123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16124. type: string
  16125. namespace:
  16126. description: |-
  16127. The namespace the Provider type is in.
  16128. Can only be defined when used in a ClusterSecretStore.
  16129. maxLength: 63
  16130. minLength: 1
  16131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16132. type: string
  16133. type:
  16134. description: The type of provider to use such as "Secret", or "ConfigMap".
  16135. enum:
  16136. - Secret
  16137. - ConfigMap
  16138. type: string
  16139. required:
  16140. - name
  16141. - type
  16142. type: object
  16143. identityURL:
  16144. type: string
  16145. organizationID:
  16146. description: OrganizationID determines which organization this secret store manages.
  16147. type: string
  16148. projectID:
  16149. description: ProjectID determines which project this secret store manages.
  16150. type: string
  16151. required:
  16152. - auth
  16153. - organizationID
  16154. - projectID
  16155. type: object
  16156. chef:
  16157. description: Chef configures this store to sync secrets with chef server
  16158. properties:
  16159. auth:
  16160. description: Auth defines the information necessary to authenticate against chef Server
  16161. properties:
  16162. secretRef:
  16163. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  16164. properties:
  16165. privateKeySecretRef:
  16166. description: SecretKey is the Signing Key in PEM format, used for authentication.
  16167. properties:
  16168. key:
  16169. description: |-
  16170. A key in the referenced Secret.
  16171. Some instances of this field may be defaulted, in others it may be required.
  16172. maxLength: 253
  16173. minLength: 1
  16174. pattern: ^[-._a-zA-Z0-9]+$
  16175. type: string
  16176. name:
  16177. description: The name of the Secret resource being referred to.
  16178. maxLength: 253
  16179. minLength: 1
  16180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16181. type: string
  16182. namespace:
  16183. description: |-
  16184. The namespace of the Secret resource being referred to.
  16185. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16186. maxLength: 63
  16187. minLength: 1
  16188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16189. type: string
  16190. type: object
  16191. required:
  16192. - privateKeySecretRef
  16193. type: object
  16194. required:
  16195. - secretRef
  16196. type: object
  16197. serverUrl:
  16198. 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 "/"
  16199. type: string
  16200. username:
  16201. description: UserName should be the user ID on the chef server
  16202. type: string
  16203. required:
  16204. - auth
  16205. - serverUrl
  16206. - username
  16207. type: object
  16208. cloudrusm:
  16209. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  16210. properties:
  16211. auth:
  16212. description: CSMAuth contains a secretRef for credentials.
  16213. properties:
  16214. secretRef:
  16215. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  16216. properties:
  16217. accessKeyIDSecretRef:
  16218. description: The AccessKeyID is used for authentication
  16219. properties:
  16220. key:
  16221. description: |-
  16222. A key in the referenced Secret.
  16223. Some instances of this field may be defaulted, in others it may be required.
  16224. maxLength: 253
  16225. minLength: 1
  16226. pattern: ^[-._a-zA-Z0-9]+$
  16227. type: string
  16228. name:
  16229. description: The name of the Secret resource being referred to.
  16230. maxLength: 253
  16231. minLength: 1
  16232. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16233. type: string
  16234. namespace:
  16235. description: |-
  16236. The namespace of the Secret resource being referred to.
  16237. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16238. maxLength: 63
  16239. minLength: 1
  16240. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16241. type: string
  16242. type: object
  16243. accessKeySecretSecretRef:
  16244. description: The AccessKeySecret is used for authentication
  16245. properties:
  16246. key:
  16247. description: |-
  16248. A key in the referenced Secret.
  16249. Some instances of this field may be defaulted, in others it may be required.
  16250. maxLength: 253
  16251. minLength: 1
  16252. pattern: ^[-._a-zA-Z0-9]+$
  16253. type: string
  16254. name:
  16255. description: The name of the Secret resource being referred to.
  16256. maxLength: 253
  16257. minLength: 1
  16258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16259. type: string
  16260. namespace:
  16261. description: |-
  16262. The namespace of the Secret resource being referred to.
  16263. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16264. maxLength: 63
  16265. minLength: 1
  16266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16267. type: string
  16268. type: object
  16269. required:
  16270. - accessKeyIDSecretRef
  16271. - accessKeySecretSecretRef
  16272. type: object
  16273. type: object
  16274. projectID:
  16275. description: ProjectID is the project, which the secrets are stored in.
  16276. type: string
  16277. required:
  16278. - auth
  16279. type: object
  16280. conjur:
  16281. description: Conjur configures this store to sync secrets using conjur provider
  16282. properties:
  16283. auth:
  16284. description: Defines authentication settings for connecting to Conjur.
  16285. properties:
  16286. apikey:
  16287. description: Authenticates with Conjur using an API key.
  16288. properties:
  16289. account:
  16290. description: Account is the Conjur organization account name.
  16291. type: string
  16292. apiKeyRef:
  16293. description: |-
  16294. A reference to a specific 'key' containing the Conjur API key
  16295. within a Secret resource. In some instances, `key` is a required field.
  16296. properties:
  16297. key:
  16298. description: |-
  16299. A key in the referenced Secret.
  16300. Some instances of this field may be defaulted, in others it may be required.
  16301. maxLength: 253
  16302. minLength: 1
  16303. pattern: ^[-._a-zA-Z0-9]+$
  16304. type: string
  16305. name:
  16306. description: The name of the Secret resource being referred to.
  16307. maxLength: 253
  16308. minLength: 1
  16309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16310. type: string
  16311. namespace:
  16312. description: |-
  16313. The namespace of the Secret resource being referred to.
  16314. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16315. maxLength: 63
  16316. minLength: 1
  16317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16318. type: string
  16319. type: object
  16320. userRef:
  16321. description: |-
  16322. A reference to a specific 'key' containing the Conjur username
  16323. within a Secret resource. In some instances, `key` is a required field.
  16324. properties:
  16325. key:
  16326. description: |-
  16327. A key in the referenced Secret.
  16328. Some instances of this field may be defaulted, in others it may be required.
  16329. maxLength: 253
  16330. minLength: 1
  16331. pattern: ^[-._a-zA-Z0-9]+$
  16332. type: string
  16333. name:
  16334. description: The name of the Secret resource being referred to.
  16335. maxLength: 253
  16336. minLength: 1
  16337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16338. type: string
  16339. namespace:
  16340. description: |-
  16341. The namespace of the Secret resource being referred to.
  16342. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16343. maxLength: 63
  16344. minLength: 1
  16345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16346. type: string
  16347. type: object
  16348. required:
  16349. - account
  16350. - apiKeyRef
  16351. - userRef
  16352. type: object
  16353. jwt:
  16354. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  16355. properties:
  16356. account:
  16357. description: Account is the Conjur organization account name.
  16358. type: string
  16359. hostId:
  16360. description: |-
  16361. Optional HostID for JWT authentication. This may be used depending
  16362. on how the Conjur JWT authenticator policy is configured.
  16363. type: string
  16364. secretRef:
  16365. description: |-
  16366. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  16367. authenticate with Conjur using the JWT authentication method.
  16368. properties:
  16369. key:
  16370. description: |-
  16371. A key in the referenced Secret.
  16372. Some instances of this field may be defaulted, in others it may be required.
  16373. maxLength: 253
  16374. minLength: 1
  16375. pattern: ^[-._a-zA-Z0-9]+$
  16376. type: string
  16377. name:
  16378. description: The name of the Secret resource being referred to.
  16379. maxLength: 253
  16380. minLength: 1
  16381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16382. type: string
  16383. namespace:
  16384. description: |-
  16385. The namespace of the Secret resource being referred to.
  16386. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16387. maxLength: 63
  16388. minLength: 1
  16389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16390. type: string
  16391. type: object
  16392. serviceAccountRef:
  16393. description: |-
  16394. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  16395. a token for with the `TokenRequest` API.
  16396. properties:
  16397. audiences:
  16398. description: |-
  16399. Audience specifies the `aud` claim for the service account token
  16400. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16401. then this audiences will be appended to the list
  16402. items:
  16403. type: string
  16404. type: array
  16405. name:
  16406. description: The name of the ServiceAccount resource being referred to.
  16407. maxLength: 253
  16408. minLength: 1
  16409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16410. type: string
  16411. namespace:
  16412. description: |-
  16413. Namespace of the resource being referred to.
  16414. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16415. maxLength: 63
  16416. minLength: 1
  16417. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16418. type: string
  16419. required:
  16420. - name
  16421. type: object
  16422. serviceID:
  16423. description: The conjur authn jwt webservice id
  16424. type: string
  16425. required:
  16426. - account
  16427. - serviceID
  16428. type: object
  16429. type: object
  16430. caBundle:
  16431. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  16432. type: string
  16433. caProvider:
  16434. description: |-
  16435. Used to provide custom certificate authority (CA) certificates
  16436. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  16437. that contains a PEM-encoded certificate.
  16438. properties:
  16439. key:
  16440. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16441. maxLength: 253
  16442. minLength: 1
  16443. pattern: ^[-._a-zA-Z0-9]+$
  16444. type: string
  16445. name:
  16446. description: The name of the object located at the provider type.
  16447. maxLength: 253
  16448. minLength: 1
  16449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16450. type: string
  16451. namespace:
  16452. description: |-
  16453. The namespace the Provider type is in.
  16454. Can only be defined when used in a ClusterSecretStore.
  16455. maxLength: 63
  16456. minLength: 1
  16457. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16458. type: string
  16459. type:
  16460. description: The type of provider to use such as "Secret", or "ConfigMap".
  16461. enum:
  16462. - Secret
  16463. - ConfigMap
  16464. type: string
  16465. required:
  16466. - name
  16467. - type
  16468. type: object
  16469. url:
  16470. description: URL is the endpoint of the Conjur instance.
  16471. type: string
  16472. required:
  16473. - auth
  16474. - url
  16475. type: object
  16476. delinea:
  16477. description: |-
  16478. Delinea DevOps Secrets Vault
  16479. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  16480. properties:
  16481. clientId:
  16482. description: ClientID is the non-secret part of the credential.
  16483. properties:
  16484. secretRef:
  16485. description: SecretRef references a key in a secret that will be used as value.
  16486. properties:
  16487. key:
  16488. description: |-
  16489. A key in the referenced Secret.
  16490. Some instances of this field may be defaulted, in others it may be required.
  16491. maxLength: 253
  16492. minLength: 1
  16493. pattern: ^[-._a-zA-Z0-9]+$
  16494. type: string
  16495. name:
  16496. description: The name of the Secret resource being referred to.
  16497. maxLength: 253
  16498. minLength: 1
  16499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16500. type: string
  16501. namespace:
  16502. description: |-
  16503. The namespace of the Secret resource being referred to.
  16504. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16505. maxLength: 63
  16506. minLength: 1
  16507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16508. type: string
  16509. type: object
  16510. value:
  16511. description: Value can be specified directly to set a value without using a secret.
  16512. type: string
  16513. type: object
  16514. clientSecret:
  16515. description: ClientSecret is the secret part of the credential.
  16516. properties:
  16517. secretRef:
  16518. description: SecretRef references a key in a secret that will be used as value.
  16519. properties:
  16520. key:
  16521. description: |-
  16522. A key in the referenced Secret.
  16523. Some instances of this field may be defaulted, in others it may be required.
  16524. maxLength: 253
  16525. minLength: 1
  16526. pattern: ^[-._a-zA-Z0-9]+$
  16527. type: string
  16528. name:
  16529. description: The name of the Secret resource being referred to.
  16530. maxLength: 253
  16531. minLength: 1
  16532. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16533. type: string
  16534. namespace:
  16535. description: |-
  16536. The namespace of the Secret resource being referred to.
  16537. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16538. maxLength: 63
  16539. minLength: 1
  16540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16541. type: string
  16542. type: object
  16543. value:
  16544. description: Value can be specified directly to set a value without using a secret.
  16545. type: string
  16546. type: object
  16547. tenant:
  16548. description: Tenant is the chosen hostname / site name.
  16549. type: string
  16550. tld:
  16551. description: |-
  16552. TLD is based on the server location that was chosen during provisioning.
  16553. If unset, defaults to "com".
  16554. type: string
  16555. urlTemplate:
  16556. description: |-
  16557. URLTemplate
  16558. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  16559. type: string
  16560. required:
  16561. - clientId
  16562. - clientSecret
  16563. - tenant
  16564. type: object
  16565. doppler:
  16566. description: Doppler configures this store to sync secrets using the Doppler provider
  16567. properties:
  16568. auth:
  16569. description: Auth configures how the Operator authenticates with the Doppler API
  16570. properties:
  16571. oidcConfig:
  16572. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  16573. properties:
  16574. expirationSeconds:
  16575. default: 600
  16576. description: |-
  16577. ExpirationSeconds sets the ServiceAccount token validity duration.
  16578. Defaults to 10 minutes.
  16579. format: int64
  16580. type: integer
  16581. identity:
  16582. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  16583. type: string
  16584. serviceAccountRef:
  16585. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  16586. properties:
  16587. audiences:
  16588. description: |-
  16589. Audience specifies the `aud` claim for the service account token
  16590. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16591. then this audiences will be appended to the list
  16592. items:
  16593. type: string
  16594. type: array
  16595. name:
  16596. description: The name of the ServiceAccount resource being referred to.
  16597. maxLength: 253
  16598. minLength: 1
  16599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16600. type: string
  16601. namespace:
  16602. description: |-
  16603. Namespace of the resource being referred to.
  16604. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16605. maxLength: 63
  16606. minLength: 1
  16607. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16608. type: string
  16609. required:
  16610. - name
  16611. type: object
  16612. required:
  16613. - identity
  16614. - serviceAccountRef
  16615. type: object
  16616. secretRef:
  16617. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  16618. properties:
  16619. dopplerToken:
  16620. description: |-
  16621. The DopplerToken is used for authentication.
  16622. See https://docs.doppler.com/reference/api#authentication for auth token types.
  16623. The Key attribute defaults to dopplerToken if not specified.
  16624. properties:
  16625. key:
  16626. description: |-
  16627. A key in the referenced Secret.
  16628. Some instances of this field may be defaulted, in others it may be required.
  16629. maxLength: 253
  16630. minLength: 1
  16631. pattern: ^[-._a-zA-Z0-9]+$
  16632. type: string
  16633. name:
  16634. description: The name of the Secret resource being referred to.
  16635. maxLength: 253
  16636. minLength: 1
  16637. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16638. type: string
  16639. namespace:
  16640. description: |-
  16641. The namespace of the Secret resource being referred to.
  16642. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16643. maxLength: 63
  16644. minLength: 1
  16645. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16646. type: string
  16647. type: object
  16648. required:
  16649. - dopplerToken
  16650. type: object
  16651. type: object
  16652. x-kubernetes-validations:
  16653. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  16654. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  16655. config:
  16656. description: Doppler config (required if not using a Service Token)
  16657. type: string
  16658. format:
  16659. description: Format enables the downloading of secrets as a file (string)
  16660. enum:
  16661. - json
  16662. - dotnet-json
  16663. - env
  16664. - yaml
  16665. - docker
  16666. type: string
  16667. nameTransformer:
  16668. description: Environment variable compatible name transforms that change secret names to a different format
  16669. enum:
  16670. - upper-camel
  16671. - camel
  16672. - lower-snake
  16673. - tf-var
  16674. - dotnet-env
  16675. - lower-kebab
  16676. type: string
  16677. project:
  16678. description: Doppler project (required if not using a Service Token)
  16679. type: string
  16680. required:
  16681. - auth
  16682. type: object
  16683. dvls:
  16684. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16685. properties:
  16686. auth:
  16687. description: Auth defines the authentication method to use.
  16688. properties:
  16689. secretRef:
  16690. description: SecretRef contains the Application ID and Application Secret for authentication.
  16691. properties:
  16692. appId:
  16693. description: AppID is the reference to the secret containing the Application ID.
  16694. properties:
  16695. key:
  16696. description: |-
  16697. A key in the referenced Secret.
  16698. Some instances of this field may be defaulted, in others it may be required.
  16699. maxLength: 253
  16700. minLength: 1
  16701. pattern: ^[-._a-zA-Z0-9]+$
  16702. type: string
  16703. name:
  16704. description: The name of the Secret resource being referred to.
  16705. maxLength: 253
  16706. minLength: 1
  16707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16708. type: string
  16709. namespace:
  16710. description: |-
  16711. The namespace of the Secret resource being referred to.
  16712. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16713. maxLength: 63
  16714. minLength: 1
  16715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16716. type: string
  16717. type: object
  16718. appSecret:
  16719. description: AppSecret is the reference to the secret containing the Application Secret.
  16720. properties:
  16721. key:
  16722. description: |-
  16723. A key in the referenced Secret.
  16724. Some instances of this field may be defaulted, in others it may be required.
  16725. maxLength: 253
  16726. minLength: 1
  16727. pattern: ^[-._a-zA-Z0-9]+$
  16728. type: string
  16729. name:
  16730. description: The name of the Secret resource being referred to.
  16731. maxLength: 253
  16732. minLength: 1
  16733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16734. type: string
  16735. namespace:
  16736. description: |-
  16737. The namespace of the Secret resource being referred to.
  16738. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16739. maxLength: 63
  16740. minLength: 1
  16741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16742. type: string
  16743. type: object
  16744. required:
  16745. - appId
  16746. - appSecret
  16747. type: object
  16748. required:
  16749. - secretRef
  16750. type: object
  16751. insecure:
  16752. description: |-
  16753. Insecure allows connecting to DVLS over plain HTTP.
  16754. This is NOT RECOMMENDED for production use.
  16755. Set to true only if you understand the security implications.
  16756. type: boolean
  16757. serverUrl:
  16758. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16759. type: string
  16760. vault:
  16761. description: |-
  16762. Vault is the name or UUID of the vault to fetch secrets from.
  16763. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  16764. type: string
  16765. required:
  16766. - auth
  16767. - serverUrl
  16768. type: object
  16769. fake:
  16770. description: Fake configures a store with static key/value pairs
  16771. properties:
  16772. data:
  16773. items:
  16774. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16775. properties:
  16776. key:
  16777. type: string
  16778. value:
  16779. type: string
  16780. version:
  16781. type: string
  16782. required:
  16783. - key
  16784. - value
  16785. type: object
  16786. type: array
  16787. validationResult:
  16788. description: ValidationResult is defined type for the number of validation results.
  16789. type: integer
  16790. required:
  16791. - data
  16792. type: object
  16793. fortanix:
  16794. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16795. properties:
  16796. apiKey:
  16797. description: APIKey is the API token to access SDKMS Applications.
  16798. properties:
  16799. secretRef:
  16800. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16801. properties:
  16802. key:
  16803. description: |-
  16804. A key in the referenced Secret.
  16805. Some instances of this field may be defaulted, in others it may be required.
  16806. maxLength: 253
  16807. minLength: 1
  16808. pattern: ^[-._a-zA-Z0-9]+$
  16809. type: string
  16810. name:
  16811. description: The name of the Secret resource being referred to.
  16812. maxLength: 253
  16813. minLength: 1
  16814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16815. type: string
  16816. namespace:
  16817. description: |-
  16818. The namespace of the Secret resource being referred to.
  16819. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16820. maxLength: 63
  16821. minLength: 1
  16822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16823. type: string
  16824. type: object
  16825. type: object
  16826. apiUrl:
  16827. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  16828. type: string
  16829. type: object
  16830. gcpsm:
  16831. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  16832. properties:
  16833. auth:
  16834. description: Auth defines the information necessary to authenticate against GCP
  16835. properties:
  16836. secretRef:
  16837. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  16838. properties:
  16839. secretAccessKeySecretRef:
  16840. description: The SecretAccessKey is used for authentication
  16841. properties:
  16842. key:
  16843. description: |-
  16844. A key in the referenced Secret.
  16845. Some instances of this field may be defaulted, in others it may be required.
  16846. maxLength: 253
  16847. minLength: 1
  16848. pattern: ^[-._a-zA-Z0-9]+$
  16849. type: string
  16850. name:
  16851. description: The name of the Secret resource being referred to.
  16852. maxLength: 253
  16853. minLength: 1
  16854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16855. type: string
  16856. namespace:
  16857. description: |-
  16858. The namespace of the Secret resource being referred to.
  16859. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16860. maxLength: 63
  16861. minLength: 1
  16862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16863. type: string
  16864. type: object
  16865. type: object
  16866. workloadIdentity:
  16867. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  16868. properties:
  16869. clusterLocation:
  16870. description: |-
  16871. ClusterLocation is the location of the cluster
  16872. If not specified, it fetches information from the metadata server
  16873. type: string
  16874. clusterName:
  16875. description: |-
  16876. ClusterName is the name of the cluster
  16877. If not specified, it fetches information from the metadata server
  16878. type: string
  16879. clusterProjectID:
  16880. description: |-
  16881. ClusterProjectID is the project ID of the cluster
  16882. If not specified, it fetches information from the metadata server
  16883. type: string
  16884. serviceAccountRef:
  16885. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  16886. properties:
  16887. audiences:
  16888. description: |-
  16889. Audience specifies the `aud` claim for the service account token
  16890. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16891. then this audiences will be appended to the list
  16892. items:
  16893. type: string
  16894. type: array
  16895. name:
  16896. description: The name of the ServiceAccount resource being referred to.
  16897. maxLength: 253
  16898. minLength: 1
  16899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16900. type: string
  16901. namespace:
  16902. description: |-
  16903. Namespace of the resource being referred to.
  16904. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16905. maxLength: 63
  16906. minLength: 1
  16907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16908. type: string
  16909. required:
  16910. - name
  16911. type: object
  16912. required:
  16913. - serviceAccountRef
  16914. type: object
  16915. workloadIdentityFederation:
  16916. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  16917. properties:
  16918. audience:
  16919. description: |-
  16920. 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.
  16921. If specified, Audience found in the external account credential config will be overridden with the configured value.
  16922. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  16923. type: string
  16924. awsSecurityCredentials:
  16925. description: |-
  16926. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  16927. when using the AWS metadata server is not an option.
  16928. properties:
  16929. awsCredentialsSecretRef:
  16930. description: |-
  16931. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  16932. Secret should be created with below names for keys
  16933. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  16934. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  16935. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  16936. properties:
  16937. name:
  16938. description: name of the secret.
  16939. maxLength: 253
  16940. minLength: 1
  16941. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16942. type: string
  16943. namespace:
  16944. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  16945. maxLength: 63
  16946. minLength: 1
  16947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16948. type: string
  16949. required:
  16950. - name
  16951. type: object
  16952. region:
  16953. description: region is for configuring the AWS region to be used.
  16954. example: ap-south-1
  16955. maxLength: 50
  16956. minLength: 1
  16957. pattern: ^[a-z0-9-]+$
  16958. type: string
  16959. required:
  16960. - awsCredentialsSecretRef
  16961. - region
  16962. type: object
  16963. credConfig:
  16964. description: |-
  16965. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  16966. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  16967. serviceAccountRef must be used by providing operators service account details.
  16968. properties:
  16969. key:
  16970. description: key name holding the external account credential config.
  16971. maxLength: 253
  16972. minLength: 1
  16973. pattern: ^[-._a-zA-Z0-9]+$
  16974. type: string
  16975. name:
  16976. description: name of the configmap.
  16977. maxLength: 253
  16978. minLength: 1
  16979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16980. type: string
  16981. namespace:
  16982. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  16983. maxLength: 63
  16984. minLength: 1
  16985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16986. type: string
  16987. required:
  16988. - key
  16989. - name
  16990. type: object
  16991. externalTokenEndpoint:
  16992. description: |-
  16993. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  16994. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  16995. URL is having the expected value.
  16996. type: string
  16997. gcpServiceAccountEmail:
  16998. description: |-
  16999. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  17000. after Workload Identity Federation. Use this to grant access through the service account's
  17001. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  17002. service_account_impersonation_url in the external account JSON from credConfig;
  17003. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  17004. on that ServiceAccount.
  17005. example: my-gsa@my-project.iam.gserviceaccount.com
  17006. minLength: 1
  17007. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  17008. type: string
  17009. serviceAccountRef:
  17010. description: |-
  17011. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  17012. when Kubernetes is configured as provider in workload identity pool.
  17013. properties:
  17014. audiences:
  17015. description: |-
  17016. Audience specifies the `aud` claim for the service account token
  17017. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17018. then this audiences will be appended to the list
  17019. items:
  17020. type: string
  17021. type: array
  17022. name:
  17023. description: The name of the ServiceAccount resource being referred to.
  17024. maxLength: 253
  17025. minLength: 1
  17026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17027. type: string
  17028. namespace:
  17029. description: |-
  17030. Namespace of the resource being referred to.
  17031. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17032. maxLength: 63
  17033. minLength: 1
  17034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17035. type: string
  17036. required:
  17037. - name
  17038. type: object
  17039. type: object
  17040. type: object
  17041. location:
  17042. description: Location optionally defines a location for a secret
  17043. type: string
  17044. projectID:
  17045. description: ProjectID project where secret is located
  17046. type: string
  17047. secretVersionSelectionPolicy:
  17048. default: LatestOrFail
  17049. description: |-
  17050. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  17051. when "latest" is disabled or destroyed.
  17052. Possible values are:
  17053. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  17054. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  17055. type: string
  17056. type: object
  17057. github:
  17058. description: |-
  17059. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  17060. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  17061. properties:
  17062. appID:
  17063. description: appID specifies the Github APP that will be used to authenticate the client
  17064. format: int64
  17065. type: integer
  17066. auth:
  17067. description: auth configures how secret-manager authenticates with a Github instance.
  17068. properties:
  17069. privateKey:
  17070. description: |-
  17071. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17072. In some instances, `key` is a required field.
  17073. properties:
  17074. key:
  17075. description: |-
  17076. A key in the referenced Secret.
  17077. Some instances of this field may be defaulted, in others it may be required.
  17078. maxLength: 253
  17079. minLength: 1
  17080. pattern: ^[-._a-zA-Z0-9]+$
  17081. type: string
  17082. name:
  17083. description: The name of the Secret resource being referred to.
  17084. maxLength: 253
  17085. minLength: 1
  17086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17087. type: string
  17088. namespace:
  17089. description: |-
  17090. The namespace of the Secret resource being referred to.
  17091. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17092. maxLength: 63
  17093. minLength: 1
  17094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17095. type: string
  17096. type: object
  17097. required:
  17098. - privateKey
  17099. type: object
  17100. environment:
  17101. description: environment will be used to fetch secrets from a particular environment within a github repository
  17102. type: string
  17103. installationID:
  17104. description: installationID specifies the Github APP installation that will be used to authenticate the client
  17105. format: int64
  17106. type: integer
  17107. orgSecretVisibility:
  17108. description: |-
  17109. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  17110. Valid values are "all" or "private".
  17111. When unset, new secrets are created with visibility "all" and existing secrets preserve
  17112. whatever visibility they already have in GitHub.
  17113. enum:
  17114. - all
  17115. - private
  17116. type: string
  17117. organization:
  17118. description: organization will be used to fetch secrets from the Github organization
  17119. type: string
  17120. repository:
  17121. description: repository will be used to fetch secrets from the Github repository within an organization
  17122. type: string
  17123. uploadURL:
  17124. description: Upload URL for enterprise instances. Default to URL.
  17125. type: string
  17126. url:
  17127. default: https://github.com/
  17128. description: URL configures the Github instance URL. Defaults to https://github.com/.
  17129. type: string
  17130. required:
  17131. - appID
  17132. - auth
  17133. - installationID
  17134. - organization
  17135. type: object
  17136. gitlab:
  17137. description: GitLab configures this store to sync secrets using GitLab Variables provider
  17138. properties:
  17139. auth:
  17140. description: Auth configures how secret-manager authenticates with a GitLab instance.
  17141. properties:
  17142. SecretRef:
  17143. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  17144. properties:
  17145. accessToken:
  17146. description: AccessToken is used for authentication.
  17147. properties:
  17148. key:
  17149. description: |-
  17150. A key in the referenced Secret.
  17151. Some instances of this field may be defaulted, in others it may be required.
  17152. maxLength: 253
  17153. minLength: 1
  17154. pattern: ^[-._a-zA-Z0-9]+$
  17155. type: string
  17156. name:
  17157. description: The name of the Secret resource being referred to.
  17158. maxLength: 253
  17159. minLength: 1
  17160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17161. type: string
  17162. namespace:
  17163. description: |-
  17164. The namespace of the Secret resource being referred to.
  17165. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17166. maxLength: 63
  17167. minLength: 1
  17168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17169. type: string
  17170. type: object
  17171. type: object
  17172. required:
  17173. - SecretRef
  17174. type: object
  17175. caBundle:
  17176. description: |-
  17177. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  17178. can be performed.
  17179. format: byte
  17180. type: string
  17181. caProvider:
  17182. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  17183. properties:
  17184. key:
  17185. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17186. maxLength: 253
  17187. minLength: 1
  17188. pattern: ^[-._a-zA-Z0-9]+$
  17189. type: string
  17190. name:
  17191. description: The name of the object located at the provider type.
  17192. maxLength: 253
  17193. minLength: 1
  17194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17195. type: string
  17196. namespace:
  17197. description: |-
  17198. The namespace the Provider type is in.
  17199. Can only be defined when used in a ClusterSecretStore.
  17200. maxLength: 63
  17201. minLength: 1
  17202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17203. type: string
  17204. type:
  17205. description: The type of provider to use such as "Secret", or "ConfigMap".
  17206. enum:
  17207. - Secret
  17208. - ConfigMap
  17209. type: string
  17210. required:
  17211. - name
  17212. - type
  17213. type: object
  17214. environment:
  17215. 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)
  17216. type: string
  17217. groupIDs:
  17218. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  17219. items:
  17220. type: string
  17221. type: array
  17222. inheritFromGroups:
  17223. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  17224. type: boolean
  17225. projectID:
  17226. description: ProjectID specifies a project where secrets are located.
  17227. type: string
  17228. url:
  17229. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  17230. type: string
  17231. required:
  17232. - auth
  17233. type: object
  17234. ibm:
  17235. description: IBM configures this store to sync secrets using IBM Cloud provider
  17236. properties:
  17237. auth:
  17238. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  17239. maxProperties: 1
  17240. minProperties: 1
  17241. properties:
  17242. containerAuth:
  17243. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  17244. properties:
  17245. iamEndpoint:
  17246. type: string
  17247. profile:
  17248. description: the IBM Trusted Profile
  17249. type: string
  17250. tokenLocation:
  17251. description: Location the token is mounted on the pod
  17252. type: string
  17253. required:
  17254. - profile
  17255. type: object
  17256. secretRef:
  17257. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  17258. properties:
  17259. iamEndpoint:
  17260. description: The IAM endpoint used to obain a token
  17261. type: string
  17262. secretApiKeySecretRef:
  17263. description: The SecretAccessKey is used for authentication
  17264. properties:
  17265. key:
  17266. description: |-
  17267. A key in the referenced Secret.
  17268. Some instances of this field may be defaulted, in others it may be required.
  17269. maxLength: 253
  17270. minLength: 1
  17271. pattern: ^[-._a-zA-Z0-9]+$
  17272. type: string
  17273. name:
  17274. description: The name of the Secret resource being referred to.
  17275. maxLength: 253
  17276. minLength: 1
  17277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17278. type: string
  17279. namespace:
  17280. description: |-
  17281. The namespace of the Secret resource being referred to.
  17282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17283. maxLength: 63
  17284. minLength: 1
  17285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17286. type: string
  17287. type: object
  17288. type: object
  17289. type: object
  17290. serviceUrl:
  17291. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  17292. type: string
  17293. required:
  17294. - auth
  17295. type: object
  17296. infisical:
  17297. description: Infisical configures this store to sync secrets using the Infisical provider
  17298. properties:
  17299. auth:
  17300. description: Auth configures how the Operator authenticates with the Infisical API
  17301. properties:
  17302. awsAuthCredentials:
  17303. description: AwsAuthCredentials represents the credentials for AWS authentication.
  17304. properties:
  17305. identityId:
  17306. description: |-
  17307. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17308. In some instances, `key` is a required field.
  17309. properties:
  17310. key:
  17311. description: |-
  17312. A key in the referenced Secret.
  17313. Some instances of this field may be defaulted, in others it may be required.
  17314. maxLength: 253
  17315. minLength: 1
  17316. pattern: ^[-._a-zA-Z0-9]+$
  17317. type: string
  17318. name:
  17319. description: The name of the Secret resource being referred to.
  17320. maxLength: 253
  17321. minLength: 1
  17322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17323. type: string
  17324. namespace:
  17325. description: |-
  17326. The namespace of the Secret resource being referred to.
  17327. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17328. maxLength: 63
  17329. minLength: 1
  17330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17331. type: string
  17332. type: object
  17333. required:
  17334. - identityId
  17335. type: object
  17336. azureAuthCredentials:
  17337. description: AzureAuthCredentials represents the credentials for Azure authentication.
  17338. properties:
  17339. identityId:
  17340. description: |-
  17341. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17342. In some instances, `key` is a required field.
  17343. properties:
  17344. key:
  17345. description: |-
  17346. A key in the referenced Secret.
  17347. Some instances of this field may be defaulted, in others it may be required.
  17348. maxLength: 253
  17349. minLength: 1
  17350. pattern: ^[-._a-zA-Z0-9]+$
  17351. type: string
  17352. name:
  17353. description: The name of the Secret resource being referred to.
  17354. maxLength: 253
  17355. minLength: 1
  17356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17357. type: string
  17358. namespace:
  17359. description: |-
  17360. The namespace of the Secret resource being referred to.
  17361. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17362. maxLength: 63
  17363. minLength: 1
  17364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17365. type: string
  17366. type: object
  17367. resource:
  17368. description: |-
  17369. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17370. In some instances, `key` is a required field.
  17371. properties:
  17372. key:
  17373. description: |-
  17374. A key in the referenced Secret.
  17375. Some instances of this field may be defaulted, in others it may be required.
  17376. maxLength: 253
  17377. minLength: 1
  17378. pattern: ^[-._a-zA-Z0-9]+$
  17379. type: string
  17380. name:
  17381. description: The name of the Secret resource being referred to.
  17382. maxLength: 253
  17383. minLength: 1
  17384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17385. type: string
  17386. namespace:
  17387. description: |-
  17388. The namespace of the Secret resource being referred to.
  17389. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17390. maxLength: 63
  17391. minLength: 1
  17392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17393. type: string
  17394. type: object
  17395. required:
  17396. - identityId
  17397. type: object
  17398. gcpIamAuthCredentials:
  17399. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  17400. properties:
  17401. identityId:
  17402. description: |-
  17403. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17404. In some instances, `key` is a required field.
  17405. properties:
  17406. key:
  17407. description: |-
  17408. A key in the referenced Secret.
  17409. Some instances of this field may be defaulted, in others it may be required.
  17410. maxLength: 253
  17411. minLength: 1
  17412. pattern: ^[-._a-zA-Z0-9]+$
  17413. type: string
  17414. name:
  17415. description: The name of the Secret resource being referred to.
  17416. maxLength: 253
  17417. minLength: 1
  17418. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17419. type: string
  17420. namespace:
  17421. description: |-
  17422. The namespace of the Secret resource being referred to.
  17423. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17424. maxLength: 63
  17425. minLength: 1
  17426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17427. type: string
  17428. type: object
  17429. serviceAccountKeyFilePath:
  17430. description: |-
  17431. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17432. In some instances, `key` is a required field.
  17433. properties:
  17434. key:
  17435. description: |-
  17436. A key in the referenced Secret.
  17437. Some instances of this field may be defaulted, in others it may be required.
  17438. maxLength: 253
  17439. minLength: 1
  17440. pattern: ^[-._a-zA-Z0-9]+$
  17441. type: string
  17442. name:
  17443. description: The name of the Secret resource being referred to.
  17444. maxLength: 253
  17445. minLength: 1
  17446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17447. type: string
  17448. namespace:
  17449. description: |-
  17450. The namespace of the Secret resource being referred to.
  17451. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17452. maxLength: 63
  17453. minLength: 1
  17454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17455. type: string
  17456. type: object
  17457. required:
  17458. - identityId
  17459. - serviceAccountKeyFilePath
  17460. type: object
  17461. gcpIdTokenAuthCredentials:
  17462. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  17463. properties:
  17464. identityId:
  17465. description: |-
  17466. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17467. In some instances, `key` is a required field.
  17468. properties:
  17469. key:
  17470. description: |-
  17471. A key in the referenced Secret.
  17472. Some instances of this field may be defaulted, in others it may be required.
  17473. maxLength: 253
  17474. minLength: 1
  17475. pattern: ^[-._a-zA-Z0-9]+$
  17476. type: string
  17477. name:
  17478. description: The name of the Secret resource being referred to.
  17479. maxLength: 253
  17480. minLength: 1
  17481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17482. type: string
  17483. namespace:
  17484. description: |-
  17485. The namespace of the Secret resource being referred to.
  17486. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17487. maxLength: 63
  17488. minLength: 1
  17489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17490. type: string
  17491. type: object
  17492. required:
  17493. - identityId
  17494. type: object
  17495. jwtAuthCredentials:
  17496. description: JwtAuthCredentials represents the credentials for JWT authentication.
  17497. properties:
  17498. identityId:
  17499. description: |-
  17500. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17501. In some instances, `key` is a required field.
  17502. properties:
  17503. key:
  17504. description: |-
  17505. A key in the referenced Secret.
  17506. Some instances of this field may be defaulted, in others it may be required.
  17507. maxLength: 253
  17508. minLength: 1
  17509. pattern: ^[-._a-zA-Z0-9]+$
  17510. type: string
  17511. name:
  17512. description: The name of the Secret resource being referred to.
  17513. maxLength: 253
  17514. minLength: 1
  17515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17516. type: string
  17517. namespace:
  17518. description: |-
  17519. The namespace of the Secret resource being referred to.
  17520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17521. maxLength: 63
  17522. minLength: 1
  17523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17524. type: string
  17525. type: object
  17526. jwt:
  17527. description: |-
  17528. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17529. In some instances, `key` is a required field.
  17530. properties:
  17531. key:
  17532. description: |-
  17533. A key in the referenced Secret.
  17534. Some instances of this field may be defaulted, in others it may be required.
  17535. maxLength: 253
  17536. minLength: 1
  17537. pattern: ^[-._a-zA-Z0-9]+$
  17538. type: string
  17539. name:
  17540. description: The name of the Secret resource being referred to.
  17541. maxLength: 253
  17542. minLength: 1
  17543. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17544. type: string
  17545. namespace:
  17546. description: |-
  17547. The namespace of the Secret resource being referred to.
  17548. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17549. maxLength: 63
  17550. minLength: 1
  17551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17552. type: string
  17553. type: object
  17554. required:
  17555. - identityId
  17556. - jwt
  17557. type: object
  17558. kubernetesAuthCredentials:
  17559. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  17560. properties:
  17561. identityId:
  17562. description: |-
  17563. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17564. In some instances, `key` is a required field.
  17565. properties:
  17566. key:
  17567. description: |-
  17568. A key in the referenced Secret.
  17569. Some instances of this field may be defaulted, in others it may be required.
  17570. maxLength: 253
  17571. minLength: 1
  17572. pattern: ^[-._a-zA-Z0-9]+$
  17573. type: string
  17574. name:
  17575. description: The name of the Secret resource being referred to.
  17576. maxLength: 253
  17577. minLength: 1
  17578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17579. type: string
  17580. namespace:
  17581. description: |-
  17582. The namespace of the Secret resource being referred to.
  17583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17584. maxLength: 63
  17585. minLength: 1
  17586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17587. type: string
  17588. type: object
  17589. serviceAccountTokenPath:
  17590. description: |-
  17591. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17592. In some instances, `key` is a required field.
  17593. properties:
  17594. key:
  17595. description: |-
  17596. A key in the referenced Secret.
  17597. Some instances of this field may be defaulted, in others it may be required.
  17598. maxLength: 253
  17599. minLength: 1
  17600. pattern: ^[-._a-zA-Z0-9]+$
  17601. type: string
  17602. name:
  17603. description: The name of the Secret resource being referred to.
  17604. maxLength: 253
  17605. minLength: 1
  17606. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17607. type: string
  17608. namespace:
  17609. description: |-
  17610. The namespace of the Secret resource being referred to.
  17611. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17612. maxLength: 63
  17613. minLength: 1
  17614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17615. type: string
  17616. type: object
  17617. required:
  17618. - identityId
  17619. type: object
  17620. ldapAuthCredentials:
  17621. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  17622. properties:
  17623. identityId:
  17624. description: |-
  17625. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17626. In some instances, `key` is a required field.
  17627. properties:
  17628. key:
  17629. description: |-
  17630. A key in the referenced Secret.
  17631. Some instances of this field may be defaulted, in others it may be required.
  17632. maxLength: 253
  17633. minLength: 1
  17634. pattern: ^[-._a-zA-Z0-9]+$
  17635. type: string
  17636. name:
  17637. description: The name of the Secret resource being referred to.
  17638. maxLength: 253
  17639. minLength: 1
  17640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17641. type: string
  17642. namespace:
  17643. description: |-
  17644. The namespace of the Secret resource being referred to.
  17645. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17646. maxLength: 63
  17647. minLength: 1
  17648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17649. type: string
  17650. type: object
  17651. ldapPassword:
  17652. description: |-
  17653. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17654. In some instances, `key` is a required field.
  17655. properties:
  17656. key:
  17657. description: |-
  17658. A key in the referenced Secret.
  17659. Some instances of this field may be defaulted, in others it may be required.
  17660. maxLength: 253
  17661. minLength: 1
  17662. pattern: ^[-._a-zA-Z0-9]+$
  17663. type: string
  17664. name:
  17665. description: The name of the Secret resource being referred to.
  17666. maxLength: 253
  17667. minLength: 1
  17668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17669. type: string
  17670. namespace:
  17671. description: |-
  17672. The namespace of the Secret resource being referred to.
  17673. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17674. maxLength: 63
  17675. minLength: 1
  17676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17677. type: string
  17678. type: object
  17679. ldapUsername:
  17680. description: |-
  17681. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17682. In some instances, `key` is a required field.
  17683. properties:
  17684. key:
  17685. description: |-
  17686. A key in the referenced Secret.
  17687. Some instances of this field may be defaulted, in others it may be required.
  17688. maxLength: 253
  17689. minLength: 1
  17690. pattern: ^[-._a-zA-Z0-9]+$
  17691. type: string
  17692. name:
  17693. description: The name of the Secret resource being referred to.
  17694. maxLength: 253
  17695. minLength: 1
  17696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17697. type: string
  17698. namespace:
  17699. description: |-
  17700. The namespace of the Secret resource being referred to.
  17701. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17702. maxLength: 63
  17703. minLength: 1
  17704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17705. type: string
  17706. type: object
  17707. required:
  17708. - identityId
  17709. - ldapPassword
  17710. - ldapUsername
  17711. type: object
  17712. ociAuthCredentials:
  17713. description: OciAuthCredentials represents the credentials for OCI authentication.
  17714. properties:
  17715. fingerprint:
  17716. description: |-
  17717. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17718. In some instances, `key` is a required field.
  17719. properties:
  17720. key:
  17721. description: |-
  17722. A key in the referenced Secret.
  17723. Some instances of this field may be defaulted, in others it may be required.
  17724. maxLength: 253
  17725. minLength: 1
  17726. pattern: ^[-._a-zA-Z0-9]+$
  17727. type: string
  17728. name:
  17729. description: The name of the Secret resource being referred to.
  17730. maxLength: 253
  17731. minLength: 1
  17732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17733. type: string
  17734. namespace:
  17735. description: |-
  17736. The namespace of the Secret resource being referred to.
  17737. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17738. maxLength: 63
  17739. minLength: 1
  17740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17741. type: string
  17742. type: object
  17743. identityId:
  17744. description: |-
  17745. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17746. In some instances, `key` is a required field.
  17747. properties:
  17748. key:
  17749. description: |-
  17750. A key in the referenced Secret.
  17751. Some instances of this field may be defaulted, in others it may be required.
  17752. maxLength: 253
  17753. minLength: 1
  17754. pattern: ^[-._a-zA-Z0-9]+$
  17755. type: string
  17756. name:
  17757. description: The name of the Secret resource being referred to.
  17758. maxLength: 253
  17759. minLength: 1
  17760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17761. type: string
  17762. namespace:
  17763. description: |-
  17764. The namespace of the Secret resource being referred to.
  17765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17766. maxLength: 63
  17767. minLength: 1
  17768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17769. type: string
  17770. type: object
  17771. privateKey:
  17772. description: |-
  17773. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17774. In some instances, `key` is a required field.
  17775. properties:
  17776. key:
  17777. description: |-
  17778. A key in the referenced Secret.
  17779. Some instances of this field may be defaulted, in others it may be required.
  17780. maxLength: 253
  17781. minLength: 1
  17782. pattern: ^[-._a-zA-Z0-9]+$
  17783. type: string
  17784. name:
  17785. description: The name of the Secret resource being referred to.
  17786. maxLength: 253
  17787. minLength: 1
  17788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17789. type: string
  17790. namespace:
  17791. description: |-
  17792. The namespace of the Secret resource being referred to.
  17793. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17794. maxLength: 63
  17795. minLength: 1
  17796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17797. type: string
  17798. type: object
  17799. privateKeyPassphrase:
  17800. description: |-
  17801. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17802. In some instances, `key` is a required field.
  17803. properties:
  17804. key:
  17805. description: |-
  17806. A key in the referenced Secret.
  17807. Some instances of this field may be defaulted, in others it may be required.
  17808. maxLength: 253
  17809. minLength: 1
  17810. pattern: ^[-._a-zA-Z0-9]+$
  17811. type: string
  17812. name:
  17813. description: The name of the Secret resource being referred to.
  17814. maxLength: 253
  17815. minLength: 1
  17816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17817. type: string
  17818. namespace:
  17819. description: |-
  17820. The namespace of the Secret resource being referred to.
  17821. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17822. maxLength: 63
  17823. minLength: 1
  17824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17825. type: string
  17826. type: object
  17827. region:
  17828. description: |-
  17829. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17830. In some instances, `key` is a required field.
  17831. properties:
  17832. key:
  17833. description: |-
  17834. A key in the referenced Secret.
  17835. Some instances of this field may be defaulted, in others it may be required.
  17836. maxLength: 253
  17837. minLength: 1
  17838. pattern: ^[-._a-zA-Z0-9]+$
  17839. type: string
  17840. name:
  17841. description: The name of the Secret resource being referred to.
  17842. maxLength: 253
  17843. minLength: 1
  17844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17845. type: string
  17846. namespace:
  17847. description: |-
  17848. The namespace of the Secret resource being referred to.
  17849. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17850. maxLength: 63
  17851. minLength: 1
  17852. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17853. type: string
  17854. type: object
  17855. tenancyId:
  17856. description: |-
  17857. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17858. In some instances, `key` is a required field.
  17859. properties:
  17860. key:
  17861. description: |-
  17862. A key in the referenced Secret.
  17863. Some instances of this field may be defaulted, in others it may be required.
  17864. maxLength: 253
  17865. minLength: 1
  17866. pattern: ^[-._a-zA-Z0-9]+$
  17867. type: string
  17868. name:
  17869. description: The name of the Secret resource being referred to.
  17870. maxLength: 253
  17871. minLength: 1
  17872. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17873. type: string
  17874. namespace:
  17875. description: |-
  17876. The namespace of the Secret resource being referred to.
  17877. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17878. maxLength: 63
  17879. minLength: 1
  17880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17881. type: string
  17882. type: object
  17883. userId:
  17884. description: |-
  17885. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17886. In some instances, `key` is a required field.
  17887. properties:
  17888. key:
  17889. description: |-
  17890. A key in the referenced Secret.
  17891. Some instances of this field may be defaulted, in others it may be required.
  17892. maxLength: 253
  17893. minLength: 1
  17894. pattern: ^[-._a-zA-Z0-9]+$
  17895. type: string
  17896. name:
  17897. description: The name of the Secret resource being referred to.
  17898. maxLength: 253
  17899. minLength: 1
  17900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17901. type: string
  17902. namespace:
  17903. description: |-
  17904. The namespace of the Secret resource being referred to.
  17905. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17906. maxLength: 63
  17907. minLength: 1
  17908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17909. type: string
  17910. type: object
  17911. required:
  17912. - fingerprint
  17913. - identityId
  17914. - privateKey
  17915. - region
  17916. - tenancyId
  17917. - userId
  17918. type: object
  17919. tokenAuthCredentials:
  17920. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  17921. properties:
  17922. accessToken:
  17923. description: |-
  17924. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17925. In some instances, `key` is a required field.
  17926. properties:
  17927. key:
  17928. description: |-
  17929. A key in the referenced Secret.
  17930. Some instances of this field may be defaulted, in others it may be required.
  17931. maxLength: 253
  17932. minLength: 1
  17933. pattern: ^[-._a-zA-Z0-9]+$
  17934. type: string
  17935. name:
  17936. description: The name of the Secret resource being referred to.
  17937. maxLength: 253
  17938. minLength: 1
  17939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17940. type: string
  17941. namespace:
  17942. description: |-
  17943. The namespace of the Secret resource being referred to.
  17944. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17945. maxLength: 63
  17946. minLength: 1
  17947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17948. type: string
  17949. type: object
  17950. required:
  17951. - accessToken
  17952. type: object
  17953. universalAuthCredentials:
  17954. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  17955. properties:
  17956. clientId:
  17957. description: |-
  17958. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17959. In some instances, `key` is a required field.
  17960. properties:
  17961. key:
  17962. description: |-
  17963. A key in the referenced Secret.
  17964. Some instances of this field may be defaulted, in others it may be required.
  17965. maxLength: 253
  17966. minLength: 1
  17967. pattern: ^[-._a-zA-Z0-9]+$
  17968. type: string
  17969. name:
  17970. description: The name of the Secret resource being referred to.
  17971. maxLength: 253
  17972. minLength: 1
  17973. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17974. type: string
  17975. namespace:
  17976. description: |-
  17977. The namespace of the Secret resource being referred to.
  17978. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17979. maxLength: 63
  17980. minLength: 1
  17981. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17982. type: string
  17983. type: object
  17984. clientSecret:
  17985. description: |-
  17986. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17987. In some instances, `key` is a required field.
  17988. properties:
  17989. key:
  17990. description: |-
  17991. A key in the referenced Secret.
  17992. Some instances of this field may be defaulted, in others it may be required.
  17993. maxLength: 253
  17994. minLength: 1
  17995. pattern: ^[-._a-zA-Z0-9]+$
  17996. type: string
  17997. name:
  17998. description: The name of the Secret resource being referred to.
  17999. maxLength: 253
  18000. minLength: 1
  18001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18002. type: string
  18003. namespace:
  18004. description: |-
  18005. The namespace of the Secret resource being referred to.
  18006. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18007. maxLength: 63
  18008. minLength: 1
  18009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18010. type: string
  18011. type: object
  18012. required:
  18013. - clientId
  18014. - clientSecret
  18015. type: object
  18016. type: object
  18017. caBundle:
  18018. description: |-
  18019. CABundle is a PEM-encoded CA certificate bundle used to validate
  18020. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  18021. format: byte
  18022. type: string
  18023. caProvider:
  18024. description: |-
  18025. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  18026. The certificate is used to validate the Infisical server's TLS certificate.
  18027. Mutually exclusive with CABundle.
  18028. properties:
  18029. key:
  18030. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18031. maxLength: 253
  18032. minLength: 1
  18033. pattern: ^[-._a-zA-Z0-9]+$
  18034. type: string
  18035. name:
  18036. description: The name of the object located at the provider type.
  18037. maxLength: 253
  18038. minLength: 1
  18039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18040. type: string
  18041. namespace:
  18042. description: |-
  18043. The namespace the Provider type is in.
  18044. Can only be defined when used in a ClusterSecretStore.
  18045. maxLength: 63
  18046. minLength: 1
  18047. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18048. type: string
  18049. type:
  18050. description: The type of provider to use such as "Secret", or "ConfigMap".
  18051. enum:
  18052. - Secret
  18053. - ConfigMap
  18054. type: string
  18055. required:
  18056. - name
  18057. - type
  18058. type: object
  18059. hostAPI:
  18060. default: https://app.infisical.com/api
  18061. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  18062. type: string
  18063. secretsScope:
  18064. description: SecretsScope defines the scope of the secrets within the workspace
  18065. properties:
  18066. environmentSlug:
  18067. description: EnvironmentSlug is the required slug identifier for the environment.
  18068. type: string
  18069. expandSecretReferences:
  18070. default: true
  18071. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  18072. type: boolean
  18073. organizationSlug:
  18074. description: |-
  18075. OrganizationSlug is the optional slug that identifies the organization that will be used
  18076. during authentication. Useful for sub-organization setups
  18077. type: string
  18078. projectSlug:
  18079. description: ProjectSlug is the required slug identifier for the project.
  18080. type: string
  18081. recursive:
  18082. default: false
  18083. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  18084. type: boolean
  18085. secretsPath:
  18086. default: /
  18087. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  18088. type: string
  18089. required:
  18090. - environmentSlug
  18091. - projectSlug
  18092. type: object
  18093. required:
  18094. - auth
  18095. - secretsScope
  18096. type: object
  18097. keepersecurity:
  18098. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  18099. properties:
  18100. authRef:
  18101. description: |-
  18102. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18103. In some instances, `key` is a required field.
  18104. properties:
  18105. key:
  18106. description: |-
  18107. A key in the referenced Secret.
  18108. Some instances of this field may be defaulted, in others it may be required.
  18109. maxLength: 253
  18110. minLength: 1
  18111. pattern: ^[-._a-zA-Z0-9]+$
  18112. type: string
  18113. name:
  18114. description: The name of the Secret resource being referred to.
  18115. maxLength: 253
  18116. minLength: 1
  18117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18118. type: string
  18119. namespace:
  18120. description: |-
  18121. The namespace of the Secret resource being referred to.
  18122. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18123. maxLength: 63
  18124. minLength: 1
  18125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18126. type: string
  18127. type: object
  18128. folderID:
  18129. type: string
  18130. getByTitleFallback:
  18131. type: boolean
  18132. required:
  18133. - authRef
  18134. - folderID
  18135. type: object
  18136. kubernetes:
  18137. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  18138. properties:
  18139. auth:
  18140. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  18141. maxProperties: 1
  18142. minProperties: 1
  18143. properties:
  18144. cert:
  18145. description: has both clientCert and clientKey as secretKeySelector
  18146. properties:
  18147. clientCert:
  18148. description: |-
  18149. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18150. In some instances, `key` is a required field.
  18151. properties:
  18152. key:
  18153. description: |-
  18154. A key in the referenced Secret.
  18155. Some instances of this field may be defaulted, in others it may be required.
  18156. maxLength: 253
  18157. minLength: 1
  18158. pattern: ^[-._a-zA-Z0-9]+$
  18159. type: string
  18160. name:
  18161. description: The name of the Secret resource being referred to.
  18162. maxLength: 253
  18163. minLength: 1
  18164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18165. type: string
  18166. namespace:
  18167. description: |-
  18168. The namespace of the Secret resource being referred to.
  18169. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18170. maxLength: 63
  18171. minLength: 1
  18172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18173. type: string
  18174. type: object
  18175. clientKey:
  18176. description: |-
  18177. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18178. In some instances, `key` is a required field.
  18179. properties:
  18180. key:
  18181. description: |-
  18182. A key in the referenced Secret.
  18183. Some instances of this field may be defaulted, in others it may be required.
  18184. maxLength: 253
  18185. minLength: 1
  18186. pattern: ^[-._a-zA-Z0-9]+$
  18187. type: string
  18188. name:
  18189. description: The name of the Secret resource being referred to.
  18190. maxLength: 253
  18191. minLength: 1
  18192. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18193. type: string
  18194. namespace:
  18195. description: |-
  18196. The namespace of the Secret resource being referred to.
  18197. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18198. maxLength: 63
  18199. minLength: 1
  18200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18201. type: string
  18202. type: object
  18203. type: object
  18204. serviceAccount:
  18205. description: points to a service account that should be used for authentication
  18206. properties:
  18207. audiences:
  18208. description: |-
  18209. Audience specifies the `aud` claim for the service account token
  18210. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18211. then this audiences will be appended to the list
  18212. items:
  18213. type: string
  18214. type: array
  18215. name:
  18216. description: The name of the ServiceAccount resource being referred to.
  18217. maxLength: 253
  18218. minLength: 1
  18219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18220. type: string
  18221. namespace:
  18222. description: |-
  18223. Namespace of the resource being referred to.
  18224. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18225. maxLength: 63
  18226. minLength: 1
  18227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18228. type: string
  18229. required:
  18230. - name
  18231. type: object
  18232. token:
  18233. description: use static token to authenticate with
  18234. properties:
  18235. bearerToken:
  18236. description: |-
  18237. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18238. In some instances, `key` is a required field.
  18239. properties:
  18240. key:
  18241. description: |-
  18242. A key in the referenced Secret.
  18243. Some instances of this field may be defaulted, in others it may be required.
  18244. maxLength: 253
  18245. minLength: 1
  18246. pattern: ^[-._a-zA-Z0-9]+$
  18247. type: string
  18248. name:
  18249. description: The name of the Secret resource being referred to.
  18250. maxLength: 253
  18251. minLength: 1
  18252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18253. type: string
  18254. namespace:
  18255. description: |-
  18256. The namespace of the Secret resource being referred to.
  18257. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18258. maxLength: 63
  18259. minLength: 1
  18260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18261. type: string
  18262. type: object
  18263. type: object
  18264. type: object
  18265. authRef:
  18266. description: A reference to a secret that contains the auth information.
  18267. properties:
  18268. key:
  18269. description: |-
  18270. A key in the referenced Secret.
  18271. Some instances of this field may be defaulted, in others it may be required.
  18272. maxLength: 253
  18273. minLength: 1
  18274. pattern: ^[-._a-zA-Z0-9]+$
  18275. type: string
  18276. name:
  18277. description: The name of the Secret resource being referred to.
  18278. maxLength: 253
  18279. minLength: 1
  18280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18281. type: string
  18282. namespace:
  18283. description: |-
  18284. The namespace of the Secret resource being referred to.
  18285. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18286. maxLength: 63
  18287. minLength: 1
  18288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18289. type: string
  18290. type: object
  18291. remoteNamespace:
  18292. default: default
  18293. description: Remote namespace to fetch the secrets from
  18294. maxLength: 63
  18295. minLength: 1
  18296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18297. type: string
  18298. server:
  18299. description: configures the Kubernetes server Address.
  18300. properties:
  18301. caBundle:
  18302. description: CABundle is a base64-encoded CA certificate
  18303. format: byte
  18304. type: string
  18305. caProvider:
  18306. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  18307. properties:
  18308. key:
  18309. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18310. maxLength: 253
  18311. minLength: 1
  18312. pattern: ^[-._a-zA-Z0-9]+$
  18313. type: string
  18314. name:
  18315. description: The name of the object located at the provider type.
  18316. maxLength: 253
  18317. minLength: 1
  18318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18319. type: string
  18320. namespace:
  18321. description: |-
  18322. The namespace the Provider type is in.
  18323. Can only be defined when used in a ClusterSecretStore.
  18324. maxLength: 63
  18325. minLength: 1
  18326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18327. type: string
  18328. type:
  18329. description: The type of provider to use such as "Secret", or "ConfigMap".
  18330. enum:
  18331. - Secret
  18332. - ConfigMap
  18333. type: string
  18334. required:
  18335. - name
  18336. - type
  18337. type: object
  18338. url:
  18339. default: kubernetes.default
  18340. description: configures the Kubernetes server Address.
  18341. type: string
  18342. type: object
  18343. type: object
  18344. nebiusmysterybox:
  18345. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  18346. properties:
  18347. apiDomain:
  18348. description: NebiusMysterybox API endpoint
  18349. type: string
  18350. auth:
  18351. description: Auth defines parameters to authenticate in MysteryBox
  18352. properties:
  18353. serviceAccountCredsSecretRef:
  18354. description: |-
  18355. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  18356. document with service account credentials used to get an IAM token.
  18357. Expected JSON structure:
  18358. {
  18359. "subject-credentials": {
  18360. "alg": "RS256",
  18361. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  18362. "kid": "<public-key-id>",
  18363. "iss": "<issuer-service-account-id>",
  18364. "sub": "<subject-service-account-id>"
  18365. }
  18366. }
  18367. properties:
  18368. key:
  18369. description: |-
  18370. A key in the referenced Secret.
  18371. Some instances of this field may be defaulted, in others it may be required.
  18372. maxLength: 253
  18373. minLength: 1
  18374. pattern: ^[-._a-zA-Z0-9]+$
  18375. type: string
  18376. name:
  18377. description: The name of the Secret resource being referred to.
  18378. maxLength: 253
  18379. minLength: 1
  18380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18381. type: string
  18382. namespace:
  18383. description: |-
  18384. The namespace of the Secret resource being referred to.
  18385. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18386. maxLength: 63
  18387. minLength: 1
  18388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18389. type: string
  18390. type: object
  18391. tokenSecretRef:
  18392. description: Token authenticates with Nebius Mysterybox by presenting a token.
  18393. properties:
  18394. key:
  18395. description: |-
  18396. A key in the referenced Secret.
  18397. Some instances of this field may be defaulted, in others it may be required.
  18398. maxLength: 253
  18399. minLength: 1
  18400. pattern: ^[-._a-zA-Z0-9]+$
  18401. type: string
  18402. name:
  18403. description: The name of the Secret resource being referred to.
  18404. maxLength: 253
  18405. minLength: 1
  18406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18407. type: string
  18408. namespace:
  18409. description: |-
  18410. The namespace of the Secret resource being referred to.
  18411. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18412. maxLength: 63
  18413. minLength: 1
  18414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18415. type: string
  18416. type: object
  18417. type: object
  18418. x-kubernetes-validations:
  18419. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  18420. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  18421. caProvider:
  18422. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  18423. properties:
  18424. certSecretRef:
  18425. description: |-
  18426. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18427. In some instances, `key` is a required field.
  18428. properties:
  18429. key:
  18430. description: |-
  18431. A key in the referenced Secret.
  18432. Some instances of this field may be defaulted, in others it may be required.
  18433. maxLength: 253
  18434. minLength: 1
  18435. pattern: ^[-._a-zA-Z0-9]+$
  18436. type: string
  18437. name:
  18438. description: The name of the Secret resource being referred to.
  18439. maxLength: 253
  18440. minLength: 1
  18441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18442. type: string
  18443. namespace:
  18444. description: |-
  18445. The namespace of the Secret resource being referred to.
  18446. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18447. maxLength: 63
  18448. minLength: 1
  18449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18450. type: string
  18451. type: object
  18452. type: object
  18453. required:
  18454. - apiDomain
  18455. - auth
  18456. type: object
  18457. ngrok:
  18458. description: Ngrok configures this store to sync secrets using the ngrok provider.
  18459. properties:
  18460. apiUrl:
  18461. default: https://api.ngrok.com
  18462. description: APIURL is the URL of the ngrok API.
  18463. type: string
  18464. auth:
  18465. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  18466. maxProperties: 1
  18467. minProperties: 1
  18468. properties:
  18469. apiKey:
  18470. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  18471. properties:
  18472. secretRef:
  18473. description: SecretRef is a reference to a secret containing the ngrok API key.
  18474. properties:
  18475. key:
  18476. description: |-
  18477. A key in the referenced Secret.
  18478. Some instances of this field may be defaulted, in others it may be required.
  18479. maxLength: 253
  18480. minLength: 1
  18481. pattern: ^[-._a-zA-Z0-9]+$
  18482. type: string
  18483. name:
  18484. description: The name of the Secret resource being referred to.
  18485. maxLength: 253
  18486. minLength: 1
  18487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18488. type: string
  18489. namespace:
  18490. description: |-
  18491. The namespace of the Secret resource being referred to.
  18492. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18493. maxLength: 63
  18494. minLength: 1
  18495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18496. type: string
  18497. type: object
  18498. type: object
  18499. type: object
  18500. vault:
  18501. description: Vault configures the ngrok vault to sync secrets with.
  18502. properties:
  18503. name:
  18504. description: Name is the name of the ngrok vault to sync secrets with.
  18505. type: string
  18506. required:
  18507. - name
  18508. type: object
  18509. required:
  18510. - auth
  18511. - vault
  18512. type: object
  18513. onboardbase:
  18514. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  18515. properties:
  18516. apiHost:
  18517. default: https://public.onboardbase.com/api/v1/
  18518. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  18519. type: string
  18520. auth:
  18521. description: Auth configures how the Operator authenticates with the Onboardbase API
  18522. properties:
  18523. apiKeyRef:
  18524. description: |-
  18525. OnboardbaseAPIKey is the APIKey generated by an admin account.
  18526. It is used to recognize and authorize access to a project and environment within onboardbase
  18527. properties:
  18528. key:
  18529. description: |-
  18530. A key in the referenced Secret.
  18531. Some instances of this field may be defaulted, in others it may be required.
  18532. maxLength: 253
  18533. minLength: 1
  18534. pattern: ^[-._a-zA-Z0-9]+$
  18535. type: string
  18536. name:
  18537. description: The name of the Secret resource being referred to.
  18538. maxLength: 253
  18539. minLength: 1
  18540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18541. type: string
  18542. namespace:
  18543. description: |-
  18544. The namespace of the Secret resource being referred to.
  18545. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18546. maxLength: 63
  18547. minLength: 1
  18548. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18549. type: string
  18550. type: object
  18551. passcodeRef:
  18552. description: OnboardbasePasscode is the passcode attached to the API Key
  18553. properties:
  18554. key:
  18555. description: |-
  18556. A key in the referenced Secret.
  18557. Some instances of this field may be defaulted, in others it may be required.
  18558. maxLength: 253
  18559. minLength: 1
  18560. pattern: ^[-._a-zA-Z0-9]+$
  18561. type: string
  18562. name:
  18563. description: The name of the Secret resource being referred to.
  18564. maxLength: 253
  18565. minLength: 1
  18566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18567. type: string
  18568. namespace:
  18569. description: |-
  18570. The namespace of the Secret resource being referred to.
  18571. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18572. maxLength: 63
  18573. minLength: 1
  18574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18575. type: string
  18576. type: object
  18577. required:
  18578. - apiKeyRef
  18579. - passcodeRef
  18580. type: object
  18581. environment:
  18582. default: development
  18583. description: Environment is the name of an environmnent within a project to pull the secrets from
  18584. type: string
  18585. project:
  18586. default: development
  18587. description: Project is an onboardbase project that the secrets should be pulled from
  18588. type: string
  18589. required:
  18590. - apiHost
  18591. - auth
  18592. - environment
  18593. - project
  18594. type: object
  18595. onepassword:
  18596. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  18597. properties:
  18598. auth:
  18599. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  18600. properties:
  18601. secretRef:
  18602. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  18603. properties:
  18604. connectTokenSecretRef:
  18605. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  18606. properties:
  18607. key:
  18608. description: |-
  18609. A key in the referenced Secret.
  18610. Some instances of this field may be defaulted, in others it may be required.
  18611. maxLength: 253
  18612. minLength: 1
  18613. pattern: ^[-._a-zA-Z0-9]+$
  18614. type: string
  18615. name:
  18616. description: The name of the Secret resource being referred to.
  18617. maxLength: 253
  18618. minLength: 1
  18619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18620. type: string
  18621. namespace:
  18622. description: |-
  18623. The namespace of the Secret resource being referred to.
  18624. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18625. maxLength: 63
  18626. minLength: 1
  18627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18628. type: string
  18629. type: object
  18630. required:
  18631. - connectTokenSecretRef
  18632. type: object
  18633. required:
  18634. - secretRef
  18635. type: object
  18636. connectHost:
  18637. description: ConnectHost defines the OnePassword Connect Server to connect to
  18638. type: string
  18639. vaults:
  18640. additionalProperties:
  18641. type: integer
  18642. description: Vaults defines which OnePassword vaults to search in which order
  18643. type: object
  18644. required:
  18645. - auth
  18646. - connectHost
  18647. - vaults
  18648. type: object
  18649. onepasswordSDK:
  18650. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  18651. properties:
  18652. auth:
  18653. description: Auth defines the information necessary to authenticate against OnePassword API.
  18654. properties:
  18655. serviceAccountSecretRef:
  18656. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  18657. properties:
  18658. key:
  18659. description: |-
  18660. A key in the referenced Secret.
  18661. Some instances of this field may be defaulted, in others it may be required.
  18662. maxLength: 253
  18663. minLength: 1
  18664. pattern: ^[-._a-zA-Z0-9]+$
  18665. type: string
  18666. name:
  18667. description: The name of the Secret resource being referred to.
  18668. maxLength: 253
  18669. minLength: 1
  18670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18671. type: string
  18672. namespace:
  18673. description: |-
  18674. The namespace of the Secret resource being referred to.
  18675. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18676. maxLength: 63
  18677. minLength: 1
  18678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18679. type: string
  18680. type: object
  18681. required:
  18682. - serviceAccountSecretRef
  18683. type: object
  18684. cache:
  18685. description: |-
  18686. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  18687. When enabled, secrets are cached with the specified TTL.
  18688. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  18689. If omitted, caching is disabled (default).
  18690. cache: {} is a valid option to set.
  18691. properties:
  18692. maxSize:
  18693. default: 100
  18694. description: |-
  18695. MaxSize is the maximum number of secrets to cache.
  18696. When the cache is full, least-recently-used entries are evicted.
  18697. minimum: 1
  18698. type: integer
  18699. ttl:
  18700. default: 5m
  18701. description: |-
  18702. TTL is the time-to-live for cached secrets.
  18703. Format: duration string (e.g., "5m", "1h", "30s")
  18704. type: string
  18705. type: object
  18706. integrationInfo:
  18707. description: |-
  18708. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18709. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18710. properties:
  18711. name:
  18712. default: 1Password SDK
  18713. description: Name defaults to "1Password SDK".
  18714. type: string
  18715. version:
  18716. default: v1.0.0
  18717. description: Version defaults to "v1.0.0".
  18718. type: string
  18719. type: object
  18720. vault:
  18721. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18722. type: string
  18723. required:
  18724. - auth
  18725. - vault
  18726. type: object
  18727. openBao:
  18728. description: OpenBao configures this store to sync secrets using the OpenBao provider.
  18729. properties:
  18730. auth:
  18731. description: Auth configures how secret-manager authenticates with the OpenBao server.
  18732. maxProperties: 1
  18733. properties:
  18734. tokenSecretRef:
  18735. description: TokenSecretRef authenticates with OpenBao by presenting a token.
  18736. properties:
  18737. key:
  18738. description: |-
  18739. A key in the referenced Secret.
  18740. Some instances of this field may be defaulted, in others it may be required.
  18741. maxLength: 253
  18742. minLength: 1
  18743. pattern: ^[-._a-zA-Z0-9]+$
  18744. type: string
  18745. name:
  18746. description: The name of the Secret resource being referred to.
  18747. maxLength: 253
  18748. minLength: 1
  18749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18750. type: string
  18751. namespace:
  18752. description: |-
  18753. The namespace of the Secret resource being referred to.
  18754. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18755. maxLength: 63
  18756. minLength: 1
  18757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18758. type: string
  18759. type: object
  18760. userPass:
  18761. description: UserPass authenticates with OpenBao by passing a username/password pair
  18762. properties:
  18763. path:
  18764. default: userpass
  18765. description: |-
  18766. Path where the UserPassword authentication backend is mounted
  18767. in OpenBao, e.g: "userpass"
  18768. type: string
  18769. secretRef:
  18770. description: |-
  18771. SecretRef to a key in a Secret resource containing password for the user
  18772. used to authenticate with OpenBao using the [UserPass authentication
  18773. method]
  18774. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  18775. properties:
  18776. key:
  18777. description: |-
  18778. A key in the referenced Secret.
  18779. Some instances of this field may be defaulted, in others it may be required.
  18780. maxLength: 253
  18781. minLength: 1
  18782. pattern: ^[-._a-zA-Z0-9]+$
  18783. type: string
  18784. name:
  18785. description: The name of the Secret resource being referred to.
  18786. maxLength: 253
  18787. minLength: 1
  18788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18789. type: string
  18790. namespace:
  18791. description: |-
  18792. The namespace of the Secret resource being referred to.
  18793. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18794. maxLength: 63
  18795. minLength: 1
  18796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18797. type: string
  18798. type: object
  18799. username:
  18800. description: |-
  18801. Username is a username used to authenticate using the [UserPass
  18802. authentication method]
  18803. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  18804. type: string
  18805. required:
  18806. - path
  18807. - username
  18808. type: object
  18809. type: object
  18810. caBundle:
  18811. description: |-
  18812. PEM encoded CA bundle used to validate the OpenBao server certificate. If
  18813. this and `caProvider` are not set the system root certificates are used
  18814. to validate the TLS connection.
  18815. format: byte
  18816. type: string
  18817. caProvider:
  18818. description: |-
  18819. The provider for the CA bundle to use to validate OpenBao server
  18820. certificate. If this and `caBundle` are not set the system root
  18821. certificates are used to validate the TLS connection.
  18822. properties:
  18823. key:
  18824. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18825. maxLength: 253
  18826. minLength: 1
  18827. pattern: ^[-._a-zA-Z0-9]+$
  18828. type: string
  18829. name:
  18830. description: The name of the object located at the provider type.
  18831. maxLength: 253
  18832. minLength: 1
  18833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18834. type: string
  18835. namespace:
  18836. description: |-
  18837. The namespace the Provider type is in.
  18838. Can only be defined when used in a ClusterSecretStore.
  18839. maxLength: 63
  18840. minLength: 1
  18841. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18842. type: string
  18843. type:
  18844. description: The type of provider to use such as "Secret", or "ConfigMap".
  18845. enum:
  18846. - Secret
  18847. - ConfigMap
  18848. type: string
  18849. required:
  18850. - name
  18851. - type
  18852. type: object
  18853. path:
  18854. description: |-
  18855. Path is the mount path of the OpenBao KV backend endpoint, e.g:
  18856. "secret". The v2 KV secret engine version specific "/data" path suffix
  18857. for fetching secrets from OpenBao is optional and will be appended
  18858. if not present in specified path.
  18859. type: string
  18860. server:
  18861. description: 'Server is the connection address for the OpenBao server, e.g: `https://openbao.example.com:8200`.'
  18862. type: string
  18863. version:
  18864. default: v2
  18865. description: |-
  18866. Version is the OpenBao KV secret engine version. This can be either "v1" or
  18867. "v2". Version defaults to "v2".
  18868. enum:
  18869. - v1
  18870. - v2
  18871. type: string
  18872. required:
  18873. - server
  18874. type: object
  18875. x-kubernetes-validations:
  18876. - message: at most one of the fields in [caBundle caProvider] may be set
  18877. rule: '[has(self.caBundle),has(self.caProvider)].filter(x,x==true).size() <= 1'
  18878. oracle:
  18879. description: Oracle configures this store to sync secrets using Oracle Vault provider
  18880. properties:
  18881. auth:
  18882. description: |-
  18883. Auth configures how secret-manager authenticates with the Oracle Vault.
  18884. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  18885. properties:
  18886. secretRef:
  18887. description: SecretRef to pass through sensitive information.
  18888. properties:
  18889. fingerprint:
  18890. description: Fingerprint is the fingerprint of the API private key.
  18891. properties:
  18892. key:
  18893. description: |-
  18894. A key in the referenced Secret.
  18895. Some instances of this field may be defaulted, in others it may be required.
  18896. maxLength: 253
  18897. minLength: 1
  18898. pattern: ^[-._a-zA-Z0-9]+$
  18899. type: string
  18900. name:
  18901. description: The name of the Secret resource being referred to.
  18902. maxLength: 253
  18903. minLength: 1
  18904. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18905. type: string
  18906. namespace:
  18907. description: |-
  18908. The namespace of the Secret resource being referred to.
  18909. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18910. maxLength: 63
  18911. minLength: 1
  18912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18913. type: string
  18914. type: object
  18915. privatekey:
  18916. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  18917. properties:
  18918. key:
  18919. description: |-
  18920. A key in the referenced Secret.
  18921. Some instances of this field may be defaulted, in others it may be required.
  18922. maxLength: 253
  18923. minLength: 1
  18924. pattern: ^[-._a-zA-Z0-9]+$
  18925. type: string
  18926. name:
  18927. description: The name of the Secret resource being referred to.
  18928. maxLength: 253
  18929. minLength: 1
  18930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18931. type: string
  18932. namespace:
  18933. description: |-
  18934. The namespace of the Secret resource being referred to.
  18935. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18936. maxLength: 63
  18937. minLength: 1
  18938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18939. type: string
  18940. type: object
  18941. required:
  18942. - fingerprint
  18943. - privatekey
  18944. type: object
  18945. tenancy:
  18946. description: Tenancy is the tenancy OCID where user is located.
  18947. type: string
  18948. user:
  18949. description: User is an access OCID specific to the account.
  18950. type: string
  18951. required:
  18952. - secretRef
  18953. - tenancy
  18954. - user
  18955. type: object
  18956. compartment:
  18957. description: |-
  18958. Compartment is the vault compartment OCID.
  18959. Required for PushSecret
  18960. type: string
  18961. encryptionKey:
  18962. description: |-
  18963. EncryptionKey is the OCID of the encryption key within the vault.
  18964. Required for PushSecret
  18965. type: string
  18966. principalType:
  18967. description: |-
  18968. The type of principal to use for authentication. If left blank, the Auth struct will
  18969. determine the principal type. This optional field must be specified if using
  18970. workload identity.
  18971. enum:
  18972. - ""
  18973. - UserPrincipal
  18974. - InstancePrincipal
  18975. - Workload
  18976. type: string
  18977. region:
  18978. description: Region is the region where vault is located.
  18979. type: string
  18980. serviceAccountRef:
  18981. description: |-
  18982. ServiceAccountRef specified the service account
  18983. that should be used when authenticating with WorkloadIdentity.
  18984. properties:
  18985. audiences:
  18986. description: |-
  18987. Audience specifies the `aud` claim for the service account token
  18988. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18989. then this audiences will be appended to the list
  18990. items:
  18991. type: string
  18992. type: array
  18993. name:
  18994. description: The name of the ServiceAccount resource being referred to.
  18995. maxLength: 253
  18996. minLength: 1
  18997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18998. type: string
  18999. namespace:
  19000. description: |-
  19001. Namespace of the resource being referred to.
  19002. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19003. maxLength: 63
  19004. minLength: 1
  19005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19006. type: string
  19007. required:
  19008. - name
  19009. type: object
  19010. vault:
  19011. description: Vault is the vault's OCID of the specific vault where secret is located.
  19012. type: string
  19013. required:
  19014. - region
  19015. - vault
  19016. type: object
  19017. ovh:
  19018. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  19019. properties:
  19020. auth:
  19021. description: Authentication method (mtls or token).
  19022. properties:
  19023. mtls:
  19024. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  19025. properties:
  19026. caBundle:
  19027. format: byte
  19028. type: string
  19029. caProvider:
  19030. description: |-
  19031. CAProvider provides a custom certificate authority for accessing the provider's store.
  19032. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  19033. properties:
  19034. key:
  19035. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19036. maxLength: 253
  19037. minLength: 1
  19038. pattern: ^[-._a-zA-Z0-9]+$
  19039. type: string
  19040. name:
  19041. description: The name of the object located at the provider type.
  19042. maxLength: 253
  19043. minLength: 1
  19044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19045. type: string
  19046. namespace:
  19047. description: |-
  19048. The namespace the Provider type is in.
  19049. Can only be defined when used in a ClusterSecretStore.
  19050. maxLength: 63
  19051. minLength: 1
  19052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19053. type: string
  19054. type:
  19055. description: The type of provider to use such as "Secret", or "ConfigMap".
  19056. enum:
  19057. - Secret
  19058. - ConfigMap
  19059. type: string
  19060. required:
  19061. - name
  19062. - type
  19063. type: object
  19064. certSecretRef:
  19065. description: |-
  19066. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19067. In some instances, `key` is a required field.
  19068. properties:
  19069. key:
  19070. description: |-
  19071. A key in the referenced Secret.
  19072. Some instances of this field may be defaulted, in others it may be required.
  19073. maxLength: 253
  19074. minLength: 1
  19075. pattern: ^[-._a-zA-Z0-9]+$
  19076. type: string
  19077. name:
  19078. description: The name of the Secret resource being referred to.
  19079. maxLength: 253
  19080. minLength: 1
  19081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19082. type: string
  19083. namespace:
  19084. description: |-
  19085. The namespace of the Secret resource being referred to.
  19086. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19087. maxLength: 63
  19088. minLength: 1
  19089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19090. type: string
  19091. type: object
  19092. keySecretRef:
  19093. description: |-
  19094. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19095. In some instances, `key` is a required field.
  19096. properties:
  19097. key:
  19098. description: |-
  19099. A key in the referenced Secret.
  19100. Some instances of this field may be defaulted, in others it may be required.
  19101. maxLength: 253
  19102. minLength: 1
  19103. pattern: ^[-._a-zA-Z0-9]+$
  19104. type: string
  19105. name:
  19106. description: The name of the Secret resource being referred to.
  19107. maxLength: 253
  19108. minLength: 1
  19109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19110. type: string
  19111. namespace:
  19112. description: |-
  19113. The namespace of the Secret resource being referred to.
  19114. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19115. maxLength: 63
  19116. minLength: 1
  19117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19118. type: string
  19119. type: object
  19120. required:
  19121. - certSecretRef
  19122. - keySecretRef
  19123. type: object
  19124. token:
  19125. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  19126. properties:
  19127. tokenSecretRef:
  19128. description: |-
  19129. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19130. In some instances, `key` is a required field.
  19131. properties:
  19132. key:
  19133. description: |-
  19134. A key in the referenced Secret.
  19135. Some instances of this field may be defaulted, in others it may be required.
  19136. maxLength: 253
  19137. minLength: 1
  19138. pattern: ^[-._a-zA-Z0-9]+$
  19139. type: string
  19140. name:
  19141. description: The name of the Secret resource being referred to.
  19142. maxLength: 253
  19143. minLength: 1
  19144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19145. type: string
  19146. namespace:
  19147. description: |-
  19148. The namespace of the Secret resource being referred to.
  19149. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19150. maxLength: 63
  19151. minLength: 1
  19152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19153. type: string
  19154. type: object
  19155. required:
  19156. - tokenSecretRef
  19157. type: object
  19158. type: object
  19159. casRequired:
  19160. description: 'Enables or disables check-and-set (CAS) (default: false).'
  19161. type: boolean
  19162. okmsTimeout:
  19163. default: 30
  19164. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  19165. format: int32
  19166. minimum: 1
  19167. type: integer
  19168. okmsid:
  19169. description: specifies the OKMS ID.
  19170. type: string
  19171. server:
  19172. description: specifies the OKMS server endpoint.
  19173. type: string
  19174. required:
  19175. - auth
  19176. - okmsid
  19177. - server
  19178. type: object
  19179. passbolt:
  19180. description: |-
  19181. PassboltProvider provides access to Passbolt secrets manager.
  19182. See: https://www.passbolt.com.
  19183. properties:
  19184. auth:
  19185. description: Auth defines the information necessary to authenticate against Passbolt Server
  19186. properties:
  19187. passwordSecretRef:
  19188. description: |-
  19189. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19190. In some instances, `key` is a required field.
  19191. properties:
  19192. key:
  19193. description: |-
  19194. A key in the referenced Secret.
  19195. Some instances of this field may be defaulted, in others it may be required.
  19196. maxLength: 253
  19197. minLength: 1
  19198. pattern: ^[-._a-zA-Z0-9]+$
  19199. type: string
  19200. name:
  19201. description: The name of the Secret resource being referred to.
  19202. maxLength: 253
  19203. minLength: 1
  19204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19205. type: string
  19206. namespace:
  19207. description: |-
  19208. The namespace of the Secret resource being referred to.
  19209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19210. maxLength: 63
  19211. minLength: 1
  19212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19213. type: string
  19214. type: object
  19215. privateKeySecretRef:
  19216. description: |-
  19217. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19218. In some instances, `key` is a required field.
  19219. properties:
  19220. key:
  19221. description: |-
  19222. A key in the referenced Secret.
  19223. Some instances of this field may be defaulted, in others it may be required.
  19224. maxLength: 253
  19225. minLength: 1
  19226. pattern: ^[-._a-zA-Z0-9]+$
  19227. type: string
  19228. name:
  19229. description: The name of the Secret resource being referred to.
  19230. maxLength: 253
  19231. minLength: 1
  19232. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19233. type: string
  19234. namespace:
  19235. description: |-
  19236. The namespace of the Secret resource being referred to.
  19237. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19238. maxLength: 63
  19239. minLength: 1
  19240. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19241. type: string
  19242. type: object
  19243. required:
  19244. - passwordSecretRef
  19245. - privateKeySecretRef
  19246. type: object
  19247. caBundle:
  19248. description: |-
  19249. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  19250. if the Host URL is using HTTPS protocol. If not set the system root certificates
  19251. are used to validate the TLS connection.
  19252. format: byte
  19253. type: string
  19254. caProvider:
  19255. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  19256. properties:
  19257. key:
  19258. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19259. maxLength: 253
  19260. minLength: 1
  19261. pattern: ^[-._a-zA-Z0-9]+$
  19262. type: string
  19263. name:
  19264. description: The name of the object located at the provider type.
  19265. maxLength: 253
  19266. minLength: 1
  19267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19268. type: string
  19269. namespace:
  19270. description: |-
  19271. The namespace the Provider type is in.
  19272. Can only be defined when used in a ClusterSecretStore.
  19273. maxLength: 63
  19274. minLength: 1
  19275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19276. type: string
  19277. type:
  19278. description: The type of provider to use such as "Secret", or "ConfigMap".
  19279. enum:
  19280. - Secret
  19281. - ConfigMap
  19282. type: string
  19283. required:
  19284. - name
  19285. - type
  19286. type: object
  19287. host:
  19288. description: Host defines the Passbolt Server to connect to
  19289. type: string
  19290. required:
  19291. - auth
  19292. - host
  19293. type: object
  19294. passworddepot:
  19295. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  19296. properties:
  19297. auth:
  19298. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  19299. properties:
  19300. secretRef:
  19301. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  19302. properties:
  19303. credentials:
  19304. description: Username / Password is used for authentication.
  19305. properties:
  19306. key:
  19307. description: |-
  19308. A key in the referenced Secret.
  19309. Some instances of this field may be defaulted, in others it may be required.
  19310. maxLength: 253
  19311. minLength: 1
  19312. pattern: ^[-._a-zA-Z0-9]+$
  19313. type: string
  19314. name:
  19315. description: The name of the Secret resource being referred to.
  19316. maxLength: 253
  19317. minLength: 1
  19318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19319. type: string
  19320. namespace:
  19321. description: |-
  19322. The namespace of the Secret resource being referred to.
  19323. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19324. maxLength: 63
  19325. minLength: 1
  19326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19327. type: string
  19328. type: object
  19329. type: object
  19330. required:
  19331. - secretRef
  19332. type: object
  19333. database:
  19334. description: Database to use as source
  19335. type: string
  19336. host:
  19337. description: URL configures the Password Depot instance URL.
  19338. type: string
  19339. required:
  19340. - auth
  19341. - database
  19342. - host
  19343. type: object
  19344. previder:
  19345. description: Previder configures this store to sync secrets using the Previder provider
  19346. properties:
  19347. auth:
  19348. description: PreviderAuth contains a secretRef for credentials.
  19349. properties:
  19350. secretRef:
  19351. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  19352. properties:
  19353. accessToken:
  19354. description: The AccessToken is used for authentication
  19355. properties:
  19356. key:
  19357. description: |-
  19358. A key in the referenced Secret.
  19359. Some instances of this field may be defaulted, in others it may be required.
  19360. maxLength: 253
  19361. minLength: 1
  19362. pattern: ^[-._a-zA-Z0-9]+$
  19363. type: string
  19364. name:
  19365. description: The name of the Secret resource being referred to.
  19366. maxLength: 253
  19367. minLength: 1
  19368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19369. type: string
  19370. namespace:
  19371. description: |-
  19372. The namespace of the Secret resource being referred to.
  19373. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19374. maxLength: 63
  19375. minLength: 1
  19376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19377. type: string
  19378. type: object
  19379. required:
  19380. - accessToken
  19381. type: object
  19382. type: object
  19383. baseUri:
  19384. type: string
  19385. required:
  19386. - auth
  19387. type: object
  19388. pulumi:
  19389. description: Pulumi configures this store to sync secrets using the Pulumi provider
  19390. properties:
  19391. accessToken:
  19392. description: |-
  19393. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  19394. Deprecated: Use auth.accessToken instead.
  19395. properties:
  19396. secretRef:
  19397. description: SecretRef is a reference to a secret containing the Pulumi API token.
  19398. properties:
  19399. key:
  19400. description: |-
  19401. A key in the referenced Secret.
  19402. Some instances of this field may be defaulted, in others it may be required.
  19403. maxLength: 253
  19404. minLength: 1
  19405. pattern: ^[-._a-zA-Z0-9]+$
  19406. type: string
  19407. name:
  19408. description: The name of the Secret resource being referred to.
  19409. maxLength: 253
  19410. minLength: 1
  19411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19412. type: string
  19413. namespace:
  19414. description: |-
  19415. The namespace of the Secret resource being referred to.
  19416. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19417. maxLength: 63
  19418. minLength: 1
  19419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19420. type: string
  19421. type: object
  19422. type: object
  19423. apiUrl:
  19424. default: https://api.pulumi.com/api/esc
  19425. description: APIURL is the URL of the Pulumi API.
  19426. type: string
  19427. auth:
  19428. description: |-
  19429. Auth configures how the Operator authenticates with the Pulumi API.
  19430. Either auth or the deprecated accessToken field must be specified.
  19431. properties:
  19432. accessToken:
  19433. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  19434. properties:
  19435. secretRef:
  19436. description: SecretRef is a reference to a secret containing the Pulumi API token.
  19437. properties:
  19438. key:
  19439. description: |-
  19440. A key in the referenced Secret.
  19441. Some instances of this field may be defaulted, in others it may be required.
  19442. maxLength: 253
  19443. minLength: 1
  19444. pattern: ^[-._a-zA-Z0-9]+$
  19445. type: string
  19446. name:
  19447. description: The name of the Secret resource being referred to.
  19448. maxLength: 253
  19449. minLength: 1
  19450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19451. type: string
  19452. namespace:
  19453. description: |-
  19454. The namespace of the Secret resource being referred to.
  19455. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19456. maxLength: 63
  19457. minLength: 1
  19458. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19459. type: string
  19460. type: object
  19461. type: object
  19462. oidcConfig:
  19463. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  19464. properties:
  19465. expirationSeconds:
  19466. default: 600
  19467. description: |-
  19468. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  19469. Defaults to 10 minutes.
  19470. format: int64
  19471. minimum: 600
  19472. type: integer
  19473. organization:
  19474. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  19475. type: string
  19476. serviceAccountRef:
  19477. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  19478. properties:
  19479. audiences:
  19480. description: |-
  19481. Audience specifies the `aud` claim for the service account token
  19482. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19483. then this audiences will be appended to the list
  19484. items:
  19485. type: string
  19486. type: array
  19487. name:
  19488. description: The name of the ServiceAccount resource being referred to.
  19489. maxLength: 253
  19490. minLength: 1
  19491. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19492. type: string
  19493. namespace:
  19494. description: |-
  19495. Namespace of the resource being referred to.
  19496. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19497. maxLength: 63
  19498. minLength: 1
  19499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19500. type: string
  19501. required:
  19502. - name
  19503. type: object
  19504. required:
  19505. - organization
  19506. - serviceAccountRef
  19507. type: object
  19508. type: object
  19509. x-kubernetes-validations:
  19510. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  19511. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  19512. environment:
  19513. description: |-
  19514. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  19515. dynamically retrieved values from supported providers including all major clouds,
  19516. and other Pulumi ESC environments.
  19517. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  19518. type: string
  19519. organization:
  19520. description: |-
  19521. Organization are a space to collaborate on shared projects and stacks.
  19522. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  19523. type: string
  19524. project:
  19525. description: Project is the name of the Pulumi ESC project the environment belongs to.
  19526. type: string
  19527. required:
  19528. - environment
  19529. - organization
  19530. - project
  19531. type: object
  19532. x-kubernetes-validations:
  19533. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  19534. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  19535. scaleway:
  19536. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  19537. properties:
  19538. accessKey:
  19539. description: AccessKey is the non-secret part of the api key.
  19540. properties:
  19541. secretRef:
  19542. description: SecretRef references a key in a secret that will be used as value.
  19543. properties:
  19544. key:
  19545. description: |-
  19546. A key in the referenced Secret.
  19547. Some instances of this field may be defaulted, in others it may be required.
  19548. maxLength: 253
  19549. minLength: 1
  19550. pattern: ^[-._a-zA-Z0-9]+$
  19551. type: string
  19552. name:
  19553. description: The name of the Secret resource being referred to.
  19554. maxLength: 253
  19555. minLength: 1
  19556. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19557. type: string
  19558. namespace:
  19559. description: |-
  19560. The namespace of the Secret resource being referred to.
  19561. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19562. maxLength: 63
  19563. minLength: 1
  19564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19565. type: string
  19566. type: object
  19567. value:
  19568. description: Value can be specified directly to set a value without using a secret.
  19569. type: string
  19570. type: object
  19571. apiUrl:
  19572. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  19573. type: string
  19574. projectId:
  19575. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  19576. type: string
  19577. region:
  19578. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  19579. type: string
  19580. secretKey:
  19581. description: SecretKey is the non-secret part of the api key.
  19582. properties:
  19583. secretRef:
  19584. description: SecretRef references a key in a secret that will be used as value.
  19585. properties:
  19586. key:
  19587. description: |-
  19588. A key in the referenced Secret.
  19589. Some instances of this field may be defaulted, in others it may be required.
  19590. maxLength: 253
  19591. minLength: 1
  19592. pattern: ^[-._a-zA-Z0-9]+$
  19593. type: string
  19594. name:
  19595. description: The name of the Secret resource being referred to.
  19596. maxLength: 253
  19597. minLength: 1
  19598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19599. type: string
  19600. namespace:
  19601. description: |-
  19602. The namespace of the Secret resource being referred to.
  19603. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19604. maxLength: 63
  19605. minLength: 1
  19606. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19607. type: string
  19608. type: object
  19609. value:
  19610. description: Value can be specified directly to set a value without using a secret.
  19611. type: string
  19612. type: object
  19613. required:
  19614. - accessKey
  19615. - projectId
  19616. - region
  19617. - secretKey
  19618. type: object
  19619. secretserver:
  19620. description: |-
  19621. SecretServer configures this store to sync secrets using SecretServer provider
  19622. https://docs.delinea.com/online-help/secret-server/start.htm
  19623. properties:
  19624. caBundle:
  19625. description: |-
  19626. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  19627. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  19628. are used to validate the TLS connection.
  19629. format: byte
  19630. type: string
  19631. caProvider:
  19632. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  19633. properties:
  19634. key:
  19635. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19636. maxLength: 253
  19637. minLength: 1
  19638. pattern: ^[-._a-zA-Z0-9]+$
  19639. type: string
  19640. name:
  19641. description: The name of the object located at the provider type.
  19642. maxLength: 253
  19643. minLength: 1
  19644. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19645. type: string
  19646. namespace:
  19647. description: |-
  19648. The namespace the Provider type is in.
  19649. Can only be defined when used in a ClusterSecretStore.
  19650. maxLength: 63
  19651. minLength: 1
  19652. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19653. type: string
  19654. type:
  19655. description: The type of provider to use such as "Secret", or "ConfigMap".
  19656. enum:
  19657. - Secret
  19658. - ConfigMap
  19659. type: string
  19660. required:
  19661. - name
  19662. - type
  19663. type: object
  19664. domain:
  19665. description: Domain is the secret server domain.
  19666. type: string
  19667. password:
  19668. description: Password is the secret server account password.
  19669. properties:
  19670. secretRef:
  19671. description: SecretRef references a key in a secret that will be used as value.
  19672. properties:
  19673. key:
  19674. description: |-
  19675. A key in the referenced Secret.
  19676. Some instances of this field may be defaulted, in others it may be required.
  19677. maxLength: 253
  19678. minLength: 1
  19679. pattern: ^[-._a-zA-Z0-9]+$
  19680. type: string
  19681. name:
  19682. description: The name of the Secret resource being referred to.
  19683. maxLength: 253
  19684. minLength: 1
  19685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19686. type: string
  19687. namespace:
  19688. description: |-
  19689. The namespace of the Secret resource being referred to.
  19690. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19691. maxLength: 63
  19692. minLength: 1
  19693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19694. type: string
  19695. type: object
  19696. value:
  19697. description: Value can be specified directly to set a value without using a secret.
  19698. type: string
  19699. type: object
  19700. serverURL:
  19701. description: |-
  19702. ServerURL
  19703. URL to your secret server installation
  19704. type: string
  19705. username:
  19706. description: Username is the secret server account username.
  19707. properties:
  19708. secretRef:
  19709. description: SecretRef references a key in a secret that will be used as value.
  19710. properties:
  19711. key:
  19712. description: |-
  19713. A key in the referenced Secret.
  19714. Some instances of this field may be defaulted, in others it may be required.
  19715. maxLength: 253
  19716. minLength: 1
  19717. pattern: ^[-._a-zA-Z0-9]+$
  19718. type: string
  19719. name:
  19720. description: The name of the Secret resource being referred to.
  19721. maxLength: 253
  19722. minLength: 1
  19723. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19724. type: string
  19725. namespace:
  19726. description: |-
  19727. The namespace of the Secret resource being referred to.
  19728. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19729. maxLength: 63
  19730. minLength: 1
  19731. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19732. type: string
  19733. type: object
  19734. value:
  19735. description: Value can be specified directly to set a value without using a secret.
  19736. type: string
  19737. type: object
  19738. required:
  19739. - password
  19740. - serverURL
  19741. - username
  19742. type: object
  19743. senhasegura:
  19744. description: Senhasegura configures this store to sync secrets using senhasegura provider
  19745. properties:
  19746. auth:
  19747. description: Auth defines parameters to authenticate in senhasegura
  19748. properties:
  19749. clientId:
  19750. type: string
  19751. clientSecretSecretRef:
  19752. description: |-
  19753. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19754. In some instances, `key` is a required field.
  19755. properties:
  19756. key:
  19757. description: |-
  19758. A key in the referenced Secret.
  19759. Some instances of this field may be defaulted, in others it may be required.
  19760. maxLength: 253
  19761. minLength: 1
  19762. pattern: ^[-._a-zA-Z0-9]+$
  19763. type: string
  19764. name:
  19765. description: The name of the Secret resource being referred to.
  19766. maxLength: 253
  19767. minLength: 1
  19768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19769. type: string
  19770. namespace:
  19771. description: |-
  19772. The namespace of the Secret resource being referred to.
  19773. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19774. maxLength: 63
  19775. minLength: 1
  19776. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19777. type: string
  19778. type: object
  19779. required:
  19780. - clientId
  19781. - clientSecretSecretRef
  19782. type: object
  19783. ignoreSslCertificate:
  19784. default: false
  19785. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  19786. type: boolean
  19787. module:
  19788. description: Module defines which senhasegura module should be used to get secrets
  19789. type: string
  19790. url:
  19791. description: URL of senhasegura
  19792. type: string
  19793. required:
  19794. - auth
  19795. - module
  19796. - url
  19797. type: object
  19798. vault:
  19799. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  19800. properties:
  19801. auth:
  19802. description: Auth configures how secret-manager authenticates with the Vault server.
  19803. properties:
  19804. appRole:
  19805. description: |-
  19806. AppRole authenticates with Vault using the App Role auth mechanism,
  19807. with the role and secret stored in a Kubernetes Secret resource.
  19808. properties:
  19809. path:
  19810. default: approle
  19811. description: |-
  19812. Path where the App Role authentication backend is mounted
  19813. in Vault, e.g: "approle"
  19814. type: string
  19815. roleId:
  19816. description: |-
  19817. RoleID configured in the App Role authentication backend when setting
  19818. up the authentication backend in Vault.
  19819. type: string
  19820. roleRef:
  19821. description: |-
  19822. Reference to a key in a Secret that contains the App Role ID used
  19823. to authenticate with Vault.
  19824. The `key` field must be specified and denotes which entry within the Secret
  19825. resource is used as the app role id.
  19826. properties:
  19827. key:
  19828. description: |-
  19829. A key in the referenced Secret.
  19830. Some instances of this field may be defaulted, in others it may be required.
  19831. maxLength: 253
  19832. minLength: 1
  19833. pattern: ^[-._a-zA-Z0-9]+$
  19834. type: string
  19835. name:
  19836. description: The name of the Secret resource being referred to.
  19837. maxLength: 253
  19838. minLength: 1
  19839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19840. type: string
  19841. namespace:
  19842. description: |-
  19843. The namespace of the Secret resource being referred to.
  19844. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19845. maxLength: 63
  19846. minLength: 1
  19847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19848. type: string
  19849. type: object
  19850. secretRef:
  19851. description: |-
  19852. Reference to a key in a Secret that contains the App Role secret used
  19853. to authenticate with Vault.
  19854. The `key` field must be specified and denotes which entry within the Secret
  19855. resource is used as the app role secret.
  19856. properties:
  19857. key:
  19858. description: |-
  19859. A key in the referenced Secret.
  19860. Some instances of this field may be defaulted, in others it may be required.
  19861. maxLength: 253
  19862. minLength: 1
  19863. pattern: ^[-._a-zA-Z0-9]+$
  19864. type: string
  19865. name:
  19866. description: The name of the Secret resource being referred to.
  19867. maxLength: 253
  19868. minLength: 1
  19869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19870. type: string
  19871. namespace:
  19872. description: |-
  19873. The namespace of the Secret resource being referred to.
  19874. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19875. maxLength: 63
  19876. minLength: 1
  19877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19878. type: string
  19879. type: object
  19880. required:
  19881. - path
  19882. - secretRef
  19883. type: object
  19884. cert:
  19885. description: |-
  19886. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  19887. Cert authentication method
  19888. properties:
  19889. clientCert:
  19890. description: |-
  19891. ClientCert is a certificate to authenticate using the Cert Vault
  19892. authentication method
  19893. properties:
  19894. key:
  19895. description: |-
  19896. A key in the referenced Secret.
  19897. Some instances of this field may be defaulted, in others it may be required.
  19898. maxLength: 253
  19899. minLength: 1
  19900. pattern: ^[-._a-zA-Z0-9]+$
  19901. type: string
  19902. name:
  19903. description: The name of the Secret resource being referred to.
  19904. maxLength: 253
  19905. minLength: 1
  19906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19907. type: string
  19908. namespace:
  19909. description: |-
  19910. The namespace of the Secret resource being referred to.
  19911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19912. maxLength: 63
  19913. minLength: 1
  19914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19915. type: string
  19916. type: object
  19917. path:
  19918. default: cert
  19919. description: |-
  19920. Path where the Certificate authentication backend is mounted
  19921. in Vault, e.g: "cert"
  19922. type: string
  19923. secretRef:
  19924. description: |-
  19925. SecretRef to a key in a Secret resource containing client private key to
  19926. authenticate with Vault using the Cert authentication method
  19927. properties:
  19928. key:
  19929. description: |-
  19930. A key in the referenced Secret.
  19931. Some instances of this field may be defaulted, in others it may be required.
  19932. maxLength: 253
  19933. minLength: 1
  19934. pattern: ^[-._a-zA-Z0-9]+$
  19935. type: string
  19936. name:
  19937. description: The name of the Secret resource being referred to.
  19938. maxLength: 253
  19939. minLength: 1
  19940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19941. type: string
  19942. namespace:
  19943. description: |-
  19944. The namespace of the Secret resource being referred to.
  19945. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19946. maxLength: 63
  19947. minLength: 1
  19948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19949. type: string
  19950. type: object
  19951. vaultRole:
  19952. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  19953. type: string
  19954. type: object
  19955. gcp:
  19956. description: |-
  19957. Gcp authenticates with Vault using Google Cloud Platform authentication method
  19958. GCP authentication method
  19959. properties:
  19960. location:
  19961. description: Location optionally defines a location/region for the secret
  19962. type: string
  19963. path:
  19964. default: gcp
  19965. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  19966. type: string
  19967. projectID:
  19968. description: Project ID of the Google Cloud Platform project
  19969. type: string
  19970. role:
  19971. 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.
  19972. type: string
  19973. secretRef:
  19974. description: Specify credentials in a Secret object
  19975. properties:
  19976. secretAccessKeySecretRef:
  19977. description: The SecretAccessKey is used for authentication
  19978. properties:
  19979. key:
  19980. description: |-
  19981. A key in the referenced Secret.
  19982. Some instances of this field may be defaulted, in others it may be required.
  19983. maxLength: 253
  19984. minLength: 1
  19985. pattern: ^[-._a-zA-Z0-9]+$
  19986. type: string
  19987. name:
  19988. description: The name of the Secret resource being referred to.
  19989. maxLength: 253
  19990. minLength: 1
  19991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19992. type: string
  19993. namespace:
  19994. description: |-
  19995. The namespace of the Secret resource being referred to.
  19996. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19997. maxLength: 63
  19998. minLength: 1
  19999. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20000. type: string
  20001. type: object
  20002. type: object
  20003. serviceAccountRef:
  20004. description: ServiceAccountRef to a service account for impersonation
  20005. properties:
  20006. audiences:
  20007. description: |-
  20008. Audience specifies the `aud` claim for the service account token
  20009. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20010. then this audiences will be appended to the list
  20011. items:
  20012. type: string
  20013. type: array
  20014. name:
  20015. description: The name of the ServiceAccount resource being referred to.
  20016. maxLength: 253
  20017. minLength: 1
  20018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20019. type: string
  20020. namespace:
  20021. description: |-
  20022. Namespace of the resource being referred to.
  20023. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20024. maxLength: 63
  20025. minLength: 1
  20026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20027. type: string
  20028. required:
  20029. - name
  20030. type: object
  20031. workloadIdentity:
  20032. description: Specify a service account with Workload Identity
  20033. properties:
  20034. clusterLocation:
  20035. description: |-
  20036. ClusterLocation is the location of the cluster
  20037. If not specified, it fetches information from the metadata server
  20038. type: string
  20039. clusterName:
  20040. description: |-
  20041. ClusterName is the name of the cluster
  20042. If not specified, it fetches information from the metadata server
  20043. type: string
  20044. clusterProjectID:
  20045. description: |-
  20046. ClusterProjectID is the project ID of the cluster
  20047. If not specified, it fetches information from the metadata server
  20048. type: string
  20049. serviceAccountRef:
  20050. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  20051. properties:
  20052. audiences:
  20053. description: |-
  20054. Audience specifies the `aud` claim for the service account token
  20055. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20056. then this audiences will be appended to the list
  20057. items:
  20058. type: string
  20059. type: array
  20060. name:
  20061. description: The name of the ServiceAccount resource being referred to.
  20062. maxLength: 253
  20063. minLength: 1
  20064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20065. type: string
  20066. namespace:
  20067. description: |-
  20068. Namespace of the resource being referred to.
  20069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20070. maxLength: 63
  20071. minLength: 1
  20072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20073. type: string
  20074. required:
  20075. - name
  20076. type: object
  20077. required:
  20078. - serviceAccountRef
  20079. type: object
  20080. required:
  20081. - role
  20082. type: object
  20083. iam:
  20084. description: |-
  20085. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  20086. AWS IAM authentication method
  20087. properties:
  20088. externalID:
  20089. description: AWS External ID set on assumed IAM roles
  20090. type: string
  20091. jwt:
  20092. description: Specify a service account with IRSA enabled
  20093. properties:
  20094. serviceAccountRef:
  20095. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  20096. properties:
  20097. audiences:
  20098. description: |-
  20099. Audience specifies the `aud` claim for the service account token
  20100. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20101. then this audiences will be appended to the list
  20102. items:
  20103. type: string
  20104. type: array
  20105. name:
  20106. description: The name of the ServiceAccount resource being referred to.
  20107. maxLength: 253
  20108. minLength: 1
  20109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20110. type: string
  20111. namespace:
  20112. description: |-
  20113. Namespace of the resource being referred to.
  20114. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20115. maxLength: 63
  20116. minLength: 1
  20117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20118. type: string
  20119. required:
  20120. - name
  20121. type: object
  20122. type: object
  20123. path:
  20124. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  20125. type: string
  20126. region:
  20127. description: AWS region
  20128. type: string
  20129. role:
  20130. description: This is the AWS role to be assumed before talking to vault
  20131. type: string
  20132. secretRef:
  20133. description: Specify credentials in a Secret object
  20134. properties:
  20135. accessKeyIDSecretRef:
  20136. description: The AccessKeyID is used for authentication
  20137. properties:
  20138. key:
  20139. description: |-
  20140. A key in the referenced Secret.
  20141. Some instances of this field may be defaulted, in others it may be required.
  20142. maxLength: 253
  20143. minLength: 1
  20144. pattern: ^[-._a-zA-Z0-9]+$
  20145. type: string
  20146. name:
  20147. description: The name of the Secret resource being referred to.
  20148. maxLength: 253
  20149. minLength: 1
  20150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20151. type: string
  20152. namespace:
  20153. description: |-
  20154. The namespace of the Secret resource being referred to.
  20155. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20156. maxLength: 63
  20157. minLength: 1
  20158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20159. type: string
  20160. type: object
  20161. secretAccessKeySecretRef:
  20162. description: The SecretAccessKey is used for authentication
  20163. properties:
  20164. key:
  20165. description: |-
  20166. A key in the referenced Secret.
  20167. Some instances of this field may be defaulted, in others it may be required.
  20168. maxLength: 253
  20169. minLength: 1
  20170. pattern: ^[-._a-zA-Z0-9]+$
  20171. type: string
  20172. name:
  20173. description: The name of the Secret resource being referred to.
  20174. maxLength: 253
  20175. minLength: 1
  20176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20177. type: string
  20178. namespace:
  20179. description: |-
  20180. The namespace of the Secret resource being referred to.
  20181. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20182. maxLength: 63
  20183. minLength: 1
  20184. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20185. type: string
  20186. type: object
  20187. sessionTokenSecretRef:
  20188. description: |-
  20189. The SessionToken used for authentication
  20190. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  20191. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  20192. properties:
  20193. key:
  20194. description: |-
  20195. A key in the referenced Secret.
  20196. Some instances of this field may be defaulted, in others it may be required.
  20197. maxLength: 253
  20198. minLength: 1
  20199. pattern: ^[-._a-zA-Z0-9]+$
  20200. type: string
  20201. name:
  20202. description: The name of the Secret resource being referred to.
  20203. maxLength: 253
  20204. minLength: 1
  20205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20206. type: string
  20207. namespace:
  20208. description: |-
  20209. The namespace of the Secret resource being referred to.
  20210. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20211. maxLength: 63
  20212. minLength: 1
  20213. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20214. type: string
  20215. type: object
  20216. type: object
  20217. vaultAwsIamServerID:
  20218. 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'
  20219. type: string
  20220. vaultRole:
  20221. 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
  20222. type: string
  20223. required:
  20224. - vaultRole
  20225. type: object
  20226. jwt:
  20227. description: |-
  20228. Jwt authenticates with Vault by passing role and JWT token using the
  20229. JWT/OIDC authentication method
  20230. properties:
  20231. kubernetesServiceAccountToken:
  20232. description: |-
  20233. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  20234. a token for with the `TokenRequest` API.
  20235. properties:
  20236. audiences:
  20237. description: |-
  20238. Optional audiences field that will be used to request a temporary Kubernetes service
  20239. account token for the service account referenced by `serviceAccountRef`.
  20240. Defaults to a single audience `vault` it not specified.
  20241. Deprecated: use serviceAccountRef.Audiences instead
  20242. items:
  20243. type: string
  20244. type: array
  20245. expirationSeconds:
  20246. description: |-
  20247. Optional expiration time in seconds that will be used to request a temporary
  20248. Kubernetes service account token for the service account referenced by
  20249. `serviceAccountRef`.
  20250. Deprecated: this will be removed in the future.
  20251. Defaults to 10 minutes.
  20252. format: int64
  20253. type: integer
  20254. serviceAccountRef:
  20255. description: Service account field containing the name of a kubernetes ServiceAccount.
  20256. properties:
  20257. audiences:
  20258. description: |-
  20259. Audience specifies the `aud` claim for the service account token
  20260. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20261. then this audiences will be appended to the list
  20262. items:
  20263. type: string
  20264. type: array
  20265. name:
  20266. description: The name of the ServiceAccount resource being referred to.
  20267. maxLength: 253
  20268. minLength: 1
  20269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20270. type: string
  20271. namespace:
  20272. description: |-
  20273. Namespace of the resource being referred to.
  20274. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20275. maxLength: 63
  20276. minLength: 1
  20277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20278. type: string
  20279. required:
  20280. - name
  20281. type: object
  20282. required:
  20283. - serviceAccountRef
  20284. type: object
  20285. path:
  20286. default: jwt
  20287. description: |-
  20288. Path where the JWT authentication backend is mounted
  20289. in Vault, e.g: "jwt"
  20290. type: string
  20291. role:
  20292. description: |-
  20293. Role is a JWT role to authenticate using the JWT/OIDC Vault
  20294. authentication method
  20295. type: string
  20296. secretRef:
  20297. description: |-
  20298. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  20299. authenticate with Vault using the JWT/OIDC authentication method.
  20300. properties:
  20301. key:
  20302. description: |-
  20303. A key in the referenced Secret.
  20304. Some instances of this field may be defaulted, in others it may be required.
  20305. maxLength: 253
  20306. minLength: 1
  20307. pattern: ^[-._a-zA-Z0-9]+$
  20308. type: string
  20309. name:
  20310. description: The name of the Secret resource being referred to.
  20311. maxLength: 253
  20312. minLength: 1
  20313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20314. type: string
  20315. namespace:
  20316. description: |-
  20317. The namespace of the Secret resource being referred to.
  20318. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20319. maxLength: 63
  20320. minLength: 1
  20321. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20322. type: string
  20323. type: object
  20324. required:
  20325. - path
  20326. type: object
  20327. kubernetes:
  20328. description: |-
  20329. Kubernetes authenticates with Vault by passing the ServiceAccount
  20330. token stored in the named Secret resource to the Vault server.
  20331. properties:
  20332. mountPath:
  20333. default: kubernetes
  20334. description: |-
  20335. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  20336. "kubernetes"
  20337. type: string
  20338. role:
  20339. description: |-
  20340. A required field containing the Vault Role to assume. A Role binds a
  20341. Kubernetes ServiceAccount with a set of Vault policies.
  20342. type: string
  20343. secretRef:
  20344. description: |-
  20345. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20346. for authenticating with Vault. If a name is specified without a key,
  20347. `token` is the default. If one is not specified, the one bound to
  20348. the controller will be used.
  20349. properties:
  20350. key:
  20351. description: |-
  20352. A key in the referenced Secret.
  20353. Some instances of this field may be defaulted, in others it may be required.
  20354. maxLength: 253
  20355. minLength: 1
  20356. pattern: ^[-._a-zA-Z0-9]+$
  20357. type: string
  20358. name:
  20359. description: The name of the Secret resource being referred to.
  20360. maxLength: 253
  20361. minLength: 1
  20362. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20363. type: string
  20364. namespace:
  20365. description: |-
  20366. The namespace of the Secret resource being referred to.
  20367. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20368. maxLength: 63
  20369. minLength: 1
  20370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20371. type: string
  20372. type: object
  20373. serviceAccountRef:
  20374. description: |-
  20375. Optional service account field containing the name of a kubernetes ServiceAccount.
  20376. If the service account is specified, the service account secret token JWT will be used
  20377. for authenticating with Vault. If the service account selector is not supplied,
  20378. the secretRef will be used instead.
  20379. properties:
  20380. audiences:
  20381. description: |-
  20382. Audience specifies the `aud` claim for the service account token
  20383. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20384. then this audiences will be appended to the list
  20385. items:
  20386. type: string
  20387. type: array
  20388. name:
  20389. description: The name of the ServiceAccount resource being referred to.
  20390. maxLength: 253
  20391. minLength: 1
  20392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20393. type: string
  20394. namespace:
  20395. description: |-
  20396. Namespace of the resource being referred to.
  20397. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20398. maxLength: 63
  20399. minLength: 1
  20400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20401. type: string
  20402. required:
  20403. - name
  20404. type: object
  20405. required:
  20406. - mountPath
  20407. - role
  20408. type: object
  20409. ldap:
  20410. description: |-
  20411. Ldap authenticates with Vault by passing username/password pair using
  20412. the LDAP authentication method
  20413. properties:
  20414. path:
  20415. default: ldap
  20416. description: |-
  20417. Path where the LDAP authentication backend is mounted
  20418. in Vault, e.g: "ldap"
  20419. type: string
  20420. secretRef:
  20421. description: |-
  20422. SecretRef to a key in a Secret resource containing password for the LDAP
  20423. user used to authenticate with Vault using the LDAP authentication
  20424. method
  20425. properties:
  20426. key:
  20427. description: |-
  20428. A key in the referenced Secret.
  20429. Some instances of this field may be defaulted, in others it may be required.
  20430. maxLength: 253
  20431. minLength: 1
  20432. pattern: ^[-._a-zA-Z0-9]+$
  20433. type: string
  20434. name:
  20435. description: The name of the Secret resource being referred to.
  20436. maxLength: 253
  20437. minLength: 1
  20438. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20439. type: string
  20440. namespace:
  20441. description: |-
  20442. The namespace of the Secret resource being referred to.
  20443. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20444. maxLength: 63
  20445. minLength: 1
  20446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20447. type: string
  20448. type: object
  20449. username:
  20450. description: |-
  20451. Username is an LDAP username used to authenticate using the LDAP Vault
  20452. authentication method
  20453. type: string
  20454. required:
  20455. - path
  20456. - username
  20457. type: object
  20458. namespace:
  20459. description: |-
  20460. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  20461. Namespaces is a set of features within Vault Enterprise that allows
  20462. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20463. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20464. This will default to Vault.Namespace field if set, or empty otherwise
  20465. type: string
  20466. tokenSecretRef:
  20467. description: TokenSecretRef authenticates with Vault by presenting a token.
  20468. properties:
  20469. key:
  20470. description: |-
  20471. A key in the referenced Secret.
  20472. Some instances of this field may be defaulted, in others it may be required.
  20473. maxLength: 253
  20474. minLength: 1
  20475. pattern: ^[-._a-zA-Z0-9]+$
  20476. type: string
  20477. name:
  20478. description: The name of the Secret resource being referred to.
  20479. maxLength: 253
  20480. minLength: 1
  20481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20482. type: string
  20483. namespace:
  20484. description: |-
  20485. The namespace of the Secret resource being referred to.
  20486. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20487. maxLength: 63
  20488. minLength: 1
  20489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20490. type: string
  20491. type: object
  20492. userPass:
  20493. description: UserPass authenticates with Vault by passing username/password pair
  20494. properties:
  20495. path:
  20496. default: userpass
  20497. description: |-
  20498. Path where the UserPassword authentication backend is mounted
  20499. in Vault, e.g: "userpass"
  20500. type: string
  20501. secretRef:
  20502. description: |-
  20503. SecretRef to a key in a Secret resource containing password for the
  20504. user used to authenticate with Vault using the UserPass authentication
  20505. method
  20506. properties:
  20507. key:
  20508. description: |-
  20509. A key in the referenced Secret.
  20510. Some instances of this field may be defaulted, in others it may be required.
  20511. maxLength: 253
  20512. minLength: 1
  20513. pattern: ^[-._a-zA-Z0-9]+$
  20514. type: string
  20515. name:
  20516. description: The name of the Secret resource being referred to.
  20517. maxLength: 253
  20518. minLength: 1
  20519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20520. type: string
  20521. namespace:
  20522. description: |-
  20523. The namespace of the Secret resource being referred to.
  20524. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20525. maxLength: 63
  20526. minLength: 1
  20527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20528. type: string
  20529. type: object
  20530. username:
  20531. description: |-
  20532. Username is a username used to authenticate using the UserPass Vault
  20533. authentication method
  20534. type: string
  20535. required:
  20536. - path
  20537. - username
  20538. type: object
  20539. type: object
  20540. caBundle:
  20541. description: |-
  20542. PEM encoded CA bundle used to validate Vault server certificate. Only used
  20543. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20544. plain HTTP protocol connection. If not set the system root certificates
  20545. are used to validate the TLS connection.
  20546. format: byte
  20547. type: string
  20548. caProvider:
  20549. description: The provider for the CA bundle to use to validate Vault server certificate.
  20550. properties:
  20551. key:
  20552. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20553. maxLength: 253
  20554. minLength: 1
  20555. pattern: ^[-._a-zA-Z0-9]+$
  20556. type: string
  20557. name:
  20558. description: The name of the object located at the provider type.
  20559. maxLength: 253
  20560. minLength: 1
  20561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20562. type: string
  20563. namespace:
  20564. description: |-
  20565. The namespace the Provider type is in.
  20566. Can only be defined when used in a ClusterSecretStore.
  20567. maxLength: 63
  20568. minLength: 1
  20569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20570. type: string
  20571. type:
  20572. description: The type of provider to use such as "Secret", or "ConfigMap".
  20573. enum:
  20574. - Secret
  20575. - ConfigMap
  20576. type: string
  20577. required:
  20578. - name
  20579. - type
  20580. type: object
  20581. checkAndSet:
  20582. description: |-
  20583. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  20584. Only applies to Vault KV v2 stores. When enabled, write operations must include
  20585. the current version of the secret to prevent unintentional overwrites.
  20586. properties:
  20587. required:
  20588. description: |-
  20589. Required when true, all write operations must include a check-and-set parameter.
  20590. This helps prevent unintentional overwrites of secrets.
  20591. type: boolean
  20592. type: object
  20593. forwardInconsistent:
  20594. description: |-
  20595. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  20596. leader instead of simply retrying within a loop. This can increase performance if
  20597. the option is enabled serverside.
  20598. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  20599. type: boolean
  20600. headers:
  20601. additionalProperties:
  20602. type: string
  20603. description: Headers to be added in Vault request
  20604. type: object
  20605. namespace:
  20606. description: |-
  20607. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  20608. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20609. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20610. type: string
  20611. path:
  20612. description: |-
  20613. Path is the mount path of the Vault KV backend endpoint, e.g:
  20614. "secret". The v2 KV secret engine version specific "/data" path suffix
  20615. for fetching secrets from Vault is optional and will be appended
  20616. if not present in specified path.
  20617. type: string
  20618. readYourWrites:
  20619. description: |-
  20620. ReadYourWrites ensures isolated read-after-write semantics by
  20621. providing discovered cluster replication states in each request.
  20622. More information about eventual consistency in Vault can be found here
  20623. https://www.vaultproject.io/docs/enterprise/consistency
  20624. type: boolean
  20625. server:
  20626. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  20627. type: string
  20628. tls:
  20629. description: |-
  20630. The configuration used for client side related TLS communication, when the Vault server
  20631. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  20632. This parameter is ignored for plain HTTP protocol connection.
  20633. It's worth noting this configuration is different from the "TLS certificates auth method",
  20634. which is available under the `auth.cert` section.
  20635. properties:
  20636. certSecretRef:
  20637. description: |-
  20638. CertSecretRef is a certificate added to the transport layer
  20639. when communicating with the Vault server.
  20640. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  20641. properties:
  20642. key:
  20643. description: |-
  20644. A key in the referenced Secret.
  20645. Some instances of this field may be defaulted, in others it may be required.
  20646. maxLength: 253
  20647. minLength: 1
  20648. pattern: ^[-._a-zA-Z0-9]+$
  20649. type: string
  20650. name:
  20651. description: The name of the Secret resource being referred to.
  20652. maxLength: 253
  20653. minLength: 1
  20654. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20655. type: string
  20656. namespace:
  20657. description: |-
  20658. The namespace of the Secret resource being referred to.
  20659. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20660. maxLength: 63
  20661. minLength: 1
  20662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20663. type: string
  20664. type: object
  20665. keySecretRef:
  20666. description: |-
  20667. KeySecretRef to a key in a Secret resource containing client private key
  20668. added to the transport layer when communicating with the Vault server.
  20669. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  20670. properties:
  20671. key:
  20672. description: |-
  20673. A key in the referenced Secret.
  20674. Some instances of this field may be defaulted, in others it may be required.
  20675. maxLength: 253
  20676. minLength: 1
  20677. pattern: ^[-._a-zA-Z0-9]+$
  20678. type: string
  20679. name:
  20680. description: The name of the Secret resource being referred to.
  20681. maxLength: 253
  20682. minLength: 1
  20683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20684. type: string
  20685. namespace:
  20686. description: |-
  20687. The namespace of the Secret resource being referred to.
  20688. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20689. maxLength: 63
  20690. minLength: 1
  20691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20692. type: string
  20693. type: object
  20694. type: object
  20695. version:
  20696. default: v2
  20697. description: |-
  20698. Version is the Vault KV secret engine version. This can be either "v1" or
  20699. "v2". Version defaults to "v2".
  20700. enum:
  20701. - v1
  20702. - v2
  20703. type: string
  20704. required:
  20705. - server
  20706. type: object
  20707. volcengine:
  20708. description: Volcengine configures this store to sync secrets using the Volcengine provider
  20709. properties:
  20710. auth:
  20711. description: |-
  20712. Auth defines the authentication method to use.
  20713. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  20714. properties:
  20715. secretRef:
  20716. description: |-
  20717. SecretRef defines the static credentials to use for authentication.
  20718. If not set, IRSA is used.
  20719. properties:
  20720. accessKeyID:
  20721. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  20722. properties:
  20723. key:
  20724. description: |-
  20725. A key in the referenced Secret.
  20726. Some instances of this field may be defaulted, in others it may be required.
  20727. maxLength: 253
  20728. minLength: 1
  20729. pattern: ^[-._a-zA-Z0-9]+$
  20730. type: string
  20731. name:
  20732. description: The name of the Secret resource being referred to.
  20733. maxLength: 253
  20734. minLength: 1
  20735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20736. type: string
  20737. namespace:
  20738. description: |-
  20739. The namespace of the Secret resource being referred to.
  20740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20741. maxLength: 63
  20742. minLength: 1
  20743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20744. type: string
  20745. type: object
  20746. secretAccessKey:
  20747. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  20748. properties:
  20749. key:
  20750. description: |-
  20751. A key in the referenced Secret.
  20752. Some instances of this field may be defaulted, in others it may be required.
  20753. maxLength: 253
  20754. minLength: 1
  20755. pattern: ^[-._a-zA-Z0-9]+$
  20756. type: string
  20757. name:
  20758. description: The name of the Secret resource being referred to.
  20759. maxLength: 253
  20760. minLength: 1
  20761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20762. type: string
  20763. namespace:
  20764. description: |-
  20765. The namespace of the Secret resource being referred to.
  20766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20767. maxLength: 63
  20768. minLength: 1
  20769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20770. type: string
  20771. type: object
  20772. token:
  20773. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  20774. properties:
  20775. key:
  20776. description: |-
  20777. A key in the referenced Secret.
  20778. Some instances of this field may be defaulted, in others it may be required.
  20779. maxLength: 253
  20780. minLength: 1
  20781. pattern: ^[-._a-zA-Z0-9]+$
  20782. type: string
  20783. name:
  20784. description: The name of the Secret resource being referred to.
  20785. maxLength: 253
  20786. minLength: 1
  20787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20788. type: string
  20789. namespace:
  20790. description: |-
  20791. The namespace of the Secret resource being referred to.
  20792. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20793. maxLength: 63
  20794. minLength: 1
  20795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20796. type: string
  20797. type: object
  20798. required:
  20799. - accessKeyID
  20800. - secretAccessKey
  20801. type: object
  20802. type: object
  20803. region:
  20804. description: Region specifies the Volcengine region to connect to.
  20805. type: string
  20806. required:
  20807. - region
  20808. type: object
  20809. webhook:
  20810. description: Webhook configures this store to sync secrets using a generic templated webhook
  20811. properties:
  20812. auth:
  20813. description: Auth specifies a authorization protocol. Only one protocol may be set.
  20814. maxProperties: 1
  20815. minProperties: 1
  20816. properties:
  20817. ntlm:
  20818. description: NTLMProtocol configures the store to use NTLM for auth
  20819. properties:
  20820. passwordSecret:
  20821. description: |-
  20822. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20823. In some instances, `key` is a required field.
  20824. properties:
  20825. key:
  20826. description: |-
  20827. A key in the referenced Secret.
  20828. Some instances of this field may be defaulted, in others it may be required.
  20829. maxLength: 253
  20830. minLength: 1
  20831. pattern: ^[-._a-zA-Z0-9]+$
  20832. type: string
  20833. name:
  20834. description: The name of the Secret resource being referred to.
  20835. maxLength: 253
  20836. minLength: 1
  20837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20838. type: string
  20839. namespace:
  20840. description: |-
  20841. The namespace of the Secret resource being referred to.
  20842. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20843. maxLength: 63
  20844. minLength: 1
  20845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20846. type: string
  20847. type: object
  20848. usernameSecret:
  20849. description: |-
  20850. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20851. In some instances, `key` is a required field.
  20852. properties:
  20853. key:
  20854. description: |-
  20855. A key in the referenced Secret.
  20856. Some instances of this field may be defaulted, in others it may be required.
  20857. maxLength: 253
  20858. minLength: 1
  20859. pattern: ^[-._a-zA-Z0-9]+$
  20860. type: string
  20861. name:
  20862. description: The name of the Secret resource being referred to.
  20863. maxLength: 253
  20864. minLength: 1
  20865. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20866. type: string
  20867. namespace:
  20868. description: |-
  20869. The namespace of the Secret resource being referred to.
  20870. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20871. maxLength: 63
  20872. minLength: 1
  20873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20874. type: string
  20875. type: object
  20876. required:
  20877. - passwordSecret
  20878. - usernameSecret
  20879. type: object
  20880. type: object
  20881. body:
  20882. description: Body
  20883. type: string
  20884. caBundle:
  20885. description: |-
  20886. PEM encoded CA bundle used to validate webhook server certificate. Only used
  20887. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20888. plain HTTP protocol connection. If not set the system root certificates
  20889. are used to validate the TLS connection.
  20890. format: byte
  20891. type: string
  20892. caProvider:
  20893. description: The provider for the CA bundle to use to validate webhook server certificate.
  20894. properties:
  20895. key:
  20896. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20897. maxLength: 253
  20898. minLength: 1
  20899. pattern: ^[-._a-zA-Z0-9]+$
  20900. type: string
  20901. name:
  20902. description: The name of the object located at the provider type.
  20903. maxLength: 253
  20904. minLength: 1
  20905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20906. type: string
  20907. namespace:
  20908. description: The namespace the Provider type is in.
  20909. maxLength: 63
  20910. minLength: 1
  20911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20912. type: string
  20913. type:
  20914. description: The type of provider to use such as "Secret", or "ConfigMap".
  20915. enum:
  20916. - Secret
  20917. - ConfigMap
  20918. type: string
  20919. required:
  20920. - name
  20921. - type
  20922. type: object
  20923. headers:
  20924. additionalProperties:
  20925. type: string
  20926. description: Headers
  20927. type: object
  20928. method:
  20929. description: Webhook Method
  20930. type: string
  20931. result:
  20932. description: Result formatting
  20933. properties:
  20934. jsonPath:
  20935. description: Json path of return value
  20936. type: string
  20937. type: object
  20938. secrets:
  20939. description: |-
  20940. Secrets to fill in templates
  20941. These secrets will be passed to the templating function as key value pairs under the given name
  20942. items:
  20943. description: WebhookSecret defines a secret that will be passed to the webhook request.
  20944. properties:
  20945. name:
  20946. description: Name of this secret in templates
  20947. type: string
  20948. secretRef:
  20949. description: Secret ref to fill in credentials
  20950. properties:
  20951. key:
  20952. description: |-
  20953. A key in the referenced Secret.
  20954. Some instances of this field may be defaulted, in others it may be required.
  20955. maxLength: 253
  20956. minLength: 1
  20957. pattern: ^[-._a-zA-Z0-9]+$
  20958. type: string
  20959. name:
  20960. description: The name of the Secret resource being referred to.
  20961. maxLength: 253
  20962. minLength: 1
  20963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20964. type: string
  20965. namespace:
  20966. description: |-
  20967. The namespace of the Secret resource being referred to.
  20968. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20969. maxLength: 63
  20970. minLength: 1
  20971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20972. type: string
  20973. type: object
  20974. required:
  20975. - name
  20976. - secretRef
  20977. type: object
  20978. type: array
  20979. timeout:
  20980. description: Timeout
  20981. type: string
  20982. url:
  20983. description: Webhook url to call
  20984. type: string
  20985. required:
  20986. - url
  20987. type: object
  20988. yandexcertificatemanager:
  20989. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  20990. properties:
  20991. apiEndpoint:
  20992. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20993. type: string
  20994. auth:
  20995. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20996. properties:
  20997. authorizedKeySecretRef:
  20998. description: The authorized key used for authentication
  20999. properties:
  21000. key:
  21001. description: |-
  21002. A key in the referenced Secret.
  21003. Some instances of this field may be defaulted, in others it may be required.
  21004. maxLength: 253
  21005. minLength: 1
  21006. pattern: ^[-._a-zA-Z0-9]+$
  21007. type: string
  21008. name:
  21009. description: The name of the Secret resource being referred to.
  21010. maxLength: 253
  21011. minLength: 1
  21012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21013. type: string
  21014. namespace:
  21015. description: |-
  21016. The namespace of the Secret resource being referred to.
  21017. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21018. maxLength: 63
  21019. minLength: 1
  21020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21021. type: string
  21022. type: object
  21023. type: object
  21024. caProvider:
  21025. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  21026. properties:
  21027. certSecretRef:
  21028. description: |-
  21029. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21030. In some instances, `key` is a required field.
  21031. properties:
  21032. key:
  21033. description: |-
  21034. A key in the referenced Secret.
  21035. Some instances of this field may be defaulted, in others it may be required.
  21036. maxLength: 253
  21037. minLength: 1
  21038. pattern: ^[-._a-zA-Z0-9]+$
  21039. type: string
  21040. name:
  21041. description: The name of the Secret resource being referred to.
  21042. maxLength: 253
  21043. minLength: 1
  21044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21045. type: string
  21046. namespace:
  21047. description: |-
  21048. The namespace of the Secret resource being referred to.
  21049. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21050. maxLength: 63
  21051. minLength: 1
  21052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21053. type: string
  21054. type: object
  21055. type: object
  21056. fetching:
  21057. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  21058. maxProperties: 1
  21059. minProperties: 1
  21060. properties:
  21061. byID:
  21062. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  21063. type: object
  21064. byName:
  21065. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  21066. properties:
  21067. folderID:
  21068. description: The folder to fetch secrets from
  21069. type: string
  21070. required:
  21071. - folderID
  21072. type: object
  21073. type: object
  21074. required:
  21075. - auth
  21076. type: object
  21077. yandexlockbox:
  21078. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  21079. properties:
  21080. apiEndpoint:
  21081. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  21082. type: string
  21083. auth:
  21084. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  21085. properties:
  21086. authorizedKeySecretRef:
  21087. description: The authorized key used for authentication
  21088. properties:
  21089. key:
  21090. description: |-
  21091. A key in the referenced Secret.
  21092. Some instances of this field may be defaulted, in others it may be required.
  21093. maxLength: 253
  21094. minLength: 1
  21095. pattern: ^[-._a-zA-Z0-9]+$
  21096. type: string
  21097. name:
  21098. description: The name of the Secret resource being referred to.
  21099. maxLength: 253
  21100. minLength: 1
  21101. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21102. type: string
  21103. namespace:
  21104. description: |-
  21105. The namespace of the Secret resource being referred to.
  21106. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21107. maxLength: 63
  21108. minLength: 1
  21109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21110. type: string
  21111. type: object
  21112. type: object
  21113. caProvider:
  21114. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  21115. properties:
  21116. certSecretRef:
  21117. description: |-
  21118. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21119. In some instances, `key` is a required field.
  21120. properties:
  21121. key:
  21122. description: |-
  21123. A key in the referenced Secret.
  21124. Some instances of this field may be defaulted, in others it may be required.
  21125. maxLength: 253
  21126. minLength: 1
  21127. pattern: ^[-._a-zA-Z0-9]+$
  21128. type: string
  21129. name:
  21130. description: The name of the Secret resource being referred to.
  21131. maxLength: 253
  21132. minLength: 1
  21133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21134. type: string
  21135. namespace:
  21136. description: |-
  21137. The namespace of the Secret resource being referred to.
  21138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21139. maxLength: 63
  21140. minLength: 1
  21141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21142. type: string
  21143. type: object
  21144. type: object
  21145. fetching:
  21146. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  21147. maxProperties: 1
  21148. minProperties: 1
  21149. properties:
  21150. byID:
  21151. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  21152. type: object
  21153. byName:
  21154. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  21155. properties:
  21156. folderID:
  21157. description: The folder to fetch secrets from
  21158. type: string
  21159. required:
  21160. - folderID
  21161. type: object
  21162. type: object
  21163. required:
  21164. - auth
  21165. type: object
  21166. type: object
  21167. refreshInterval:
  21168. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  21169. type: integer
  21170. retrySettings:
  21171. description: Used to configure HTTP retries on failures.
  21172. properties:
  21173. maxRetries:
  21174. format: int32
  21175. type: integer
  21176. retryInterval:
  21177. type: string
  21178. type: object
  21179. required:
  21180. - provider
  21181. type: object
  21182. status:
  21183. description: SecretStoreStatus defines the observed state of the SecretStore.
  21184. properties:
  21185. capabilities:
  21186. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  21187. type: string
  21188. conditions:
  21189. items:
  21190. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  21191. properties:
  21192. lastTransitionTime:
  21193. format: date-time
  21194. type: string
  21195. message:
  21196. type: string
  21197. reason:
  21198. type: string
  21199. status:
  21200. type: string
  21201. type:
  21202. description: SecretStoreConditionType represents the condition of the SecretStore.
  21203. type: string
  21204. required:
  21205. - status
  21206. - type
  21207. type: object
  21208. type: array
  21209. type: object
  21210. type: object
  21211. served: true
  21212. storage: true
  21213. subresources:
  21214. status: {}
  21215. - additionalPrinterColumns:
  21216. - jsonPath: .metadata.creationTimestamp
  21217. name: AGE
  21218. type: date
  21219. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  21220. name: Status
  21221. type: string
  21222. - jsonPath: .status.capabilities
  21223. name: Capabilities
  21224. type: string
  21225. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  21226. name: Ready
  21227. type: string
  21228. deprecated: true
  21229. name: v1beta1
  21230. schema:
  21231. openAPIV3Schema:
  21232. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  21233. properties:
  21234. apiVersion:
  21235. description: |-
  21236. APIVersion defines the versioned schema of this representation of an object.
  21237. Servers should convert recognized schemas to the latest internal value, and
  21238. may reject unrecognized values.
  21239. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  21240. type: string
  21241. kind:
  21242. description: |-
  21243. Kind is a string value representing the REST resource this object represents.
  21244. Servers may infer this from the endpoint the client submits requests to.
  21245. Cannot be updated.
  21246. In CamelCase.
  21247. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  21248. type: string
  21249. metadata:
  21250. type: object
  21251. spec:
  21252. description: SecretStoreSpec defines the desired state of SecretStore.
  21253. properties:
  21254. conditions:
  21255. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  21256. items:
  21257. description: |-
  21258. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  21259. for a ClusterSecretStore instance.
  21260. properties:
  21261. namespaceRegexes:
  21262. description: Choose namespaces by using regex matching
  21263. items:
  21264. type: string
  21265. type: array
  21266. namespaceSelector:
  21267. description: Choose namespace using a labelSelector
  21268. properties:
  21269. matchExpressions:
  21270. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  21271. items:
  21272. description: |-
  21273. A label selector requirement is a selector that contains values, a key, and an operator that
  21274. relates the key and values.
  21275. properties:
  21276. key:
  21277. description: key is the label key that the selector applies to.
  21278. type: string
  21279. operator:
  21280. description: |-
  21281. operator represents a key's relationship to a set of values.
  21282. Valid operators are In, NotIn, Exists and DoesNotExist.
  21283. type: string
  21284. values:
  21285. description: |-
  21286. values is an array of string values. If the operator is In or NotIn,
  21287. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  21288. the values array must be empty. This array is replaced during a strategic
  21289. merge patch.
  21290. items:
  21291. type: string
  21292. type: array
  21293. x-kubernetes-list-type: atomic
  21294. required:
  21295. - key
  21296. - operator
  21297. type: object
  21298. type: array
  21299. x-kubernetes-list-type: atomic
  21300. matchLabels:
  21301. additionalProperties:
  21302. type: string
  21303. description: |-
  21304. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  21305. map is equivalent to an element of matchExpressions, whose key field is "key", the
  21306. operator is "In", and the values array contains only "value". The requirements are ANDed.
  21307. type: object
  21308. type: object
  21309. x-kubernetes-map-type: atomic
  21310. namespaces:
  21311. description: Choose namespaces by name
  21312. items:
  21313. maxLength: 63
  21314. minLength: 1
  21315. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21316. type: string
  21317. type: array
  21318. type: object
  21319. type: array
  21320. controller:
  21321. description: |-
  21322. Used to select the correct ESO controller (think: ingress.ingressClassName)
  21323. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  21324. type: string
  21325. provider:
  21326. description: Used to configure the provider. Only one provider may be set
  21327. maxProperties: 1
  21328. minProperties: 1
  21329. properties:
  21330. akeyless:
  21331. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  21332. properties:
  21333. akeylessGWApiURL:
  21334. description: Akeyless GW API Url from which the secrets to be fetched from.
  21335. type: string
  21336. authSecretRef:
  21337. description: Auth configures how the operator authenticates with Akeyless.
  21338. properties:
  21339. kubernetesAuth:
  21340. description: |-
  21341. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  21342. token stored in the named Secret resource.
  21343. properties:
  21344. accessID:
  21345. description: the Akeyless Kubernetes auth-method access-id
  21346. type: string
  21347. k8sConfName:
  21348. description: Kubernetes-auth configuration name in Akeyless-Gateway
  21349. type: string
  21350. secretRef:
  21351. description: |-
  21352. Optional secret field containing a Kubernetes ServiceAccount JWT used
  21353. for authenticating with Akeyless. If a name is specified without a key,
  21354. `token` is the default. If one is not specified, the one bound to
  21355. the controller will be used.
  21356. properties:
  21357. key:
  21358. description: |-
  21359. A key in the referenced Secret.
  21360. Some instances of this field may be defaulted, in others it may be required.
  21361. maxLength: 253
  21362. minLength: 1
  21363. pattern: ^[-._a-zA-Z0-9]+$
  21364. type: string
  21365. name:
  21366. description: The name of the Secret resource being referred to.
  21367. maxLength: 253
  21368. minLength: 1
  21369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21370. type: string
  21371. namespace:
  21372. description: |-
  21373. The namespace of the Secret resource being referred to.
  21374. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21375. maxLength: 63
  21376. minLength: 1
  21377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21378. type: string
  21379. type: object
  21380. serviceAccountRef:
  21381. description: |-
  21382. Optional service account field containing the name of a kubernetes ServiceAccount.
  21383. If the service account is specified, the service account secret token JWT will be used
  21384. for authenticating with Akeyless. If the service account selector is not supplied,
  21385. the secretRef will be used instead.
  21386. properties:
  21387. audiences:
  21388. description: |-
  21389. Audience specifies the `aud` claim for the service account token
  21390. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21391. then this audiences will be appended to the list
  21392. items:
  21393. type: string
  21394. type: array
  21395. name:
  21396. description: The name of the ServiceAccount resource being referred to.
  21397. maxLength: 253
  21398. minLength: 1
  21399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21400. type: string
  21401. namespace:
  21402. description: |-
  21403. Namespace of the resource being referred to.
  21404. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21405. maxLength: 63
  21406. minLength: 1
  21407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21408. type: string
  21409. required:
  21410. - name
  21411. type: object
  21412. required:
  21413. - accessID
  21414. - k8sConfName
  21415. type: object
  21416. secretRef:
  21417. description: |-
  21418. Reference to a Secret that contains the details
  21419. to authenticate with Akeyless.
  21420. properties:
  21421. accessID:
  21422. description: The SecretAccessID is used for authentication
  21423. properties:
  21424. key:
  21425. description: |-
  21426. A key in the referenced Secret.
  21427. Some instances of this field may be defaulted, in others it may be required.
  21428. maxLength: 253
  21429. minLength: 1
  21430. pattern: ^[-._a-zA-Z0-9]+$
  21431. type: string
  21432. name:
  21433. description: The name of the Secret resource being referred to.
  21434. maxLength: 253
  21435. minLength: 1
  21436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21437. type: string
  21438. namespace:
  21439. description: |-
  21440. The namespace of the Secret resource being referred to.
  21441. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21442. maxLength: 63
  21443. minLength: 1
  21444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21445. type: string
  21446. type: object
  21447. accessType:
  21448. description: |-
  21449. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21450. In some instances, `key` is a required field.
  21451. properties:
  21452. key:
  21453. description: |-
  21454. A key in the referenced Secret.
  21455. Some instances of this field may be defaulted, in others it may be required.
  21456. maxLength: 253
  21457. minLength: 1
  21458. pattern: ^[-._a-zA-Z0-9]+$
  21459. type: string
  21460. name:
  21461. description: The name of the Secret resource being referred to.
  21462. maxLength: 253
  21463. minLength: 1
  21464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21465. type: string
  21466. namespace:
  21467. description: |-
  21468. The namespace of the Secret resource being referred to.
  21469. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21470. maxLength: 63
  21471. minLength: 1
  21472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21473. type: string
  21474. type: object
  21475. accessTypeParam:
  21476. description: |-
  21477. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21478. In some instances, `key` is a required field.
  21479. properties:
  21480. key:
  21481. description: |-
  21482. A key in the referenced Secret.
  21483. Some instances of this field may be defaulted, in others it may be required.
  21484. maxLength: 253
  21485. minLength: 1
  21486. pattern: ^[-._a-zA-Z0-9]+$
  21487. type: string
  21488. name:
  21489. description: The name of the Secret resource being referred to.
  21490. maxLength: 253
  21491. minLength: 1
  21492. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21493. type: string
  21494. namespace:
  21495. description: |-
  21496. The namespace of the Secret resource being referred to.
  21497. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21498. maxLength: 63
  21499. minLength: 1
  21500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21501. type: string
  21502. type: object
  21503. type: object
  21504. type: object
  21505. caBundle:
  21506. description: |-
  21507. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  21508. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  21509. are used to validate the TLS connection.
  21510. format: byte
  21511. type: string
  21512. caProvider:
  21513. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  21514. properties:
  21515. key:
  21516. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21517. maxLength: 253
  21518. minLength: 1
  21519. pattern: ^[-._a-zA-Z0-9]+$
  21520. type: string
  21521. name:
  21522. description: The name of the object located at the provider type.
  21523. maxLength: 253
  21524. minLength: 1
  21525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21526. type: string
  21527. namespace:
  21528. description: |-
  21529. The namespace the Provider type is in.
  21530. Can only be defined when used in a ClusterSecretStore.
  21531. maxLength: 63
  21532. minLength: 1
  21533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21534. type: string
  21535. type:
  21536. description: The type of provider to use such as "Secret", or "ConfigMap".
  21537. enum:
  21538. - Secret
  21539. - ConfigMap
  21540. type: string
  21541. required:
  21542. - name
  21543. - type
  21544. type: object
  21545. required:
  21546. - akeylessGWApiURL
  21547. - authSecretRef
  21548. type: object
  21549. alibaba:
  21550. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  21551. properties:
  21552. auth:
  21553. description: AlibabaAuth contains a secretRef for credentials.
  21554. properties:
  21555. rrsa:
  21556. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  21557. properties:
  21558. oidcProviderArn:
  21559. type: string
  21560. oidcTokenFilePath:
  21561. type: string
  21562. roleArn:
  21563. type: string
  21564. sessionName:
  21565. type: string
  21566. required:
  21567. - oidcProviderArn
  21568. - oidcTokenFilePath
  21569. - roleArn
  21570. - sessionName
  21571. type: object
  21572. secretRef:
  21573. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  21574. properties:
  21575. accessKeyIDSecretRef:
  21576. description: The AccessKeyID is used for authentication
  21577. properties:
  21578. key:
  21579. description: |-
  21580. A key in the referenced Secret.
  21581. Some instances of this field may be defaulted, in others it may be required.
  21582. maxLength: 253
  21583. minLength: 1
  21584. pattern: ^[-._a-zA-Z0-9]+$
  21585. type: string
  21586. name:
  21587. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  21601. accessKeySecretSecretRef:
  21602. description: The AccessKeySecret is used for authentication
  21603. properties:
  21604. key:
  21605. description: |-
  21606. A key in the referenced Secret.
  21607. Some instances of this field may be defaulted, in others it may be required.
  21608. maxLength: 253
  21609. minLength: 1
  21610. pattern: ^[-._a-zA-Z0-9]+$
  21611. type: string
  21612. name:
  21613. description: The name of the Secret resource being referred to.
  21614. maxLength: 253
  21615. minLength: 1
  21616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21617. type: string
  21618. namespace:
  21619. description: |-
  21620. The namespace of the Secret resource being referred to.
  21621. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21622. maxLength: 63
  21623. minLength: 1
  21624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21625. type: string
  21626. type: object
  21627. required:
  21628. - accessKeyIDSecretRef
  21629. - accessKeySecretSecretRef
  21630. type: object
  21631. type: object
  21632. regionID:
  21633. description: Alibaba Region to be used for the provider
  21634. type: string
  21635. required:
  21636. - auth
  21637. - regionID
  21638. type: object
  21639. aws:
  21640. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  21641. properties:
  21642. additionalRoles:
  21643. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  21644. items:
  21645. type: string
  21646. type: array
  21647. auth:
  21648. description: |-
  21649. Auth defines the information necessary to authenticate against AWS
  21650. if not set aws sdk will infer credentials from your environment
  21651. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  21652. properties:
  21653. jwt:
  21654. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  21655. properties:
  21656. serviceAccountRef:
  21657. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21658. properties:
  21659. audiences:
  21660. description: |-
  21661. Audience specifies the `aud` claim for the service account token
  21662. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21663. then this audiences will be appended to the list
  21664. items:
  21665. type: string
  21666. type: array
  21667. name:
  21668. description: The name of the ServiceAccount resource being referred to.
  21669. maxLength: 253
  21670. minLength: 1
  21671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21672. type: string
  21673. namespace:
  21674. description: |-
  21675. Namespace of the resource being referred to.
  21676. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21677. maxLength: 63
  21678. minLength: 1
  21679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21680. type: string
  21681. required:
  21682. - name
  21683. type: object
  21684. type: object
  21685. secretRef:
  21686. description: |-
  21687. AWSAuthSecretRef holds secret references for AWS credentials
  21688. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  21689. properties:
  21690. accessKeyIDSecretRef:
  21691. description: The AccessKeyID is used for authentication
  21692. properties:
  21693. key:
  21694. description: |-
  21695. A key in the referenced Secret.
  21696. Some instances of this field may be defaulted, in others it may be required.
  21697. maxLength: 253
  21698. minLength: 1
  21699. pattern: ^[-._a-zA-Z0-9]+$
  21700. type: string
  21701. name:
  21702. description: The name of the Secret resource being referred to.
  21703. maxLength: 253
  21704. minLength: 1
  21705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21706. type: string
  21707. namespace:
  21708. description: |-
  21709. The namespace of the Secret resource being referred to.
  21710. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21711. maxLength: 63
  21712. minLength: 1
  21713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21714. type: string
  21715. type: object
  21716. secretAccessKeySecretRef:
  21717. description: The SecretAccessKey is used for authentication
  21718. properties:
  21719. key:
  21720. description: |-
  21721. A key in the referenced Secret.
  21722. Some instances of this field may be defaulted, in others it may be required.
  21723. maxLength: 253
  21724. minLength: 1
  21725. pattern: ^[-._a-zA-Z0-9]+$
  21726. type: string
  21727. name:
  21728. description: The name of the Secret resource being referred to.
  21729. maxLength: 253
  21730. minLength: 1
  21731. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21732. type: string
  21733. namespace:
  21734. description: |-
  21735. The namespace of the Secret resource being referred to.
  21736. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21737. maxLength: 63
  21738. minLength: 1
  21739. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21740. type: string
  21741. type: object
  21742. sessionTokenSecretRef:
  21743. description: |-
  21744. The SessionToken used for authentication
  21745. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  21746. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  21747. properties:
  21748. key:
  21749. description: |-
  21750. A key in the referenced Secret.
  21751. Some instances of this field may be defaulted, in others it may be required.
  21752. maxLength: 253
  21753. minLength: 1
  21754. pattern: ^[-._a-zA-Z0-9]+$
  21755. type: string
  21756. name:
  21757. description: The name of the Secret resource being referred to.
  21758. maxLength: 253
  21759. minLength: 1
  21760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21761. type: string
  21762. namespace:
  21763. description: |-
  21764. The namespace of the Secret resource being referred to.
  21765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21766. maxLength: 63
  21767. minLength: 1
  21768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21769. type: string
  21770. type: object
  21771. type: object
  21772. type: object
  21773. externalID:
  21774. description: AWS External ID set on assumed IAM roles
  21775. type: string
  21776. prefix:
  21777. description: Prefix adds a prefix to all retrieved values.
  21778. type: string
  21779. region:
  21780. description: AWS Region to be used for the provider
  21781. type: string
  21782. role:
  21783. description: Role is a Role ARN which the provider will assume
  21784. type: string
  21785. secretsManager:
  21786. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  21787. properties:
  21788. forceDeleteWithoutRecovery:
  21789. description: |-
  21790. Specifies whether to delete the secret without any recovery window. You
  21791. can't use both this parameter and RecoveryWindowInDays in the same call.
  21792. If you don't use either, then by default Secrets Manager uses a 30 day
  21793. recovery window.
  21794. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  21795. type: boolean
  21796. recoveryWindowInDays:
  21797. description: |-
  21798. The number of days from 7 to 30 that Secrets Manager waits before
  21799. permanently deleting the secret. You can't use both this parameter and
  21800. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  21801. then by default Secrets Manager uses a 30 day recovery window.
  21802. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  21803. format: int64
  21804. type: integer
  21805. type: object
  21806. service:
  21807. description: Service defines which service should be used to fetch the secrets
  21808. enum:
  21809. - SecretsManager
  21810. - ParameterStore
  21811. type: string
  21812. sessionTags:
  21813. description: AWS STS assume role session tags
  21814. items:
  21815. description: Tag defines a tag key and value for AWS resources.
  21816. properties:
  21817. key:
  21818. type: string
  21819. value:
  21820. type: string
  21821. required:
  21822. - key
  21823. - value
  21824. type: object
  21825. type: array
  21826. transitiveTagKeys:
  21827. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  21828. items:
  21829. type: string
  21830. type: array
  21831. required:
  21832. - region
  21833. - service
  21834. type: object
  21835. azurekv:
  21836. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  21837. properties:
  21838. authSecretRef:
  21839. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21840. properties:
  21841. clientCertificate:
  21842. description: The Azure ClientCertificate of the service principle used for authentication.
  21843. properties:
  21844. key:
  21845. description: |-
  21846. A key in the referenced Secret.
  21847. Some instances of this field may be defaulted, in others it may be required.
  21848. maxLength: 253
  21849. minLength: 1
  21850. pattern: ^[-._a-zA-Z0-9]+$
  21851. type: string
  21852. name:
  21853. description: The name of the Secret resource being referred to.
  21854. maxLength: 253
  21855. minLength: 1
  21856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21857. type: string
  21858. namespace:
  21859. description: |-
  21860. The namespace of the Secret resource being referred to.
  21861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21862. maxLength: 63
  21863. minLength: 1
  21864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21865. type: string
  21866. type: object
  21867. clientId:
  21868. description: The Azure clientId of the service principle or managed identity used for authentication.
  21869. properties:
  21870. key:
  21871. description: |-
  21872. A key in the referenced Secret.
  21873. Some instances of this field may be defaulted, in others it may be required.
  21874. maxLength: 253
  21875. minLength: 1
  21876. pattern: ^[-._a-zA-Z0-9]+$
  21877. type: string
  21878. name:
  21879. description: The name of the Secret resource being referred to.
  21880. maxLength: 253
  21881. minLength: 1
  21882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21883. type: string
  21884. namespace:
  21885. description: |-
  21886. The namespace of the Secret resource being referred to.
  21887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21888. maxLength: 63
  21889. minLength: 1
  21890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21891. type: string
  21892. type: object
  21893. clientSecret:
  21894. description: The Azure ClientSecret of the service principle used for authentication.
  21895. properties:
  21896. key:
  21897. description: |-
  21898. A key in the referenced Secret.
  21899. Some instances of this field may be defaulted, in others it may be required.
  21900. maxLength: 253
  21901. minLength: 1
  21902. pattern: ^[-._a-zA-Z0-9]+$
  21903. type: string
  21904. name:
  21905. description: The name of the Secret resource being referred to.
  21906. maxLength: 253
  21907. minLength: 1
  21908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21909. type: string
  21910. namespace:
  21911. description: |-
  21912. The namespace of the Secret resource being referred to.
  21913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21914. maxLength: 63
  21915. minLength: 1
  21916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21917. type: string
  21918. type: object
  21919. tenantId:
  21920. description: The Azure tenantId of the managed identity used for authentication.
  21921. properties:
  21922. key:
  21923. description: |-
  21924. A key in the referenced Secret.
  21925. Some instances of this field may be defaulted, in others it may be required.
  21926. maxLength: 253
  21927. minLength: 1
  21928. pattern: ^[-._a-zA-Z0-9]+$
  21929. type: string
  21930. name:
  21931. description: The name of the Secret resource being referred to.
  21932. maxLength: 253
  21933. minLength: 1
  21934. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21935. type: string
  21936. namespace:
  21937. description: |-
  21938. The namespace of the Secret resource being referred to.
  21939. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21940. maxLength: 63
  21941. minLength: 1
  21942. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21943. type: string
  21944. type: object
  21945. type: object
  21946. authType:
  21947. default: ServicePrincipal
  21948. description: |-
  21949. Auth type defines how to authenticate to the keyvault service.
  21950. Valid values are:
  21951. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  21952. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  21953. enum:
  21954. - ServicePrincipal
  21955. - ManagedIdentity
  21956. - WorkloadIdentity
  21957. type: string
  21958. environmentType:
  21959. default: PublicCloud
  21960. description: |-
  21961. EnvironmentType specifies the Azure cloud environment endpoints to use for
  21962. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  21963. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  21964. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  21965. enum:
  21966. - PublicCloud
  21967. - USGovernmentCloud
  21968. - ChinaCloud
  21969. - GermanCloud
  21970. type: string
  21971. identityId:
  21972. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  21973. type: string
  21974. serviceAccountRef:
  21975. description: |-
  21976. ServiceAccountRef specified the service account
  21977. that should be used when authenticating with WorkloadIdentity.
  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. tenantId:
  22005. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  22006. type: string
  22007. vaultUrl:
  22008. description: Vault Url from which the secrets to be fetched from.
  22009. type: string
  22010. required:
  22011. - vaultUrl
  22012. type: object
  22013. beyondtrust:
  22014. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  22015. properties:
  22016. auth:
  22017. description: Auth configures how the operator authenticates with Beyondtrust.
  22018. properties:
  22019. apiKey:
  22020. description: APIKey If not provided then ClientID/ClientSecret become required.
  22021. properties:
  22022. secretRef:
  22023. description: SecretRef references a key in a secret that will be used as value.
  22024. properties:
  22025. key:
  22026. description: |-
  22027. A key in the referenced Secret.
  22028. Some instances of this field may be defaulted, in others it may be required.
  22029. maxLength: 253
  22030. minLength: 1
  22031. pattern: ^[-._a-zA-Z0-9]+$
  22032. type: string
  22033. name:
  22034. description: The name of the Secret resource being referred to.
  22035. maxLength: 253
  22036. minLength: 1
  22037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22038. type: string
  22039. namespace:
  22040. description: |-
  22041. The namespace of the Secret resource being referred to.
  22042. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22043. maxLength: 63
  22044. minLength: 1
  22045. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22046. type: string
  22047. type: object
  22048. value:
  22049. description: Value can be specified directly to set a value without using a secret.
  22050. type: string
  22051. type: object
  22052. certificate:
  22053. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  22054. properties:
  22055. secretRef:
  22056. description: SecretRef references a key in a secret that will be used as value.
  22057. properties:
  22058. key:
  22059. description: |-
  22060. A key in the referenced Secret.
  22061. Some instances of this field may be defaulted, in others it may be required.
  22062. maxLength: 253
  22063. minLength: 1
  22064. pattern: ^[-._a-zA-Z0-9]+$
  22065. type: string
  22066. name:
  22067. description: The name of the Secret resource being referred to.
  22068. maxLength: 253
  22069. minLength: 1
  22070. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22071. type: string
  22072. namespace:
  22073. description: |-
  22074. The namespace of the Secret resource being referred to.
  22075. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22076. maxLength: 63
  22077. minLength: 1
  22078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22079. type: string
  22080. type: object
  22081. value:
  22082. description: Value can be specified directly to set a value without using a secret.
  22083. type: string
  22084. type: object
  22085. certificateKey:
  22086. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  22087. properties:
  22088. secretRef:
  22089. description: SecretRef references a key in a secret that will be used as value.
  22090. properties:
  22091. key:
  22092. description: |-
  22093. A key in the referenced Secret.
  22094. Some instances of this field may be defaulted, in others it may be required.
  22095. maxLength: 253
  22096. minLength: 1
  22097. pattern: ^[-._a-zA-Z0-9]+$
  22098. type: string
  22099. name:
  22100. description: The name of the Secret resource being referred to.
  22101. maxLength: 253
  22102. minLength: 1
  22103. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22104. type: string
  22105. namespace:
  22106. description: |-
  22107. The namespace of the Secret resource being referred to.
  22108. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22109. maxLength: 63
  22110. minLength: 1
  22111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22112. type: string
  22113. type: object
  22114. value:
  22115. description: Value can be specified directly to set a value without using a secret.
  22116. type: string
  22117. type: object
  22118. clientId:
  22119. description: ClientID is the API OAuth Client ID.
  22120. properties:
  22121. secretRef:
  22122. description: SecretRef references a key in a secret that will be used as value.
  22123. properties:
  22124. key:
  22125. description: |-
  22126. A key in the referenced Secret.
  22127. Some instances of this field may be defaulted, in others it may be required.
  22128. maxLength: 253
  22129. minLength: 1
  22130. pattern: ^[-._a-zA-Z0-9]+$
  22131. type: string
  22132. name:
  22133. description: The name of the Secret resource being referred to.
  22134. maxLength: 253
  22135. minLength: 1
  22136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22137. type: string
  22138. namespace:
  22139. description: |-
  22140. The namespace of the Secret resource being referred to.
  22141. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22142. maxLength: 63
  22143. minLength: 1
  22144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22145. type: string
  22146. type: object
  22147. value:
  22148. description: Value can be specified directly to set a value without using a secret.
  22149. type: string
  22150. type: object
  22151. clientSecret:
  22152. description: ClientSecret is the API OAuth Client Secret.
  22153. properties:
  22154. secretRef:
  22155. description: SecretRef references a key in a secret that will be used as value.
  22156. properties:
  22157. key:
  22158. description: |-
  22159. A key in the referenced Secret.
  22160. Some instances of this field may be defaulted, in others it may be required.
  22161. maxLength: 253
  22162. minLength: 1
  22163. pattern: ^[-._a-zA-Z0-9]+$
  22164. type: string
  22165. name:
  22166. description: The name of the Secret resource being referred to.
  22167. maxLength: 253
  22168. minLength: 1
  22169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22170. type: string
  22171. namespace:
  22172. description: |-
  22173. The namespace of the Secret resource being referred to.
  22174. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22175. maxLength: 63
  22176. minLength: 1
  22177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22178. type: string
  22179. type: object
  22180. value:
  22181. description: Value can be specified directly to set a value without using a secret.
  22182. type: string
  22183. type: object
  22184. type: object
  22185. server:
  22186. description: Auth configures how API server works.
  22187. properties:
  22188. apiUrl:
  22189. type: string
  22190. apiVersion:
  22191. type: string
  22192. clientTimeOutSeconds:
  22193. 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.
  22194. type: integer
  22195. decrypt:
  22196. default: true
  22197. 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.'
  22198. type: boolean
  22199. retrievalType:
  22200. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  22201. type: string
  22202. separator:
  22203. description: A character that separates the folder names.
  22204. type: string
  22205. verifyCA:
  22206. type: boolean
  22207. required:
  22208. - apiUrl
  22209. - verifyCA
  22210. type: object
  22211. required:
  22212. - auth
  22213. - server
  22214. type: object
  22215. bitwardensecretsmanager:
  22216. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  22217. properties:
  22218. apiURL:
  22219. type: string
  22220. auth:
  22221. description: |-
  22222. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  22223. Make sure that the token being used has permissions on the given secret.
  22224. properties:
  22225. secretRef:
  22226. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  22227. properties:
  22228. credentials:
  22229. description: AccessToken used for the bitwarden instance.
  22230. properties:
  22231. key:
  22232. description: |-
  22233. A key in the referenced Secret.
  22234. Some instances of this field may be defaulted, in others it may be required.
  22235. maxLength: 253
  22236. minLength: 1
  22237. pattern: ^[-._a-zA-Z0-9]+$
  22238. type: string
  22239. name:
  22240. description: The name of the Secret resource being referred to.
  22241. maxLength: 253
  22242. minLength: 1
  22243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22244. type: string
  22245. namespace:
  22246. description: |-
  22247. The namespace of the Secret resource being referred to.
  22248. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22249. maxLength: 63
  22250. minLength: 1
  22251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22252. type: string
  22253. type: object
  22254. required:
  22255. - credentials
  22256. type: object
  22257. required:
  22258. - secretRef
  22259. type: object
  22260. bitwardenServerSDKURL:
  22261. type: string
  22262. caBundle:
  22263. description: |-
  22264. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22265. can be performed.
  22266. type: string
  22267. caProvider:
  22268. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22269. properties:
  22270. key:
  22271. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22272. maxLength: 253
  22273. minLength: 1
  22274. pattern: ^[-._a-zA-Z0-9]+$
  22275. type: string
  22276. name:
  22277. description: The name of the object located at the provider type.
  22278. maxLength: 253
  22279. minLength: 1
  22280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22281. type: string
  22282. namespace:
  22283. description: |-
  22284. The namespace the Provider type is in.
  22285. Can only be defined when used in a ClusterSecretStore.
  22286. maxLength: 63
  22287. minLength: 1
  22288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22289. type: string
  22290. type:
  22291. description: The type of provider to use such as "Secret", or "ConfigMap".
  22292. enum:
  22293. - Secret
  22294. - ConfigMap
  22295. type: string
  22296. required:
  22297. - name
  22298. - type
  22299. type: object
  22300. identityURL:
  22301. type: string
  22302. organizationID:
  22303. description: OrganizationID determines which organization this secret store manages.
  22304. type: string
  22305. projectID:
  22306. description: ProjectID determines which project this secret store manages.
  22307. type: string
  22308. required:
  22309. - auth
  22310. - organizationID
  22311. - projectID
  22312. type: object
  22313. chef:
  22314. description: Chef configures this store to sync secrets with chef server
  22315. properties:
  22316. auth:
  22317. description: Auth defines the information necessary to authenticate against chef Server
  22318. properties:
  22319. secretRef:
  22320. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  22321. properties:
  22322. privateKeySecretRef:
  22323. description: SecretKey is the Signing Key in PEM format, used for authentication.
  22324. properties:
  22325. key:
  22326. description: |-
  22327. A key in the referenced Secret.
  22328. Some instances of this field may be defaulted, in others it may be required.
  22329. maxLength: 253
  22330. minLength: 1
  22331. pattern: ^[-._a-zA-Z0-9]+$
  22332. type: string
  22333. name:
  22334. description: The name of the Secret resource being referred to.
  22335. maxLength: 253
  22336. minLength: 1
  22337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22338. type: string
  22339. namespace:
  22340. description: |-
  22341. The namespace of the Secret resource being referred to.
  22342. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22343. maxLength: 63
  22344. minLength: 1
  22345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22346. type: string
  22347. type: object
  22348. required:
  22349. - privateKeySecretRef
  22350. type: object
  22351. required:
  22352. - secretRef
  22353. type: object
  22354. serverUrl:
  22355. 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 "/"
  22356. type: string
  22357. username:
  22358. description: UserName should be the user ID on the chef server
  22359. type: string
  22360. required:
  22361. - auth
  22362. - serverUrl
  22363. - username
  22364. type: object
  22365. cloudrusm:
  22366. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  22367. properties:
  22368. auth:
  22369. description: CSMAuth contains a secretRef for credentials.
  22370. properties:
  22371. secretRef:
  22372. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  22373. properties:
  22374. accessKeyIDSecretRef:
  22375. description: The AccessKeyID is used for authentication
  22376. properties:
  22377. key:
  22378. description: |-
  22379. A key in the referenced Secret.
  22380. Some instances of this field may be defaulted, in others it may be required.
  22381. maxLength: 253
  22382. minLength: 1
  22383. pattern: ^[-._a-zA-Z0-9]+$
  22384. type: string
  22385. name:
  22386. description: The name of the Secret resource being referred to.
  22387. maxLength: 253
  22388. minLength: 1
  22389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22390. type: string
  22391. namespace:
  22392. description: |-
  22393. The namespace of the Secret resource being referred to.
  22394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22395. maxLength: 63
  22396. minLength: 1
  22397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22398. type: string
  22399. type: object
  22400. accessKeySecretSecretRef:
  22401. description: The AccessKeySecret is used for authentication
  22402. properties:
  22403. key:
  22404. description: |-
  22405. A key in the referenced Secret.
  22406. Some instances of this field may be defaulted, in others it may be required.
  22407. maxLength: 253
  22408. minLength: 1
  22409. pattern: ^[-._a-zA-Z0-9]+$
  22410. type: string
  22411. name:
  22412. description: The name of the Secret resource being referred to.
  22413. maxLength: 253
  22414. minLength: 1
  22415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22416. type: string
  22417. namespace:
  22418. description: |-
  22419. The namespace of the Secret resource being referred to.
  22420. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22421. maxLength: 63
  22422. minLength: 1
  22423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22424. type: string
  22425. type: object
  22426. required:
  22427. - accessKeyIDSecretRef
  22428. - accessKeySecretSecretRef
  22429. type: object
  22430. type: object
  22431. projectID:
  22432. description: ProjectID is the project, which the secrets are stored in.
  22433. type: string
  22434. required:
  22435. - auth
  22436. type: object
  22437. conjur:
  22438. description: Conjur configures this store to sync secrets using conjur provider
  22439. properties:
  22440. auth:
  22441. description: Defines authentication settings for connecting to Conjur.
  22442. properties:
  22443. apikey:
  22444. description: Authenticates with Conjur using an API key.
  22445. properties:
  22446. account:
  22447. description: Account is the Conjur organization account name.
  22448. type: string
  22449. apiKeyRef:
  22450. description: |-
  22451. A reference to a specific 'key' containing the Conjur API key
  22452. within a Secret resource. In some instances, `key` is a required field.
  22453. properties:
  22454. key:
  22455. description: |-
  22456. A key in the referenced Secret.
  22457. Some instances of this field may be defaulted, in others it may be required.
  22458. maxLength: 253
  22459. minLength: 1
  22460. pattern: ^[-._a-zA-Z0-9]+$
  22461. type: string
  22462. name:
  22463. description: The name of the Secret resource being referred to.
  22464. maxLength: 253
  22465. minLength: 1
  22466. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22467. type: string
  22468. namespace:
  22469. description: |-
  22470. The namespace of the Secret resource being referred to.
  22471. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22472. maxLength: 63
  22473. minLength: 1
  22474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22475. type: string
  22476. type: object
  22477. userRef:
  22478. description: |-
  22479. A reference to a specific 'key' containing the Conjur username
  22480. within a Secret resource. In some instances, `key` is a required field.
  22481. properties:
  22482. key:
  22483. description: |-
  22484. A key in the referenced Secret.
  22485. Some instances of this field may be defaulted, in others it may be required.
  22486. maxLength: 253
  22487. minLength: 1
  22488. pattern: ^[-._a-zA-Z0-9]+$
  22489. type: string
  22490. name:
  22491. description: The name of the Secret resource being referred to.
  22492. maxLength: 253
  22493. minLength: 1
  22494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22495. type: string
  22496. namespace:
  22497. description: |-
  22498. The namespace of the Secret resource being referred to.
  22499. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22500. maxLength: 63
  22501. minLength: 1
  22502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22503. type: string
  22504. type: object
  22505. required:
  22506. - account
  22507. - apiKeyRef
  22508. - userRef
  22509. type: object
  22510. jwt:
  22511. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  22512. properties:
  22513. account:
  22514. description: Account is the Conjur organization account name.
  22515. type: string
  22516. hostId:
  22517. description: |-
  22518. Optional HostID for JWT authentication. This may be used depending
  22519. on how the Conjur JWT authenticator policy is configured.
  22520. type: string
  22521. secretRef:
  22522. description: |-
  22523. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  22524. authenticate with Conjur using the JWT authentication method.
  22525. properties:
  22526. key:
  22527. description: |-
  22528. A key in the referenced Secret.
  22529. Some instances of this field may be defaulted, in others it may be required.
  22530. maxLength: 253
  22531. minLength: 1
  22532. pattern: ^[-._a-zA-Z0-9]+$
  22533. type: string
  22534. name:
  22535. description: The name of the Secret resource being referred to.
  22536. maxLength: 253
  22537. minLength: 1
  22538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22539. type: string
  22540. namespace:
  22541. description: |-
  22542. The namespace of the Secret resource being referred to.
  22543. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22544. maxLength: 63
  22545. minLength: 1
  22546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22547. type: string
  22548. type: object
  22549. serviceAccountRef:
  22550. description: |-
  22551. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  22552. a token for with the `TokenRequest` API.
  22553. properties:
  22554. audiences:
  22555. description: |-
  22556. Audience specifies the `aud` claim for the service account token
  22557. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22558. then this audiences will be appended to the list
  22559. items:
  22560. type: string
  22561. type: array
  22562. name:
  22563. description: The name of the ServiceAccount resource being referred to.
  22564. maxLength: 253
  22565. minLength: 1
  22566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22567. type: string
  22568. namespace:
  22569. description: |-
  22570. Namespace of the resource being referred to.
  22571. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22572. maxLength: 63
  22573. minLength: 1
  22574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22575. type: string
  22576. required:
  22577. - name
  22578. type: object
  22579. serviceID:
  22580. description: The conjur authn jwt webservice id
  22581. type: string
  22582. required:
  22583. - account
  22584. - serviceID
  22585. type: object
  22586. type: object
  22587. caBundle:
  22588. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  22589. type: string
  22590. caProvider:
  22591. description: |-
  22592. Used to provide custom certificate authority (CA) certificates
  22593. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  22594. that contains a PEM-encoded certificate.
  22595. properties:
  22596. key:
  22597. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22598. maxLength: 253
  22599. minLength: 1
  22600. pattern: ^[-._a-zA-Z0-9]+$
  22601. type: string
  22602. name:
  22603. description: The name of the object located at the provider type.
  22604. maxLength: 253
  22605. minLength: 1
  22606. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22607. type: string
  22608. namespace:
  22609. description: |-
  22610. The namespace the Provider type is in.
  22611. Can only be defined when used in a ClusterSecretStore.
  22612. maxLength: 63
  22613. minLength: 1
  22614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22615. type: string
  22616. type:
  22617. description: The type of provider to use such as "Secret", or "ConfigMap".
  22618. enum:
  22619. - Secret
  22620. - ConfigMap
  22621. type: string
  22622. required:
  22623. - name
  22624. - type
  22625. type: object
  22626. url:
  22627. description: URL is the endpoint of the Conjur instance.
  22628. type: string
  22629. required:
  22630. - auth
  22631. - url
  22632. type: object
  22633. delinea:
  22634. description: |-
  22635. Delinea DevOps Secrets Vault
  22636. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  22637. properties:
  22638. clientId:
  22639. description: ClientID is the non-secret part of the credential.
  22640. properties:
  22641. secretRef:
  22642. description: SecretRef references a key in a secret that will be used as value.
  22643. properties:
  22644. key:
  22645. description: |-
  22646. A key in the referenced Secret.
  22647. Some instances of this field may be defaulted, in others it may be required.
  22648. maxLength: 253
  22649. minLength: 1
  22650. pattern: ^[-._a-zA-Z0-9]+$
  22651. type: string
  22652. name:
  22653. description: The name of the Secret resource being referred to.
  22654. maxLength: 253
  22655. minLength: 1
  22656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22657. type: string
  22658. namespace:
  22659. description: |-
  22660. The namespace of the Secret resource being referred to.
  22661. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22662. maxLength: 63
  22663. minLength: 1
  22664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22665. type: string
  22666. type: object
  22667. value:
  22668. description: Value can be specified directly to set a value without using a secret.
  22669. type: string
  22670. type: object
  22671. clientSecret:
  22672. description: ClientSecret is the secret part of the credential.
  22673. properties:
  22674. secretRef:
  22675. description: SecretRef references a key in a secret that will be used as value.
  22676. properties:
  22677. key:
  22678. description: |-
  22679. A key in the referenced Secret.
  22680. Some instances of this field may be defaulted, in others it may be required.
  22681. maxLength: 253
  22682. minLength: 1
  22683. pattern: ^[-._a-zA-Z0-9]+$
  22684. type: string
  22685. name:
  22686. description: The name of the Secret resource being referred to.
  22687. maxLength: 253
  22688. minLength: 1
  22689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22690. type: string
  22691. namespace:
  22692. description: |-
  22693. The namespace of the Secret resource being referred to.
  22694. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22695. maxLength: 63
  22696. minLength: 1
  22697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22698. type: string
  22699. type: object
  22700. value:
  22701. description: Value can be specified directly to set a value without using a secret.
  22702. type: string
  22703. type: object
  22704. tenant:
  22705. description: Tenant is the chosen hostname / site name.
  22706. type: string
  22707. tld:
  22708. description: |-
  22709. TLD is based on the server location that was chosen during provisioning.
  22710. If unset, defaults to "com".
  22711. type: string
  22712. urlTemplate:
  22713. description: |-
  22714. URLTemplate
  22715. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  22716. type: string
  22717. required:
  22718. - clientId
  22719. - clientSecret
  22720. - tenant
  22721. type: object
  22722. device42:
  22723. description: Device42 configures this store to sync secrets using the Device42 provider
  22724. properties:
  22725. auth:
  22726. description: Auth configures how secret-manager authenticates with a Device42 instance.
  22727. properties:
  22728. secretRef:
  22729. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  22730. properties:
  22731. credentials:
  22732. description: Username / Password is used for authentication.
  22733. properties:
  22734. key:
  22735. description: |-
  22736. A key in the referenced Secret.
  22737. Some instances of this field may be defaulted, in others it may be required.
  22738. maxLength: 253
  22739. minLength: 1
  22740. pattern: ^[-._a-zA-Z0-9]+$
  22741. type: string
  22742. name:
  22743. description: The name of the Secret resource being referred to.
  22744. maxLength: 253
  22745. minLength: 1
  22746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22747. type: string
  22748. namespace:
  22749. description: |-
  22750. The namespace of the Secret resource being referred to.
  22751. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22752. maxLength: 63
  22753. minLength: 1
  22754. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22755. type: string
  22756. type: object
  22757. type: object
  22758. required:
  22759. - secretRef
  22760. type: object
  22761. host:
  22762. description: URL configures the Device42 instance URL.
  22763. type: string
  22764. required:
  22765. - auth
  22766. - host
  22767. type: object
  22768. doppler:
  22769. description: Doppler configures this store to sync secrets using the Doppler provider
  22770. properties:
  22771. auth:
  22772. description: Auth configures how the Operator authenticates with the Doppler API
  22773. properties:
  22774. secretRef:
  22775. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  22776. properties:
  22777. dopplerToken:
  22778. description: |-
  22779. The DopplerToken is used for authentication.
  22780. See https://docs.doppler.com/reference/api#authentication for auth token types.
  22781. The Key attribute defaults to dopplerToken if not specified.
  22782. properties:
  22783. key:
  22784. description: |-
  22785. A key in the referenced Secret.
  22786. Some instances of this field may be defaulted, in others it may be required.
  22787. maxLength: 253
  22788. minLength: 1
  22789. pattern: ^[-._a-zA-Z0-9]+$
  22790. type: string
  22791. name:
  22792. description: The name of the Secret resource being referred to.
  22793. maxLength: 253
  22794. minLength: 1
  22795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22796. type: string
  22797. namespace:
  22798. description: |-
  22799. The namespace of the Secret resource being referred to.
  22800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22801. maxLength: 63
  22802. minLength: 1
  22803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22804. type: string
  22805. type: object
  22806. required:
  22807. - dopplerToken
  22808. type: object
  22809. required:
  22810. - secretRef
  22811. type: object
  22812. config:
  22813. description: Doppler config (required if not using a Service Token)
  22814. type: string
  22815. format:
  22816. description: Format enables the downloading of secrets as a file (string)
  22817. enum:
  22818. - json
  22819. - dotnet-json
  22820. - env
  22821. - yaml
  22822. - docker
  22823. type: string
  22824. nameTransformer:
  22825. description: Environment variable compatible name transforms that change secret names to a different format
  22826. enum:
  22827. - upper-camel
  22828. - camel
  22829. - lower-snake
  22830. - tf-var
  22831. - dotnet-env
  22832. - lower-kebab
  22833. type: string
  22834. project:
  22835. description: Doppler project (required if not using a Service Token)
  22836. type: string
  22837. required:
  22838. - auth
  22839. type: object
  22840. fake:
  22841. description: Fake configures a store with static key/value pairs
  22842. properties:
  22843. data:
  22844. items:
  22845. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  22846. properties:
  22847. key:
  22848. type: string
  22849. value:
  22850. type: string
  22851. version:
  22852. type: string
  22853. required:
  22854. - key
  22855. - value
  22856. type: object
  22857. type: array
  22858. required:
  22859. - data
  22860. type: object
  22861. fortanix:
  22862. description: Fortanix configures this store to sync secrets using the Fortanix provider
  22863. properties:
  22864. apiKey:
  22865. description: APIKey is the API token to access SDKMS Applications.
  22866. properties:
  22867. secretRef:
  22868. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  22869. properties:
  22870. key:
  22871. description: |-
  22872. A key in the referenced Secret.
  22873. Some instances of this field may be defaulted, in others it may be required.
  22874. maxLength: 253
  22875. minLength: 1
  22876. pattern: ^[-._a-zA-Z0-9]+$
  22877. type: string
  22878. name:
  22879. description: The name of the Secret resource being referred to.
  22880. maxLength: 253
  22881. minLength: 1
  22882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22883. type: string
  22884. namespace:
  22885. description: |-
  22886. The namespace of the Secret resource being referred to.
  22887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22888. maxLength: 63
  22889. minLength: 1
  22890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22891. type: string
  22892. type: object
  22893. type: object
  22894. apiUrl:
  22895. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  22896. type: string
  22897. type: object
  22898. gcpsm:
  22899. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  22900. properties:
  22901. auth:
  22902. description: Auth defines the information necessary to authenticate against GCP
  22903. properties:
  22904. secretRef:
  22905. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  22906. properties:
  22907. secretAccessKeySecretRef:
  22908. description: The SecretAccessKey is used for authentication
  22909. properties:
  22910. key:
  22911. description: |-
  22912. A key in the referenced Secret.
  22913. Some instances of this field may be defaulted, in others it may be required.
  22914. maxLength: 253
  22915. minLength: 1
  22916. pattern: ^[-._a-zA-Z0-9]+$
  22917. type: string
  22918. name:
  22919. description: The name of the Secret resource being referred to.
  22920. maxLength: 253
  22921. minLength: 1
  22922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22923. type: string
  22924. namespace:
  22925. description: |-
  22926. The namespace of the Secret resource being referred to.
  22927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22928. maxLength: 63
  22929. minLength: 1
  22930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22931. type: string
  22932. type: object
  22933. type: object
  22934. workloadIdentity:
  22935. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  22936. properties:
  22937. clusterLocation:
  22938. description: |-
  22939. ClusterLocation is the location of the cluster
  22940. If not specified, it fetches information from the metadata server
  22941. type: string
  22942. clusterName:
  22943. description: |-
  22944. ClusterName is the name of the cluster
  22945. If not specified, it fetches information from the metadata server
  22946. type: string
  22947. clusterProjectID:
  22948. description: |-
  22949. ClusterProjectID is the project ID of the cluster
  22950. If not specified, it fetches information from the metadata server
  22951. type: string
  22952. serviceAccountRef:
  22953. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  22954. properties:
  22955. audiences:
  22956. description: |-
  22957. Audience specifies the `aud` claim for the service account token
  22958. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22959. then this audiences will be appended to the list
  22960. items:
  22961. type: string
  22962. type: array
  22963. name:
  22964. description: The name of the ServiceAccount resource being referred to.
  22965. maxLength: 253
  22966. minLength: 1
  22967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22968. type: string
  22969. namespace:
  22970. description: |-
  22971. Namespace of the resource being referred to.
  22972. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22973. maxLength: 63
  22974. minLength: 1
  22975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22976. type: string
  22977. required:
  22978. - name
  22979. type: object
  22980. required:
  22981. - serviceAccountRef
  22982. type: object
  22983. type: object
  22984. location:
  22985. description: Location optionally defines a location for a secret
  22986. type: string
  22987. projectID:
  22988. description: ProjectID project where secret is located
  22989. type: string
  22990. type: object
  22991. github:
  22992. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  22993. properties:
  22994. appID:
  22995. description: appID specifies the Github APP that will be used to authenticate the client
  22996. format: int64
  22997. type: integer
  22998. auth:
  22999. description: auth configures how secret-manager authenticates with a Github instance.
  23000. properties:
  23001. privateKey:
  23002. description: |-
  23003. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23004. In some instances, `key` is a required field.
  23005. properties:
  23006. key:
  23007. description: |-
  23008. A key in the referenced Secret.
  23009. Some instances of this field may be defaulted, in others it may be required.
  23010. maxLength: 253
  23011. minLength: 1
  23012. pattern: ^[-._a-zA-Z0-9]+$
  23013. type: string
  23014. name:
  23015. description: The name of the Secret resource being referred to.
  23016. maxLength: 253
  23017. minLength: 1
  23018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23019. type: string
  23020. namespace:
  23021. description: |-
  23022. The namespace of the Secret resource being referred to.
  23023. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23024. maxLength: 63
  23025. minLength: 1
  23026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23027. type: string
  23028. type: object
  23029. required:
  23030. - privateKey
  23031. type: object
  23032. environment:
  23033. description: environment will be used to fetch secrets from a particular environment within a github repository
  23034. type: string
  23035. installationID:
  23036. description: installationID specifies the Github APP installation that will be used to authenticate the client
  23037. format: int64
  23038. type: integer
  23039. organization:
  23040. description: organization will be used to fetch secrets from the Github organization
  23041. type: string
  23042. repository:
  23043. description: repository will be used to fetch secrets from the Github repository within an organization
  23044. type: string
  23045. uploadURL:
  23046. description: Upload URL for enterprise instances. Default to URL.
  23047. type: string
  23048. url:
  23049. default: https://github.com/
  23050. description: URL configures the Github instance URL. Defaults to https://github.com/.
  23051. type: string
  23052. required:
  23053. - appID
  23054. - auth
  23055. - installationID
  23056. - organization
  23057. type: object
  23058. gitlab:
  23059. description: GitLab configures this store to sync secrets using GitLab Variables provider
  23060. properties:
  23061. auth:
  23062. description: Auth configures how secret-manager authenticates with a GitLab instance.
  23063. properties:
  23064. SecretRef:
  23065. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  23066. properties:
  23067. accessToken:
  23068. description: AccessToken is used for authentication.
  23069. properties:
  23070. key:
  23071. description: |-
  23072. A key in the referenced Secret.
  23073. Some instances of this field may be defaulted, in others it may be required.
  23074. maxLength: 253
  23075. minLength: 1
  23076. pattern: ^[-._a-zA-Z0-9]+$
  23077. type: string
  23078. name:
  23079. description: The name of the Secret resource being referred to.
  23080. maxLength: 253
  23081. minLength: 1
  23082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23083. type: string
  23084. namespace:
  23085. description: |-
  23086. The namespace of the Secret resource being referred to.
  23087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23088. maxLength: 63
  23089. minLength: 1
  23090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23091. type: string
  23092. type: object
  23093. type: object
  23094. required:
  23095. - SecretRef
  23096. type: object
  23097. caBundle:
  23098. description: |-
  23099. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  23100. can be performed.
  23101. format: byte
  23102. type: string
  23103. caProvider:
  23104. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  23105. properties:
  23106. key:
  23107. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  23108. maxLength: 253
  23109. minLength: 1
  23110. pattern: ^[-._a-zA-Z0-9]+$
  23111. type: string
  23112. name:
  23113. description: The name of the object located at the provider type.
  23114. maxLength: 253
  23115. minLength: 1
  23116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23117. type: string
  23118. namespace:
  23119. description: |-
  23120. The namespace the Provider type is in.
  23121. Can only be defined when used in a ClusterSecretStore.
  23122. maxLength: 63
  23123. minLength: 1
  23124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23125. type: string
  23126. type:
  23127. description: The type of provider to use such as "Secret", or "ConfigMap".
  23128. enum:
  23129. - Secret
  23130. - ConfigMap
  23131. type: string
  23132. required:
  23133. - name
  23134. - type
  23135. type: object
  23136. environment:
  23137. 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)
  23138. type: string
  23139. groupIDs:
  23140. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  23141. items:
  23142. type: string
  23143. type: array
  23144. inheritFromGroups:
  23145. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  23146. type: boolean
  23147. projectID:
  23148. description: ProjectID specifies a project where secrets are located.
  23149. type: string
  23150. url:
  23151. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  23152. type: string
  23153. required:
  23154. - auth
  23155. type: object
  23156. ibm:
  23157. description: IBM configures this store to sync secrets using IBM Cloud provider
  23158. properties:
  23159. auth:
  23160. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  23161. maxProperties: 1
  23162. minProperties: 1
  23163. properties:
  23164. containerAuth:
  23165. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  23166. properties:
  23167. iamEndpoint:
  23168. type: string
  23169. profile:
  23170. description: the IBM Trusted Profile
  23171. type: string
  23172. tokenLocation:
  23173. description: Location the token is mounted on the pod
  23174. type: string
  23175. required:
  23176. - profile
  23177. type: object
  23178. secretRef:
  23179. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  23180. properties:
  23181. secretApiKeySecretRef:
  23182. description: The SecretAccessKey is used for authentication
  23183. properties:
  23184. key:
  23185. description: |-
  23186. A key in the referenced Secret.
  23187. Some instances of this field may be defaulted, in others it may be required.
  23188. maxLength: 253
  23189. minLength: 1
  23190. pattern: ^[-._a-zA-Z0-9]+$
  23191. type: string
  23192. name:
  23193. description: The name of the Secret resource being referred to.
  23194. maxLength: 253
  23195. minLength: 1
  23196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23197. type: string
  23198. namespace:
  23199. description: |-
  23200. The namespace of the Secret resource being referred to.
  23201. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23202. maxLength: 63
  23203. minLength: 1
  23204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23205. type: string
  23206. type: object
  23207. type: object
  23208. type: object
  23209. serviceUrl:
  23210. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  23211. type: string
  23212. required:
  23213. - auth
  23214. type: object
  23215. infisical:
  23216. description: Infisical configures this store to sync secrets using the Infisical provider
  23217. properties:
  23218. auth:
  23219. description: Auth configures how the Operator authenticates with the Infisical API
  23220. properties:
  23221. universalAuthCredentials:
  23222. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  23223. properties:
  23224. clientId:
  23225. description: |-
  23226. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23227. In some instances, `key` is a required field.
  23228. properties:
  23229. key:
  23230. description: |-
  23231. A key in the referenced Secret.
  23232. Some instances of this field may be defaulted, in others it may be required.
  23233. maxLength: 253
  23234. minLength: 1
  23235. pattern: ^[-._a-zA-Z0-9]+$
  23236. type: string
  23237. name:
  23238. description: The name of the Secret resource being referred to.
  23239. maxLength: 253
  23240. minLength: 1
  23241. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23242. type: string
  23243. namespace:
  23244. description: |-
  23245. The namespace of the Secret resource being referred to.
  23246. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23247. maxLength: 63
  23248. minLength: 1
  23249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23250. type: string
  23251. type: object
  23252. clientSecret:
  23253. description: |-
  23254. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23255. In some instances, `key` is a required field.
  23256. properties:
  23257. key:
  23258. description: |-
  23259. A key in the referenced Secret.
  23260. Some instances of this field may be defaulted, in others it may be required.
  23261. maxLength: 253
  23262. minLength: 1
  23263. pattern: ^[-._a-zA-Z0-9]+$
  23264. type: string
  23265. name:
  23266. description: The name of the Secret resource being referred to.
  23267. maxLength: 253
  23268. minLength: 1
  23269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23270. type: string
  23271. namespace:
  23272. description: |-
  23273. The namespace of the Secret resource being referred to.
  23274. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23275. maxLength: 63
  23276. minLength: 1
  23277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23278. type: string
  23279. type: object
  23280. required:
  23281. - clientId
  23282. - clientSecret
  23283. type: object
  23284. type: object
  23285. hostAPI:
  23286. default: https://app.infisical.com/api
  23287. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  23288. type: string
  23289. secretsScope:
  23290. description: SecretsScope defines the scope of the secrets within the workspace
  23291. properties:
  23292. environmentSlug:
  23293. description: EnvironmentSlug is the required slug identifier for the environment.
  23294. type: string
  23295. expandSecretReferences:
  23296. default: true
  23297. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  23298. type: boolean
  23299. projectSlug:
  23300. description: ProjectSlug is the required slug identifier for the project.
  23301. type: string
  23302. recursive:
  23303. default: false
  23304. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  23305. type: boolean
  23306. secretsPath:
  23307. default: /
  23308. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  23309. type: string
  23310. required:
  23311. - environmentSlug
  23312. - projectSlug
  23313. type: object
  23314. required:
  23315. - auth
  23316. - secretsScope
  23317. type: object
  23318. keepersecurity:
  23319. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  23320. properties:
  23321. authRef:
  23322. description: |-
  23323. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23324. In some instances, `key` is a required field.
  23325. properties:
  23326. key:
  23327. description: |-
  23328. A key in the referenced Secret.
  23329. Some instances of this field may be defaulted, in others it may be required.
  23330. maxLength: 253
  23331. minLength: 1
  23332. pattern: ^[-._a-zA-Z0-9]+$
  23333. type: string
  23334. name:
  23335. description: The name of the Secret resource being referred to.
  23336. maxLength: 253
  23337. minLength: 1
  23338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23339. type: string
  23340. namespace:
  23341. description: |-
  23342. The namespace of the Secret resource being referred to.
  23343. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23344. maxLength: 63
  23345. minLength: 1
  23346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23347. type: string
  23348. type: object
  23349. folderID:
  23350. type: string
  23351. required:
  23352. - authRef
  23353. - folderID
  23354. type: object
  23355. kubernetes:
  23356. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  23357. properties:
  23358. auth:
  23359. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  23360. maxProperties: 1
  23361. minProperties: 1
  23362. properties:
  23363. cert:
  23364. description: has both clientCert and clientKey as secretKeySelector
  23365. properties:
  23366. clientCert:
  23367. description: |-
  23368. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23369. In some instances, `key` is a required field.
  23370. properties:
  23371. key:
  23372. description: |-
  23373. A key in the referenced Secret.
  23374. Some instances of this field may be defaulted, in others it may be required.
  23375. maxLength: 253
  23376. minLength: 1
  23377. pattern: ^[-._a-zA-Z0-9]+$
  23378. type: string
  23379. name:
  23380. description: The name of the Secret resource being referred to.
  23381. maxLength: 253
  23382. minLength: 1
  23383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23384. type: string
  23385. namespace:
  23386. description: |-
  23387. The namespace of the Secret resource being referred to.
  23388. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23389. maxLength: 63
  23390. minLength: 1
  23391. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23392. type: string
  23393. type: object
  23394. clientKey:
  23395. description: |-
  23396. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23397. In some instances, `key` is a required field.
  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. type: object
  23423. serviceAccount:
  23424. description: points to a service account that should be used for authentication
  23425. properties:
  23426. audiences:
  23427. description: |-
  23428. Audience specifies the `aud` claim for the service account token
  23429. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23430. then this audiences will be appended to the list
  23431. items:
  23432. type: string
  23433. type: array
  23434. name:
  23435. description: The name of the ServiceAccount resource being referred to.
  23436. maxLength: 253
  23437. minLength: 1
  23438. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23439. type: string
  23440. namespace:
  23441. description: |-
  23442. Namespace of the resource being referred to.
  23443. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23444. maxLength: 63
  23445. minLength: 1
  23446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23447. type: string
  23448. required:
  23449. - name
  23450. type: object
  23451. token:
  23452. description: use static token to authenticate with
  23453. properties:
  23454. bearerToken:
  23455. description: |-
  23456. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23457. In some instances, `key` is a required field.
  23458. properties:
  23459. key:
  23460. description: |-
  23461. A key in the referenced Secret.
  23462. Some instances of this field may be defaulted, in others it may be required.
  23463. maxLength: 253
  23464. minLength: 1
  23465. pattern: ^[-._a-zA-Z0-9]+$
  23466. type: string
  23467. name:
  23468. description: The name of the Secret resource being referred to.
  23469. maxLength: 253
  23470. minLength: 1
  23471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23472. type: string
  23473. namespace:
  23474. description: |-
  23475. The namespace of the Secret resource being referred to.
  23476. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23477. maxLength: 63
  23478. minLength: 1
  23479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23480. type: string
  23481. type: object
  23482. type: object
  23483. type: object
  23484. authRef:
  23485. description: A reference to a secret that contains the auth information.
  23486. properties:
  23487. key:
  23488. description: |-
  23489. A key in the referenced Secret.
  23490. Some instances of this field may be defaulted, in others it may be required.
  23491. maxLength: 253
  23492. minLength: 1
  23493. pattern: ^[-._a-zA-Z0-9]+$
  23494. type: string
  23495. name:
  23496. description: The name of the Secret resource being referred to.
  23497. maxLength: 253
  23498. minLength: 1
  23499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23500. type: string
  23501. namespace:
  23502. description: |-
  23503. The namespace of the Secret resource being referred to.
  23504. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23505. maxLength: 63
  23506. minLength: 1
  23507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23508. type: string
  23509. type: object
  23510. remoteNamespace:
  23511. default: default
  23512. description: Remote namespace to fetch the secrets from
  23513. maxLength: 63
  23514. minLength: 1
  23515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23516. type: string
  23517. server:
  23518. description: configures the Kubernetes server Address.
  23519. properties:
  23520. caBundle:
  23521. description: CABundle is a base64-encoded CA certificate
  23522. format: byte
  23523. type: string
  23524. caProvider:
  23525. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  23526. properties:
  23527. key:
  23528. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  23529. maxLength: 253
  23530. minLength: 1
  23531. pattern: ^[-._a-zA-Z0-9]+$
  23532. type: string
  23533. name:
  23534. description: The name of the object located at the provider type.
  23535. maxLength: 253
  23536. minLength: 1
  23537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23538. type: string
  23539. namespace:
  23540. description: |-
  23541. The namespace the Provider type is in.
  23542. Can only be defined when used in a ClusterSecretStore.
  23543. maxLength: 63
  23544. minLength: 1
  23545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23546. type: string
  23547. type:
  23548. description: The type of provider to use such as "Secret", or "ConfigMap".
  23549. enum:
  23550. - Secret
  23551. - ConfigMap
  23552. type: string
  23553. required:
  23554. - name
  23555. - type
  23556. type: object
  23557. url:
  23558. default: kubernetes.default
  23559. description: configures the Kubernetes server Address.
  23560. type: string
  23561. type: object
  23562. type: object
  23563. onboardbase:
  23564. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  23565. properties:
  23566. apiHost:
  23567. default: https://public.onboardbase.com/api/v1/
  23568. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  23569. type: string
  23570. auth:
  23571. description: Auth configures how the Operator authenticates with the Onboardbase API
  23572. properties:
  23573. apiKeyRef:
  23574. description: |-
  23575. OnboardbaseAPIKey is the APIKey generated by an admin account.
  23576. It is used to recognize and authorize access to a project and environment within onboardbase
  23577. properties:
  23578. key:
  23579. description: |-
  23580. A key in the referenced Secret.
  23581. Some instances of this field may be defaulted, in others it may be required.
  23582. maxLength: 253
  23583. minLength: 1
  23584. pattern: ^[-._a-zA-Z0-9]+$
  23585. type: string
  23586. name:
  23587. description: The name of the Secret resource being referred to.
  23588. maxLength: 253
  23589. minLength: 1
  23590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23591. type: string
  23592. namespace:
  23593. description: |-
  23594. The namespace of the Secret resource being referred to.
  23595. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23596. maxLength: 63
  23597. minLength: 1
  23598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23599. type: string
  23600. type: object
  23601. passcodeRef:
  23602. description: OnboardbasePasscode is the passcode attached to the API Key
  23603. properties:
  23604. key:
  23605. description: |-
  23606. A key in the referenced Secret.
  23607. Some instances of this field may be defaulted, in others it may be required.
  23608. maxLength: 253
  23609. minLength: 1
  23610. pattern: ^[-._a-zA-Z0-9]+$
  23611. type: string
  23612. name:
  23613. description: The name of the Secret resource being referred to.
  23614. maxLength: 253
  23615. minLength: 1
  23616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23617. type: string
  23618. namespace:
  23619. description: |-
  23620. The namespace of the Secret resource being referred to.
  23621. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23622. maxLength: 63
  23623. minLength: 1
  23624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23625. type: string
  23626. type: object
  23627. required:
  23628. - apiKeyRef
  23629. - passcodeRef
  23630. type: object
  23631. environment:
  23632. default: development
  23633. description: Environment is the name of an environmnent within a project to pull the secrets from
  23634. type: string
  23635. project:
  23636. default: development
  23637. description: Project is an onboardbase project that the secrets should be pulled from
  23638. type: string
  23639. required:
  23640. - apiHost
  23641. - auth
  23642. - environment
  23643. - project
  23644. type: object
  23645. onepassword:
  23646. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  23647. properties:
  23648. auth:
  23649. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  23650. properties:
  23651. secretRef:
  23652. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  23653. properties:
  23654. connectTokenSecretRef:
  23655. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  23656. properties:
  23657. key:
  23658. description: |-
  23659. A key in the referenced Secret.
  23660. Some instances of this field may be defaulted, in others it may be required.
  23661. maxLength: 253
  23662. minLength: 1
  23663. pattern: ^[-._a-zA-Z0-9]+$
  23664. type: string
  23665. name:
  23666. description: The name of the Secret resource being referred to.
  23667. maxLength: 253
  23668. minLength: 1
  23669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23670. type: string
  23671. namespace:
  23672. description: |-
  23673. The namespace of the Secret resource being referred to.
  23674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23675. maxLength: 63
  23676. minLength: 1
  23677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23678. type: string
  23679. type: object
  23680. required:
  23681. - connectTokenSecretRef
  23682. type: object
  23683. required:
  23684. - secretRef
  23685. type: object
  23686. connectHost:
  23687. description: ConnectHost defines the OnePassword Connect Server to connect to
  23688. type: string
  23689. vaults:
  23690. additionalProperties:
  23691. type: integer
  23692. description: Vaults defines which OnePassword vaults to search in which order
  23693. type: object
  23694. required:
  23695. - auth
  23696. - connectHost
  23697. - vaults
  23698. type: object
  23699. oracle:
  23700. description: Oracle configures this store to sync secrets using Oracle Vault provider
  23701. properties:
  23702. auth:
  23703. description: |-
  23704. Auth configures how secret-manager authenticates with the Oracle Vault.
  23705. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  23706. properties:
  23707. secretRef:
  23708. description: SecretRef to pass through sensitive information.
  23709. properties:
  23710. fingerprint:
  23711. description: Fingerprint is the fingerprint of the API private key.
  23712. properties:
  23713. key:
  23714. description: |-
  23715. A key in the referenced Secret.
  23716. Some instances of this field may be defaulted, in others it may be required.
  23717. maxLength: 253
  23718. minLength: 1
  23719. pattern: ^[-._a-zA-Z0-9]+$
  23720. type: string
  23721. name:
  23722. description: The name of the Secret resource being referred to.
  23723. maxLength: 253
  23724. minLength: 1
  23725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23726. type: string
  23727. namespace:
  23728. description: |-
  23729. The namespace of the Secret resource being referred to.
  23730. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23731. maxLength: 63
  23732. minLength: 1
  23733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23734. type: string
  23735. type: object
  23736. privatekey:
  23737. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  23738. properties:
  23739. key:
  23740. description: |-
  23741. A key in the referenced Secret.
  23742. Some instances of this field may be defaulted, in others it may be required.
  23743. maxLength: 253
  23744. minLength: 1
  23745. pattern: ^[-._a-zA-Z0-9]+$
  23746. type: string
  23747. name:
  23748. description: The name of the Secret resource being referred to.
  23749. maxLength: 253
  23750. minLength: 1
  23751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23752. type: string
  23753. namespace:
  23754. description: |-
  23755. The namespace of the Secret resource being referred to.
  23756. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23757. maxLength: 63
  23758. minLength: 1
  23759. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23760. type: string
  23761. type: object
  23762. required:
  23763. - fingerprint
  23764. - privatekey
  23765. type: object
  23766. tenancy:
  23767. description: Tenancy is the tenancy OCID where user is located.
  23768. type: string
  23769. user:
  23770. description: User is an access OCID specific to the account.
  23771. type: string
  23772. required:
  23773. - secretRef
  23774. - tenancy
  23775. - user
  23776. type: object
  23777. compartment:
  23778. description: |-
  23779. Compartment is the vault compartment OCID.
  23780. Required for PushSecret
  23781. type: string
  23782. encryptionKey:
  23783. description: |-
  23784. EncryptionKey is the OCID of the encryption key within the vault.
  23785. Required for PushSecret
  23786. type: string
  23787. principalType:
  23788. description: |-
  23789. The type of principal to use for authentication. If left blank, the Auth struct will
  23790. determine the principal type. This optional field must be specified if using
  23791. workload identity.
  23792. enum:
  23793. - ""
  23794. - UserPrincipal
  23795. - InstancePrincipal
  23796. - Workload
  23797. type: string
  23798. region:
  23799. description: Region is the region where vault is located.
  23800. type: string
  23801. serviceAccountRef:
  23802. description: |-
  23803. ServiceAccountRef specified the service account
  23804. that should be used when authenticating with WorkloadIdentity.
  23805. properties:
  23806. audiences:
  23807. description: |-
  23808. Audience specifies the `aud` claim for the service account token
  23809. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23810. then this audiences will be appended to the list
  23811. items:
  23812. type: string
  23813. type: array
  23814. name:
  23815. description: The name of the ServiceAccount resource being referred to.
  23816. maxLength: 253
  23817. minLength: 1
  23818. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23819. type: string
  23820. namespace:
  23821. description: |-
  23822. Namespace of the resource being referred to.
  23823. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23824. maxLength: 63
  23825. minLength: 1
  23826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23827. type: string
  23828. required:
  23829. - name
  23830. type: object
  23831. vault:
  23832. description: Vault is the vault's OCID of the specific vault where secret is located.
  23833. type: string
  23834. required:
  23835. - region
  23836. - vault
  23837. type: object
  23838. passbolt:
  23839. description: PassboltProvider defines configuration for the Passbolt provider.
  23840. properties:
  23841. auth:
  23842. description: Auth defines the information necessary to authenticate against Passbolt Server
  23843. properties:
  23844. passwordSecretRef:
  23845. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  23846. properties:
  23847. key:
  23848. description: |-
  23849. A key in the referenced Secret.
  23850. Some instances of this field may be defaulted, in others it may be required.
  23851. maxLength: 253
  23852. minLength: 1
  23853. pattern: ^[-._a-zA-Z0-9]+$
  23854. type: string
  23855. name:
  23856. description: The name of the Secret resource being referred to.
  23857. maxLength: 253
  23858. minLength: 1
  23859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23860. type: string
  23861. namespace:
  23862. description: |-
  23863. The namespace of the Secret resource being referred to.
  23864. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23865. maxLength: 63
  23866. minLength: 1
  23867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23868. type: string
  23869. type: object
  23870. privateKeySecretRef:
  23871. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  23872. properties:
  23873. key:
  23874. description: |-
  23875. A key in the referenced Secret.
  23876. Some instances of this field may be defaulted, in others it may be required.
  23877. maxLength: 253
  23878. minLength: 1
  23879. pattern: ^[-._a-zA-Z0-9]+$
  23880. type: string
  23881. name:
  23882. description: The name of the Secret resource being referred to.
  23883. maxLength: 253
  23884. minLength: 1
  23885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23886. type: string
  23887. namespace:
  23888. description: |-
  23889. The namespace of the Secret resource being referred to.
  23890. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23891. maxLength: 63
  23892. minLength: 1
  23893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23894. type: string
  23895. type: object
  23896. required:
  23897. - passwordSecretRef
  23898. - privateKeySecretRef
  23899. type: object
  23900. host:
  23901. description: Host defines the Passbolt Server to connect to
  23902. type: string
  23903. required:
  23904. - auth
  23905. - host
  23906. type: object
  23907. passworddepot:
  23908. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  23909. properties:
  23910. auth:
  23911. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  23912. properties:
  23913. secretRef:
  23914. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  23915. properties:
  23916. credentials:
  23917. description: Username / Password is used for authentication.
  23918. properties:
  23919. key:
  23920. description: |-
  23921. A key in the referenced Secret.
  23922. Some instances of this field may be defaulted, in others it may be required.
  23923. maxLength: 253
  23924. minLength: 1
  23925. pattern: ^[-._a-zA-Z0-9]+$
  23926. type: string
  23927. name:
  23928. description: The name of the Secret resource being referred to.
  23929. maxLength: 253
  23930. minLength: 1
  23931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23932. type: string
  23933. namespace:
  23934. description: |-
  23935. The namespace of the Secret resource being referred to.
  23936. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23937. maxLength: 63
  23938. minLength: 1
  23939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23940. type: string
  23941. type: object
  23942. type: object
  23943. required:
  23944. - secretRef
  23945. type: object
  23946. database:
  23947. description: Database to use as source
  23948. type: string
  23949. host:
  23950. description: URL configures the Password Depot instance URL.
  23951. type: string
  23952. required:
  23953. - auth
  23954. - database
  23955. - host
  23956. type: object
  23957. previder:
  23958. description: Previder configures this store to sync secrets using the Previder provider
  23959. properties:
  23960. auth:
  23961. description: PreviderAuth contains a secretRef for credentials.
  23962. properties:
  23963. secretRef:
  23964. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  23965. properties:
  23966. accessToken:
  23967. description: The AccessToken is used for authentication
  23968. properties:
  23969. key:
  23970. description: |-
  23971. A key in the referenced Secret.
  23972. Some instances of this field may be defaulted, in others it may be required.
  23973. maxLength: 253
  23974. minLength: 1
  23975. pattern: ^[-._a-zA-Z0-9]+$
  23976. type: string
  23977. name:
  23978. description: The name of the Secret resource being referred to.
  23979. maxLength: 253
  23980. minLength: 1
  23981. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23982. type: string
  23983. namespace:
  23984. description: |-
  23985. The namespace of the Secret resource being referred to.
  23986. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23987. maxLength: 63
  23988. minLength: 1
  23989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23990. type: string
  23991. type: object
  23992. required:
  23993. - accessToken
  23994. type: object
  23995. type: object
  23996. baseUri:
  23997. type: string
  23998. required:
  23999. - auth
  24000. type: object
  24001. pulumi:
  24002. description: Pulumi configures this store to sync secrets using the Pulumi provider
  24003. properties:
  24004. accessToken:
  24005. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  24006. properties:
  24007. secretRef:
  24008. description: SecretRef is a reference to a secret containing the Pulumi API token.
  24009. properties:
  24010. key:
  24011. description: |-
  24012. A key in the referenced Secret.
  24013. Some instances of this field may be defaulted, in others it may be required.
  24014. maxLength: 253
  24015. minLength: 1
  24016. pattern: ^[-._a-zA-Z0-9]+$
  24017. type: string
  24018. name:
  24019. description: The name of the Secret resource being referred to.
  24020. maxLength: 253
  24021. minLength: 1
  24022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24023. type: string
  24024. namespace:
  24025. description: |-
  24026. The namespace of the Secret resource being referred to.
  24027. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24028. maxLength: 63
  24029. minLength: 1
  24030. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24031. type: string
  24032. type: object
  24033. type: object
  24034. apiUrl:
  24035. default: https://api.pulumi.com/api/esc
  24036. description: APIURL is the URL of the Pulumi API.
  24037. type: string
  24038. environment:
  24039. description: |-
  24040. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  24041. dynamically retrieved values from supported providers including all major clouds,
  24042. and other Pulumi ESC environments.
  24043. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  24044. type: string
  24045. organization:
  24046. description: |-
  24047. Organization are a space to collaborate on shared projects and stacks.
  24048. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  24049. type: string
  24050. project:
  24051. description: Project is the name of the Pulumi ESC project the environment belongs to.
  24052. type: string
  24053. required:
  24054. - accessToken
  24055. - environment
  24056. - organization
  24057. - project
  24058. type: object
  24059. scaleway:
  24060. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  24061. properties:
  24062. accessKey:
  24063. description: AccessKey is the non-secret part of the api key.
  24064. properties:
  24065. secretRef:
  24066. description: SecretRef references a key in a secret that will be used as value.
  24067. properties:
  24068. key:
  24069. description: |-
  24070. A key in the referenced Secret.
  24071. Some instances of this field may be defaulted, in others it may be required.
  24072. maxLength: 253
  24073. minLength: 1
  24074. pattern: ^[-._a-zA-Z0-9]+$
  24075. type: string
  24076. name:
  24077. description: The name of the Secret resource being referred to.
  24078. maxLength: 253
  24079. minLength: 1
  24080. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24081. type: string
  24082. namespace:
  24083. description: |-
  24084. The namespace of the Secret resource being referred to.
  24085. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24086. maxLength: 63
  24087. minLength: 1
  24088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24089. type: string
  24090. type: object
  24091. value:
  24092. description: Value can be specified directly to set a value without using a secret.
  24093. type: string
  24094. type: object
  24095. apiUrl:
  24096. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  24097. type: string
  24098. projectId:
  24099. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  24100. type: string
  24101. region:
  24102. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  24103. type: string
  24104. secretKey:
  24105. description: SecretKey is the non-secret part of the api key.
  24106. properties:
  24107. secretRef:
  24108. description: SecretRef references a key in a secret that will be used as value.
  24109. properties:
  24110. key:
  24111. description: |-
  24112. A key in the referenced Secret.
  24113. Some instances of this field may be defaulted, in others it may be required.
  24114. maxLength: 253
  24115. minLength: 1
  24116. pattern: ^[-._a-zA-Z0-9]+$
  24117. type: string
  24118. name:
  24119. description: The name of the Secret resource being referred to.
  24120. maxLength: 253
  24121. minLength: 1
  24122. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24123. type: string
  24124. namespace:
  24125. description: |-
  24126. The namespace of the Secret resource being referred to.
  24127. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24128. maxLength: 63
  24129. minLength: 1
  24130. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24131. type: string
  24132. type: object
  24133. value:
  24134. description: Value can be specified directly to set a value without using a secret.
  24135. type: string
  24136. type: object
  24137. required:
  24138. - accessKey
  24139. - projectId
  24140. - region
  24141. - secretKey
  24142. type: object
  24143. secretserver:
  24144. description: |-
  24145. SecretServer configures this store to sync secrets using SecretServer provider
  24146. https://docs.delinea.com/online-help/secret-server/start.htm
  24147. properties:
  24148. password:
  24149. description: Password is the secret server account password.
  24150. properties:
  24151. secretRef:
  24152. description: SecretRef references a key in a secret that will be used as value.
  24153. properties:
  24154. key:
  24155. description: |-
  24156. A key in the referenced Secret.
  24157. Some instances of this field may be defaulted, in others it may be required.
  24158. maxLength: 253
  24159. minLength: 1
  24160. pattern: ^[-._a-zA-Z0-9]+$
  24161. type: string
  24162. name:
  24163. description: The name of the Secret resource being referred to.
  24164. maxLength: 253
  24165. minLength: 1
  24166. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24167. type: string
  24168. namespace:
  24169. description: |-
  24170. The namespace of the Secret resource being referred to.
  24171. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24172. maxLength: 63
  24173. minLength: 1
  24174. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24175. type: string
  24176. type: object
  24177. value:
  24178. description: Value can be specified directly to set a value without using a secret.
  24179. type: string
  24180. type: object
  24181. serverURL:
  24182. description: |-
  24183. ServerURL
  24184. URL to your secret server installation
  24185. type: string
  24186. username:
  24187. description: Username is the secret server account username.
  24188. properties:
  24189. secretRef:
  24190. description: SecretRef references a key in a secret that will be used as value.
  24191. properties:
  24192. key:
  24193. description: |-
  24194. A key in the referenced Secret.
  24195. Some instances of this field may be defaulted, in others it may be required.
  24196. maxLength: 253
  24197. minLength: 1
  24198. pattern: ^[-._a-zA-Z0-9]+$
  24199. type: string
  24200. name:
  24201. description: The name of the Secret resource being referred to.
  24202. maxLength: 253
  24203. minLength: 1
  24204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24205. type: string
  24206. namespace:
  24207. description: |-
  24208. The namespace of the Secret resource being referred to.
  24209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24210. maxLength: 63
  24211. minLength: 1
  24212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24213. type: string
  24214. type: object
  24215. value:
  24216. description: Value can be specified directly to set a value without using a secret.
  24217. type: string
  24218. type: object
  24219. required:
  24220. - password
  24221. - serverURL
  24222. - username
  24223. type: object
  24224. senhasegura:
  24225. description: Senhasegura configures this store to sync secrets using senhasegura provider
  24226. properties:
  24227. auth:
  24228. description: Auth defines parameters to authenticate in senhasegura
  24229. properties:
  24230. clientId:
  24231. type: string
  24232. clientSecretSecretRef:
  24233. description: |-
  24234. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24235. In some instances, `key` is a required field.
  24236. properties:
  24237. key:
  24238. description: |-
  24239. A key in the referenced Secret.
  24240. Some instances of this field may be defaulted, in others it may be required.
  24241. maxLength: 253
  24242. minLength: 1
  24243. pattern: ^[-._a-zA-Z0-9]+$
  24244. type: string
  24245. name:
  24246. description: The name of the Secret resource being referred to.
  24247. maxLength: 253
  24248. minLength: 1
  24249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24250. type: string
  24251. namespace:
  24252. description: |-
  24253. The namespace of the Secret resource being referred to.
  24254. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24255. maxLength: 63
  24256. minLength: 1
  24257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24258. type: string
  24259. type: object
  24260. required:
  24261. - clientId
  24262. - clientSecretSecretRef
  24263. type: object
  24264. ignoreSslCertificate:
  24265. default: false
  24266. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  24267. type: boolean
  24268. module:
  24269. description: Module defines which senhasegura module should be used to get secrets
  24270. type: string
  24271. url:
  24272. description: URL of senhasegura
  24273. type: string
  24274. required:
  24275. - auth
  24276. - module
  24277. - url
  24278. type: object
  24279. vault:
  24280. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  24281. properties:
  24282. auth:
  24283. description: Auth configures how secret-manager authenticates with the Vault server.
  24284. properties:
  24285. appRole:
  24286. description: |-
  24287. AppRole authenticates with Vault using the App Role auth mechanism,
  24288. with the role and secret stored in a Kubernetes Secret resource.
  24289. properties:
  24290. path:
  24291. default: approle
  24292. description: |-
  24293. Path where the App Role authentication backend is mounted
  24294. in Vault, e.g: "approle"
  24295. type: string
  24296. roleId:
  24297. description: |-
  24298. RoleID configured in the App Role authentication backend when setting
  24299. up the authentication backend in Vault.
  24300. type: string
  24301. roleRef:
  24302. description: |-
  24303. Reference to a key in a Secret that contains the App Role ID used
  24304. to authenticate with Vault.
  24305. The `key` field must be specified and denotes which entry within the Secret
  24306. resource is used as the app role id.
  24307. properties:
  24308. key:
  24309. description: |-
  24310. A key in the referenced Secret.
  24311. Some instances of this field may be defaulted, in others it may be required.
  24312. maxLength: 253
  24313. minLength: 1
  24314. pattern: ^[-._a-zA-Z0-9]+$
  24315. type: string
  24316. name:
  24317. description: The name of the Secret resource being referred to.
  24318. maxLength: 253
  24319. minLength: 1
  24320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24321. type: string
  24322. namespace:
  24323. description: |-
  24324. The namespace of the Secret resource being referred to.
  24325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24326. maxLength: 63
  24327. minLength: 1
  24328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24329. type: string
  24330. type: object
  24331. secretRef:
  24332. description: |-
  24333. Reference to a key in a Secret that contains the App Role secret used
  24334. to authenticate with Vault.
  24335. The `key` field must be specified and denotes which entry within the Secret
  24336. resource is used as the app role secret.
  24337. properties:
  24338. key:
  24339. description: |-
  24340. A key in the referenced Secret.
  24341. Some instances of this field may be defaulted, in others it may be required.
  24342. maxLength: 253
  24343. minLength: 1
  24344. pattern: ^[-._a-zA-Z0-9]+$
  24345. type: string
  24346. name:
  24347. description: The name of the Secret resource being referred to.
  24348. maxLength: 253
  24349. minLength: 1
  24350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24351. type: string
  24352. namespace:
  24353. description: |-
  24354. The namespace of the Secret resource being referred to.
  24355. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24356. maxLength: 63
  24357. minLength: 1
  24358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24359. type: string
  24360. type: object
  24361. required:
  24362. - path
  24363. - secretRef
  24364. type: object
  24365. cert:
  24366. description: |-
  24367. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  24368. Cert authentication method
  24369. properties:
  24370. clientCert:
  24371. description: |-
  24372. ClientCert is a certificate to authenticate using the Cert Vault
  24373. authentication method
  24374. properties:
  24375. key:
  24376. description: |-
  24377. A key in the referenced Secret.
  24378. Some instances of this field may be defaulted, in others it may be required.
  24379. maxLength: 253
  24380. minLength: 1
  24381. pattern: ^[-._a-zA-Z0-9]+$
  24382. type: string
  24383. name:
  24384. description: The name of the Secret resource being referred to.
  24385. maxLength: 253
  24386. minLength: 1
  24387. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24388. type: string
  24389. namespace:
  24390. description: |-
  24391. The namespace of the Secret resource being referred to.
  24392. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24393. maxLength: 63
  24394. minLength: 1
  24395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24396. type: string
  24397. type: object
  24398. secretRef:
  24399. description: |-
  24400. SecretRef to a key in a Secret resource containing client private key to
  24401. authenticate with Vault using the Cert authentication method
  24402. properties:
  24403. key:
  24404. description: |-
  24405. A key in the referenced Secret.
  24406. Some instances of this field may be defaulted, in others it may be required.
  24407. maxLength: 253
  24408. minLength: 1
  24409. pattern: ^[-._a-zA-Z0-9]+$
  24410. type: string
  24411. name:
  24412. description: The name of the Secret resource being referred to.
  24413. maxLength: 253
  24414. minLength: 1
  24415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24416. type: string
  24417. namespace:
  24418. description: |-
  24419. The namespace of the Secret resource being referred to.
  24420. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24421. maxLength: 63
  24422. minLength: 1
  24423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24424. type: string
  24425. type: object
  24426. type: object
  24427. iam:
  24428. description: |-
  24429. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  24430. AWS IAM authentication method
  24431. properties:
  24432. externalID:
  24433. description: AWS External ID set on assumed IAM roles
  24434. type: string
  24435. jwt:
  24436. description: Specify a service account with IRSA enabled
  24437. properties:
  24438. serviceAccountRef:
  24439. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  24440. properties:
  24441. audiences:
  24442. description: |-
  24443. Audience specifies the `aud` claim for the service account token
  24444. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24445. then this audiences will be appended to the list
  24446. items:
  24447. type: string
  24448. type: array
  24449. name:
  24450. description: The name of the ServiceAccount resource being referred to.
  24451. maxLength: 253
  24452. minLength: 1
  24453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24454. type: string
  24455. namespace:
  24456. description: |-
  24457. Namespace of the resource being referred to.
  24458. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24459. maxLength: 63
  24460. minLength: 1
  24461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24462. type: string
  24463. required:
  24464. - name
  24465. type: object
  24466. type: object
  24467. path:
  24468. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  24469. type: string
  24470. region:
  24471. description: AWS region
  24472. type: string
  24473. role:
  24474. description: This is the AWS role to be assumed before talking to vault
  24475. type: string
  24476. secretRef:
  24477. description: Specify credentials in a Secret object
  24478. properties:
  24479. accessKeyIDSecretRef:
  24480. description: The AccessKeyID is used for authentication
  24481. properties:
  24482. key:
  24483. description: |-
  24484. A key in the referenced Secret.
  24485. Some instances of this field may be defaulted, in others it may be required.
  24486. maxLength: 253
  24487. minLength: 1
  24488. pattern: ^[-._a-zA-Z0-9]+$
  24489. type: string
  24490. name:
  24491. description: The name of the Secret resource being referred to.
  24492. maxLength: 253
  24493. minLength: 1
  24494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24495. type: string
  24496. namespace:
  24497. description: |-
  24498. The namespace of the Secret resource being referred to.
  24499. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24500. maxLength: 63
  24501. minLength: 1
  24502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24503. type: string
  24504. type: object
  24505. secretAccessKeySecretRef:
  24506. description: The SecretAccessKey is used for authentication
  24507. properties:
  24508. key:
  24509. description: |-
  24510. A key in the referenced Secret.
  24511. Some instances of this field may be defaulted, in others it may be required.
  24512. maxLength: 253
  24513. minLength: 1
  24514. pattern: ^[-._a-zA-Z0-9]+$
  24515. type: string
  24516. name:
  24517. description: The name of the Secret resource being referred to.
  24518. maxLength: 253
  24519. minLength: 1
  24520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24521. type: string
  24522. namespace:
  24523. description: |-
  24524. The namespace of the Secret resource being referred to.
  24525. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24526. maxLength: 63
  24527. minLength: 1
  24528. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24529. type: string
  24530. type: object
  24531. sessionTokenSecretRef:
  24532. description: |-
  24533. The SessionToken used for authentication
  24534. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  24535. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  24536. properties:
  24537. key:
  24538. description: |-
  24539. A key in the referenced Secret.
  24540. Some instances of this field may be defaulted, in others it may be required.
  24541. maxLength: 253
  24542. minLength: 1
  24543. pattern: ^[-._a-zA-Z0-9]+$
  24544. type: string
  24545. name:
  24546. description: The name of the Secret resource being referred to.
  24547. maxLength: 253
  24548. minLength: 1
  24549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24550. type: string
  24551. namespace:
  24552. description: |-
  24553. The namespace of the Secret resource being referred to.
  24554. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24555. maxLength: 63
  24556. minLength: 1
  24557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24558. type: string
  24559. type: object
  24560. type: object
  24561. vaultAwsIamServerID:
  24562. 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'
  24563. type: string
  24564. vaultRole:
  24565. 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
  24566. type: string
  24567. required:
  24568. - vaultRole
  24569. type: object
  24570. jwt:
  24571. description: |-
  24572. Jwt authenticates with Vault by passing role and JWT token using the
  24573. JWT/OIDC authentication method
  24574. properties:
  24575. kubernetesServiceAccountToken:
  24576. description: |-
  24577. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  24578. a token for with the `TokenRequest` API.
  24579. properties:
  24580. audiences:
  24581. description: |-
  24582. Optional audiences field that will be used to request a temporary Kubernetes service
  24583. account token for the service account referenced by `serviceAccountRef`.
  24584. Defaults to a single audience `vault` it not specified.
  24585. Deprecated: use serviceAccountRef.Audiences instead
  24586. items:
  24587. type: string
  24588. type: array
  24589. expirationSeconds:
  24590. description: |-
  24591. Optional expiration time in seconds that will be used to request a temporary
  24592. Kubernetes service account token for the service account referenced by
  24593. `serviceAccountRef`.
  24594. Deprecated: this will be removed in the future.
  24595. Defaults to 10 minutes.
  24596. format: int64
  24597. type: integer
  24598. serviceAccountRef:
  24599. description: Service account field containing the name of a kubernetes ServiceAccount.
  24600. properties:
  24601. audiences:
  24602. description: |-
  24603. Audience specifies the `aud` claim for the service account token
  24604. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24605. then this audiences will be appended to the list
  24606. items:
  24607. type: string
  24608. type: array
  24609. name:
  24610. description: The name of the ServiceAccount resource being referred to.
  24611. maxLength: 253
  24612. minLength: 1
  24613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24614. type: string
  24615. namespace:
  24616. description: |-
  24617. Namespace of the resource being referred to.
  24618. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24619. maxLength: 63
  24620. minLength: 1
  24621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24622. type: string
  24623. required:
  24624. - name
  24625. type: object
  24626. required:
  24627. - serviceAccountRef
  24628. type: object
  24629. path:
  24630. default: jwt
  24631. description: |-
  24632. Path where the JWT authentication backend is mounted
  24633. in Vault, e.g: "jwt"
  24634. type: string
  24635. role:
  24636. description: |-
  24637. Role is a JWT role to authenticate using the JWT/OIDC Vault
  24638. authentication method
  24639. type: string
  24640. secretRef:
  24641. description: |-
  24642. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  24643. authenticate with Vault using the JWT/OIDC authentication method.
  24644. properties:
  24645. key:
  24646. description: |-
  24647. A key in the referenced Secret.
  24648. Some instances of this field may be defaulted, in others it may be required.
  24649. maxLength: 253
  24650. minLength: 1
  24651. pattern: ^[-._a-zA-Z0-9]+$
  24652. type: string
  24653. name:
  24654. description: The name of the Secret resource being referred to.
  24655. maxLength: 253
  24656. minLength: 1
  24657. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24658. type: string
  24659. namespace:
  24660. description: |-
  24661. The namespace of the Secret resource being referred to.
  24662. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24663. maxLength: 63
  24664. minLength: 1
  24665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24666. type: string
  24667. type: object
  24668. required:
  24669. - path
  24670. type: object
  24671. kubernetes:
  24672. description: |-
  24673. Kubernetes authenticates with Vault by passing the ServiceAccount
  24674. token stored in the named Secret resource to the Vault server.
  24675. properties:
  24676. mountPath:
  24677. default: kubernetes
  24678. description: |-
  24679. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  24680. "kubernetes"
  24681. type: string
  24682. role:
  24683. description: |-
  24684. A required field containing the Vault Role to assume. A Role binds a
  24685. Kubernetes ServiceAccount with a set of Vault policies.
  24686. type: string
  24687. secretRef:
  24688. description: |-
  24689. Optional secret field containing a Kubernetes ServiceAccount JWT used
  24690. for authenticating with Vault. If a name is specified without a key,
  24691. `token` is the default. If one is not specified, the one bound to
  24692. the controller will be used.
  24693. properties:
  24694. key:
  24695. description: |-
  24696. A key in the referenced Secret.
  24697. Some instances of this field may be defaulted, in others it may be required.
  24698. maxLength: 253
  24699. minLength: 1
  24700. pattern: ^[-._a-zA-Z0-9]+$
  24701. type: string
  24702. name:
  24703. description: The name of the Secret resource being referred to.
  24704. maxLength: 253
  24705. minLength: 1
  24706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24707. type: string
  24708. namespace:
  24709. description: |-
  24710. The namespace of the Secret resource being referred to.
  24711. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24712. maxLength: 63
  24713. minLength: 1
  24714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24715. type: string
  24716. type: object
  24717. serviceAccountRef:
  24718. description: |-
  24719. Optional service account field containing the name of a kubernetes ServiceAccount.
  24720. If the service account is specified, the service account secret token JWT will be used
  24721. for authenticating with Vault. If the service account selector is not supplied,
  24722. the secretRef will be used instead.
  24723. properties:
  24724. audiences:
  24725. description: |-
  24726. Audience specifies the `aud` claim for the service account token
  24727. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24728. then this audiences will be appended to the list
  24729. items:
  24730. type: string
  24731. type: array
  24732. name:
  24733. description: The name of the ServiceAccount resource being referred to.
  24734. maxLength: 253
  24735. minLength: 1
  24736. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24737. type: string
  24738. namespace:
  24739. description: |-
  24740. Namespace of the resource being referred to.
  24741. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24742. maxLength: 63
  24743. minLength: 1
  24744. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24745. type: string
  24746. required:
  24747. - name
  24748. type: object
  24749. required:
  24750. - mountPath
  24751. - role
  24752. type: object
  24753. ldap:
  24754. description: |-
  24755. Ldap authenticates with Vault by passing username/password pair using
  24756. the LDAP authentication method
  24757. properties:
  24758. path:
  24759. default: ldap
  24760. description: |-
  24761. Path where the LDAP authentication backend is mounted
  24762. in Vault, e.g: "ldap"
  24763. type: string
  24764. secretRef:
  24765. description: |-
  24766. SecretRef to a key in a Secret resource containing password for the LDAP
  24767. user used to authenticate with Vault using the LDAP authentication
  24768. method
  24769. properties:
  24770. key:
  24771. description: |-
  24772. A key in the referenced Secret.
  24773. Some instances of this field may be defaulted, in others it may be required.
  24774. maxLength: 253
  24775. minLength: 1
  24776. pattern: ^[-._a-zA-Z0-9]+$
  24777. type: string
  24778. name:
  24779. description: The name of the Secret resource being referred to.
  24780. maxLength: 253
  24781. minLength: 1
  24782. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24783. type: string
  24784. namespace:
  24785. description: |-
  24786. The namespace of the Secret resource being referred to.
  24787. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24788. maxLength: 63
  24789. minLength: 1
  24790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24791. type: string
  24792. type: object
  24793. username:
  24794. description: |-
  24795. Username is an LDAP username used to authenticate using the LDAP Vault
  24796. authentication method
  24797. type: string
  24798. required:
  24799. - path
  24800. - username
  24801. type: object
  24802. namespace:
  24803. description: |-
  24804. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  24805. Namespaces is a set of features within Vault Enterprise that allows
  24806. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24807. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24808. This will default to Vault.Namespace field if set, or empty otherwise
  24809. type: string
  24810. tokenSecretRef:
  24811. description: TokenSecretRef authenticates with Vault by presenting a token.
  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. userPass:
  24837. description: UserPass authenticates with Vault by passing username/password pair
  24838. properties:
  24839. path:
  24840. default: userpass
  24841. description: |-
  24842. Path where the UserPassword authentication backend is mounted
  24843. in Vault, e.g: "userpass"
  24844. type: string
  24845. secretRef:
  24846. description: |-
  24847. SecretRef to a key in a Secret resource containing password for the
  24848. user used to authenticate with Vault using the UserPass authentication
  24849. method
  24850. properties:
  24851. key:
  24852. description: |-
  24853. A key in the referenced Secret.
  24854. Some instances of this field may be defaulted, in others it may be required.
  24855. maxLength: 253
  24856. minLength: 1
  24857. pattern: ^[-._a-zA-Z0-9]+$
  24858. type: string
  24859. name:
  24860. description: The name of the Secret resource being referred to.
  24861. maxLength: 253
  24862. minLength: 1
  24863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24864. type: string
  24865. namespace:
  24866. description: |-
  24867. The namespace of the Secret resource being referred to.
  24868. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24869. maxLength: 63
  24870. minLength: 1
  24871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24872. type: string
  24873. type: object
  24874. username:
  24875. description: |-
  24876. Username is a username used to authenticate using the UserPass Vault
  24877. authentication method
  24878. type: string
  24879. required:
  24880. - path
  24881. - username
  24882. type: object
  24883. type: object
  24884. caBundle:
  24885. description: |-
  24886. PEM encoded CA bundle used to validate Vault server certificate. Only used
  24887. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24888. plain HTTP protocol connection. If not set the system root certificates
  24889. are used to validate the TLS connection.
  24890. format: byte
  24891. type: string
  24892. caProvider:
  24893. description: The provider for the CA bundle to use to validate Vault server certificate.
  24894. properties:
  24895. key:
  24896. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24897. maxLength: 253
  24898. minLength: 1
  24899. pattern: ^[-._a-zA-Z0-9]+$
  24900. type: string
  24901. name:
  24902. description: The name of the object located at the provider type.
  24903. maxLength: 253
  24904. minLength: 1
  24905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24906. type: string
  24907. namespace:
  24908. description: |-
  24909. The namespace the Provider type is in.
  24910. Can only be defined when used in a ClusterSecretStore.
  24911. maxLength: 63
  24912. minLength: 1
  24913. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24914. type: string
  24915. type:
  24916. description: The type of provider to use such as "Secret", or "ConfigMap".
  24917. enum:
  24918. - Secret
  24919. - ConfigMap
  24920. type: string
  24921. required:
  24922. - name
  24923. - type
  24924. type: object
  24925. forwardInconsistent:
  24926. description: |-
  24927. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  24928. leader instead of simply retrying within a loop. This can increase performance if
  24929. the option is enabled serverside.
  24930. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  24931. type: boolean
  24932. headers:
  24933. additionalProperties:
  24934. type: string
  24935. description: Headers to be added in Vault request
  24936. type: object
  24937. namespace:
  24938. description: |-
  24939. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  24940. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24941. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24942. type: string
  24943. path:
  24944. description: |-
  24945. Path is the mount path of the Vault KV backend endpoint, e.g:
  24946. "secret". The v2 KV secret engine version specific "/data" path suffix
  24947. for fetching secrets from Vault is optional and will be appended
  24948. if not present in specified path.
  24949. type: string
  24950. readYourWrites:
  24951. description: |-
  24952. ReadYourWrites ensures isolated read-after-write semantics by
  24953. providing discovered cluster replication states in each request.
  24954. More information about eventual consistency in Vault can be found here
  24955. https://www.vaultproject.io/docs/enterprise/consistency
  24956. type: boolean
  24957. server:
  24958. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  24959. type: string
  24960. tls:
  24961. description: |-
  24962. The configuration used for client side related TLS communication, when the Vault server
  24963. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  24964. This parameter is ignored for plain HTTP protocol connection.
  24965. It's worth noting this configuration is different from the "TLS certificates auth method",
  24966. which is available under the `auth.cert` section.
  24967. properties:
  24968. certSecretRef:
  24969. description: |-
  24970. CertSecretRef is a certificate added to the transport layer
  24971. when communicating with the Vault server.
  24972. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  24973. properties:
  24974. key:
  24975. description: |-
  24976. A key in the referenced Secret.
  24977. Some instances of this field may be defaulted, in others it may be required.
  24978. maxLength: 253
  24979. minLength: 1
  24980. pattern: ^[-._a-zA-Z0-9]+$
  24981. type: string
  24982. name:
  24983. description: The name of the Secret resource being referred to.
  24984. maxLength: 253
  24985. minLength: 1
  24986. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24987. type: string
  24988. namespace:
  24989. description: |-
  24990. The namespace of the Secret resource being referred to.
  24991. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24992. maxLength: 63
  24993. minLength: 1
  24994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24995. type: string
  24996. type: object
  24997. keySecretRef:
  24998. description: |-
  24999. KeySecretRef to a key in a Secret resource containing client private key
  25000. added to the transport layer when communicating with the Vault server.
  25001. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  25002. properties:
  25003. key:
  25004. description: |-
  25005. A key in the referenced Secret.
  25006. Some instances of this field may be defaulted, in others it may be required.
  25007. maxLength: 253
  25008. minLength: 1
  25009. pattern: ^[-._a-zA-Z0-9]+$
  25010. type: string
  25011. name:
  25012. description: The name of the Secret resource being referred to.
  25013. maxLength: 253
  25014. minLength: 1
  25015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25016. type: string
  25017. namespace:
  25018. description: |-
  25019. The namespace of the Secret resource being referred to.
  25020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25021. maxLength: 63
  25022. minLength: 1
  25023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25024. type: string
  25025. type: object
  25026. type: object
  25027. version:
  25028. default: v2
  25029. description: |-
  25030. Version is the Vault KV secret engine version. This can be either "v1" or
  25031. "v2". Version defaults to "v2".
  25032. enum:
  25033. - v1
  25034. - v2
  25035. type: string
  25036. required:
  25037. - server
  25038. type: object
  25039. webhook:
  25040. description: Webhook configures this store to sync secrets using a generic templated webhook
  25041. properties:
  25042. auth:
  25043. description: Auth specifies a authorization protocol. Only one protocol may be set.
  25044. maxProperties: 1
  25045. minProperties: 1
  25046. properties:
  25047. ntlm:
  25048. description: NTLMProtocol configures the store to use NTLM for auth
  25049. properties:
  25050. passwordSecret:
  25051. description: |-
  25052. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25053. In some instances, `key` is a required field.
  25054. properties:
  25055. key:
  25056. description: |-
  25057. A key in the referenced Secret.
  25058. Some instances of this field may be defaulted, in others it may be required.
  25059. maxLength: 253
  25060. minLength: 1
  25061. pattern: ^[-._a-zA-Z0-9]+$
  25062. type: string
  25063. name:
  25064. description: The name of the Secret resource being referred to.
  25065. maxLength: 253
  25066. minLength: 1
  25067. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25068. type: string
  25069. namespace:
  25070. description: |-
  25071. The namespace of the Secret resource being referred to.
  25072. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25073. maxLength: 63
  25074. minLength: 1
  25075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25076. type: string
  25077. type: object
  25078. usernameSecret:
  25079. description: |-
  25080. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25081. In some instances, `key` is a required field.
  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. required:
  25107. - passwordSecret
  25108. - usernameSecret
  25109. type: object
  25110. type: object
  25111. body:
  25112. description: Body
  25113. type: string
  25114. caBundle:
  25115. description: |-
  25116. PEM encoded CA bundle used to validate webhook server certificate. Only used
  25117. if the Server URL is using HTTPS protocol. This parameter is ignored for
  25118. plain HTTP protocol connection. If not set the system root certificates
  25119. are used to validate the TLS connection.
  25120. format: byte
  25121. type: string
  25122. caProvider:
  25123. description: The provider for the CA bundle to use to validate webhook server certificate.
  25124. properties:
  25125. key:
  25126. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  25127. maxLength: 253
  25128. minLength: 1
  25129. pattern: ^[-._a-zA-Z0-9]+$
  25130. type: string
  25131. name:
  25132. description: The name of the object located at the provider type.
  25133. maxLength: 253
  25134. minLength: 1
  25135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25136. type: string
  25137. namespace:
  25138. description: The namespace the Provider type is in.
  25139. maxLength: 63
  25140. minLength: 1
  25141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25142. type: string
  25143. type:
  25144. description: The type of provider to use such as "Secret", or "ConfigMap".
  25145. enum:
  25146. - Secret
  25147. - ConfigMap
  25148. type: string
  25149. required:
  25150. - name
  25151. - type
  25152. type: object
  25153. headers:
  25154. additionalProperties:
  25155. type: string
  25156. description: Headers
  25157. type: object
  25158. method:
  25159. description: Webhook Method
  25160. type: string
  25161. result:
  25162. description: Result formatting
  25163. properties:
  25164. jsonPath:
  25165. description: Json path of return value
  25166. type: string
  25167. type: object
  25168. secrets:
  25169. description: |-
  25170. Secrets to fill in templates
  25171. These secrets will be passed to the templating function as key value pairs under the given name
  25172. items:
  25173. description: WebhookSecret defines a secret to be used in webhook templates.
  25174. properties:
  25175. name:
  25176. description: Name of this secret in templates
  25177. type: string
  25178. secretRef:
  25179. description: Secret ref to fill in credentials
  25180. properties:
  25181. key:
  25182. description: |-
  25183. A key in the referenced Secret.
  25184. Some instances of this field may be defaulted, in others it may be required.
  25185. maxLength: 253
  25186. minLength: 1
  25187. pattern: ^[-._a-zA-Z0-9]+$
  25188. type: string
  25189. name:
  25190. description: The name of the Secret resource being referred to.
  25191. maxLength: 253
  25192. minLength: 1
  25193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25194. type: string
  25195. namespace:
  25196. description: |-
  25197. The namespace of the Secret resource being referred to.
  25198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25199. maxLength: 63
  25200. minLength: 1
  25201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25202. type: string
  25203. type: object
  25204. required:
  25205. - name
  25206. - secretRef
  25207. type: object
  25208. type: array
  25209. timeout:
  25210. description: Timeout
  25211. type: string
  25212. url:
  25213. description: Webhook url to call
  25214. type: string
  25215. required:
  25216. - result
  25217. - url
  25218. type: object
  25219. yandexcertificatemanager:
  25220. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  25221. properties:
  25222. apiEndpoint:
  25223. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  25224. type: string
  25225. auth:
  25226. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  25227. properties:
  25228. authorizedKeySecretRef:
  25229. description: The authorized key used for authentication
  25230. properties:
  25231. key:
  25232. description: |-
  25233. A key in the referenced Secret.
  25234. Some instances of this field may be defaulted, in others it may be required.
  25235. maxLength: 253
  25236. minLength: 1
  25237. pattern: ^[-._a-zA-Z0-9]+$
  25238. type: string
  25239. name:
  25240. description: The name of the Secret resource being referred to.
  25241. maxLength: 253
  25242. minLength: 1
  25243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25244. type: string
  25245. namespace:
  25246. description: |-
  25247. The namespace of the Secret resource being referred to.
  25248. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25249. maxLength: 63
  25250. minLength: 1
  25251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25252. type: string
  25253. type: object
  25254. type: object
  25255. caProvider:
  25256. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  25257. properties:
  25258. certSecretRef:
  25259. description: |-
  25260. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25261. In some instances, `key` is a required field.
  25262. properties:
  25263. key:
  25264. description: |-
  25265. A key in the referenced Secret.
  25266. Some instances of this field may be defaulted, in others it may be required.
  25267. maxLength: 253
  25268. minLength: 1
  25269. pattern: ^[-._a-zA-Z0-9]+$
  25270. type: string
  25271. name:
  25272. description: The name of the Secret resource being referred to.
  25273. maxLength: 253
  25274. minLength: 1
  25275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25276. type: string
  25277. namespace:
  25278. description: |-
  25279. The namespace of the Secret resource being referred to.
  25280. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25281. maxLength: 63
  25282. minLength: 1
  25283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25284. type: string
  25285. type: object
  25286. type: object
  25287. required:
  25288. - auth
  25289. type: object
  25290. yandexlockbox:
  25291. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  25292. properties:
  25293. apiEndpoint:
  25294. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  25295. type: string
  25296. auth:
  25297. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  25298. properties:
  25299. authorizedKeySecretRef:
  25300. description: The authorized key used for authentication
  25301. properties:
  25302. key:
  25303. description: |-
  25304. A key in the referenced Secret.
  25305. Some instances of this field may be defaulted, in others it may be required.
  25306. maxLength: 253
  25307. minLength: 1
  25308. pattern: ^[-._a-zA-Z0-9]+$
  25309. type: string
  25310. name:
  25311. description: The name of the Secret resource being referred to.
  25312. maxLength: 253
  25313. minLength: 1
  25314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25315. type: string
  25316. namespace:
  25317. description: |-
  25318. The namespace of the Secret resource being referred to.
  25319. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25320. maxLength: 63
  25321. minLength: 1
  25322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25323. type: string
  25324. type: object
  25325. type: object
  25326. caProvider:
  25327. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  25328. properties:
  25329. certSecretRef:
  25330. description: |-
  25331. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25332. In some instances, `key` is a required field.
  25333. properties:
  25334. key:
  25335. description: |-
  25336. A key in the referenced Secret.
  25337. Some instances of this field may be defaulted, in others it may be required.
  25338. maxLength: 253
  25339. minLength: 1
  25340. pattern: ^[-._a-zA-Z0-9]+$
  25341. type: string
  25342. name:
  25343. description: The name of the Secret resource being referred to.
  25344. maxLength: 253
  25345. minLength: 1
  25346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25347. type: string
  25348. namespace:
  25349. description: |-
  25350. The namespace of the Secret resource being referred to.
  25351. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25352. maxLength: 63
  25353. minLength: 1
  25354. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25355. type: string
  25356. type: object
  25357. type: object
  25358. required:
  25359. - auth
  25360. type: object
  25361. type: object
  25362. refreshInterval:
  25363. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  25364. type: integer
  25365. retrySettings:
  25366. description: Used to configure HTTP retries on failures.
  25367. properties:
  25368. maxRetries:
  25369. description: MaxRetries is the maximum number of retry attempts.
  25370. format: int32
  25371. type: integer
  25372. retryInterval:
  25373. description: RetryInterval is the interval between retry attempts.
  25374. type: string
  25375. type: object
  25376. required:
  25377. - provider
  25378. type: object
  25379. status:
  25380. description: SecretStoreStatus defines the observed state of the SecretStore.
  25381. properties:
  25382. capabilities:
  25383. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  25384. type: string
  25385. conditions:
  25386. items:
  25387. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  25388. properties:
  25389. lastTransitionTime:
  25390. format: date-time
  25391. type: string
  25392. message:
  25393. type: string
  25394. reason:
  25395. type: string
  25396. status:
  25397. type: string
  25398. type:
  25399. description: SecretStoreConditionType represents the condition type of the SecretStore.
  25400. type: string
  25401. required:
  25402. - status
  25403. - type
  25404. type: object
  25405. type: array
  25406. type: object
  25407. type: object
  25408. served: false
  25409. storage: false
  25410. subresources:
  25411. status: {}
  25412. ---
  25413. apiVersion: apiextensions.k8s.io/v1
  25414. kind: CustomResourceDefinition
  25415. metadata:
  25416. annotations:
  25417. controller-gen.kubebuilder.io/version: v0.19.0
  25418. labels:
  25419. external-secrets.io/component: controller
  25420. name: acraccesstokens.generators.external-secrets.io
  25421. spec:
  25422. group: generators.external-secrets.io
  25423. names:
  25424. categories:
  25425. - external-secrets
  25426. - external-secrets-generators
  25427. kind: ACRAccessToken
  25428. listKind: ACRAccessTokenList
  25429. plural: acraccesstokens
  25430. singular: acraccesstoken
  25431. scope: Namespaced
  25432. versions:
  25433. - name: v1alpha1
  25434. schema:
  25435. openAPIV3Schema:
  25436. description: |-
  25437. ACRAccessToken returns an Azure Container Registry token
  25438. that can be used for pushing/pulling images.
  25439. Note: by default it will return an ACR Refresh Token with full access
  25440. (depending on the identity).
  25441. This can be scoped down to the repository level using .spec.scope.
  25442. In case scope is defined it will return an ACR Access Token.
  25443. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  25444. properties:
  25445. apiVersion:
  25446. description: |-
  25447. APIVersion defines the versioned schema of this representation of an object.
  25448. Servers should convert recognized schemas to the latest internal value, and
  25449. may reject unrecognized values.
  25450. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25451. type: string
  25452. kind:
  25453. description: |-
  25454. Kind is a string value representing the REST resource this object represents.
  25455. Servers may infer this from the endpoint the client submits requests to.
  25456. Cannot be updated.
  25457. In CamelCase.
  25458. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25459. type: string
  25460. metadata:
  25461. type: object
  25462. spec:
  25463. description: |-
  25464. ACRAccessTokenSpec defines how to generate the access token
  25465. e.g. how to authenticate and which registry to use.
  25466. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25467. properties:
  25468. auth:
  25469. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25470. properties:
  25471. managedIdentity:
  25472. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25473. properties:
  25474. identityId:
  25475. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25476. type: string
  25477. type: object
  25478. servicePrincipal:
  25479. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25480. properties:
  25481. secretRef:
  25482. description: |-
  25483. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25484. It uses static credentials stored in a Kind=Secret.
  25485. properties:
  25486. clientId:
  25487. description: The Azure clientId of the service principle used for authentication.
  25488. properties:
  25489. key:
  25490. description: |-
  25491. A key in the referenced Secret.
  25492. Some instances of this field may be defaulted, in others it may be required.
  25493. maxLength: 253
  25494. minLength: 1
  25495. pattern: ^[-._a-zA-Z0-9]+$
  25496. type: string
  25497. name:
  25498. description: The name of the Secret resource being referred to.
  25499. maxLength: 253
  25500. minLength: 1
  25501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25502. type: string
  25503. namespace:
  25504. description: |-
  25505. The namespace of the Secret resource being referred to.
  25506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25507. maxLength: 63
  25508. minLength: 1
  25509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25510. type: string
  25511. type: object
  25512. clientSecret:
  25513. description: The Azure ClientSecret of the service principle used for authentication.
  25514. properties:
  25515. key:
  25516. description: |-
  25517. A key in the referenced Secret.
  25518. Some instances of this field may be defaulted, in others it may be required.
  25519. maxLength: 253
  25520. minLength: 1
  25521. pattern: ^[-._a-zA-Z0-9]+$
  25522. type: string
  25523. name:
  25524. description: The name of the Secret resource being referred to.
  25525. maxLength: 253
  25526. minLength: 1
  25527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25528. type: string
  25529. namespace:
  25530. description: |-
  25531. The namespace of the Secret resource being referred to.
  25532. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25533. maxLength: 63
  25534. minLength: 1
  25535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25536. type: string
  25537. type: object
  25538. type: object
  25539. required:
  25540. - secretRef
  25541. type: object
  25542. workloadIdentity:
  25543. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  25544. properties:
  25545. serviceAccountRef:
  25546. description: |-
  25547. ServiceAccountRef specified the service account
  25548. that should be used when authenticating with WorkloadIdentity.
  25549. properties:
  25550. audiences:
  25551. description: |-
  25552. Audience specifies the `aud` claim for the service account token
  25553. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25554. then this audiences will be appended to the list
  25555. items:
  25556. type: string
  25557. type: array
  25558. name:
  25559. description: The name of the ServiceAccount resource being referred to.
  25560. maxLength: 253
  25561. minLength: 1
  25562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25563. type: string
  25564. namespace:
  25565. description: |-
  25566. Namespace of the resource being referred to.
  25567. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25568. maxLength: 63
  25569. minLength: 1
  25570. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25571. type: string
  25572. required:
  25573. - name
  25574. type: object
  25575. type: object
  25576. type: object
  25577. environmentType:
  25578. default: PublicCloud
  25579. description: |-
  25580. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25581. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25582. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25583. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25584. enum:
  25585. - PublicCloud
  25586. - USGovernmentCloud
  25587. - ChinaCloud
  25588. - GermanCloud
  25589. - AzureStackCloud
  25590. type: string
  25591. registry:
  25592. description: |-
  25593. the domain name of the ACR registry
  25594. e.g. foobarexample.azurecr.io
  25595. type: string
  25596. scope:
  25597. description: |-
  25598. Define the scope for the access token, e.g. pull/push access for a repository.
  25599. if not provided it will return a refresh token that has full scope.
  25600. Note: you need to pin it down to the repository level, there is no wildcard available.
  25601. examples:
  25602. repository:my-repository:pull,push
  25603. repository:my-repository:pull
  25604. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25605. type: string
  25606. tenantId:
  25607. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25608. type: string
  25609. required:
  25610. - auth
  25611. - registry
  25612. type: object
  25613. type: object
  25614. served: true
  25615. storage: true
  25616. subresources:
  25617. status: {}
  25618. ---
  25619. apiVersion: apiextensions.k8s.io/v1
  25620. kind: CustomResourceDefinition
  25621. metadata:
  25622. annotations:
  25623. controller-gen.kubebuilder.io/version: v0.19.0
  25624. labels:
  25625. external-secrets.io/component: controller
  25626. name: beyondtrustworkloadcredentialsdynamicsecrets.generators.external-secrets.io
  25627. spec:
  25628. group: generators.external-secrets.io
  25629. names:
  25630. categories:
  25631. - external-secrets
  25632. - external-secrets-generators
  25633. kind: BeyondtrustWorkloadCredentialsDynamicSecret
  25634. listKind: BeyondtrustWorkloadCredentialsDynamicSecretList
  25635. plural: beyondtrustworkloadcredentialsdynamicsecrets
  25636. singular: beyondtrustworkloadcredentialsdynamicsecret
  25637. scope: Namespaced
  25638. versions:
  25639. - name: v1alpha1
  25640. schema:
  25641. openAPIV3Schema:
  25642. description: |-
  25643. BeyondtrustWorkloadCredentialsDynamicSecret represents a generator that requests dynamic credentials from BeyondTrust Workload Credentials.
  25644. This generator calls the BeyondTrust Workload Credentials API to generate fresh, temporary credentials
  25645. (such as AWS STS credentials) each time an ExternalSecret is refreshed.
  25646. Dynamic secret definitions must be created in BeyondTrust Workload Credentials before they can be referenced.
  25647. For complete documentation, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25648. properties:
  25649. apiVersion:
  25650. description: |-
  25651. APIVersion defines the versioned schema of this representation of an object.
  25652. Servers should convert recognized schemas to the latest internal value, and
  25653. may reject unrecognized values.
  25654. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25655. type: string
  25656. kind:
  25657. description: |-
  25658. Kind is a string value representing the REST resource this object represents.
  25659. Servers may infer this from the endpoint the client submits requests to.
  25660. Cannot be updated.
  25661. In CamelCase.
  25662. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25663. type: string
  25664. metadata:
  25665. type: object
  25666. spec:
  25667. description: |-
  25668. BeyondtrustWorkloadCredentialsDynamicSecretSpec defines the desired spec for BeyondtrustWorkloadCredentials dynamic generator.
  25669. This generator enables obtaining temporary, short-lived credentials from BeyondTrust Workload Credentials.
  25670. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25671. properties:
  25672. controller:
  25673. description: |-
  25674. Controller selects the controller that should handle this generator.
  25675. Leave empty to use the default controller.
  25676. type: string
  25677. provider:
  25678. description: |-
  25679. Provider contains the BeyondtrustWorkloadCredentials provider configuration including authentication,
  25680. server connection details, and the folder path to the dynamic secret definition.
  25681. The folderPath should point to a dynamic secret definition that has been created in
  25682. BeyondTrust Workload Credentials (e.g., "production/aws-temp").
  25683. For setup details, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25684. properties:
  25685. auth:
  25686. description: |-
  25687. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  25688. Currently supports API key authentication via Kubernetes secret reference.
  25689. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  25690. properties:
  25691. apikey:
  25692. description: |-
  25693. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  25694. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  25695. properties:
  25696. token:
  25697. description: |-
  25698. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  25699. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  25700. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  25701. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  25702. properties:
  25703. key:
  25704. description: |-
  25705. A key in the referenced Secret.
  25706. Some instances of this field may be defaulted, in others it may be required.
  25707. maxLength: 253
  25708. minLength: 1
  25709. pattern: ^[-._a-zA-Z0-9]+$
  25710. type: string
  25711. name:
  25712. description: The name of the Secret resource being referred to.
  25713. maxLength: 253
  25714. minLength: 1
  25715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25716. type: string
  25717. namespace:
  25718. description: |-
  25719. The namespace of the Secret resource being referred to.
  25720. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25721. maxLength: 63
  25722. minLength: 1
  25723. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25724. type: string
  25725. type: object
  25726. required:
  25727. - token
  25728. type: object
  25729. required:
  25730. - apikey
  25731. type: object
  25732. caBundle:
  25733. description: |-
  25734. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  25735. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  25736. If not set, the system's trusted root certificates are used.
  25737. format: byte
  25738. type: string
  25739. caProvider:
  25740. description: |-
  25741. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  25742. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  25743. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  25744. properties:
  25745. key:
  25746. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  25747. maxLength: 253
  25748. minLength: 1
  25749. pattern: ^[-._a-zA-Z0-9]+$
  25750. type: string
  25751. name:
  25752. description: The name of the object located at the provider type.
  25753. maxLength: 253
  25754. minLength: 1
  25755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25756. type: string
  25757. namespace:
  25758. description: |-
  25759. The namespace the Provider type is in.
  25760. Can only be defined when used in a ClusterSecretStore.
  25761. maxLength: 63
  25762. minLength: 1
  25763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25764. type: string
  25765. type:
  25766. description: The type of provider to use such as "Secret", or "ConfigMap".
  25767. enum:
  25768. - Secret
  25769. - ConfigMap
  25770. type: string
  25771. required:
  25772. - name
  25773. - type
  25774. type: object
  25775. folderPath:
  25776. description: |-
  25777. FolderPath specifies the default folder path for secret retrieval.
  25778. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  25779. Example: "production/database" or "dev/api-keys"
  25780. Leave empty to retrieve secrets from the root folder.
  25781. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  25782. type: string
  25783. server:
  25784. description: |-
  25785. Server configures the BeyondTrust Workload Credentials server connection details.
  25786. Includes the API URL and Site ID for your BeyondTrust instance.
  25787. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25788. properties:
  25789. apiUrl:
  25790. description: |-
  25791. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  25792. This should be the full URL to your BeyondTrust instance.
  25793. Example: https://api.beyondtrust.io/siie
  25794. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  25795. type: string
  25796. siteId:
  25797. description: |-
  25798. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  25799. This identifier is unique to your BeyondTrust Workload Credentials instance.
  25800. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  25801. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  25802. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25803. type: string
  25804. required:
  25805. - apiUrl
  25806. - siteId
  25807. type: object
  25808. required:
  25809. - auth
  25810. - server
  25811. type: object
  25812. retrySettings:
  25813. description: |-
  25814. RetrySettings configures exponential backoff for failed API requests.
  25815. If not specified, uses the default retry settings.
  25816. properties:
  25817. maxRetries:
  25818. format: int32
  25819. type: integer
  25820. retryInterval:
  25821. type: string
  25822. type: object
  25823. required:
  25824. - provider
  25825. type: object
  25826. type: object
  25827. served: true
  25828. storage: true
  25829. subresources:
  25830. status: {}
  25831. ---
  25832. apiVersion: apiextensions.k8s.io/v1
  25833. kind: CustomResourceDefinition
  25834. metadata:
  25835. annotations:
  25836. controller-gen.kubebuilder.io/version: v0.19.0
  25837. labels:
  25838. external-secrets.io/component: controller
  25839. name: cloudsmithaccesstokens.generators.external-secrets.io
  25840. spec:
  25841. group: generators.external-secrets.io
  25842. names:
  25843. categories:
  25844. - external-secrets
  25845. - external-secrets-generators
  25846. kind: CloudsmithAccessToken
  25847. listKind: CloudsmithAccessTokenList
  25848. plural: cloudsmithaccesstokens
  25849. singular: cloudsmithaccesstoken
  25850. scope: Namespaced
  25851. versions:
  25852. - name: v1alpha1
  25853. schema:
  25854. openAPIV3Schema:
  25855. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  25856. properties:
  25857. apiVersion:
  25858. description: |-
  25859. APIVersion defines the versioned schema of this representation of an object.
  25860. Servers should convert recognized schemas to the latest internal value, and
  25861. may reject unrecognized values.
  25862. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25863. type: string
  25864. kind:
  25865. description: |-
  25866. Kind is a string value representing the REST resource this object represents.
  25867. Servers may infer this from the endpoint the client submits requests to.
  25868. Cannot be updated.
  25869. In CamelCase.
  25870. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25871. type: string
  25872. metadata:
  25873. type: object
  25874. spec:
  25875. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25876. properties:
  25877. apiUrl:
  25878. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25879. type: string
  25880. orgSlug:
  25881. description: OrgSlug is the organization slug in Cloudsmith
  25882. type: string
  25883. serviceAccountRef:
  25884. description: Name of the service account you are federating with
  25885. properties:
  25886. audiences:
  25887. description: |-
  25888. Audience specifies the `aud` claim for the service account token
  25889. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25890. then this audiences will be appended to the list
  25891. items:
  25892. type: string
  25893. type: array
  25894. name:
  25895. description: The name of the ServiceAccount resource being referred to.
  25896. maxLength: 253
  25897. minLength: 1
  25898. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25899. type: string
  25900. namespace:
  25901. description: |-
  25902. Namespace of the resource being referred to.
  25903. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25904. maxLength: 63
  25905. minLength: 1
  25906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25907. type: string
  25908. required:
  25909. - name
  25910. type: object
  25911. serviceSlug:
  25912. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25913. type: string
  25914. required:
  25915. - orgSlug
  25916. - serviceAccountRef
  25917. - serviceSlug
  25918. type: object
  25919. type: object
  25920. served: true
  25921. storage: true
  25922. subresources:
  25923. status: {}
  25924. ---
  25925. apiVersion: apiextensions.k8s.io/v1
  25926. kind: CustomResourceDefinition
  25927. metadata:
  25928. annotations:
  25929. controller-gen.kubebuilder.io/version: v0.19.0
  25930. labels:
  25931. external-secrets.io/component: controller
  25932. name: clustergenerators.generators.external-secrets.io
  25933. spec:
  25934. group: generators.external-secrets.io
  25935. names:
  25936. categories:
  25937. - external-secrets
  25938. - external-secrets-generators
  25939. kind: ClusterGenerator
  25940. listKind: ClusterGeneratorList
  25941. plural: clustergenerators
  25942. singular: clustergenerator
  25943. scope: Cluster
  25944. versions:
  25945. - name: v1alpha1
  25946. schema:
  25947. openAPIV3Schema:
  25948. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  25949. properties:
  25950. apiVersion:
  25951. description: |-
  25952. APIVersion defines the versioned schema of this representation of an object.
  25953. Servers should convert recognized schemas to the latest internal value, and
  25954. may reject unrecognized values.
  25955. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25956. type: string
  25957. kind:
  25958. description: |-
  25959. Kind is a string value representing the REST resource this object represents.
  25960. Servers may infer this from the endpoint the client submits requests to.
  25961. Cannot be updated.
  25962. In CamelCase.
  25963. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25964. type: string
  25965. metadata:
  25966. type: object
  25967. spec:
  25968. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  25969. properties:
  25970. generator:
  25971. description: Generator the spec for this generator, must match the kind.
  25972. maxProperties: 1
  25973. minProperties: 1
  25974. properties:
  25975. acrAccessTokenSpec:
  25976. description: |-
  25977. ACRAccessTokenSpec defines how to generate the access token
  25978. e.g. how to authenticate and which registry to use.
  25979. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25980. properties:
  25981. auth:
  25982. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25983. properties:
  25984. managedIdentity:
  25985. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25986. properties:
  25987. identityId:
  25988. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25989. type: string
  25990. type: object
  25991. servicePrincipal:
  25992. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25993. properties:
  25994. secretRef:
  25995. description: |-
  25996. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25997. It uses static credentials stored in a Kind=Secret.
  25998. properties:
  25999. clientId:
  26000. description: The Azure clientId of the service principle used for authentication.
  26001. properties:
  26002. key:
  26003. description: |-
  26004. A key in the referenced Secret.
  26005. Some instances of this field may be defaulted, in others it may be required.
  26006. maxLength: 253
  26007. minLength: 1
  26008. pattern: ^[-._a-zA-Z0-9]+$
  26009. type: string
  26010. name:
  26011. description: The name of the Secret resource being referred to.
  26012. maxLength: 253
  26013. minLength: 1
  26014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26015. type: string
  26016. namespace:
  26017. description: |-
  26018. The namespace of the Secret resource being referred to.
  26019. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26020. maxLength: 63
  26021. minLength: 1
  26022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26023. type: string
  26024. type: object
  26025. clientSecret:
  26026. description: The Azure ClientSecret of the service principle used for authentication.
  26027. properties:
  26028. key:
  26029. description: |-
  26030. A key in the referenced Secret.
  26031. Some instances of this field may be defaulted, in others it may be required.
  26032. maxLength: 253
  26033. minLength: 1
  26034. pattern: ^[-._a-zA-Z0-9]+$
  26035. type: string
  26036. name:
  26037. description: The name of the Secret resource being referred to.
  26038. maxLength: 253
  26039. minLength: 1
  26040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26041. type: string
  26042. namespace:
  26043. description: |-
  26044. The namespace of the Secret resource being referred to.
  26045. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26046. maxLength: 63
  26047. minLength: 1
  26048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26049. type: string
  26050. type: object
  26051. type: object
  26052. required:
  26053. - secretRef
  26054. type: object
  26055. workloadIdentity:
  26056. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  26057. properties:
  26058. serviceAccountRef:
  26059. description: |-
  26060. ServiceAccountRef specified the service account
  26061. that should be used when authenticating with WorkloadIdentity.
  26062. properties:
  26063. audiences:
  26064. description: |-
  26065. Audience specifies the `aud` claim for the service account token
  26066. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26067. then this audiences will be appended to the list
  26068. items:
  26069. type: string
  26070. type: array
  26071. name:
  26072. description: The name of the ServiceAccount resource being referred to.
  26073. maxLength: 253
  26074. minLength: 1
  26075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26076. type: string
  26077. namespace:
  26078. description: |-
  26079. Namespace of the resource being referred to.
  26080. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26081. maxLength: 63
  26082. minLength: 1
  26083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26084. type: string
  26085. required:
  26086. - name
  26087. type: object
  26088. type: object
  26089. type: object
  26090. environmentType:
  26091. default: PublicCloud
  26092. description: |-
  26093. EnvironmentType specifies the Azure cloud environment endpoints to use for
  26094. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  26095. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  26096. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  26097. enum:
  26098. - PublicCloud
  26099. - USGovernmentCloud
  26100. - ChinaCloud
  26101. - GermanCloud
  26102. - AzureStackCloud
  26103. type: string
  26104. registry:
  26105. description: |-
  26106. the domain name of the ACR registry
  26107. e.g. foobarexample.azurecr.io
  26108. type: string
  26109. scope:
  26110. description: |-
  26111. Define the scope for the access token, e.g. pull/push access for a repository.
  26112. if not provided it will return a refresh token that has full scope.
  26113. Note: you need to pin it down to the repository level, there is no wildcard available.
  26114. examples:
  26115. repository:my-repository:pull,push
  26116. repository:my-repository:pull
  26117. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  26118. type: string
  26119. tenantId:
  26120. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  26121. type: string
  26122. required:
  26123. - auth
  26124. - registry
  26125. type: object
  26126. beyondtrustWorkloadCredentialsDynamicSecretSpec:
  26127. description: |-
  26128. BeyondtrustWorkloadCredentialsDynamicSecretSpec defines the desired spec for BeyondtrustWorkloadCredentials dynamic generator.
  26129. This generator enables obtaining temporary, short-lived credentials from BeyondTrust Workload Credentials.
  26130. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26131. properties:
  26132. controller:
  26133. description: |-
  26134. Controller selects the controller that should handle this generator.
  26135. Leave empty to use the default controller.
  26136. type: string
  26137. provider:
  26138. description: |-
  26139. Provider contains the BeyondtrustWorkloadCredentials provider configuration including authentication,
  26140. server connection details, and the folder path to the dynamic secret definition.
  26141. The folderPath should point to a dynamic secret definition that has been created in
  26142. BeyondTrust Workload Credentials (e.g., "production/aws-temp").
  26143. For setup details, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26144. properties:
  26145. auth:
  26146. description: |-
  26147. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  26148. Currently supports API key authentication via Kubernetes secret reference.
  26149. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  26150. properties:
  26151. apikey:
  26152. description: |-
  26153. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  26154. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  26155. properties:
  26156. token:
  26157. description: |-
  26158. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  26159. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  26160. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  26161. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  26162. properties:
  26163. key:
  26164. description: |-
  26165. A key in the referenced Secret.
  26166. Some instances of this field may be defaulted, in others it may be required.
  26167. maxLength: 253
  26168. minLength: 1
  26169. pattern: ^[-._a-zA-Z0-9]+$
  26170. type: string
  26171. name:
  26172. description: The name of the Secret resource being referred to.
  26173. maxLength: 253
  26174. minLength: 1
  26175. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26176. type: string
  26177. namespace:
  26178. description: |-
  26179. The namespace of the Secret resource being referred to.
  26180. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26181. maxLength: 63
  26182. minLength: 1
  26183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26184. type: string
  26185. type: object
  26186. required:
  26187. - token
  26188. type: object
  26189. required:
  26190. - apikey
  26191. type: object
  26192. caBundle:
  26193. description: |-
  26194. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  26195. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  26196. If not set, the system's trusted root certificates are used.
  26197. format: byte
  26198. type: string
  26199. caProvider:
  26200. description: |-
  26201. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  26202. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  26203. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  26204. properties:
  26205. key:
  26206. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26207. maxLength: 253
  26208. minLength: 1
  26209. pattern: ^[-._a-zA-Z0-9]+$
  26210. type: string
  26211. name:
  26212. description: The name of the object located at the provider type.
  26213. maxLength: 253
  26214. minLength: 1
  26215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26216. type: string
  26217. namespace:
  26218. description: |-
  26219. The namespace the Provider type is in.
  26220. Can only be defined when used in a ClusterSecretStore.
  26221. maxLength: 63
  26222. minLength: 1
  26223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26224. type: string
  26225. type:
  26226. description: The type of provider to use such as "Secret", or "ConfigMap".
  26227. enum:
  26228. - Secret
  26229. - ConfigMap
  26230. type: string
  26231. required:
  26232. - name
  26233. - type
  26234. type: object
  26235. folderPath:
  26236. description: |-
  26237. FolderPath specifies the default folder path for secret retrieval.
  26238. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  26239. Example: "production/database" or "dev/api-keys"
  26240. Leave empty to retrieve secrets from the root folder.
  26241. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  26242. type: string
  26243. server:
  26244. description: |-
  26245. Server configures the BeyondTrust Workload Credentials server connection details.
  26246. Includes the API URL and Site ID for your BeyondTrust instance.
  26247. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26248. properties:
  26249. apiUrl:
  26250. description: |-
  26251. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  26252. This should be the full URL to your BeyondTrust instance.
  26253. Example: https://api.beyondtrust.io/siie
  26254. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  26255. type: string
  26256. siteId:
  26257. description: |-
  26258. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  26259. This identifier is unique to your BeyondTrust Workload Credentials instance.
  26260. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  26261. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  26262. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26263. type: string
  26264. required:
  26265. - apiUrl
  26266. - siteId
  26267. type: object
  26268. required:
  26269. - auth
  26270. - server
  26271. type: object
  26272. retrySettings:
  26273. description: |-
  26274. RetrySettings configures exponential backoff for failed API requests.
  26275. If not specified, uses the default retry settings.
  26276. properties:
  26277. maxRetries:
  26278. format: int32
  26279. type: integer
  26280. retryInterval:
  26281. type: string
  26282. type: object
  26283. required:
  26284. - provider
  26285. type: object
  26286. cloudsmithAccessTokenSpec:
  26287. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  26288. properties:
  26289. apiUrl:
  26290. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  26291. type: string
  26292. orgSlug:
  26293. description: OrgSlug is the organization slug in Cloudsmith
  26294. type: string
  26295. serviceAccountRef:
  26296. description: Name of the service account you are federating with
  26297. properties:
  26298. audiences:
  26299. description: |-
  26300. Audience specifies the `aud` claim for the service account token
  26301. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26302. then this audiences will be appended to the list
  26303. items:
  26304. type: string
  26305. type: array
  26306. name:
  26307. description: The name of the ServiceAccount resource being referred to.
  26308. maxLength: 253
  26309. minLength: 1
  26310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26311. type: string
  26312. namespace:
  26313. description: |-
  26314. Namespace of the resource being referred to.
  26315. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26316. maxLength: 63
  26317. minLength: 1
  26318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26319. type: string
  26320. required:
  26321. - name
  26322. type: object
  26323. serviceSlug:
  26324. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  26325. type: string
  26326. required:
  26327. - orgSlug
  26328. - serviceAccountRef
  26329. - serviceSlug
  26330. type: object
  26331. ecrAuthorizationTokenSpec:
  26332. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  26333. properties:
  26334. auth:
  26335. description: Auth defines how to authenticate with AWS
  26336. properties:
  26337. jwt:
  26338. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26339. properties:
  26340. serviceAccountRef:
  26341. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26342. properties:
  26343. audiences:
  26344. description: |-
  26345. Audience specifies the `aud` claim for the service account token
  26346. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26347. then this audiences will be appended to the list
  26348. items:
  26349. type: string
  26350. type: array
  26351. name:
  26352. description: The name of the ServiceAccount resource being referred to.
  26353. maxLength: 253
  26354. minLength: 1
  26355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26356. type: string
  26357. namespace:
  26358. description: |-
  26359. Namespace of the resource being referred to.
  26360. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26361. maxLength: 63
  26362. minLength: 1
  26363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26364. type: string
  26365. required:
  26366. - name
  26367. type: object
  26368. type: object
  26369. secretRef:
  26370. description: |-
  26371. AWSAuthSecretRef holds secret references for AWS credentials
  26372. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26373. properties:
  26374. accessKeyIDSecretRef:
  26375. description: The AccessKeyID is used for authentication
  26376. properties:
  26377. key:
  26378. description: |-
  26379. A key in the referenced Secret.
  26380. Some instances of this field may be defaulted, in others it may be required.
  26381. maxLength: 253
  26382. minLength: 1
  26383. pattern: ^[-._a-zA-Z0-9]+$
  26384. type: string
  26385. name:
  26386. description: The name of the Secret resource being referred to.
  26387. maxLength: 253
  26388. minLength: 1
  26389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26390. type: string
  26391. namespace:
  26392. description: |-
  26393. The namespace of the Secret resource being referred to.
  26394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26395. maxLength: 63
  26396. minLength: 1
  26397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26398. type: string
  26399. type: object
  26400. secretAccessKeySecretRef:
  26401. description: The SecretAccessKey is used for authentication
  26402. properties:
  26403. key:
  26404. description: |-
  26405. A key in the referenced Secret.
  26406. Some instances of this field may be defaulted, in others it may be required.
  26407. maxLength: 253
  26408. minLength: 1
  26409. pattern: ^[-._a-zA-Z0-9]+$
  26410. type: string
  26411. name:
  26412. description: The name of the Secret resource being referred to.
  26413. maxLength: 253
  26414. minLength: 1
  26415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26416. type: string
  26417. namespace:
  26418. description: |-
  26419. The namespace of the Secret resource being referred to.
  26420. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26421. maxLength: 63
  26422. minLength: 1
  26423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26424. type: string
  26425. type: object
  26426. sessionTokenSecretRef:
  26427. description: |-
  26428. The SessionToken used for authentication
  26429. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26430. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26431. properties:
  26432. key:
  26433. description: |-
  26434. A key in the referenced Secret.
  26435. Some instances of this field may be defaulted, in others it may be required.
  26436. maxLength: 253
  26437. minLength: 1
  26438. pattern: ^[-._a-zA-Z0-9]+$
  26439. type: string
  26440. name:
  26441. description: The name of the Secret resource being referred to.
  26442. maxLength: 253
  26443. minLength: 1
  26444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26445. type: string
  26446. namespace:
  26447. description: |-
  26448. The namespace of the Secret resource being referred to.
  26449. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26450. maxLength: 63
  26451. minLength: 1
  26452. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26453. type: string
  26454. type: object
  26455. type: object
  26456. type: object
  26457. region:
  26458. description: Region specifies the region to operate in.
  26459. type: string
  26460. role:
  26461. description: |-
  26462. You can assume a role before making calls to the
  26463. desired AWS service.
  26464. type: string
  26465. scope:
  26466. description: |-
  26467. Scope specifies the ECR service scope.
  26468. Valid options are private and public.
  26469. type: string
  26470. required:
  26471. - region
  26472. type: object
  26473. fakeSpec:
  26474. description: FakeSpec contains the static data.
  26475. properties:
  26476. controller:
  26477. description: |-
  26478. Used to select the correct ESO controller (think: ingress.ingressClassName)
  26479. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  26480. type: string
  26481. data:
  26482. additionalProperties:
  26483. type: string
  26484. description: |-
  26485. Data defines the static data returned
  26486. by this generator.
  26487. type: object
  26488. type: object
  26489. gcrAccessTokenSpec:
  26490. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  26491. properties:
  26492. auth:
  26493. description: Auth defines the means for authenticating with GCP
  26494. properties:
  26495. secretRef:
  26496. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  26497. properties:
  26498. secretAccessKeySecretRef:
  26499. description: The SecretAccessKey is used for authentication
  26500. properties:
  26501. key:
  26502. description: |-
  26503. A key in the referenced Secret.
  26504. Some instances of this field may be defaulted, in others it may be required.
  26505. maxLength: 253
  26506. minLength: 1
  26507. pattern: ^[-._a-zA-Z0-9]+$
  26508. type: string
  26509. name:
  26510. description: The name of the Secret resource being referred to.
  26511. maxLength: 253
  26512. minLength: 1
  26513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26514. type: string
  26515. namespace:
  26516. description: |-
  26517. The namespace of the Secret resource being referred to.
  26518. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26519. maxLength: 63
  26520. minLength: 1
  26521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26522. type: string
  26523. type: object
  26524. type: object
  26525. workloadIdentity:
  26526. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  26527. properties:
  26528. clusterLocation:
  26529. type: string
  26530. clusterName:
  26531. type: string
  26532. clusterProjectID:
  26533. type: string
  26534. serviceAccountRef:
  26535. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26536. properties:
  26537. audiences:
  26538. description: |-
  26539. Audience specifies the `aud` claim for the service account token
  26540. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26541. then this audiences will be appended to the list
  26542. items:
  26543. type: string
  26544. type: array
  26545. name:
  26546. description: The name of the ServiceAccount resource being referred to.
  26547. maxLength: 253
  26548. minLength: 1
  26549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26550. type: string
  26551. namespace:
  26552. description: |-
  26553. Namespace of the resource being referred to.
  26554. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26555. maxLength: 63
  26556. minLength: 1
  26557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26558. type: string
  26559. required:
  26560. - name
  26561. type: object
  26562. required:
  26563. - clusterLocation
  26564. - clusterName
  26565. - serviceAccountRef
  26566. type: object
  26567. workloadIdentityFederation:
  26568. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  26569. properties:
  26570. audience:
  26571. description: |-
  26572. 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.
  26573. If specified, Audience found in the external account credential config will be overridden with the configured value.
  26574. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  26575. type: string
  26576. awsSecurityCredentials:
  26577. description: |-
  26578. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  26579. when using the AWS metadata server is not an option.
  26580. properties:
  26581. awsCredentialsSecretRef:
  26582. description: |-
  26583. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  26584. Secret should be created with below names for keys
  26585. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  26586. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  26587. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  26588. properties:
  26589. name:
  26590. description: name of the secret.
  26591. maxLength: 253
  26592. minLength: 1
  26593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26594. type: string
  26595. namespace:
  26596. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  26597. maxLength: 63
  26598. minLength: 1
  26599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26600. type: string
  26601. required:
  26602. - name
  26603. type: object
  26604. region:
  26605. description: region is for configuring the AWS region to be used.
  26606. example: ap-south-1
  26607. maxLength: 50
  26608. minLength: 1
  26609. pattern: ^[a-z0-9-]+$
  26610. type: string
  26611. required:
  26612. - awsCredentialsSecretRef
  26613. - region
  26614. type: object
  26615. credConfig:
  26616. description: |-
  26617. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  26618. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  26619. serviceAccountRef must be used by providing operators service account details.
  26620. properties:
  26621. key:
  26622. description: key name holding the external account credential config.
  26623. maxLength: 253
  26624. minLength: 1
  26625. pattern: ^[-._a-zA-Z0-9]+$
  26626. type: string
  26627. name:
  26628. description: name of the configmap.
  26629. maxLength: 253
  26630. minLength: 1
  26631. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26632. type: string
  26633. namespace:
  26634. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  26635. maxLength: 63
  26636. minLength: 1
  26637. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26638. type: string
  26639. required:
  26640. - key
  26641. - name
  26642. type: object
  26643. externalTokenEndpoint:
  26644. description: |-
  26645. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  26646. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  26647. URL is having the expected value.
  26648. type: string
  26649. gcpServiceAccountEmail:
  26650. description: |-
  26651. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  26652. after Workload Identity Federation. Use this to grant access through the service account's
  26653. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  26654. service_account_impersonation_url in the external account JSON from credConfig;
  26655. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  26656. on that ServiceAccount.
  26657. example: my-gsa@my-project.iam.gserviceaccount.com
  26658. minLength: 1
  26659. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  26660. type: string
  26661. serviceAccountRef:
  26662. description: |-
  26663. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  26664. when Kubernetes is configured as provider in workload identity pool.
  26665. properties:
  26666. audiences:
  26667. description: |-
  26668. Audience specifies the `aud` claim for the service account token
  26669. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26670. then this audiences will be appended to the list
  26671. items:
  26672. type: string
  26673. type: array
  26674. name:
  26675. description: The name of the ServiceAccount resource being referred to.
  26676. maxLength: 253
  26677. minLength: 1
  26678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26679. type: string
  26680. namespace:
  26681. description: |-
  26682. Namespace of the resource being referred to.
  26683. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26684. maxLength: 63
  26685. minLength: 1
  26686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26687. type: string
  26688. required:
  26689. - name
  26690. type: object
  26691. type: object
  26692. type: object
  26693. projectID:
  26694. description: ProjectID defines which project to use to authenticate with
  26695. type: string
  26696. required:
  26697. - auth
  26698. - projectID
  26699. type: object
  26700. githubAccessTokenSpec:
  26701. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  26702. properties:
  26703. appID:
  26704. type: string
  26705. auth:
  26706. description: Auth configures how ESO authenticates with a Github instance.
  26707. properties:
  26708. privateKey:
  26709. description: GithubSecretRef references a secret containing GitHub credentials.
  26710. properties:
  26711. secretRef:
  26712. description: |-
  26713. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  26714. In some instances, `key` is a required field.
  26715. properties:
  26716. key:
  26717. description: |-
  26718. A key in the referenced Secret.
  26719. Some instances of this field may be defaulted, in others it may be required.
  26720. maxLength: 253
  26721. minLength: 1
  26722. pattern: ^[-._a-zA-Z0-9]+$
  26723. type: string
  26724. name:
  26725. description: The name of the Secret resource being referred to.
  26726. maxLength: 253
  26727. minLength: 1
  26728. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26729. type: string
  26730. namespace:
  26731. description: |-
  26732. The namespace of the Secret resource being referred to.
  26733. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26734. maxLength: 63
  26735. minLength: 1
  26736. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26737. type: string
  26738. type: object
  26739. required:
  26740. - secretRef
  26741. type: object
  26742. required:
  26743. - privateKey
  26744. type: object
  26745. installID:
  26746. type: string
  26747. permissions:
  26748. additionalProperties:
  26749. type: string
  26750. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  26751. type: object
  26752. repositories:
  26753. description: |-
  26754. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  26755. is installed to.
  26756. items:
  26757. type: string
  26758. type: array
  26759. url:
  26760. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  26761. type: string
  26762. required:
  26763. - appID
  26764. - auth
  26765. - installID
  26766. type: object
  26767. grafanaSpec:
  26768. description: GrafanaSpec controls the behavior of the grafana generator.
  26769. properties:
  26770. auth:
  26771. description: |-
  26772. Auth is the authentication configuration to authenticate
  26773. against the Grafana instance.
  26774. properties:
  26775. basic:
  26776. description: |-
  26777. Basic auth credentials used to authenticate against the Grafana instance.
  26778. Note: you need a token which has elevated permissions to create service accounts.
  26779. See here for the documentation on basic roles offered by Grafana:
  26780. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  26781. properties:
  26782. password:
  26783. description: A basic auth password used to authenticate against the Grafana instance.
  26784. properties:
  26785. key:
  26786. description: The key where the token is found.
  26787. maxLength: 253
  26788. minLength: 1
  26789. pattern: ^[-._a-zA-Z0-9]+$
  26790. type: string
  26791. name:
  26792. description: The name of the Secret resource being referred to.
  26793. maxLength: 253
  26794. minLength: 1
  26795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26796. type: string
  26797. type: object
  26798. username:
  26799. description: A basic auth username used to authenticate against the Grafana instance.
  26800. type: string
  26801. required:
  26802. - password
  26803. - username
  26804. type: object
  26805. token:
  26806. description: |-
  26807. A service account token used to authenticate against the Grafana instance.
  26808. Note: you need a token which has elevated permissions to create service accounts.
  26809. See here for the documentation on basic roles offered by Grafana:
  26810. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  26811. properties:
  26812. key:
  26813. description: The key where the token is found.
  26814. maxLength: 253
  26815. minLength: 1
  26816. pattern: ^[-._a-zA-Z0-9]+$
  26817. type: string
  26818. name:
  26819. description: The name of the Secret resource being referred to.
  26820. maxLength: 253
  26821. minLength: 1
  26822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26823. type: string
  26824. type: object
  26825. type: object
  26826. serviceAccount:
  26827. description: |-
  26828. ServiceAccount is the configuration for the service account that
  26829. is supposed to be generated by the generator.
  26830. properties:
  26831. name:
  26832. description: Name is the name of the service account that will be created by ESO.
  26833. type: string
  26834. role:
  26835. description: |-
  26836. Role is the role of the service account.
  26837. See here for the documentation on basic roles offered by Grafana:
  26838. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  26839. type: string
  26840. required:
  26841. - name
  26842. - role
  26843. type: object
  26844. url:
  26845. description: URL is the URL of the Grafana instance.
  26846. type: string
  26847. required:
  26848. - auth
  26849. - serviceAccount
  26850. - url
  26851. type: object
  26852. mfaSpec:
  26853. description: MFASpec controls the behavior of the mfa generator.
  26854. properties:
  26855. algorithm:
  26856. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  26857. type: string
  26858. length:
  26859. description: Length defines the token length. Defaults to 6 characters.
  26860. type: integer
  26861. secret:
  26862. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  26863. properties:
  26864. key:
  26865. description: |-
  26866. A key in the referenced Secret.
  26867. Some instances of this field may be defaulted, in others it may be required.
  26868. maxLength: 253
  26869. minLength: 1
  26870. pattern: ^[-._a-zA-Z0-9]+$
  26871. type: string
  26872. name:
  26873. description: The name of the Secret resource being referred to.
  26874. maxLength: 253
  26875. minLength: 1
  26876. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26877. type: string
  26878. namespace:
  26879. description: |-
  26880. The namespace of the Secret resource being referred to.
  26881. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26882. maxLength: 63
  26883. minLength: 1
  26884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26885. type: string
  26886. type: object
  26887. timePeriod:
  26888. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  26889. type: integer
  26890. when:
  26891. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  26892. format: date-time
  26893. type: string
  26894. required:
  26895. - secret
  26896. type: object
  26897. passwordSpec:
  26898. description: PasswordSpec controls the behavior of the password generator.
  26899. properties:
  26900. allowRepeat:
  26901. default: false
  26902. description: set AllowRepeat to true to allow repeating characters.
  26903. type: boolean
  26904. digits:
  26905. description: |-
  26906. Digits specifies the number of digits in the generated
  26907. password. If omitted it defaults to 25% of the length of the password
  26908. type: integer
  26909. encoding:
  26910. default: raw
  26911. description: |-
  26912. Encoding specifies the encoding of the generated password.
  26913. Valid values are:
  26914. - "raw" (default): no encoding
  26915. - "base64": standard base64 encoding
  26916. - "base64url": base64url encoding
  26917. - "base32": base32 encoding
  26918. - "hex": hexadecimal encoding
  26919. enum:
  26920. - base64
  26921. - base64url
  26922. - base32
  26923. - hex
  26924. - raw
  26925. type: string
  26926. length:
  26927. default: 24
  26928. description: |-
  26929. Length of the password to be generated.
  26930. Defaults to 24
  26931. type: integer
  26932. noUpper:
  26933. default: false
  26934. description: Set NoUpper to disable uppercase characters
  26935. type: boolean
  26936. secretKeys:
  26937. description: |-
  26938. SecretKeys defines the keys that will be populated with generated passwords.
  26939. Defaults to "password" when not set.
  26940. items:
  26941. type: string
  26942. minItems: 1
  26943. type: array
  26944. symbolCharacters:
  26945. description: |-
  26946. SymbolCharacters specifies the special characters that should be used
  26947. in the generated password.
  26948. type: string
  26949. symbols:
  26950. description: |-
  26951. Symbols specifies the number of symbol characters in the generated
  26952. password. If omitted it defaults to 25% of the length of the password
  26953. type: integer
  26954. required:
  26955. - allowRepeat
  26956. - length
  26957. - noUpper
  26958. type: object
  26959. quayAccessTokenSpec:
  26960. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  26961. properties:
  26962. robotAccount:
  26963. description: Name of the robot account you are federating with
  26964. type: string
  26965. serviceAccountRef:
  26966. description: Name of the service account you are federating with
  26967. properties:
  26968. audiences:
  26969. description: |-
  26970. Audience specifies the `aud` claim for the service account token
  26971. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26972. then this audiences will be appended to the list
  26973. items:
  26974. type: string
  26975. type: array
  26976. name:
  26977. description: The name of the ServiceAccount resource being referred to.
  26978. maxLength: 253
  26979. minLength: 1
  26980. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26981. type: string
  26982. namespace:
  26983. description: |-
  26984. Namespace of the resource being referred to.
  26985. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26986. maxLength: 63
  26987. minLength: 1
  26988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26989. type: string
  26990. required:
  26991. - name
  26992. type: object
  26993. url:
  26994. description: URL configures the Quay instance URL. Defaults to quay.io.
  26995. type: string
  26996. required:
  26997. - robotAccount
  26998. - serviceAccountRef
  26999. type: object
  27000. sshKeySpec:
  27001. description: SSHKeySpec controls the behavior of the ssh key generator.
  27002. properties:
  27003. comment:
  27004. description: Comment specifies an optional comment for the SSH key
  27005. type: string
  27006. keySize:
  27007. description: |-
  27008. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  27009. For RSA keys: 2048, 3072, 4096
  27010. For ECDSA keys: 256, 384, 521
  27011. Ignored for ed25519 keys
  27012. maximum: 8192
  27013. minimum: 256
  27014. type: integer
  27015. keyType:
  27016. default: rsa
  27017. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  27018. enum:
  27019. - rsa
  27020. - ecdsa
  27021. - ed25519
  27022. type: string
  27023. type: object
  27024. stsSessionTokenSpec:
  27025. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  27026. properties:
  27027. auth:
  27028. description: Auth defines how to authenticate with AWS
  27029. properties:
  27030. jwt:
  27031. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27032. properties:
  27033. serviceAccountRef:
  27034. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27035. properties:
  27036. audiences:
  27037. description: |-
  27038. Audience specifies the `aud` claim for the service account token
  27039. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27040. then this audiences will be appended to the list
  27041. items:
  27042. type: string
  27043. type: array
  27044. name:
  27045. description: The name of the ServiceAccount resource being referred to.
  27046. maxLength: 253
  27047. minLength: 1
  27048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27049. type: string
  27050. namespace:
  27051. description: |-
  27052. Namespace of the resource being referred to.
  27053. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27054. maxLength: 63
  27055. minLength: 1
  27056. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27057. type: string
  27058. required:
  27059. - name
  27060. type: object
  27061. type: object
  27062. secretRef:
  27063. description: |-
  27064. AWSAuthSecretRef holds secret references for AWS credentials
  27065. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27066. properties:
  27067. accessKeyIDSecretRef:
  27068. description: The AccessKeyID is used for authentication
  27069. properties:
  27070. key:
  27071. description: |-
  27072. A key in the referenced Secret.
  27073. Some instances of this field may be defaulted, in others it may be required.
  27074. maxLength: 253
  27075. minLength: 1
  27076. pattern: ^[-._a-zA-Z0-9]+$
  27077. type: string
  27078. name:
  27079. description: The name of the Secret resource being referred to.
  27080. maxLength: 253
  27081. minLength: 1
  27082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27083. type: string
  27084. namespace:
  27085. description: |-
  27086. The namespace of the Secret resource being referred to.
  27087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27088. maxLength: 63
  27089. minLength: 1
  27090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27091. type: string
  27092. type: object
  27093. secretAccessKeySecretRef:
  27094. description: The SecretAccessKey is used for authentication
  27095. properties:
  27096. key:
  27097. description: |-
  27098. A key in the referenced Secret.
  27099. Some instances of this field may be defaulted, in others it may be required.
  27100. maxLength: 253
  27101. minLength: 1
  27102. pattern: ^[-._a-zA-Z0-9]+$
  27103. type: string
  27104. name:
  27105. description: The name of the Secret resource being referred to.
  27106. maxLength: 253
  27107. minLength: 1
  27108. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27109. type: string
  27110. namespace:
  27111. description: |-
  27112. The namespace of the Secret resource being referred to.
  27113. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27114. maxLength: 63
  27115. minLength: 1
  27116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27117. type: string
  27118. type: object
  27119. sessionTokenSecretRef:
  27120. description: |-
  27121. The SessionToken used for authentication
  27122. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27123. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27124. properties:
  27125. key:
  27126. description: |-
  27127. A key in the referenced Secret.
  27128. Some instances of this field may be defaulted, in others it may be required.
  27129. maxLength: 253
  27130. minLength: 1
  27131. pattern: ^[-._a-zA-Z0-9]+$
  27132. type: string
  27133. name:
  27134. description: The name of the Secret resource being referred to.
  27135. maxLength: 253
  27136. minLength: 1
  27137. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27138. type: string
  27139. namespace:
  27140. description: |-
  27141. The namespace of the Secret resource being referred to.
  27142. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27143. maxLength: 63
  27144. minLength: 1
  27145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27146. type: string
  27147. type: object
  27148. type: object
  27149. type: object
  27150. region:
  27151. description: Region specifies the region to operate in.
  27152. type: string
  27153. requestParameters:
  27154. description: RequestParameters contains parameters that can be passed to the STS service.
  27155. properties:
  27156. serialNumber:
  27157. description: |-
  27158. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  27159. the GetSessionToken call.
  27160. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  27161. (such as arn:aws:iam::123456789012:mfa/user)
  27162. type: string
  27163. sessionDuration:
  27164. format: int32
  27165. type: integer
  27166. tokenCode:
  27167. description: TokenCode is the value provided by the MFA device, if MFA is required.
  27168. type: string
  27169. type: object
  27170. role:
  27171. description: |-
  27172. You can assume a role before making calls to the
  27173. desired AWS service.
  27174. type: string
  27175. required:
  27176. - region
  27177. type: object
  27178. uuidSpec:
  27179. description: UUIDSpec controls the behavior of the uuid generator.
  27180. type: object
  27181. vaultDynamicSecretSpec:
  27182. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  27183. properties:
  27184. allowEmptyResponse:
  27185. default: false
  27186. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  27187. type: boolean
  27188. controller:
  27189. description: |-
  27190. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27191. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27192. type: string
  27193. getParameters:
  27194. additionalProperties:
  27195. items:
  27196. type: string
  27197. type: array
  27198. description: |-
  27199. GetParameters are query-string parameters passed to Vault on GET calls.
  27200. Each key may map to multiple values, matching HTTP query-string semantics.
  27201. Ignored for non-GET methods; use Parameters for write bodies.
  27202. type: object
  27203. method:
  27204. description: Vault API method to use (GET/POST/other)
  27205. type: string
  27206. parameters:
  27207. description: Parameters to pass to Vault write (for non-GET methods)
  27208. x-kubernetes-preserve-unknown-fields: true
  27209. path:
  27210. description: Vault path to obtain the dynamic secret from
  27211. type: string
  27212. provider:
  27213. description: Vault provider common spec
  27214. properties:
  27215. auth:
  27216. description: Auth configures how secret-manager authenticates with the Vault server.
  27217. properties:
  27218. appRole:
  27219. description: |-
  27220. AppRole authenticates with Vault using the App Role auth mechanism,
  27221. with the role and secret stored in a Kubernetes Secret resource.
  27222. properties:
  27223. path:
  27224. default: approle
  27225. description: |-
  27226. Path where the App Role authentication backend is mounted
  27227. in Vault, e.g: "approle"
  27228. type: string
  27229. roleId:
  27230. description: |-
  27231. RoleID configured in the App Role authentication backend when setting
  27232. up the authentication backend in Vault.
  27233. type: string
  27234. roleRef:
  27235. description: |-
  27236. Reference to a key in a Secret that contains the App Role ID used
  27237. to authenticate with Vault.
  27238. The `key` field must be specified and denotes which entry within the Secret
  27239. resource is used as the app role id.
  27240. properties:
  27241. key:
  27242. description: |-
  27243. A key in the referenced Secret.
  27244. Some instances of this field may be defaulted, in others it may be required.
  27245. maxLength: 253
  27246. minLength: 1
  27247. pattern: ^[-._a-zA-Z0-9]+$
  27248. type: string
  27249. name:
  27250. description: The name of the Secret resource being referred to.
  27251. maxLength: 253
  27252. minLength: 1
  27253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27254. type: string
  27255. namespace:
  27256. description: |-
  27257. The namespace of the Secret resource being referred to.
  27258. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27259. maxLength: 63
  27260. minLength: 1
  27261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27262. type: string
  27263. type: object
  27264. secretRef:
  27265. description: |-
  27266. Reference to a key in a Secret that contains the App Role secret used
  27267. to authenticate with Vault.
  27268. The `key` field must be specified and denotes which entry within the Secret
  27269. resource is used as the app role secret.
  27270. properties:
  27271. key:
  27272. description: |-
  27273. A key in the referenced Secret.
  27274. Some instances of this field may be defaulted, in others it may be required.
  27275. maxLength: 253
  27276. minLength: 1
  27277. pattern: ^[-._a-zA-Z0-9]+$
  27278. type: string
  27279. name:
  27280. description: The name of the Secret resource being referred to.
  27281. maxLength: 253
  27282. minLength: 1
  27283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27284. type: string
  27285. namespace:
  27286. description: |-
  27287. The namespace of the Secret resource being referred to.
  27288. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27289. maxLength: 63
  27290. minLength: 1
  27291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27292. type: string
  27293. type: object
  27294. required:
  27295. - path
  27296. - secretRef
  27297. type: object
  27298. cert:
  27299. description: |-
  27300. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  27301. Cert authentication method
  27302. properties:
  27303. clientCert:
  27304. description: |-
  27305. ClientCert is a certificate to authenticate using the Cert Vault
  27306. authentication method
  27307. properties:
  27308. key:
  27309. description: |-
  27310. A key in the referenced Secret.
  27311. Some instances of this field may be defaulted, in others it may be required.
  27312. maxLength: 253
  27313. minLength: 1
  27314. pattern: ^[-._a-zA-Z0-9]+$
  27315. type: string
  27316. name:
  27317. description: The name of the Secret resource being referred to.
  27318. maxLength: 253
  27319. minLength: 1
  27320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27321. type: string
  27322. namespace:
  27323. description: |-
  27324. The namespace of the Secret resource being referred to.
  27325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27326. maxLength: 63
  27327. minLength: 1
  27328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27329. type: string
  27330. type: object
  27331. path:
  27332. default: cert
  27333. description: |-
  27334. Path where the Certificate authentication backend is mounted
  27335. in Vault, e.g: "cert"
  27336. type: string
  27337. secretRef:
  27338. description: |-
  27339. SecretRef to a key in a Secret resource containing client private key to
  27340. authenticate with Vault using the Cert authentication method
  27341. properties:
  27342. key:
  27343. description: |-
  27344. A key in the referenced Secret.
  27345. Some instances of this field may be defaulted, in others it may be required.
  27346. maxLength: 253
  27347. minLength: 1
  27348. pattern: ^[-._a-zA-Z0-9]+$
  27349. type: string
  27350. name:
  27351. description: The name of the Secret resource being referred to.
  27352. maxLength: 253
  27353. minLength: 1
  27354. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27355. type: string
  27356. namespace:
  27357. description: |-
  27358. The namespace of the Secret resource being referred to.
  27359. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27360. maxLength: 63
  27361. minLength: 1
  27362. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27363. type: string
  27364. type: object
  27365. vaultRole:
  27366. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  27367. type: string
  27368. type: object
  27369. gcp:
  27370. description: |-
  27371. Gcp authenticates with Vault using Google Cloud Platform authentication method
  27372. GCP authentication method
  27373. properties:
  27374. location:
  27375. description: Location optionally defines a location/region for the secret
  27376. type: string
  27377. path:
  27378. default: gcp
  27379. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  27380. type: string
  27381. projectID:
  27382. description: Project ID of the Google Cloud Platform project
  27383. type: string
  27384. role:
  27385. 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.
  27386. type: string
  27387. secretRef:
  27388. description: Specify credentials in a Secret object
  27389. properties:
  27390. secretAccessKeySecretRef:
  27391. description: The SecretAccessKey is used for authentication
  27392. properties:
  27393. key:
  27394. description: |-
  27395. A key in the referenced Secret.
  27396. Some instances of this field may be defaulted, in others it may be required.
  27397. maxLength: 253
  27398. minLength: 1
  27399. pattern: ^[-._a-zA-Z0-9]+$
  27400. type: string
  27401. name:
  27402. description: The name of the Secret resource being referred to.
  27403. maxLength: 253
  27404. minLength: 1
  27405. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27406. type: string
  27407. namespace:
  27408. description: |-
  27409. The namespace of the Secret resource being referred to.
  27410. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27411. maxLength: 63
  27412. minLength: 1
  27413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27414. type: string
  27415. type: object
  27416. type: object
  27417. serviceAccountRef:
  27418. description: ServiceAccountRef to a service account for impersonation
  27419. properties:
  27420. audiences:
  27421. description: |-
  27422. Audience specifies the `aud` claim for the service account token
  27423. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27424. then this audiences will be appended to the list
  27425. items:
  27426. type: string
  27427. type: array
  27428. name:
  27429. description: The name of the ServiceAccount resource being referred to.
  27430. maxLength: 253
  27431. minLength: 1
  27432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27433. type: string
  27434. namespace:
  27435. description: |-
  27436. Namespace of the resource being referred to.
  27437. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27438. maxLength: 63
  27439. minLength: 1
  27440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27441. type: string
  27442. required:
  27443. - name
  27444. type: object
  27445. workloadIdentity:
  27446. description: Specify a service account with Workload Identity
  27447. properties:
  27448. clusterLocation:
  27449. description: |-
  27450. ClusterLocation is the location of the cluster
  27451. If not specified, it fetches information from the metadata server
  27452. type: string
  27453. clusterName:
  27454. description: |-
  27455. ClusterName is the name of the cluster
  27456. If not specified, it fetches information from the metadata server
  27457. type: string
  27458. clusterProjectID:
  27459. description: |-
  27460. ClusterProjectID is the project ID of the cluster
  27461. If not specified, it fetches information from the metadata server
  27462. type: string
  27463. serviceAccountRef:
  27464. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27465. properties:
  27466. audiences:
  27467. description: |-
  27468. Audience specifies the `aud` claim for the service account token
  27469. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27470. then this audiences will be appended to the list
  27471. items:
  27472. type: string
  27473. type: array
  27474. name:
  27475. description: The name of the ServiceAccount resource being referred to.
  27476. maxLength: 253
  27477. minLength: 1
  27478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27479. type: string
  27480. namespace:
  27481. description: |-
  27482. Namespace of the resource being referred to.
  27483. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27484. maxLength: 63
  27485. minLength: 1
  27486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27487. type: string
  27488. required:
  27489. - name
  27490. type: object
  27491. required:
  27492. - serviceAccountRef
  27493. type: object
  27494. required:
  27495. - role
  27496. type: object
  27497. iam:
  27498. description: |-
  27499. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  27500. AWS IAM authentication method
  27501. properties:
  27502. externalID:
  27503. description: AWS External ID set on assumed IAM roles
  27504. type: string
  27505. jwt:
  27506. description: Specify a service account with IRSA enabled
  27507. properties:
  27508. serviceAccountRef:
  27509. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27510. properties:
  27511. audiences:
  27512. description: |-
  27513. Audience specifies the `aud` claim for the service account token
  27514. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27515. then this audiences will be appended to the list
  27516. items:
  27517. type: string
  27518. type: array
  27519. name:
  27520. description: The name of the ServiceAccount resource being referred to.
  27521. maxLength: 253
  27522. minLength: 1
  27523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27524. type: string
  27525. namespace:
  27526. description: |-
  27527. Namespace of the resource being referred to.
  27528. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27529. maxLength: 63
  27530. minLength: 1
  27531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27532. type: string
  27533. required:
  27534. - name
  27535. type: object
  27536. type: object
  27537. path:
  27538. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  27539. type: string
  27540. region:
  27541. description: AWS region
  27542. type: string
  27543. role:
  27544. description: This is the AWS role to be assumed before talking to vault
  27545. type: string
  27546. secretRef:
  27547. description: Specify credentials in a Secret object
  27548. properties:
  27549. accessKeyIDSecretRef:
  27550. description: The AccessKeyID is used for authentication
  27551. properties:
  27552. key:
  27553. description: |-
  27554. A key in the referenced Secret.
  27555. Some instances of this field may be defaulted, in others it may be required.
  27556. maxLength: 253
  27557. minLength: 1
  27558. pattern: ^[-._a-zA-Z0-9]+$
  27559. type: string
  27560. name:
  27561. description: The name of the Secret resource being referred to.
  27562. maxLength: 253
  27563. minLength: 1
  27564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27565. type: string
  27566. namespace:
  27567. description: |-
  27568. The namespace of the Secret resource being referred to.
  27569. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27570. maxLength: 63
  27571. minLength: 1
  27572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27573. type: string
  27574. type: object
  27575. secretAccessKeySecretRef:
  27576. description: The SecretAccessKey is used for authentication
  27577. properties:
  27578. key:
  27579. description: |-
  27580. A key in the referenced Secret.
  27581. Some instances of this field may be defaulted, in others it may be required.
  27582. maxLength: 253
  27583. minLength: 1
  27584. pattern: ^[-._a-zA-Z0-9]+$
  27585. type: string
  27586. name:
  27587. description: The name of the Secret resource being referred to.
  27588. maxLength: 253
  27589. minLength: 1
  27590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27591. type: string
  27592. namespace:
  27593. description: |-
  27594. The namespace of the Secret resource being referred to.
  27595. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27596. maxLength: 63
  27597. minLength: 1
  27598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27599. type: string
  27600. type: object
  27601. sessionTokenSecretRef:
  27602. description: |-
  27603. The SessionToken used for authentication
  27604. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27605. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27606. properties:
  27607. key:
  27608. description: |-
  27609. A key in the referenced Secret.
  27610. Some instances of this field may be defaulted, in others it may be required.
  27611. maxLength: 253
  27612. minLength: 1
  27613. pattern: ^[-._a-zA-Z0-9]+$
  27614. type: string
  27615. name:
  27616. description: The name of the Secret resource being referred to.
  27617. maxLength: 253
  27618. minLength: 1
  27619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27620. type: string
  27621. namespace:
  27622. description: |-
  27623. The namespace of the Secret resource being referred to.
  27624. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27625. maxLength: 63
  27626. minLength: 1
  27627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27628. type: string
  27629. type: object
  27630. type: object
  27631. vaultAwsIamServerID:
  27632. 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'
  27633. type: string
  27634. vaultRole:
  27635. 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
  27636. type: string
  27637. required:
  27638. - vaultRole
  27639. type: object
  27640. jwt:
  27641. description: |-
  27642. Jwt authenticates with Vault by passing role and JWT token using the
  27643. JWT/OIDC authentication method
  27644. properties:
  27645. kubernetesServiceAccountToken:
  27646. description: |-
  27647. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  27648. a token for with the `TokenRequest` API.
  27649. properties:
  27650. audiences:
  27651. description: |-
  27652. Optional audiences field that will be used to request a temporary Kubernetes service
  27653. account token for the service account referenced by `serviceAccountRef`.
  27654. Defaults to a single audience `vault` it not specified.
  27655. Deprecated: use serviceAccountRef.Audiences instead
  27656. items:
  27657. type: string
  27658. type: array
  27659. expirationSeconds:
  27660. description: |-
  27661. Optional expiration time in seconds that will be used to request a temporary
  27662. Kubernetes service account token for the service account referenced by
  27663. `serviceAccountRef`.
  27664. Deprecated: this will be removed in the future.
  27665. Defaults to 10 minutes.
  27666. format: int64
  27667. type: integer
  27668. serviceAccountRef:
  27669. description: Service account field containing the name of a kubernetes ServiceAccount.
  27670. properties:
  27671. audiences:
  27672. description: |-
  27673. Audience specifies the `aud` claim for the service account token
  27674. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27675. then this audiences will be appended to the list
  27676. items:
  27677. type: string
  27678. type: array
  27679. name:
  27680. description: The name of the ServiceAccount resource being referred to.
  27681. maxLength: 253
  27682. minLength: 1
  27683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27684. type: string
  27685. namespace:
  27686. description: |-
  27687. Namespace of the resource being referred to.
  27688. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27689. maxLength: 63
  27690. minLength: 1
  27691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27692. type: string
  27693. required:
  27694. - name
  27695. type: object
  27696. required:
  27697. - serviceAccountRef
  27698. type: object
  27699. path:
  27700. default: jwt
  27701. description: |-
  27702. Path where the JWT authentication backend is mounted
  27703. in Vault, e.g: "jwt"
  27704. type: string
  27705. role:
  27706. description: |-
  27707. Role is a JWT role to authenticate using the JWT/OIDC Vault
  27708. authentication method
  27709. type: string
  27710. secretRef:
  27711. description: |-
  27712. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  27713. authenticate with Vault using the JWT/OIDC authentication method.
  27714. properties:
  27715. key:
  27716. description: |-
  27717. A key in the referenced Secret.
  27718. Some instances of this field may be defaulted, in others it may be required.
  27719. maxLength: 253
  27720. minLength: 1
  27721. pattern: ^[-._a-zA-Z0-9]+$
  27722. type: string
  27723. name:
  27724. description: The name of the Secret resource being referred to.
  27725. maxLength: 253
  27726. minLength: 1
  27727. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27728. type: string
  27729. namespace:
  27730. description: |-
  27731. The namespace of the Secret resource being referred to.
  27732. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27733. maxLength: 63
  27734. minLength: 1
  27735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27736. type: string
  27737. type: object
  27738. required:
  27739. - path
  27740. type: object
  27741. kubernetes:
  27742. description: |-
  27743. Kubernetes authenticates with Vault by passing the ServiceAccount
  27744. token stored in the named Secret resource to the Vault server.
  27745. properties:
  27746. mountPath:
  27747. default: kubernetes
  27748. description: |-
  27749. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  27750. "kubernetes"
  27751. type: string
  27752. role:
  27753. description: |-
  27754. A required field containing the Vault Role to assume. A Role binds a
  27755. Kubernetes ServiceAccount with a set of Vault policies.
  27756. type: string
  27757. secretRef:
  27758. description: |-
  27759. Optional secret field containing a Kubernetes ServiceAccount JWT used
  27760. for authenticating with Vault. If a name is specified without a key,
  27761. `token` is the default. If one is not specified, the one bound to
  27762. the controller will be used.
  27763. properties:
  27764. key:
  27765. description: |-
  27766. A key in the referenced Secret.
  27767. Some instances of this field may be defaulted, in others it may be required.
  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. namespace:
  27779. description: |-
  27780. The namespace of the Secret resource being referred to.
  27781. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27782. maxLength: 63
  27783. minLength: 1
  27784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27785. type: string
  27786. type: object
  27787. serviceAccountRef:
  27788. description: |-
  27789. Optional service account field containing the name of a kubernetes ServiceAccount.
  27790. If the service account is specified, the service account secret token JWT will be used
  27791. for authenticating with Vault. If the service account selector is not supplied,
  27792. the secretRef will be used instead.
  27793. properties:
  27794. audiences:
  27795. description: |-
  27796. Audience specifies the `aud` claim for the service account token
  27797. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27798. then this audiences will be appended to the list
  27799. items:
  27800. type: string
  27801. type: array
  27802. name:
  27803. description: The name of the ServiceAccount resource being referred to.
  27804. maxLength: 253
  27805. minLength: 1
  27806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27807. type: string
  27808. namespace:
  27809. description: |-
  27810. Namespace of the resource being referred to.
  27811. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27812. maxLength: 63
  27813. minLength: 1
  27814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27815. type: string
  27816. required:
  27817. - name
  27818. type: object
  27819. required:
  27820. - mountPath
  27821. - role
  27822. type: object
  27823. ldap:
  27824. description: |-
  27825. Ldap authenticates with Vault by passing username/password pair using
  27826. the LDAP authentication method
  27827. properties:
  27828. path:
  27829. default: ldap
  27830. description: |-
  27831. Path where the LDAP authentication backend is mounted
  27832. in Vault, e.g: "ldap"
  27833. type: string
  27834. secretRef:
  27835. description: |-
  27836. SecretRef to a key in a Secret resource containing password for the LDAP
  27837. user used to authenticate with Vault using the LDAP authentication
  27838. method
  27839. properties:
  27840. key:
  27841. description: |-
  27842. A key in the referenced Secret.
  27843. Some instances of this field may be defaulted, in others it may be required.
  27844. maxLength: 253
  27845. minLength: 1
  27846. pattern: ^[-._a-zA-Z0-9]+$
  27847. type: string
  27848. name:
  27849. description: The name of the Secret resource being referred to.
  27850. maxLength: 253
  27851. minLength: 1
  27852. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27853. type: string
  27854. namespace:
  27855. description: |-
  27856. The namespace of the Secret resource being referred to.
  27857. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27858. maxLength: 63
  27859. minLength: 1
  27860. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27861. type: string
  27862. type: object
  27863. username:
  27864. description: |-
  27865. Username is an LDAP username used to authenticate using the LDAP Vault
  27866. authentication method
  27867. type: string
  27868. required:
  27869. - path
  27870. - username
  27871. type: object
  27872. namespace:
  27873. description: |-
  27874. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  27875. Namespaces is a set of features within Vault Enterprise that allows
  27876. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  27877. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  27878. This will default to Vault.Namespace field if set, or empty otherwise
  27879. type: string
  27880. tokenSecretRef:
  27881. description: TokenSecretRef authenticates with Vault by presenting a token.
  27882. properties:
  27883. key:
  27884. description: |-
  27885. A key in the referenced Secret.
  27886. Some instances of this field may be defaulted, in others it may be required.
  27887. maxLength: 253
  27888. minLength: 1
  27889. pattern: ^[-._a-zA-Z0-9]+$
  27890. type: string
  27891. name:
  27892. description: The name of the Secret resource being referred to.
  27893. maxLength: 253
  27894. minLength: 1
  27895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27896. type: string
  27897. namespace:
  27898. description: |-
  27899. The namespace of the Secret resource being referred to.
  27900. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27901. maxLength: 63
  27902. minLength: 1
  27903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27904. type: string
  27905. type: object
  27906. userPass:
  27907. description: UserPass authenticates with Vault by passing username/password pair
  27908. properties:
  27909. path:
  27910. default: userpass
  27911. description: |-
  27912. Path where the UserPassword authentication backend is mounted
  27913. in Vault, e.g: "userpass"
  27914. type: string
  27915. secretRef:
  27916. description: |-
  27917. SecretRef to a key in a Secret resource containing password for the
  27918. user used to authenticate with Vault using the UserPass authentication
  27919. method
  27920. properties:
  27921. key:
  27922. description: |-
  27923. A key in the referenced Secret.
  27924. Some instances of this field may be defaulted, in others it may be required.
  27925. maxLength: 253
  27926. minLength: 1
  27927. pattern: ^[-._a-zA-Z0-9]+$
  27928. type: string
  27929. name:
  27930. description: The name of the Secret resource being referred to.
  27931. maxLength: 253
  27932. minLength: 1
  27933. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27934. type: string
  27935. namespace:
  27936. description: |-
  27937. The namespace of the Secret resource being referred to.
  27938. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27939. maxLength: 63
  27940. minLength: 1
  27941. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27942. type: string
  27943. type: object
  27944. username:
  27945. description: |-
  27946. Username is a username used to authenticate using the UserPass Vault
  27947. authentication method
  27948. type: string
  27949. required:
  27950. - path
  27951. - username
  27952. type: object
  27953. type: object
  27954. caBundle:
  27955. description: |-
  27956. PEM encoded CA bundle used to validate Vault server certificate. Only used
  27957. if the Server URL is using HTTPS protocol. This parameter is ignored for
  27958. plain HTTP protocol connection. If not set the system root certificates
  27959. are used to validate the TLS connection.
  27960. format: byte
  27961. type: string
  27962. caProvider:
  27963. description: The provider for the CA bundle to use to validate Vault server certificate.
  27964. properties:
  27965. key:
  27966. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  27967. maxLength: 253
  27968. minLength: 1
  27969. pattern: ^[-._a-zA-Z0-9]+$
  27970. type: string
  27971. name:
  27972. description: The name of the object located at the provider type.
  27973. maxLength: 253
  27974. minLength: 1
  27975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27976. type: string
  27977. namespace:
  27978. description: |-
  27979. The namespace the Provider type is in.
  27980. Can only be defined when used in a ClusterSecretStore.
  27981. maxLength: 63
  27982. minLength: 1
  27983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27984. type: string
  27985. type:
  27986. description: The type of provider to use such as "Secret", or "ConfigMap".
  27987. enum:
  27988. - Secret
  27989. - ConfigMap
  27990. type: string
  27991. required:
  27992. - name
  27993. - type
  27994. type: object
  27995. checkAndSet:
  27996. description: |-
  27997. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  27998. Only applies to Vault KV v2 stores. When enabled, write operations must include
  27999. the current version of the secret to prevent unintentional overwrites.
  28000. properties:
  28001. required:
  28002. description: |-
  28003. Required when true, all write operations must include a check-and-set parameter.
  28004. This helps prevent unintentional overwrites of secrets.
  28005. type: boolean
  28006. type: object
  28007. forwardInconsistent:
  28008. description: |-
  28009. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  28010. leader instead of simply retrying within a loop. This can increase performance if
  28011. the option is enabled serverside.
  28012. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  28013. type: boolean
  28014. headers:
  28015. additionalProperties:
  28016. type: string
  28017. description: Headers to be added in Vault request
  28018. type: object
  28019. namespace:
  28020. description: |-
  28021. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  28022. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  28023. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  28024. type: string
  28025. path:
  28026. description: |-
  28027. Path is the mount path of the Vault KV backend endpoint, e.g:
  28028. "secret". The v2 KV secret engine version specific "/data" path suffix
  28029. for fetching secrets from Vault is optional and will be appended
  28030. if not present in specified path.
  28031. type: string
  28032. readYourWrites:
  28033. description: |-
  28034. ReadYourWrites ensures isolated read-after-write semantics by
  28035. providing discovered cluster replication states in each request.
  28036. More information about eventual consistency in Vault can be found here
  28037. https://www.vaultproject.io/docs/enterprise/consistency
  28038. type: boolean
  28039. server:
  28040. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  28041. type: string
  28042. tls:
  28043. description: |-
  28044. The configuration used for client side related TLS communication, when the Vault server
  28045. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  28046. This parameter is ignored for plain HTTP protocol connection.
  28047. It's worth noting this configuration is different from the "TLS certificates auth method",
  28048. which is available under the `auth.cert` section.
  28049. properties:
  28050. certSecretRef:
  28051. description: |-
  28052. CertSecretRef is a certificate added to the transport layer
  28053. when communicating with the Vault server.
  28054. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  28055. properties:
  28056. key:
  28057. description: |-
  28058. A key in the referenced Secret.
  28059. Some instances of this field may be defaulted, in others it may be required.
  28060. maxLength: 253
  28061. minLength: 1
  28062. pattern: ^[-._a-zA-Z0-9]+$
  28063. type: string
  28064. name:
  28065. description: The name of the Secret resource being referred to.
  28066. maxLength: 253
  28067. minLength: 1
  28068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28069. type: string
  28070. namespace:
  28071. description: |-
  28072. The namespace of the Secret resource being referred to.
  28073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28074. maxLength: 63
  28075. minLength: 1
  28076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28077. type: string
  28078. type: object
  28079. keySecretRef:
  28080. description: |-
  28081. KeySecretRef to a key in a Secret resource containing client private key
  28082. added to the transport layer when communicating with the Vault server.
  28083. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  28084. properties:
  28085. key:
  28086. description: |-
  28087. A key in the referenced Secret.
  28088. Some instances of this field may be defaulted, in others it may be required.
  28089. maxLength: 253
  28090. minLength: 1
  28091. pattern: ^[-._a-zA-Z0-9]+$
  28092. type: string
  28093. name:
  28094. description: The name of the Secret resource being referred to.
  28095. maxLength: 253
  28096. minLength: 1
  28097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28098. type: string
  28099. namespace:
  28100. description: |-
  28101. The namespace of the Secret resource being referred to.
  28102. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28103. maxLength: 63
  28104. minLength: 1
  28105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28106. type: string
  28107. type: object
  28108. type: object
  28109. version:
  28110. default: v2
  28111. description: |-
  28112. Version is the Vault KV secret engine version. This can be either "v1" or
  28113. "v2". Version defaults to "v2".
  28114. enum:
  28115. - v1
  28116. - v2
  28117. type: string
  28118. required:
  28119. - server
  28120. type: object
  28121. resultType:
  28122. default: Data
  28123. description: |-
  28124. Result type defines which data is returned from the generator.
  28125. By default, it is the "data" section of the Vault API response.
  28126. When using e.g. /auth/token/create the "data" section is empty but
  28127. the "auth" section contains the generated token.
  28128. Please refer to the vault docs regarding the result data structure.
  28129. Additionally, accessing the raw response is possibly by using "Raw" result type.
  28130. enum:
  28131. - Data
  28132. - Auth
  28133. - Raw
  28134. type: string
  28135. retrySettings:
  28136. description: Used to configure http retries if failed
  28137. properties:
  28138. maxRetries:
  28139. format: int32
  28140. type: integer
  28141. retryInterval:
  28142. type: string
  28143. type: object
  28144. required:
  28145. - path
  28146. - provider
  28147. type: object
  28148. webhookSpec:
  28149. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  28150. properties:
  28151. auth:
  28152. description: Auth specifies a authorization protocol. Only one protocol may be set.
  28153. maxProperties: 1
  28154. minProperties: 1
  28155. properties:
  28156. ntlm:
  28157. description: NTLMProtocol configures the store to use NTLM for auth
  28158. properties:
  28159. passwordSecret:
  28160. description: |-
  28161. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28162. In some instances, `key` is a required field.
  28163. properties:
  28164. key:
  28165. description: |-
  28166. A key in the referenced Secret.
  28167. Some instances of this field may be defaulted, in others it may be required.
  28168. maxLength: 253
  28169. minLength: 1
  28170. pattern: ^[-._a-zA-Z0-9]+$
  28171. type: string
  28172. name:
  28173. description: The name of the Secret resource being referred to.
  28174. maxLength: 253
  28175. minLength: 1
  28176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28177. type: string
  28178. namespace:
  28179. description: |-
  28180. The namespace of the Secret resource being referred to.
  28181. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28182. maxLength: 63
  28183. minLength: 1
  28184. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28185. type: string
  28186. type: object
  28187. usernameSecret:
  28188. description: |-
  28189. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28190. In some instances, `key` is a required field.
  28191. properties:
  28192. key:
  28193. description: |-
  28194. A key in the referenced Secret.
  28195. Some instances of this field may be defaulted, in others it may be required.
  28196. maxLength: 253
  28197. minLength: 1
  28198. pattern: ^[-._a-zA-Z0-9]+$
  28199. type: string
  28200. name:
  28201. description: The name of the Secret resource being referred to.
  28202. maxLength: 253
  28203. minLength: 1
  28204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28205. type: string
  28206. namespace:
  28207. description: |-
  28208. The namespace of the Secret resource being referred to.
  28209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28210. maxLength: 63
  28211. minLength: 1
  28212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28213. type: string
  28214. type: object
  28215. required:
  28216. - passwordSecret
  28217. - usernameSecret
  28218. type: object
  28219. type: object
  28220. body:
  28221. description: Body
  28222. type: string
  28223. caBundle:
  28224. description: |-
  28225. PEM encoded CA bundle used to validate webhook server certificate. Only used
  28226. if the Server URL is using HTTPS protocol. This parameter is ignored for
  28227. plain HTTP protocol connection. If not set the system root certificates
  28228. are used to validate the TLS connection.
  28229. format: byte
  28230. type: string
  28231. caProvider:
  28232. description: The provider for the CA bundle to use to validate webhook server certificate.
  28233. properties:
  28234. key:
  28235. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  28236. maxLength: 253
  28237. minLength: 1
  28238. pattern: ^[-._a-zA-Z0-9]+$
  28239. type: string
  28240. name:
  28241. description: The name of the object located at the provider type.
  28242. maxLength: 253
  28243. minLength: 1
  28244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28245. type: string
  28246. namespace:
  28247. description: The namespace the Provider type is in.
  28248. maxLength: 63
  28249. minLength: 1
  28250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28251. type: string
  28252. type:
  28253. description: The type of provider to use such as "Secret", or "ConfigMap".
  28254. enum:
  28255. - Secret
  28256. - ConfigMap
  28257. type: string
  28258. required:
  28259. - name
  28260. - type
  28261. type: object
  28262. headers:
  28263. additionalProperties:
  28264. type: string
  28265. description: Headers
  28266. type: object
  28267. method:
  28268. description: Webhook Method
  28269. type: string
  28270. result:
  28271. description: Result formatting
  28272. properties:
  28273. jsonPath:
  28274. description: Json path of return value
  28275. type: string
  28276. type: object
  28277. secrets:
  28278. description: |-
  28279. Secrets to fill in templates
  28280. These secrets will be passed to the templating function as key value pairs under the given name
  28281. items:
  28282. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  28283. properties:
  28284. name:
  28285. description: Name of this secret in templates
  28286. type: string
  28287. secretRef:
  28288. description: Secret ref to fill in credentials
  28289. properties:
  28290. key:
  28291. description: The key where the token is found.
  28292. maxLength: 253
  28293. minLength: 1
  28294. pattern: ^[-._a-zA-Z0-9]+$
  28295. type: string
  28296. name:
  28297. description: The name of the Secret resource being referred to.
  28298. maxLength: 253
  28299. minLength: 1
  28300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28301. type: string
  28302. type: object
  28303. required:
  28304. - name
  28305. - secretRef
  28306. type: object
  28307. type: array
  28308. timeout:
  28309. description: Timeout
  28310. type: string
  28311. url:
  28312. description: Webhook url to call
  28313. type: string
  28314. required:
  28315. - result
  28316. - url
  28317. type: object
  28318. type: object
  28319. kind:
  28320. description: Kind the kind of this generator.
  28321. enum:
  28322. - ACRAccessToken
  28323. - BeyondtrustWorkloadCredentialsDynamicSecret
  28324. - CloudsmithAccessToken
  28325. - ECRAuthorizationToken
  28326. - Fake
  28327. - GCRAccessToken
  28328. - GithubAccessToken
  28329. - QuayAccessToken
  28330. - Password
  28331. - SSHKey
  28332. - STSSessionToken
  28333. - UUID
  28334. - VaultDynamicSecret
  28335. - Webhook
  28336. - Grafana
  28337. - MFA
  28338. type: string
  28339. required:
  28340. - generator
  28341. - kind
  28342. type: object
  28343. type: object
  28344. served: true
  28345. storage: true
  28346. subresources:
  28347. status: {}
  28348. ---
  28349. apiVersion: apiextensions.k8s.io/v1
  28350. kind: CustomResourceDefinition
  28351. metadata:
  28352. annotations:
  28353. controller-gen.kubebuilder.io/version: v0.19.0
  28354. labels:
  28355. external-secrets.io/component: controller
  28356. name: ecrauthorizationtokens.generators.external-secrets.io
  28357. spec:
  28358. group: generators.external-secrets.io
  28359. names:
  28360. categories:
  28361. - external-secrets
  28362. - external-secrets-generators
  28363. kind: ECRAuthorizationToken
  28364. listKind: ECRAuthorizationTokenList
  28365. plural: ecrauthorizationtokens
  28366. singular: ecrauthorizationtoken
  28367. scope: Namespaced
  28368. versions:
  28369. - name: v1alpha1
  28370. schema:
  28371. openAPIV3Schema:
  28372. description: |-
  28373. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  28374. The authorization token is valid for 12 hours.
  28375. The authorizationToken returned is a base64 encoded string that can be decoded
  28376. and used in a docker login command to authenticate to a registry.
  28377. 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.
  28378. properties:
  28379. apiVersion:
  28380. description: |-
  28381. APIVersion defines the versioned schema of this representation of an object.
  28382. Servers should convert recognized schemas to the latest internal value, and
  28383. may reject unrecognized values.
  28384. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28385. type: string
  28386. kind:
  28387. description: |-
  28388. Kind is a string value representing the REST resource this object represents.
  28389. Servers may infer this from the endpoint the client submits requests to.
  28390. Cannot be updated.
  28391. In CamelCase.
  28392. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28393. type: string
  28394. metadata:
  28395. type: object
  28396. spec:
  28397. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  28398. properties:
  28399. auth:
  28400. description: Auth defines how to authenticate with AWS
  28401. properties:
  28402. jwt:
  28403. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28404. properties:
  28405. serviceAccountRef:
  28406. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28407. properties:
  28408. audiences:
  28409. description: |-
  28410. Audience specifies the `aud` claim for the service account token
  28411. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28412. then this audiences will be appended to the list
  28413. items:
  28414. type: string
  28415. type: array
  28416. name:
  28417. description: The name of the ServiceAccount resource being referred to.
  28418. maxLength: 253
  28419. minLength: 1
  28420. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28421. type: string
  28422. namespace:
  28423. description: |-
  28424. Namespace of the resource being referred to.
  28425. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28426. maxLength: 63
  28427. minLength: 1
  28428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28429. type: string
  28430. required:
  28431. - name
  28432. type: object
  28433. type: object
  28434. secretRef:
  28435. description: |-
  28436. AWSAuthSecretRef holds secret references for AWS credentials
  28437. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28438. properties:
  28439. accessKeyIDSecretRef:
  28440. description: The AccessKeyID is used for authentication
  28441. properties:
  28442. key:
  28443. description: |-
  28444. A key in the referenced Secret.
  28445. Some instances of this field may be defaulted, in others it may be required.
  28446. maxLength: 253
  28447. minLength: 1
  28448. pattern: ^[-._a-zA-Z0-9]+$
  28449. type: string
  28450. name:
  28451. description: The name of the Secret resource being referred to.
  28452. maxLength: 253
  28453. minLength: 1
  28454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28455. type: string
  28456. namespace:
  28457. description: |-
  28458. The namespace of the Secret resource being referred to.
  28459. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28460. maxLength: 63
  28461. minLength: 1
  28462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28463. type: string
  28464. type: object
  28465. secretAccessKeySecretRef:
  28466. description: The SecretAccessKey is used for authentication
  28467. properties:
  28468. key:
  28469. description: |-
  28470. A key in the referenced Secret.
  28471. Some instances of this field may be defaulted, in others it may be required.
  28472. maxLength: 253
  28473. minLength: 1
  28474. pattern: ^[-._a-zA-Z0-9]+$
  28475. type: string
  28476. name:
  28477. description: The name of the Secret resource being referred to.
  28478. maxLength: 253
  28479. minLength: 1
  28480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28481. type: string
  28482. namespace:
  28483. description: |-
  28484. The namespace of the Secret resource being referred to.
  28485. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28486. maxLength: 63
  28487. minLength: 1
  28488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28489. type: string
  28490. type: object
  28491. sessionTokenSecretRef:
  28492. description: |-
  28493. The SessionToken used for authentication
  28494. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28495. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28496. properties:
  28497. key:
  28498. description: |-
  28499. A key in the referenced Secret.
  28500. Some instances of this field may be defaulted, in others it may be required.
  28501. maxLength: 253
  28502. minLength: 1
  28503. pattern: ^[-._a-zA-Z0-9]+$
  28504. type: string
  28505. name:
  28506. description: The name of the Secret resource being referred to.
  28507. maxLength: 253
  28508. minLength: 1
  28509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28510. type: string
  28511. namespace:
  28512. description: |-
  28513. The namespace of the Secret resource being referred to.
  28514. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28515. maxLength: 63
  28516. minLength: 1
  28517. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28518. type: string
  28519. type: object
  28520. type: object
  28521. type: object
  28522. region:
  28523. description: Region specifies the region to operate in.
  28524. type: string
  28525. role:
  28526. description: |-
  28527. You can assume a role before making calls to the
  28528. desired AWS service.
  28529. type: string
  28530. scope:
  28531. description: |-
  28532. Scope specifies the ECR service scope.
  28533. Valid options are private and public.
  28534. type: string
  28535. required:
  28536. - region
  28537. type: object
  28538. type: object
  28539. served: true
  28540. storage: true
  28541. subresources:
  28542. status: {}
  28543. ---
  28544. apiVersion: apiextensions.k8s.io/v1
  28545. kind: CustomResourceDefinition
  28546. metadata:
  28547. annotations:
  28548. controller-gen.kubebuilder.io/version: v0.19.0
  28549. labels:
  28550. external-secrets.io/component: controller
  28551. name: fakes.generators.external-secrets.io
  28552. spec:
  28553. group: generators.external-secrets.io
  28554. names:
  28555. categories:
  28556. - external-secrets
  28557. - external-secrets-generators
  28558. kind: Fake
  28559. listKind: FakeList
  28560. plural: fakes
  28561. singular: fake
  28562. scope: Namespaced
  28563. versions:
  28564. - name: v1alpha1
  28565. schema:
  28566. openAPIV3Schema:
  28567. description: |-
  28568. Fake generator is used for testing. It lets you define
  28569. a static set of credentials that is always returned.
  28570. properties:
  28571. apiVersion:
  28572. description: |-
  28573. APIVersion defines the versioned schema of this representation of an object.
  28574. Servers should convert recognized schemas to the latest internal value, and
  28575. may reject unrecognized values.
  28576. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28577. type: string
  28578. kind:
  28579. description: |-
  28580. Kind is a string value representing the REST resource this object represents.
  28581. Servers may infer this from the endpoint the client submits requests to.
  28582. Cannot be updated.
  28583. In CamelCase.
  28584. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28585. type: string
  28586. metadata:
  28587. type: object
  28588. spec:
  28589. description: FakeSpec contains the static data.
  28590. properties:
  28591. controller:
  28592. description: |-
  28593. Used to select the correct ESO controller (think: ingress.ingressClassName)
  28594. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  28595. type: string
  28596. data:
  28597. additionalProperties:
  28598. type: string
  28599. description: |-
  28600. Data defines the static data returned
  28601. by this generator.
  28602. type: object
  28603. type: object
  28604. type: object
  28605. served: true
  28606. storage: true
  28607. subresources:
  28608. status: {}
  28609. ---
  28610. apiVersion: apiextensions.k8s.io/v1
  28611. kind: CustomResourceDefinition
  28612. metadata:
  28613. annotations:
  28614. controller-gen.kubebuilder.io/version: v0.19.0
  28615. labels:
  28616. external-secrets.io/component: controller
  28617. name: gcraccesstokens.generators.external-secrets.io
  28618. spec:
  28619. group: generators.external-secrets.io
  28620. names:
  28621. categories:
  28622. - external-secrets
  28623. - external-secrets-generators
  28624. kind: GCRAccessToken
  28625. listKind: GCRAccessTokenList
  28626. plural: gcraccesstokens
  28627. singular: gcraccesstoken
  28628. scope: Namespaced
  28629. versions:
  28630. - name: v1alpha1
  28631. schema:
  28632. openAPIV3Schema:
  28633. description: |-
  28634. GCRAccessToken generates an GCP access token
  28635. that can be used to authenticate with GCR.
  28636. properties:
  28637. apiVersion:
  28638. description: |-
  28639. APIVersion defines the versioned schema of this representation of an object.
  28640. Servers should convert recognized schemas to the latest internal value, and
  28641. may reject unrecognized values.
  28642. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28643. type: string
  28644. kind:
  28645. description: |-
  28646. Kind is a string value representing the REST resource this object represents.
  28647. Servers may infer this from the endpoint the client submits requests to.
  28648. Cannot be updated.
  28649. In CamelCase.
  28650. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28651. type: string
  28652. metadata:
  28653. type: object
  28654. spec:
  28655. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  28656. properties:
  28657. auth:
  28658. description: Auth defines the means for authenticating with GCP
  28659. properties:
  28660. secretRef:
  28661. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  28662. properties:
  28663. secretAccessKeySecretRef:
  28664. description: The SecretAccessKey is used for authentication
  28665. properties:
  28666. key:
  28667. description: |-
  28668. A key in the referenced Secret.
  28669. Some instances of this field may be defaulted, in others it may be required.
  28670. maxLength: 253
  28671. minLength: 1
  28672. pattern: ^[-._a-zA-Z0-9]+$
  28673. type: string
  28674. name:
  28675. description: The name of the Secret resource being referred to.
  28676. maxLength: 253
  28677. minLength: 1
  28678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28679. type: string
  28680. namespace:
  28681. description: |-
  28682. The namespace of the Secret resource being referred to.
  28683. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28684. maxLength: 63
  28685. minLength: 1
  28686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28687. type: string
  28688. type: object
  28689. type: object
  28690. workloadIdentity:
  28691. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  28692. properties:
  28693. clusterLocation:
  28694. type: string
  28695. clusterName:
  28696. type: string
  28697. clusterProjectID:
  28698. type: string
  28699. serviceAccountRef:
  28700. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28701. properties:
  28702. audiences:
  28703. description: |-
  28704. Audience specifies the `aud` claim for the service account token
  28705. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28706. then this audiences will be appended to the list
  28707. items:
  28708. type: string
  28709. type: array
  28710. name:
  28711. description: The name of the ServiceAccount resource being referred to.
  28712. maxLength: 253
  28713. minLength: 1
  28714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28715. type: string
  28716. namespace:
  28717. description: |-
  28718. Namespace of the resource being referred to.
  28719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28720. maxLength: 63
  28721. minLength: 1
  28722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28723. type: string
  28724. required:
  28725. - name
  28726. type: object
  28727. required:
  28728. - clusterLocation
  28729. - clusterName
  28730. - serviceAccountRef
  28731. type: object
  28732. workloadIdentityFederation:
  28733. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  28734. properties:
  28735. audience:
  28736. description: |-
  28737. 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.
  28738. If specified, Audience found in the external account credential config will be overridden with the configured value.
  28739. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  28740. type: string
  28741. awsSecurityCredentials:
  28742. description: |-
  28743. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  28744. when using the AWS metadata server is not an option.
  28745. properties:
  28746. awsCredentialsSecretRef:
  28747. description: |-
  28748. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  28749. Secret should be created with below names for keys
  28750. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  28751. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  28752. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  28753. properties:
  28754. name:
  28755. description: name of the secret.
  28756. maxLength: 253
  28757. minLength: 1
  28758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28759. type: string
  28760. namespace:
  28761. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  28762. maxLength: 63
  28763. minLength: 1
  28764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28765. type: string
  28766. required:
  28767. - name
  28768. type: object
  28769. region:
  28770. description: region is for configuring the AWS region to be used.
  28771. example: ap-south-1
  28772. maxLength: 50
  28773. minLength: 1
  28774. pattern: ^[a-z0-9-]+$
  28775. type: string
  28776. required:
  28777. - awsCredentialsSecretRef
  28778. - region
  28779. type: object
  28780. credConfig:
  28781. description: |-
  28782. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  28783. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  28784. serviceAccountRef must be used by providing operators service account details.
  28785. properties:
  28786. key:
  28787. description: key name holding the external account credential config.
  28788. maxLength: 253
  28789. minLength: 1
  28790. pattern: ^[-._a-zA-Z0-9]+$
  28791. type: string
  28792. name:
  28793. description: name of the configmap.
  28794. maxLength: 253
  28795. minLength: 1
  28796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28797. type: string
  28798. namespace:
  28799. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  28800. maxLength: 63
  28801. minLength: 1
  28802. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28803. type: string
  28804. required:
  28805. - key
  28806. - name
  28807. type: object
  28808. externalTokenEndpoint:
  28809. description: |-
  28810. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  28811. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  28812. URL is having the expected value.
  28813. type: string
  28814. gcpServiceAccountEmail:
  28815. description: |-
  28816. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  28817. after Workload Identity Federation. Use this to grant access through the service account's
  28818. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  28819. service_account_impersonation_url in the external account JSON from credConfig;
  28820. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  28821. on that ServiceAccount.
  28822. example: my-gsa@my-project.iam.gserviceaccount.com
  28823. minLength: 1
  28824. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  28825. type: string
  28826. serviceAccountRef:
  28827. description: |-
  28828. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  28829. when Kubernetes is configured as provider in workload identity pool.
  28830. properties:
  28831. audiences:
  28832. description: |-
  28833. Audience specifies the `aud` claim for the service account token
  28834. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28835. then this audiences will be appended to the list
  28836. items:
  28837. type: string
  28838. type: array
  28839. name:
  28840. description: The name of the ServiceAccount resource being referred to.
  28841. maxLength: 253
  28842. minLength: 1
  28843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28844. type: string
  28845. namespace:
  28846. description: |-
  28847. Namespace of the resource being referred to.
  28848. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28849. maxLength: 63
  28850. minLength: 1
  28851. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28852. type: string
  28853. required:
  28854. - name
  28855. type: object
  28856. type: object
  28857. type: object
  28858. projectID:
  28859. description: ProjectID defines which project to use to authenticate with
  28860. type: string
  28861. required:
  28862. - auth
  28863. - projectID
  28864. type: object
  28865. type: object
  28866. served: true
  28867. storage: true
  28868. subresources:
  28869. status: {}
  28870. ---
  28871. apiVersion: apiextensions.k8s.io/v1
  28872. kind: CustomResourceDefinition
  28873. metadata:
  28874. annotations:
  28875. controller-gen.kubebuilder.io/version: v0.19.0
  28876. labels:
  28877. external-secrets.io/component: controller
  28878. name: generatorstates.generators.external-secrets.io
  28879. spec:
  28880. group: generators.external-secrets.io
  28881. names:
  28882. categories:
  28883. - external-secrets
  28884. - external-secrets-generators
  28885. kind: GeneratorState
  28886. listKind: GeneratorStateList
  28887. plural: generatorstates
  28888. shortNames:
  28889. - gs
  28890. singular: generatorstate
  28891. scope: Namespaced
  28892. versions:
  28893. - additionalPrinterColumns:
  28894. - jsonPath: .spec.garbageCollectionDeadline
  28895. name: GC Deadline
  28896. type: string
  28897. - jsonPath: .metadata.creationTimestamp
  28898. name: Age
  28899. type: date
  28900. name: v1alpha1
  28901. schema:
  28902. openAPIV3Schema:
  28903. description: GeneratorState represents the state created and managed by a generator resource.
  28904. properties:
  28905. apiVersion:
  28906. description: |-
  28907. APIVersion defines the versioned schema of this representation of an object.
  28908. Servers should convert recognized schemas to the latest internal value, and
  28909. may reject unrecognized values.
  28910. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28911. type: string
  28912. kind:
  28913. description: |-
  28914. Kind is a string value representing the REST resource this object represents.
  28915. Servers may infer this from the endpoint the client submits requests to.
  28916. Cannot be updated.
  28917. In CamelCase.
  28918. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28919. type: string
  28920. metadata:
  28921. type: object
  28922. spec:
  28923. description: GeneratorStateSpec defines the desired state of a generator state resource.
  28924. properties:
  28925. garbageCollectionDeadline:
  28926. description: |-
  28927. GarbageCollectionDeadline is the time after which the generator state
  28928. will be deleted.
  28929. It is set by the controller which creates the generator state and
  28930. can be set configured by the user.
  28931. If the garbage collection deadline is not set the generator state will not be deleted.
  28932. format: date-time
  28933. type: string
  28934. resource:
  28935. description: |-
  28936. Resource is the generator manifest that produced the state.
  28937. It is a snapshot of the generator manifest at the time the state was produced.
  28938. This manifest will be used to delete the resource. Any configuration that is referenced
  28939. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  28940. be blocked by a finalizer.
  28941. x-kubernetes-preserve-unknown-fields: true
  28942. state:
  28943. description: State is the state that was produced by the generator implementation.
  28944. x-kubernetes-preserve-unknown-fields: true
  28945. required:
  28946. - resource
  28947. - state
  28948. type: object
  28949. status:
  28950. description: GeneratorStateStatus defines the observed state of a generator state resource.
  28951. properties:
  28952. conditions:
  28953. items:
  28954. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  28955. properties:
  28956. lastTransitionTime:
  28957. format: date-time
  28958. type: string
  28959. message:
  28960. type: string
  28961. reason:
  28962. type: string
  28963. status:
  28964. type: string
  28965. type:
  28966. description: GeneratorStateConditionType represents the type of condition for a generator state.
  28967. type: string
  28968. required:
  28969. - status
  28970. - type
  28971. type: object
  28972. type: array
  28973. type: object
  28974. type: object
  28975. served: true
  28976. storage: true
  28977. subresources: {}
  28978. ---
  28979. apiVersion: apiextensions.k8s.io/v1
  28980. kind: CustomResourceDefinition
  28981. metadata:
  28982. annotations:
  28983. controller-gen.kubebuilder.io/version: v0.19.0
  28984. labels:
  28985. external-secrets.io/component: controller
  28986. name: githubaccesstokens.generators.external-secrets.io
  28987. spec:
  28988. group: generators.external-secrets.io
  28989. names:
  28990. categories:
  28991. - external-secrets
  28992. - external-secrets-generators
  28993. kind: GithubAccessToken
  28994. listKind: GithubAccessTokenList
  28995. plural: githubaccesstokens
  28996. singular: githubaccesstoken
  28997. scope: Namespaced
  28998. versions:
  28999. - name: v1alpha1
  29000. schema:
  29001. openAPIV3Schema:
  29002. description: GithubAccessToken generates ghs_ accessToken
  29003. properties:
  29004. apiVersion:
  29005. description: |-
  29006. APIVersion defines the versioned schema of this representation of an object.
  29007. Servers should convert recognized schemas to the latest internal value, and
  29008. may reject unrecognized values.
  29009. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29010. type: string
  29011. kind:
  29012. description: |-
  29013. Kind is a string value representing the REST resource this object represents.
  29014. Servers may infer this from the endpoint the client submits requests to.
  29015. Cannot be updated.
  29016. In CamelCase.
  29017. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29018. type: string
  29019. metadata:
  29020. type: object
  29021. spec:
  29022. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  29023. properties:
  29024. appID:
  29025. type: string
  29026. auth:
  29027. description: Auth configures how ESO authenticates with a Github instance.
  29028. properties:
  29029. privateKey:
  29030. description: GithubSecretRef references a secret containing GitHub credentials.
  29031. properties:
  29032. secretRef:
  29033. description: |-
  29034. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29035. In some instances, `key` is a required field.
  29036. properties:
  29037. key:
  29038. description: |-
  29039. A key in the referenced Secret.
  29040. Some instances of this field may be defaulted, in others it may be required.
  29041. maxLength: 253
  29042. minLength: 1
  29043. pattern: ^[-._a-zA-Z0-9]+$
  29044. type: string
  29045. name:
  29046. description: The name of the Secret resource being referred to.
  29047. maxLength: 253
  29048. minLength: 1
  29049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29050. type: string
  29051. namespace:
  29052. description: |-
  29053. The namespace of the Secret resource being referred to.
  29054. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29055. maxLength: 63
  29056. minLength: 1
  29057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29058. type: string
  29059. type: object
  29060. required:
  29061. - secretRef
  29062. type: object
  29063. required:
  29064. - privateKey
  29065. type: object
  29066. installID:
  29067. type: string
  29068. permissions:
  29069. additionalProperties:
  29070. type: string
  29071. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  29072. type: object
  29073. repositories:
  29074. description: |-
  29075. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  29076. is installed to.
  29077. items:
  29078. type: string
  29079. type: array
  29080. url:
  29081. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  29082. type: string
  29083. required:
  29084. - appID
  29085. - auth
  29086. - installID
  29087. type: object
  29088. type: object
  29089. served: true
  29090. storage: true
  29091. subresources:
  29092. status: {}
  29093. ---
  29094. apiVersion: apiextensions.k8s.io/v1
  29095. kind: CustomResourceDefinition
  29096. metadata:
  29097. annotations:
  29098. controller-gen.kubebuilder.io/version: v0.19.0
  29099. labels:
  29100. external-secrets.io/component: controller
  29101. name: grafanas.generators.external-secrets.io
  29102. spec:
  29103. group: generators.external-secrets.io
  29104. names:
  29105. categories:
  29106. - external-secrets
  29107. - external-secrets-generators
  29108. kind: Grafana
  29109. listKind: GrafanaList
  29110. plural: grafanas
  29111. singular: grafana
  29112. scope: Namespaced
  29113. versions:
  29114. - name: v1alpha1
  29115. schema:
  29116. openAPIV3Schema:
  29117. description: Grafana represents a generator for Grafana service account tokens.
  29118. properties:
  29119. apiVersion:
  29120. description: |-
  29121. APIVersion defines the versioned schema of this representation of an object.
  29122. Servers should convert recognized schemas to the latest internal value, and
  29123. may reject unrecognized values.
  29124. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29125. type: string
  29126. kind:
  29127. description: |-
  29128. Kind is a string value representing the REST resource this object represents.
  29129. Servers may infer this from the endpoint the client submits requests to.
  29130. Cannot be updated.
  29131. In CamelCase.
  29132. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29133. type: string
  29134. metadata:
  29135. type: object
  29136. spec:
  29137. description: GrafanaSpec controls the behavior of the grafana generator.
  29138. properties:
  29139. auth:
  29140. description: |-
  29141. Auth is the authentication configuration to authenticate
  29142. against the Grafana instance.
  29143. properties:
  29144. basic:
  29145. description: |-
  29146. Basic auth credentials used to authenticate against the Grafana instance.
  29147. Note: you need a token which has elevated permissions to create service accounts.
  29148. See here for the documentation on basic roles offered by Grafana:
  29149. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  29150. properties:
  29151. password:
  29152. description: A basic auth password used to authenticate against the Grafana instance.
  29153. properties:
  29154. key:
  29155. description: The key where the token is found.
  29156. maxLength: 253
  29157. minLength: 1
  29158. pattern: ^[-._a-zA-Z0-9]+$
  29159. type: string
  29160. name:
  29161. description: The name of the Secret resource being referred to.
  29162. maxLength: 253
  29163. minLength: 1
  29164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29165. type: string
  29166. type: object
  29167. username:
  29168. description: A basic auth username used to authenticate against the Grafana instance.
  29169. type: string
  29170. required:
  29171. - password
  29172. - username
  29173. type: object
  29174. token:
  29175. description: |-
  29176. A service account token used to authenticate against the Grafana instance.
  29177. Note: you need a token which has elevated permissions to create service accounts.
  29178. See here for the documentation on basic roles offered by Grafana:
  29179. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  29180. properties:
  29181. key:
  29182. description: The key where the token is found.
  29183. maxLength: 253
  29184. minLength: 1
  29185. pattern: ^[-._a-zA-Z0-9]+$
  29186. type: string
  29187. name:
  29188. description: The name of the Secret resource being referred to.
  29189. maxLength: 253
  29190. minLength: 1
  29191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29192. type: string
  29193. type: object
  29194. type: object
  29195. serviceAccount:
  29196. description: |-
  29197. ServiceAccount is the configuration for the service account that
  29198. is supposed to be generated by the generator.
  29199. properties:
  29200. name:
  29201. description: Name is the name of the service account that will be created by ESO.
  29202. type: string
  29203. role:
  29204. description: |-
  29205. Role is the role of the service account.
  29206. See here for the documentation on basic roles offered by Grafana:
  29207. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  29208. type: string
  29209. required:
  29210. - name
  29211. - role
  29212. type: object
  29213. url:
  29214. description: URL is the URL of the Grafana instance.
  29215. type: string
  29216. required:
  29217. - auth
  29218. - serviceAccount
  29219. - url
  29220. type: object
  29221. type: object
  29222. served: true
  29223. storage: true
  29224. subresources:
  29225. status: {}
  29226. ---
  29227. apiVersion: apiextensions.k8s.io/v1
  29228. kind: CustomResourceDefinition
  29229. metadata:
  29230. annotations:
  29231. controller-gen.kubebuilder.io/version: v0.19.0
  29232. labels:
  29233. external-secrets.io/component: controller
  29234. name: mfas.generators.external-secrets.io
  29235. spec:
  29236. group: generators.external-secrets.io
  29237. names:
  29238. categories:
  29239. - external-secrets
  29240. - external-secrets-generators
  29241. kind: MFA
  29242. listKind: MFAList
  29243. plural: mfas
  29244. singular: mfa
  29245. scope: Namespaced
  29246. versions:
  29247. - name: v1alpha1
  29248. schema:
  29249. openAPIV3Schema:
  29250. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  29251. properties:
  29252. apiVersion:
  29253. description: |-
  29254. APIVersion defines the versioned schema of this representation of an object.
  29255. Servers should convert recognized schemas to the latest internal value, and
  29256. may reject unrecognized values.
  29257. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29258. type: string
  29259. kind:
  29260. description: |-
  29261. Kind is a string value representing the REST resource this object represents.
  29262. Servers may infer this from the endpoint the client submits requests to.
  29263. Cannot be updated.
  29264. In CamelCase.
  29265. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29266. type: string
  29267. metadata:
  29268. type: object
  29269. spec:
  29270. description: MFASpec controls the behavior of the mfa generator.
  29271. properties:
  29272. algorithm:
  29273. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  29274. type: string
  29275. length:
  29276. description: Length defines the token length. Defaults to 6 characters.
  29277. type: integer
  29278. secret:
  29279. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  29280. properties:
  29281. key:
  29282. description: |-
  29283. A key in the referenced Secret.
  29284. Some instances of this field may be defaulted, in others it may be required.
  29285. maxLength: 253
  29286. minLength: 1
  29287. pattern: ^[-._a-zA-Z0-9]+$
  29288. type: string
  29289. name:
  29290. description: The name of the Secret resource being referred to.
  29291. maxLength: 253
  29292. minLength: 1
  29293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29294. type: string
  29295. namespace:
  29296. description: |-
  29297. The namespace of the Secret resource being referred to.
  29298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29299. maxLength: 63
  29300. minLength: 1
  29301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29302. type: string
  29303. type: object
  29304. timePeriod:
  29305. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  29306. type: integer
  29307. when:
  29308. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  29309. format: date-time
  29310. type: string
  29311. required:
  29312. - secret
  29313. type: object
  29314. type: object
  29315. served: true
  29316. storage: true
  29317. subresources:
  29318. status: {}
  29319. ---
  29320. apiVersion: apiextensions.k8s.io/v1
  29321. kind: CustomResourceDefinition
  29322. metadata:
  29323. annotations:
  29324. controller-gen.kubebuilder.io/version: v0.19.0
  29325. labels:
  29326. external-secrets.io/component: controller
  29327. name: passwords.generators.external-secrets.io
  29328. spec:
  29329. group: generators.external-secrets.io
  29330. names:
  29331. categories:
  29332. - external-secrets
  29333. - external-secrets-generators
  29334. kind: Password
  29335. listKind: PasswordList
  29336. plural: passwords
  29337. singular: password
  29338. scope: Namespaced
  29339. versions:
  29340. - name: v1alpha1
  29341. schema:
  29342. openAPIV3Schema:
  29343. description: |-
  29344. Password generates a random password based on the
  29345. configuration parameters in spec.
  29346. You can specify the length, characterset and other attributes.
  29347. properties:
  29348. apiVersion:
  29349. description: |-
  29350. APIVersion defines the versioned schema of this representation of an object.
  29351. Servers should convert recognized schemas to the latest internal value, and
  29352. may reject unrecognized values.
  29353. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29354. type: string
  29355. kind:
  29356. description: |-
  29357. Kind is a string value representing the REST resource this object represents.
  29358. Servers may infer this from the endpoint the client submits requests to.
  29359. Cannot be updated.
  29360. In CamelCase.
  29361. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29362. type: string
  29363. metadata:
  29364. type: object
  29365. spec:
  29366. description: PasswordSpec controls the behavior of the password generator.
  29367. properties:
  29368. allowRepeat:
  29369. default: false
  29370. description: set AllowRepeat to true to allow repeating characters.
  29371. type: boolean
  29372. digits:
  29373. description: |-
  29374. Digits specifies the number of digits in the generated
  29375. password. If omitted it defaults to 25% of the length of the password
  29376. type: integer
  29377. encoding:
  29378. default: raw
  29379. description: |-
  29380. Encoding specifies the encoding of the generated password.
  29381. Valid values are:
  29382. - "raw" (default): no encoding
  29383. - "base64": standard base64 encoding
  29384. - "base64url": base64url encoding
  29385. - "base32": base32 encoding
  29386. - "hex": hexadecimal encoding
  29387. enum:
  29388. - base64
  29389. - base64url
  29390. - base32
  29391. - hex
  29392. - raw
  29393. type: string
  29394. length:
  29395. default: 24
  29396. description: |-
  29397. Length of the password to be generated.
  29398. Defaults to 24
  29399. type: integer
  29400. noUpper:
  29401. default: false
  29402. description: Set NoUpper to disable uppercase characters
  29403. type: boolean
  29404. secretKeys:
  29405. description: |-
  29406. SecretKeys defines the keys that will be populated with generated passwords.
  29407. Defaults to "password" when not set.
  29408. items:
  29409. type: string
  29410. minItems: 1
  29411. type: array
  29412. symbolCharacters:
  29413. description: |-
  29414. SymbolCharacters specifies the special characters that should be used
  29415. in the generated password.
  29416. type: string
  29417. symbols:
  29418. description: |-
  29419. Symbols specifies the number of symbol characters in the generated
  29420. password. If omitted it defaults to 25% of the length of the password
  29421. type: integer
  29422. required:
  29423. - allowRepeat
  29424. - length
  29425. - noUpper
  29426. type: object
  29427. type: object
  29428. served: true
  29429. storage: true
  29430. subresources:
  29431. status: {}
  29432. ---
  29433. apiVersion: apiextensions.k8s.io/v1
  29434. kind: CustomResourceDefinition
  29435. metadata:
  29436. annotations:
  29437. controller-gen.kubebuilder.io/version: v0.19.0
  29438. labels:
  29439. external-secrets.io/component: controller
  29440. name: quayaccesstokens.generators.external-secrets.io
  29441. spec:
  29442. group: generators.external-secrets.io
  29443. names:
  29444. categories:
  29445. - external-secrets
  29446. - external-secrets-generators
  29447. kind: QuayAccessToken
  29448. listKind: QuayAccessTokenList
  29449. plural: quayaccesstokens
  29450. singular: quayaccesstoken
  29451. scope: Namespaced
  29452. versions:
  29453. - name: v1alpha1
  29454. schema:
  29455. openAPIV3Schema:
  29456. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  29457. properties:
  29458. apiVersion:
  29459. description: |-
  29460. APIVersion defines the versioned schema of this representation of an object.
  29461. Servers should convert recognized schemas to the latest internal value, and
  29462. may reject unrecognized values.
  29463. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29464. type: string
  29465. kind:
  29466. description: |-
  29467. Kind is a string value representing the REST resource this object represents.
  29468. Servers may infer this from the endpoint the client submits requests to.
  29469. Cannot be updated.
  29470. In CamelCase.
  29471. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29472. type: string
  29473. metadata:
  29474. type: object
  29475. spec:
  29476. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  29477. properties:
  29478. robotAccount:
  29479. description: Name of the robot account you are federating with
  29480. type: string
  29481. serviceAccountRef:
  29482. description: Name of the service account you are federating with
  29483. properties:
  29484. audiences:
  29485. description: |-
  29486. Audience specifies the `aud` claim for the service account token
  29487. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29488. then this audiences will be appended to the list
  29489. items:
  29490. type: string
  29491. type: array
  29492. name:
  29493. description: The name of the ServiceAccount resource being referred to.
  29494. maxLength: 253
  29495. minLength: 1
  29496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29497. type: string
  29498. namespace:
  29499. description: |-
  29500. Namespace of the resource being referred to.
  29501. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29502. maxLength: 63
  29503. minLength: 1
  29504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29505. type: string
  29506. required:
  29507. - name
  29508. type: object
  29509. url:
  29510. description: URL configures the Quay instance URL. Defaults to quay.io.
  29511. type: string
  29512. required:
  29513. - robotAccount
  29514. - serviceAccountRef
  29515. type: object
  29516. type: object
  29517. served: true
  29518. storage: true
  29519. subresources:
  29520. status: {}
  29521. ---
  29522. apiVersion: apiextensions.k8s.io/v1
  29523. kind: CustomResourceDefinition
  29524. metadata:
  29525. annotations:
  29526. controller-gen.kubebuilder.io/version: v0.19.0
  29527. labels:
  29528. external-secrets.io/component: controller
  29529. name: sshkeys.generators.external-secrets.io
  29530. spec:
  29531. group: generators.external-secrets.io
  29532. names:
  29533. categories:
  29534. - external-secrets
  29535. - external-secrets-generators
  29536. kind: SSHKey
  29537. listKind: SSHKeyList
  29538. plural: sshkeys
  29539. singular: sshkey
  29540. scope: Namespaced
  29541. versions:
  29542. - name: v1alpha1
  29543. schema:
  29544. openAPIV3Schema:
  29545. description: SSHKey generates SSH key pairs.
  29546. properties:
  29547. apiVersion:
  29548. description: |-
  29549. APIVersion defines the versioned schema of this representation of an object.
  29550. Servers should convert recognized schemas to the latest internal value, and
  29551. may reject unrecognized values.
  29552. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29553. type: string
  29554. kind:
  29555. description: |-
  29556. Kind is a string value representing the REST resource this object represents.
  29557. Servers may infer this from the endpoint the client submits requests to.
  29558. Cannot be updated.
  29559. In CamelCase.
  29560. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29561. type: string
  29562. metadata:
  29563. type: object
  29564. spec:
  29565. description: SSHKeySpec controls the behavior of the ssh key generator.
  29566. properties:
  29567. comment:
  29568. description: Comment specifies an optional comment for the SSH key
  29569. type: string
  29570. keySize:
  29571. description: |-
  29572. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  29573. For RSA keys: 2048, 3072, 4096
  29574. For ECDSA keys: 256, 384, 521
  29575. Ignored for ed25519 keys
  29576. maximum: 8192
  29577. minimum: 256
  29578. type: integer
  29579. keyType:
  29580. default: rsa
  29581. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  29582. enum:
  29583. - rsa
  29584. - ecdsa
  29585. - ed25519
  29586. type: string
  29587. type: object
  29588. type: object
  29589. served: true
  29590. storage: true
  29591. subresources:
  29592. status: {}
  29593. ---
  29594. apiVersion: apiextensions.k8s.io/v1
  29595. kind: CustomResourceDefinition
  29596. metadata:
  29597. annotations:
  29598. controller-gen.kubebuilder.io/version: v0.19.0
  29599. labels:
  29600. external-secrets.io/component: controller
  29601. name: stssessiontokens.generators.external-secrets.io
  29602. spec:
  29603. group: generators.external-secrets.io
  29604. names:
  29605. categories:
  29606. - external-secrets
  29607. - external-secrets-generators
  29608. kind: STSSessionToken
  29609. listKind: STSSessionTokenList
  29610. plural: stssessiontokens
  29611. singular: stssessiontoken
  29612. scope: Namespaced
  29613. versions:
  29614. - name: v1alpha1
  29615. schema:
  29616. openAPIV3Schema:
  29617. description: |-
  29618. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  29619. The authorization token is valid for 12 hours.
  29620. The authorizationToken returned is a base64 encoded string that can be decoded.
  29621. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  29622. properties:
  29623. apiVersion:
  29624. description: |-
  29625. APIVersion defines the versioned schema of this representation of an object.
  29626. Servers should convert recognized schemas to the latest internal value, and
  29627. may reject unrecognized values.
  29628. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29629. type: string
  29630. kind:
  29631. description: |-
  29632. Kind is a string value representing the REST resource this object represents.
  29633. Servers may infer this from the endpoint the client submits requests to.
  29634. Cannot be updated.
  29635. In CamelCase.
  29636. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29637. type: string
  29638. metadata:
  29639. type: object
  29640. spec:
  29641. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  29642. properties:
  29643. auth:
  29644. description: Auth defines how to authenticate with AWS
  29645. properties:
  29646. jwt:
  29647. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  29648. properties:
  29649. serviceAccountRef:
  29650. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29651. properties:
  29652. audiences:
  29653. description: |-
  29654. Audience specifies the `aud` claim for the service account token
  29655. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29656. then this audiences will be appended to the list
  29657. items:
  29658. type: string
  29659. type: array
  29660. name:
  29661. description: The name of the ServiceAccount resource being referred to.
  29662. maxLength: 253
  29663. minLength: 1
  29664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29665. type: string
  29666. namespace:
  29667. description: |-
  29668. Namespace of the resource being referred to.
  29669. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29670. maxLength: 63
  29671. minLength: 1
  29672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29673. type: string
  29674. required:
  29675. - name
  29676. type: object
  29677. type: object
  29678. secretRef:
  29679. description: |-
  29680. AWSAuthSecretRef holds secret references for AWS credentials
  29681. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  29682. properties:
  29683. accessKeyIDSecretRef:
  29684. description: The AccessKeyID is used for authentication
  29685. properties:
  29686. key:
  29687. description: |-
  29688. A key in the referenced Secret.
  29689. Some instances of this field may be defaulted, in others it may be required.
  29690. maxLength: 253
  29691. minLength: 1
  29692. pattern: ^[-._a-zA-Z0-9]+$
  29693. type: string
  29694. name:
  29695. description: The name of the Secret resource being referred to.
  29696. maxLength: 253
  29697. minLength: 1
  29698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29699. type: string
  29700. namespace:
  29701. description: |-
  29702. The namespace of the Secret resource being referred to.
  29703. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29704. maxLength: 63
  29705. minLength: 1
  29706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29707. type: string
  29708. type: object
  29709. secretAccessKeySecretRef:
  29710. description: The SecretAccessKey is used for authentication
  29711. properties:
  29712. key:
  29713. description: |-
  29714. A key in the referenced Secret.
  29715. Some instances of this field may be defaulted, in others it may be required.
  29716. maxLength: 253
  29717. minLength: 1
  29718. pattern: ^[-._a-zA-Z0-9]+$
  29719. type: string
  29720. name:
  29721. description: The name of the Secret resource being referred to.
  29722. maxLength: 253
  29723. minLength: 1
  29724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29725. type: string
  29726. namespace:
  29727. description: |-
  29728. The namespace of the Secret resource being referred to.
  29729. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29730. maxLength: 63
  29731. minLength: 1
  29732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29733. type: string
  29734. type: object
  29735. sessionTokenSecretRef:
  29736. description: |-
  29737. The SessionToken used for authentication
  29738. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  29739. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  29740. properties:
  29741. key:
  29742. description: |-
  29743. A key in the referenced Secret.
  29744. Some instances of this field may be defaulted, in others it may be required.
  29745. maxLength: 253
  29746. minLength: 1
  29747. pattern: ^[-._a-zA-Z0-9]+$
  29748. type: string
  29749. name:
  29750. description: The name of the Secret resource being referred to.
  29751. maxLength: 253
  29752. minLength: 1
  29753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29754. type: string
  29755. namespace:
  29756. description: |-
  29757. The namespace of the Secret resource being referred to.
  29758. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29759. maxLength: 63
  29760. minLength: 1
  29761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29762. type: string
  29763. type: object
  29764. type: object
  29765. type: object
  29766. region:
  29767. description: Region specifies the region to operate in.
  29768. type: string
  29769. requestParameters:
  29770. description: RequestParameters contains parameters that can be passed to the STS service.
  29771. properties:
  29772. serialNumber:
  29773. description: |-
  29774. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  29775. the GetSessionToken call.
  29776. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  29777. (such as arn:aws:iam::123456789012:mfa/user)
  29778. type: string
  29779. sessionDuration:
  29780. format: int32
  29781. type: integer
  29782. tokenCode:
  29783. description: TokenCode is the value provided by the MFA device, if MFA is required.
  29784. type: string
  29785. type: object
  29786. role:
  29787. description: |-
  29788. You can assume a role before making calls to the
  29789. desired AWS service.
  29790. type: string
  29791. required:
  29792. - region
  29793. type: object
  29794. type: object
  29795. served: true
  29796. storage: true
  29797. subresources:
  29798. status: {}
  29799. ---
  29800. apiVersion: apiextensions.k8s.io/v1
  29801. kind: CustomResourceDefinition
  29802. metadata:
  29803. annotations:
  29804. controller-gen.kubebuilder.io/version: v0.19.0
  29805. labels:
  29806. external-secrets.io/component: controller
  29807. name: uuids.generators.external-secrets.io
  29808. spec:
  29809. group: generators.external-secrets.io
  29810. names:
  29811. categories:
  29812. - external-secrets
  29813. - external-secrets-generators
  29814. kind: UUID
  29815. listKind: UUIDList
  29816. plural: uuids
  29817. singular: uuid
  29818. scope: Namespaced
  29819. versions:
  29820. - name: v1alpha1
  29821. schema:
  29822. openAPIV3Schema:
  29823. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  29824. properties:
  29825. apiVersion:
  29826. description: |-
  29827. APIVersion defines the versioned schema of this representation of an object.
  29828. Servers should convert recognized schemas to the latest internal value, and
  29829. may reject unrecognized values.
  29830. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29831. type: string
  29832. kind:
  29833. description: |-
  29834. Kind is a string value representing the REST resource this object represents.
  29835. Servers may infer this from the endpoint the client submits requests to.
  29836. Cannot be updated.
  29837. In CamelCase.
  29838. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29839. type: string
  29840. metadata:
  29841. type: object
  29842. spec:
  29843. description: UUIDSpec controls the behavior of the uuid generator.
  29844. type: object
  29845. type: object
  29846. served: true
  29847. storage: true
  29848. subresources:
  29849. status: {}
  29850. ---
  29851. apiVersion: apiextensions.k8s.io/v1
  29852. kind: CustomResourceDefinition
  29853. metadata:
  29854. annotations:
  29855. controller-gen.kubebuilder.io/version: v0.19.0
  29856. labels:
  29857. external-secrets.io/component: controller
  29858. name: vaultdynamicsecrets.generators.external-secrets.io
  29859. spec:
  29860. group: generators.external-secrets.io
  29861. names:
  29862. categories:
  29863. - external-secrets
  29864. - external-secrets-generators
  29865. kind: VaultDynamicSecret
  29866. listKind: VaultDynamicSecretList
  29867. plural: vaultdynamicsecrets
  29868. singular: vaultdynamicsecret
  29869. scope: Namespaced
  29870. versions:
  29871. - name: v1alpha1
  29872. schema:
  29873. openAPIV3Schema:
  29874. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  29875. properties:
  29876. apiVersion:
  29877. description: |-
  29878. APIVersion defines the versioned schema of this representation of an object.
  29879. Servers should convert recognized schemas to the latest internal value, and
  29880. may reject unrecognized values.
  29881. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29882. type: string
  29883. kind:
  29884. description: |-
  29885. Kind is a string value representing the REST resource this object represents.
  29886. Servers may infer this from the endpoint the client submits requests to.
  29887. Cannot be updated.
  29888. In CamelCase.
  29889. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29890. type: string
  29891. metadata:
  29892. type: object
  29893. spec:
  29894. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  29895. properties:
  29896. allowEmptyResponse:
  29897. default: false
  29898. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  29899. type: boolean
  29900. controller:
  29901. description: |-
  29902. Used to select the correct ESO controller (think: ingress.ingressClassName)
  29903. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  29904. type: string
  29905. getParameters:
  29906. additionalProperties:
  29907. items:
  29908. type: string
  29909. type: array
  29910. description: |-
  29911. GetParameters are query-string parameters passed to Vault on GET calls.
  29912. Each key may map to multiple values, matching HTTP query-string semantics.
  29913. Ignored for non-GET methods; use Parameters for write bodies.
  29914. type: object
  29915. method:
  29916. description: Vault API method to use (GET/POST/other)
  29917. type: string
  29918. parameters:
  29919. description: Parameters to pass to Vault write (for non-GET methods)
  29920. x-kubernetes-preserve-unknown-fields: true
  29921. path:
  29922. description: Vault path to obtain the dynamic secret from
  29923. type: string
  29924. provider:
  29925. description: Vault provider common spec
  29926. properties:
  29927. auth:
  29928. description: Auth configures how secret-manager authenticates with the Vault server.
  29929. properties:
  29930. appRole:
  29931. description: |-
  29932. AppRole authenticates with Vault using the App Role auth mechanism,
  29933. with the role and secret stored in a Kubernetes Secret resource.
  29934. properties:
  29935. path:
  29936. default: approle
  29937. description: |-
  29938. Path where the App Role authentication backend is mounted
  29939. in Vault, e.g: "approle"
  29940. type: string
  29941. roleId:
  29942. description: |-
  29943. RoleID configured in the App Role authentication backend when setting
  29944. up the authentication backend in Vault.
  29945. type: string
  29946. roleRef:
  29947. description: |-
  29948. Reference to a key in a Secret that contains the App Role ID used
  29949. to authenticate with Vault.
  29950. The `key` field must be specified and denotes which entry within the Secret
  29951. resource is used as the app role id.
  29952. properties:
  29953. key:
  29954. description: |-
  29955. A key in the referenced Secret.
  29956. Some instances of this field may be defaulted, in others it may be required.
  29957. maxLength: 253
  29958. minLength: 1
  29959. pattern: ^[-._a-zA-Z0-9]+$
  29960. type: string
  29961. name:
  29962. description: The name of the Secret resource being referred to.
  29963. maxLength: 253
  29964. minLength: 1
  29965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29966. type: string
  29967. namespace:
  29968. description: |-
  29969. The namespace of the Secret resource being referred to.
  29970. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29971. maxLength: 63
  29972. minLength: 1
  29973. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29974. type: string
  29975. type: object
  29976. secretRef:
  29977. description: |-
  29978. Reference to a key in a Secret that contains the App Role secret used
  29979. to authenticate with Vault.
  29980. The `key` field must be specified and denotes which entry within the Secret
  29981. resource is used as the app role secret.
  29982. properties:
  29983. key:
  29984. description: |-
  29985. A key in the referenced Secret.
  29986. Some instances of this field may be defaulted, in others it may be required.
  29987. maxLength: 253
  29988. minLength: 1
  29989. pattern: ^[-._a-zA-Z0-9]+$
  29990. type: string
  29991. name:
  29992. description: The name of the Secret resource being referred to.
  29993. maxLength: 253
  29994. minLength: 1
  29995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29996. type: string
  29997. namespace:
  29998. description: |-
  29999. The namespace of the Secret resource being referred to.
  30000. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30001. maxLength: 63
  30002. minLength: 1
  30003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30004. type: string
  30005. type: object
  30006. required:
  30007. - path
  30008. - secretRef
  30009. type: object
  30010. cert:
  30011. description: |-
  30012. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  30013. Cert authentication method
  30014. properties:
  30015. clientCert:
  30016. description: |-
  30017. ClientCert is a certificate to authenticate using the Cert Vault
  30018. authentication method
  30019. properties:
  30020. key:
  30021. description: |-
  30022. A key in the referenced Secret.
  30023. Some instances of this field may be defaulted, in others it may be required.
  30024. maxLength: 253
  30025. minLength: 1
  30026. pattern: ^[-._a-zA-Z0-9]+$
  30027. type: string
  30028. name:
  30029. description: The name of the Secret resource being referred to.
  30030. maxLength: 253
  30031. minLength: 1
  30032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30033. type: string
  30034. namespace:
  30035. description: |-
  30036. The namespace of the Secret resource being referred to.
  30037. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30038. maxLength: 63
  30039. minLength: 1
  30040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30041. type: string
  30042. type: object
  30043. path:
  30044. default: cert
  30045. description: |-
  30046. Path where the Certificate authentication backend is mounted
  30047. in Vault, e.g: "cert"
  30048. type: string
  30049. secretRef:
  30050. description: |-
  30051. SecretRef to a key in a Secret resource containing client private key to
  30052. authenticate with Vault using the Cert authentication method
  30053. properties:
  30054. key:
  30055. description: |-
  30056. A key in the referenced Secret.
  30057. Some instances of this field may be defaulted, in others it may be required.
  30058. maxLength: 253
  30059. minLength: 1
  30060. pattern: ^[-._a-zA-Z0-9]+$
  30061. type: string
  30062. name:
  30063. description: The name of the Secret resource being referred to.
  30064. maxLength: 253
  30065. minLength: 1
  30066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30067. type: string
  30068. namespace:
  30069. description: |-
  30070. The namespace of the Secret resource being referred to.
  30071. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30072. maxLength: 63
  30073. minLength: 1
  30074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30075. type: string
  30076. type: object
  30077. vaultRole:
  30078. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  30079. type: string
  30080. type: object
  30081. gcp:
  30082. description: |-
  30083. Gcp authenticates with Vault using Google Cloud Platform authentication method
  30084. GCP authentication method
  30085. properties:
  30086. location:
  30087. description: Location optionally defines a location/region for the secret
  30088. type: string
  30089. path:
  30090. default: gcp
  30091. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  30092. type: string
  30093. projectID:
  30094. description: Project ID of the Google Cloud Platform project
  30095. type: string
  30096. role:
  30097. 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.
  30098. type: string
  30099. secretRef:
  30100. description: Specify credentials in a Secret object
  30101. properties:
  30102. secretAccessKeySecretRef:
  30103. description: The SecretAccessKey is used for authentication
  30104. properties:
  30105. key:
  30106. description: |-
  30107. A key in the referenced Secret.
  30108. Some instances of this field may be defaulted, in others it may be required.
  30109. maxLength: 253
  30110. minLength: 1
  30111. pattern: ^[-._a-zA-Z0-9]+$
  30112. type: string
  30113. name:
  30114. description: The name of the Secret resource being referred to.
  30115. maxLength: 253
  30116. minLength: 1
  30117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30118. type: string
  30119. namespace:
  30120. description: |-
  30121. The namespace of the Secret resource being referred to.
  30122. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30123. maxLength: 63
  30124. minLength: 1
  30125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30126. type: string
  30127. type: object
  30128. type: object
  30129. serviceAccountRef:
  30130. description: ServiceAccountRef to a service account for impersonation
  30131. properties:
  30132. audiences:
  30133. description: |-
  30134. Audience specifies the `aud` claim for the service account token
  30135. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30136. then this audiences will be appended to the list
  30137. items:
  30138. type: string
  30139. type: array
  30140. name:
  30141. description: The name of the ServiceAccount resource being referred to.
  30142. maxLength: 253
  30143. minLength: 1
  30144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30145. type: string
  30146. namespace:
  30147. description: |-
  30148. Namespace of the resource being referred to.
  30149. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30150. maxLength: 63
  30151. minLength: 1
  30152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30153. type: string
  30154. required:
  30155. - name
  30156. type: object
  30157. workloadIdentity:
  30158. description: Specify a service account with Workload Identity
  30159. properties:
  30160. clusterLocation:
  30161. description: |-
  30162. ClusterLocation is the location of the cluster
  30163. If not specified, it fetches information from the metadata server
  30164. type: string
  30165. clusterName:
  30166. description: |-
  30167. ClusterName is the name of the cluster
  30168. If not specified, it fetches information from the metadata server
  30169. type: string
  30170. clusterProjectID:
  30171. description: |-
  30172. ClusterProjectID is the project ID of the cluster
  30173. If not specified, it fetches information from the metadata server
  30174. type: string
  30175. serviceAccountRef:
  30176. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  30177. properties:
  30178. audiences:
  30179. description: |-
  30180. Audience specifies the `aud` claim for the service account token
  30181. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30182. then this audiences will be appended to the list
  30183. items:
  30184. type: string
  30185. type: array
  30186. name:
  30187. description: The name of the ServiceAccount resource being referred to.
  30188. maxLength: 253
  30189. minLength: 1
  30190. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30191. type: string
  30192. namespace:
  30193. description: |-
  30194. Namespace of the resource being referred to.
  30195. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30196. maxLength: 63
  30197. minLength: 1
  30198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30199. type: string
  30200. required:
  30201. - name
  30202. type: object
  30203. required:
  30204. - serviceAccountRef
  30205. type: object
  30206. required:
  30207. - role
  30208. type: object
  30209. iam:
  30210. description: |-
  30211. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  30212. AWS IAM authentication method
  30213. properties:
  30214. externalID:
  30215. description: AWS External ID set on assumed IAM roles
  30216. type: string
  30217. jwt:
  30218. description: Specify a service account with IRSA enabled
  30219. properties:
  30220. serviceAccountRef:
  30221. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  30222. properties:
  30223. audiences:
  30224. description: |-
  30225. Audience specifies the `aud` claim for the service account token
  30226. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30227. then this audiences will be appended to the list
  30228. items:
  30229. type: string
  30230. type: array
  30231. name:
  30232. description: The name of the ServiceAccount resource being referred to.
  30233. maxLength: 253
  30234. minLength: 1
  30235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30236. type: string
  30237. namespace:
  30238. description: |-
  30239. Namespace of the resource being referred to.
  30240. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30241. maxLength: 63
  30242. minLength: 1
  30243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30244. type: string
  30245. required:
  30246. - name
  30247. type: object
  30248. type: object
  30249. path:
  30250. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  30251. type: string
  30252. region:
  30253. description: AWS region
  30254. type: string
  30255. role:
  30256. description: This is the AWS role to be assumed before talking to vault
  30257. type: string
  30258. secretRef:
  30259. description: Specify credentials in a Secret object
  30260. properties:
  30261. accessKeyIDSecretRef:
  30262. description: The AccessKeyID is used for authentication
  30263. properties:
  30264. key:
  30265. description: |-
  30266. A key in the referenced Secret.
  30267. Some instances of this field may be defaulted, in others it may be required.
  30268. maxLength: 253
  30269. minLength: 1
  30270. pattern: ^[-._a-zA-Z0-9]+$
  30271. type: string
  30272. name:
  30273. description: The name of the Secret resource being referred to.
  30274. maxLength: 253
  30275. minLength: 1
  30276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30277. type: string
  30278. namespace:
  30279. description: |-
  30280. The namespace of the Secret resource being referred to.
  30281. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30282. maxLength: 63
  30283. minLength: 1
  30284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30285. type: string
  30286. type: object
  30287. secretAccessKeySecretRef:
  30288. description: The SecretAccessKey is used for authentication
  30289. properties:
  30290. key:
  30291. description: |-
  30292. A key in the referenced Secret.
  30293. Some instances of this field may be defaulted, in others it may be required.
  30294. maxLength: 253
  30295. minLength: 1
  30296. pattern: ^[-._a-zA-Z0-9]+$
  30297. type: string
  30298. name:
  30299. description: The name of the Secret resource being referred to.
  30300. maxLength: 253
  30301. minLength: 1
  30302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30303. type: string
  30304. namespace:
  30305. description: |-
  30306. The namespace of the Secret resource being referred to.
  30307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30308. maxLength: 63
  30309. minLength: 1
  30310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30311. type: string
  30312. type: object
  30313. sessionTokenSecretRef:
  30314. description: |-
  30315. The SessionToken used for authentication
  30316. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  30317. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  30318. properties:
  30319. key:
  30320. description: |-
  30321. A key in the referenced Secret.
  30322. Some instances of this field may be defaulted, in others it may be required.
  30323. maxLength: 253
  30324. minLength: 1
  30325. pattern: ^[-._a-zA-Z0-9]+$
  30326. type: string
  30327. name:
  30328. description: The name of the Secret resource being referred to.
  30329. maxLength: 253
  30330. minLength: 1
  30331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30332. type: string
  30333. namespace:
  30334. description: |-
  30335. The namespace of the Secret resource being referred to.
  30336. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30337. maxLength: 63
  30338. minLength: 1
  30339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30340. type: string
  30341. type: object
  30342. type: object
  30343. vaultAwsIamServerID:
  30344. 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'
  30345. type: string
  30346. vaultRole:
  30347. 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
  30348. type: string
  30349. required:
  30350. - vaultRole
  30351. type: object
  30352. jwt:
  30353. description: |-
  30354. Jwt authenticates with Vault by passing role and JWT token using the
  30355. JWT/OIDC authentication method
  30356. properties:
  30357. kubernetesServiceAccountToken:
  30358. description: |-
  30359. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  30360. a token for with the `TokenRequest` API.
  30361. properties:
  30362. audiences:
  30363. description: |-
  30364. Optional audiences field that will be used to request a temporary Kubernetes service
  30365. account token for the service account referenced by `serviceAccountRef`.
  30366. Defaults to a single audience `vault` it not specified.
  30367. Deprecated: use serviceAccountRef.Audiences instead
  30368. items:
  30369. type: string
  30370. type: array
  30371. expirationSeconds:
  30372. description: |-
  30373. Optional expiration time in seconds that will be used to request a temporary
  30374. Kubernetes service account token for the service account referenced by
  30375. `serviceAccountRef`.
  30376. Deprecated: this will be removed in the future.
  30377. Defaults to 10 minutes.
  30378. format: int64
  30379. type: integer
  30380. serviceAccountRef:
  30381. description: Service account field containing the name of a kubernetes ServiceAccount.
  30382. properties:
  30383. audiences:
  30384. description: |-
  30385. Audience specifies the `aud` claim for the service account token
  30386. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30387. then this audiences will be appended to the list
  30388. items:
  30389. type: string
  30390. type: array
  30391. name:
  30392. description: The name of the ServiceAccount resource being referred to.
  30393. maxLength: 253
  30394. minLength: 1
  30395. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30396. type: string
  30397. namespace:
  30398. description: |-
  30399. Namespace of the resource being referred to.
  30400. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30401. maxLength: 63
  30402. minLength: 1
  30403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30404. type: string
  30405. required:
  30406. - name
  30407. type: object
  30408. required:
  30409. - serviceAccountRef
  30410. type: object
  30411. path:
  30412. default: jwt
  30413. description: |-
  30414. Path where the JWT authentication backend is mounted
  30415. in Vault, e.g: "jwt"
  30416. type: string
  30417. role:
  30418. description: |-
  30419. Role is a JWT role to authenticate using the JWT/OIDC Vault
  30420. authentication method
  30421. type: string
  30422. secretRef:
  30423. description: |-
  30424. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  30425. authenticate with Vault using the JWT/OIDC authentication method.
  30426. properties:
  30427. key:
  30428. description: |-
  30429. A key in the referenced Secret.
  30430. Some instances of this field may be defaulted, in others it may be required.
  30431. maxLength: 253
  30432. minLength: 1
  30433. pattern: ^[-._a-zA-Z0-9]+$
  30434. type: string
  30435. name:
  30436. description: The name of the Secret resource being referred to.
  30437. maxLength: 253
  30438. minLength: 1
  30439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30440. type: string
  30441. namespace:
  30442. description: |-
  30443. The namespace of the Secret resource being referred to.
  30444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30445. maxLength: 63
  30446. minLength: 1
  30447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30448. type: string
  30449. type: object
  30450. required:
  30451. - path
  30452. type: object
  30453. kubernetes:
  30454. description: |-
  30455. Kubernetes authenticates with Vault by passing the ServiceAccount
  30456. token stored in the named Secret resource to the Vault server.
  30457. properties:
  30458. mountPath:
  30459. default: kubernetes
  30460. description: |-
  30461. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  30462. "kubernetes"
  30463. type: string
  30464. role:
  30465. description: |-
  30466. A required field containing the Vault Role to assume. A Role binds a
  30467. Kubernetes ServiceAccount with a set of Vault policies.
  30468. type: string
  30469. secretRef:
  30470. description: |-
  30471. Optional secret field containing a Kubernetes ServiceAccount JWT used
  30472. for authenticating with Vault. If a name is specified without a key,
  30473. `token` is the default. If one is not specified, the one bound to
  30474. the controller will be used.
  30475. properties:
  30476. key:
  30477. description: |-
  30478. A key in the referenced Secret.
  30479. Some instances of this field may be defaulted, in others it may be required.
  30480. maxLength: 253
  30481. minLength: 1
  30482. pattern: ^[-._a-zA-Z0-9]+$
  30483. type: string
  30484. name:
  30485. description: The name of the Secret resource being referred to.
  30486. maxLength: 253
  30487. minLength: 1
  30488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30489. type: string
  30490. namespace:
  30491. description: |-
  30492. The namespace of the Secret resource being referred to.
  30493. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30494. maxLength: 63
  30495. minLength: 1
  30496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30497. type: string
  30498. type: object
  30499. serviceAccountRef:
  30500. description: |-
  30501. Optional service account field containing the name of a kubernetes ServiceAccount.
  30502. If the service account is specified, the service account secret token JWT will be used
  30503. for authenticating with Vault. If the service account selector is not supplied,
  30504. the secretRef will be used instead.
  30505. properties:
  30506. audiences:
  30507. description: |-
  30508. Audience specifies the `aud` claim for the service account token
  30509. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30510. then this audiences will be appended to the list
  30511. items:
  30512. type: string
  30513. type: array
  30514. name:
  30515. description: The name of the ServiceAccount resource being referred to.
  30516. maxLength: 253
  30517. minLength: 1
  30518. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30519. type: string
  30520. namespace:
  30521. description: |-
  30522. Namespace of the resource being referred to.
  30523. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30524. maxLength: 63
  30525. minLength: 1
  30526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30527. type: string
  30528. required:
  30529. - name
  30530. type: object
  30531. required:
  30532. - mountPath
  30533. - role
  30534. type: object
  30535. ldap:
  30536. description: |-
  30537. Ldap authenticates with Vault by passing username/password pair using
  30538. the LDAP authentication method
  30539. properties:
  30540. path:
  30541. default: ldap
  30542. description: |-
  30543. Path where the LDAP authentication backend is mounted
  30544. in Vault, e.g: "ldap"
  30545. type: string
  30546. secretRef:
  30547. description: |-
  30548. SecretRef to a key in a Secret resource containing password for the LDAP
  30549. user used to authenticate with Vault using the LDAP authentication
  30550. method
  30551. properties:
  30552. key:
  30553. description: |-
  30554. A key in the referenced Secret.
  30555. Some instances of this field may be defaulted, in others it may be required.
  30556. maxLength: 253
  30557. minLength: 1
  30558. pattern: ^[-._a-zA-Z0-9]+$
  30559. type: string
  30560. name:
  30561. description: The name of the Secret resource being referred to.
  30562. maxLength: 253
  30563. minLength: 1
  30564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30565. type: string
  30566. namespace:
  30567. description: |-
  30568. The namespace of the Secret resource being referred to.
  30569. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30570. maxLength: 63
  30571. minLength: 1
  30572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30573. type: string
  30574. type: object
  30575. username:
  30576. description: |-
  30577. Username is an LDAP username used to authenticate using the LDAP Vault
  30578. authentication method
  30579. type: string
  30580. required:
  30581. - path
  30582. - username
  30583. type: object
  30584. namespace:
  30585. description: |-
  30586. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  30587. Namespaces is a set of features within Vault Enterprise that allows
  30588. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  30589. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  30590. This will default to Vault.Namespace field if set, or empty otherwise
  30591. type: string
  30592. tokenSecretRef:
  30593. description: TokenSecretRef authenticates with Vault by presenting a token.
  30594. properties:
  30595. key:
  30596. description: |-
  30597. A key in the referenced Secret.
  30598. Some instances of this field may be defaulted, in others it may be required.
  30599. maxLength: 253
  30600. minLength: 1
  30601. pattern: ^[-._a-zA-Z0-9]+$
  30602. type: string
  30603. name:
  30604. description: The name of the Secret resource being referred to.
  30605. maxLength: 253
  30606. minLength: 1
  30607. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30608. type: string
  30609. namespace:
  30610. description: |-
  30611. The namespace of the Secret resource being referred to.
  30612. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30613. maxLength: 63
  30614. minLength: 1
  30615. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30616. type: string
  30617. type: object
  30618. userPass:
  30619. description: UserPass authenticates with Vault by passing username/password pair
  30620. properties:
  30621. path:
  30622. default: userpass
  30623. description: |-
  30624. Path where the UserPassword authentication backend is mounted
  30625. in Vault, e.g: "userpass"
  30626. type: string
  30627. secretRef:
  30628. description: |-
  30629. SecretRef to a key in a Secret resource containing password for the
  30630. user used to authenticate with Vault using the UserPass authentication
  30631. method
  30632. properties:
  30633. key:
  30634. description: |-
  30635. A key in the referenced Secret.
  30636. Some instances of this field may be defaulted, in others it may be required.
  30637. maxLength: 253
  30638. minLength: 1
  30639. pattern: ^[-._a-zA-Z0-9]+$
  30640. type: string
  30641. name:
  30642. description: The name of the Secret resource being referred to.
  30643. maxLength: 253
  30644. minLength: 1
  30645. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30646. type: string
  30647. namespace:
  30648. description: |-
  30649. The namespace of the Secret resource being referred to.
  30650. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30651. maxLength: 63
  30652. minLength: 1
  30653. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30654. type: string
  30655. type: object
  30656. username:
  30657. description: |-
  30658. Username is a username used to authenticate using the UserPass Vault
  30659. authentication method
  30660. type: string
  30661. required:
  30662. - path
  30663. - username
  30664. type: object
  30665. type: object
  30666. caBundle:
  30667. description: |-
  30668. PEM encoded CA bundle used to validate Vault server certificate. Only used
  30669. if the Server URL is using HTTPS protocol. This parameter is ignored for
  30670. plain HTTP protocol connection. If not set the system root certificates
  30671. are used to validate the TLS connection.
  30672. format: byte
  30673. type: string
  30674. caProvider:
  30675. description: The provider for the CA bundle to use to validate Vault server certificate.
  30676. properties:
  30677. key:
  30678. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  30679. maxLength: 253
  30680. minLength: 1
  30681. pattern: ^[-._a-zA-Z0-9]+$
  30682. type: string
  30683. name:
  30684. description: The name of the object located at the provider type.
  30685. maxLength: 253
  30686. minLength: 1
  30687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30688. type: string
  30689. namespace:
  30690. description: |-
  30691. The namespace the Provider type is in.
  30692. Can only be defined when used in a ClusterSecretStore.
  30693. maxLength: 63
  30694. minLength: 1
  30695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30696. type: string
  30697. type:
  30698. description: The type of provider to use such as "Secret", or "ConfigMap".
  30699. enum:
  30700. - Secret
  30701. - ConfigMap
  30702. type: string
  30703. required:
  30704. - name
  30705. - type
  30706. type: object
  30707. checkAndSet:
  30708. description: |-
  30709. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  30710. Only applies to Vault KV v2 stores. When enabled, write operations must include
  30711. the current version of the secret to prevent unintentional overwrites.
  30712. properties:
  30713. required:
  30714. description: |-
  30715. Required when true, all write operations must include a check-and-set parameter.
  30716. This helps prevent unintentional overwrites of secrets.
  30717. type: boolean
  30718. type: object
  30719. forwardInconsistent:
  30720. description: |-
  30721. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  30722. leader instead of simply retrying within a loop. This can increase performance if
  30723. the option is enabled serverside.
  30724. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  30725. type: boolean
  30726. headers:
  30727. additionalProperties:
  30728. type: string
  30729. description: Headers to be added in Vault request
  30730. type: object
  30731. namespace:
  30732. description: |-
  30733. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  30734. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  30735. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  30736. type: string
  30737. path:
  30738. description: |-
  30739. Path is the mount path of the Vault KV backend endpoint, e.g:
  30740. "secret". The v2 KV secret engine version specific "/data" path suffix
  30741. for fetching secrets from Vault is optional and will be appended
  30742. if not present in specified path.
  30743. type: string
  30744. readYourWrites:
  30745. description: |-
  30746. ReadYourWrites ensures isolated read-after-write semantics by
  30747. providing discovered cluster replication states in each request.
  30748. More information about eventual consistency in Vault can be found here
  30749. https://www.vaultproject.io/docs/enterprise/consistency
  30750. type: boolean
  30751. server:
  30752. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  30753. type: string
  30754. tls:
  30755. description: |-
  30756. The configuration used for client side related TLS communication, when the Vault server
  30757. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  30758. This parameter is ignored for plain HTTP protocol connection.
  30759. It's worth noting this configuration is different from the "TLS certificates auth method",
  30760. which is available under the `auth.cert` section.
  30761. properties:
  30762. certSecretRef:
  30763. description: |-
  30764. CertSecretRef is a certificate added to the transport layer
  30765. when communicating with the Vault server.
  30766. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  30767. properties:
  30768. key:
  30769. description: |-
  30770. A key in the referenced Secret.
  30771. Some instances of this field may be defaulted, in others it may be required.
  30772. maxLength: 253
  30773. minLength: 1
  30774. pattern: ^[-._a-zA-Z0-9]+$
  30775. type: string
  30776. name:
  30777. description: The name of the Secret resource being referred to.
  30778. maxLength: 253
  30779. minLength: 1
  30780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30781. type: string
  30782. namespace:
  30783. description: |-
  30784. The namespace of the Secret resource being referred to.
  30785. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30786. maxLength: 63
  30787. minLength: 1
  30788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30789. type: string
  30790. type: object
  30791. keySecretRef:
  30792. description: |-
  30793. KeySecretRef to a key in a Secret resource containing client private key
  30794. added to the transport layer when communicating with the Vault server.
  30795. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  30796. properties:
  30797. key:
  30798. description: |-
  30799. A key in the referenced Secret.
  30800. Some instances of this field may be defaulted, in others it may be required.
  30801. maxLength: 253
  30802. minLength: 1
  30803. pattern: ^[-._a-zA-Z0-9]+$
  30804. type: string
  30805. name:
  30806. description: The name of the Secret resource being referred to.
  30807. maxLength: 253
  30808. minLength: 1
  30809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30810. type: string
  30811. namespace:
  30812. description: |-
  30813. The namespace of the Secret resource being referred to.
  30814. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30815. maxLength: 63
  30816. minLength: 1
  30817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30818. type: string
  30819. type: object
  30820. type: object
  30821. version:
  30822. default: v2
  30823. description: |-
  30824. Version is the Vault KV secret engine version. This can be either "v1" or
  30825. "v2". Version defaults to "v2".
  30826. enum:
  30827. - v1
  30828. - v2
  30829. type: string
  30830. required:
  30831. - server
  30832. type: object
  30833. resultType:
  30834. default: Data
  30835. description: |-
  30836. Result type defines which data is returned from the generator.
  30837. By default, it is the "data" section of the Vault API response.
  30838. When using e.g. /auth/token/create the "data" section is empty but
  30839. the "auth" section contains the generated token.
  30840. Please refer to the vault docs regarding the result data structure.
  30841. Additionally, accessing the raw response is possibly by using "Raw" result type.
  30842. enum:
  30843. - Data
  30844. - Auth
  30845. - Raw
  30846. type: string
  30847. retrySettings:
  30848. description: Used to configure http retries if failed
  30849. properties:
  30850. maxRetries:
  30851. format: int32
  30852. type: integer
  30853. retryInterval:
  30854. type: string
  30855. type: object
  30856. required:
  30857. - path
  30858. - provider
  30859. type: object
  30860. type: object
  30861. served: true
  30862. storage: true
  30863. subresources:
  30864. status: {}
  30865. ---
  30866. apiVersion: apiextensions.k8s.io/v1
  30867. kind: CustomResourceDefinition
  30868. metadata:
  30869. annotations:
  30870. controller-gen.kubebuilder.io/version: v0.19.0
  30871. labels:
  30872. external-secrets.io/component: controller
  30873. name: webhooks.generators.external-secrets.io
  30874. spec:
  30875. group: generators.external-secrets.io
  30876. names:
  30877. categories:
  30878. - external-secrets
  30879. - external-secrets-generators
  30880. kind: Webhook
  30881. listKind: WebhookList
  30882. plural: webhooks
  30883. singular: webhook
  30884. scope: Namespaced
  30885. versions:
  30886. - name: v1alpha1
  30887. schema:
  30888. openAPIV3Schema:
  30889. description: |-
  30890. Webhook connects to a third party API server to handle the secrets generation
  30891. configuration parameters in spec.
  30892. You can specify the server, the token, and additional body parameters.
  30893. See documentation for the full API specification for requests and responses.
  30894. properties:
  30895. apiVersion:
  30896. description: |-
  30897. APIVersion defines the versioned schema of this representation of an object.
  30898. Servers should convert recognized schemas to the latest internal value, and
  30899. may reject unrecognized values.
  30900. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30901. type: string
  30902. kind:
  30903. description: |-
  30904. Kind is a string value representing the REST resource this object represents.
  30905. Servers may infer this from the endpoint the client submits requests to.
  30906. Cannot be updated.
  30907. In CamelCase.
  30908. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30909. type: string
  30910. metadata:
  30911. type: object
  30912. spec:
  30913. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  30914. properties:
  30915. auth:
  30916. description: Auth specifies a authorization protocol. Only one protocol may be set.
  30917. maxProperties: 1
  30918. minProperties: 1
  30919. properties:
  30920. ntlm:
  30921. description: NTLMProtocol configures the store to use NTLM for auth
  30922. properties:
  30923. passwordSecret:
  30924. description: |-
  30925. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30926. In some instances, `key` is a required field.
  30927. properties:
  30928. key:
  30929. description: |-
  30930. A key in the referenced Secret.
  30931. Some instances of this field may be defaulted, in others it may be required.
  30932. maxLength: 253
  30933. minLength: 1
  30934. pattern: ^[-._a-zA-Z0-9]+$
  30935. type: string
  30936. name:
  30937. description: The name of the Secret resource being referred to.
  30938. maxLength: 253
  30939. minLength: 1
  30940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30941. type: string
  30942. namespace:
  30943. description: |-
  30944. The namespace of the Secret resource being referred to.
  30945. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30946. maxLength: 63
  30947. minLength: 1
  30948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30949. type: string
  30950. type: object
  30951. usernameSecret:
  30952. description: |-
  30953. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  30954. In some instances, `key` is a required field.
  30955. properties:
  30956. key:
  30957. description: |-
  30958. A key in the referenced Secret.
  30959. Some instances of this field may be defaulted, in others it may be required.
  30960. maxLength: 253
  30961. minLength: 1
  30962. pattern: ^[-._a-zA-Z0-9]+$
  30963. type: string
  30964. name:
  30965. description: The name of the Secret resource being referred to.
  30966. maxLength: 253
  30967. minLength: 1
  30968. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30969. type: string
  30970. namespace:
  30971. description: |-
  30972. The namespace of the Secret resource being referred to.
  30973. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30974. maxLength: 63
  30975. minLength: 1
  30976. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30977. type: string
  30978. type: object
  30979. required:
  30980. - passwordSecret
  30981. - usernameSecret
  30982. type: object
  30983. type: object
  30984. body:
  30985. description: Body
  30986. type: string
  30987. caBundle:
  30988. description: |-
  30989. PEM encoded CA bundle used to validate webhook server certificate. Only used
  30990. if the Server URL is using HTTPS protocol. This parameter is ignored for
  30991. plain HTTP protocol connection. If not set the system root certificates
  30992. are used to validate the TLS connection.
  30993. format: byte
  30994. type: string
  30995. caProvider:
  30996. description: The provider for the CA bundle to use to validate webhook server certificate.
  30997. properties:
  30998. key:
  30999. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  31000. maxLength: 253
  31001. minLength: 1
  31002. pattern: ^[-._a-zA-Z0-9]+$
  31003. type: string
  31004. name:
  31005. description: The name of the object located at the provider type.
  31006. maxLength: 253
  31007. minLength: 1
  31008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31009. type: string
  31010. namespace:
  31011. description: The namespace the Provider type is in.
  31012. maxLength: 63
  31013. minLength: 1
  31014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  31015. type: string
  31016. type:
  31017. description: The type of provider to use such as "Secret", or "ConfigMap".
  31018. enum:
  31019. - Secret
  31020. - ConfigMap
  31021. type: string
  31022. required:
  31023. - name
  31024. - type
  31025. type: object
  31026. headers:
  31027. additionalProperties:
  31028. type: string
  31029. description: Headers
  31030. type: object
  31031. method:
  31032. description: Webhook Method
  31033. type: string
  31034. result:
  31035. description: Result formatting
  31036. properties:
  31037. jsonPath:
  31038. description: Json path of return value
  31039. type: string
  31040. type: object
  31041. secrets:
  31042. description: |-
  31043. Secrets to fill in templates
  31044. These secrets will be passed to the templating function as key value pairs under the given name
  31045. items:
  31046. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  31047. properties:
  31048. name:
  31049. description: Name of this secret in templates
  31050. type: string
  31051. secretRef:
  31052. description: Secret ref to fill in credentials
  31053. properties:
  31054. key:
  31055. description: The key where the token is found.
  31056. maxLength: 253
  31057. minLength: 1
  31058. pattern: ^[-._a-zA-Z0-9]+$
  31059. type: string
  31060. name:
  31061. description: The name of the Secret resource being referred to.
  31062. maxLength: 253
  31063. minLength: 1
  31064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31065. type: string
  31066. type: object
  31067. required:
  31068. - name
  31069. - secretRef
  31070. type: object
  31071. type: array
  31072. timeout:
  31073. description: Timeout
  31074. type: string
  31075. url:
  31076. description: Webhook url to call
  31077. type: string
  31078. required:
  31079. - result
  31080. - url
  31081. type: object
  31082. type: object
  31083. served: true
  31084. storage: true
  31085. subresources:
  31086. status: {}