bundle.yaml 600 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.14.0
  6. name: clusterexternalsecrets.external-secrets.io
  7. spec:
  8. group: external-secrets.io
  9. names:
  10. categories:
  11. - externalsecrets
  12. kind: ClusterExternalSecret
  13. listKind: ClusterExternalSecretList
  14. plural: clusterexternalsecrets
  15. shortNames:
  16. - ces
  17. singular: clusterexternalsecret
  18. scope: Cluster
  19. versions:
  20. - additionalPrinterColumns:
  21. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  22. name: Store
  23. type: string
  24. - jsonPath: .spec.refreshTime
  25. name: Refresh Interval
  26. type: string
  27. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  28. name: Ready
  29. type: string
  30. name: v1beta1
  31. schema:
  32. openAPIV3Schema:
  33. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  34. properties:
  35. apiVersion:
  36. description: |-
  37. APIVersion defines the versioned schema of this representation of an object.
  38. Servers should convert recognized schemas to the latest internal value, and
  39. may reject unrecognized values.
  40. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  41. type: string
  42. kind:
  43. description: |-
  44. Kind is a string value representing the REST resource this object represents.
  45. Servers may infer this from the endpoint the client submits requests to.
  46. Cannot be updated.
  47. In CamelCase.
  48. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  49. type: string
  50. metadata:
  51. type: object
  52. spec:
  53. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  54. properties:
  55. externalSecretMetadata:
  56. description: The metadata of the external secrets to be created
  57. properties:
  58. annotations:
  59. additionalProperties:
  60. type: string
  61. type: object
  62. labels:
  63. additionalProperties:
  64. type: string
  65. type: object
  66. type: object
  67. externalSecretName:
  68. description: The name of the external secrets to be created defaults to the name of the ClusterExternalSecret
  69. type: string
  70. externalSecretSpec:
  71. description: The spec for the ExternalSecrets to be created
  72. properties:
  73. data:
  74. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  75. items:
  76. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  77. properties:
  78. remoteRef:
  79. description: |-
  80. RemoteRef points to the remote secret and defines
  81. which secret (version/property/..) to fetch.
  82. properties:
  83. conversionStrategy:
  84. default: Default
  85. description: Used to define a conversion Strategy
  86. enum:
  87. - Default
  88. - Unicode
  89. type: string
  90. decodingStrategy:
  91. default: None
  92. description: Used to define a decoding Strategy
  93. enum:
  94. - Auto
  95. - Base64
  96. - Base64URL
  97. - None
  98. type: string
  99. key:
  100. description: Key is the key used in the Provider, mandatory
  101. type: string
  102. metadataPolicy:
  103. default: None
  104. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  105. enum:
  106. - None
  107. - Fetch
  108. type: string
  109. property:
  110. description: Used to select a specific property of the Provider value (if a map), if supported
  111. type: string
  112. version:
  113. description: Used to select a specific version of the Provider value, if supported
  114. type: string
  115. required:
  116. - key
  117. type: object
  118. secretKey:
  119. description: |-
  120. SecretKey defines the key in which the controller stores
  121. the value. This is the key in the Kind=Secret
  122. type: string
  123. sourceRef:
  124. description: |-
  125. SourceRef allows you to override the source
  126. from which the value will pulled from.
  127. maxProperties: 1
  128. properties:
  129. generatorRef:
  130. description: |-
  131. GeneratorRef points to a generator custom resource.
  132. Deprecated: The generatorRef is not implemented in .data[].
  133. this will be removed with v1.
  134. properties:
  135. apiVersion:
  136. default: generators.external-secrets.io/v1alpha1
  137. description: Specify the apiVersion of the generator resource
  138. type: string
  139. kind:
  140. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  141. type: string
  142. name:
  143. description: Specify the name of the generator resource
  144. type: string
  145. required:
  146. - kind
  147. - name
  148. type: object
  149. storeRef:
  150. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  151. properties:
  152. kind:
  153. description: |-
  154. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  155. Defaults to `SecretStore`
  156. type: string
  157. name:
  158. description: Name of the SecretStore resource
  159. type: string
  160. required:
  161. - name
  162. type: object
  163. type: object
  164. required:
  165. - remoteRef
  166. - secretKey
  167. type: object
  168. type: array
  169. dataFrom:
  170. description: |-
  171. DataFrom is used to fetch all properties from a specific Provider data
  172. If multiple entries are specified, the Secret keys are merged in the specified order
  173. items:
  174. properties:
  175. extract:
  176. description: |-
  177. Used to extract multiple key/value pairs from one secret
  178. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  179. properties:
  180. conversionStrategy:
  181. default: Default
  182. description: Used to define a conversion Strategy
  183. enum:
  184. - Default
  185. - Unicode
  186. type: string
  187. decodingStrategy:
  188. default: None
  189. description: Used to define a decoding Strategy
  190. enum:
  191. - Auto
  192. - Base64
  193. - Base64URL
  194. - None
  195. type: string
  196. key:
  197. description: Key is the key used in the Provider, mandatory
  198. type: string
  199. metadataPolicy:
  200. default: None
  201. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  202. enum:
  203. - None
  204. - Fetch
  205. type: string
  206. property:
  207. description: Used to select a specific property of the Provider value (if a map), if supported
  208. type: string
  209. version:
  210. description: Used to select a specific version of the Provider value, if supported
  211. type: string
  212. required:
  213. - key
  214. type: object
  215. find:
  216. description: |-
  217. Used to find secrets based on tags or regular expressions
  218. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  219. properties:
  220. conversionStrategy:
  221. default: Default
  222. description: Used to define a conversion Strategy
  223. enum:
  224. - Default
  225. - Unicode
  226. type: string
  227. decodingStrategy:
  228. default: None
  229. description: Used to define a decoding Strategy
  230. enum:
  231. - Auto
  232. - Base64
  233. - Base64URL
  234. - None
  235. type: string
  236. name:
  237. description: Finds secrets based on the name.
  238. properties:
  239. regexp:
  240. description: Finds secrets base
  241. type: string
  242. type: object
  243. path:
  244. description: A root path to start the find operations.
  245. type: string
  246. tags:
  247. additionalProperties:
  248. type: string
  249. description: Find secrets based on tags.
  250. type: object
  251. type: object
  252. rewrite:
  253. description: |-
  254. Used to rewrite secret Keys after getting them from the secret Provider
  255. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  256. items:
  257. properties:
  258. regexp:
  259. description: |-
  260. Used to rewrite with regular expressions.
  261. The resulting key will be the output of a regexp.ReplaceAll operation.
  262. properties:
  263. source:
  264. description: Used to define the regular expression of a re.Compiler.
  265. type: string
  266. target:
  267. description: Used to define the target pattern of a ReplaceAll operation.
  268. type: string
  269. required:
  270. - source
  271. - target
  272. type: object
  273. transform:
  274. description: |-
  275. Used to apply string transformation on the secrets.
  276. The resulting key will be the output of the template applied by the operation.
  277. properties:
  278. template:
  279. description: |-
  280. Used to define the template to apply on the secret name.
  281. `.value ` will specify the secret name in the template.
  282. type: string
  283. required:
  284. - template
  285. type: object
  286. type: object
  287. type: array
  288. sourceRef:
  289. description: |-
  290. SourceRef points to a store or generator
  291. which contains secret values ready to use.
  292. Use this in combination with Extract or Find pull values out of
  293. a specific SecretStore.
  294. When sourceRef points to a generator Extract or Find is not supported.
  295. The generator returns a static map of values
  296. maxProperties: 1
  297. properties:
  298. generatorRef:
  299. description: GeneratorRef points to a generator custom resource.
  300. properties:
  301. apiVersion:
  302. default: generators.external-secrets.io/v1alpha1
  303. description: Specify the apiVersion of the generator resource
  304. type: string
  305. kind:
  306. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  307. type: string
  308. name:
  309. description: Specify the name of the generator resource
  310. type: string
  311. required:
  312. - kind
  313. - name
  314. type: object
  315. storeRef:
  316. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  317. properties:
  318. kind:
  319. description: |-
  320. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  321. Defaults to `SecretStore`
  322. type: string
  323. name:
  324. description: Name of the SecretStore resource
  325. type: string
  326. required:
  327. - name
  328. type: object
  329. type: object
  330. type: object
  331. type: array
  332. refreshInterval:
  333. default: 1h
  334. description: |-
  335. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  336. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  337. May be set to zero to fetch and create it once. Defaults to 1h.
  338. type: string
  339. secretStoreRef:
  340. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  341. properties:
  342. kind:
  343. description: |-
  344. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  345. Defaults to `SecretStore`
  346. type: string
  347. name:
  348. description: Name of the SecretStore resource
  349. type: string
  350. required:
  351. - name
  352. type: object
  353. target:
  354. default:
  355. creationPolicy: Owner
  356. deletionPolicy: Retain
  357. description: |-
  358. ExternalSecretTarget defines the Kubernetes Secret to be created
  359. There can be only one target per ExternalSecret.
  360. properties:
  361. creationPolicy:
  362. default: Owner
  363. description: |-
  364. CreationPolicy defines rules on how to create the resulting Secret
  365. Defaults to 'Owner'
  366. enum:
  367. - Owner
  368. - Orphan
  369. - Merge
  370. - None
  371. type: string
  372. deletionPolicy:
  373. default: Retain
  374. description: |-
  375. DeletionPolicy defines rules on how to delete the resulting Secret
  376. Defaults to 'Retain'
  377. enum:
  378. - Delete
  379. - Merge
  380. - Retain
  381. type: string
  382. immutable:
  383. description: Immutable defines if the final secret will be immutable
  384. type: boolean
  385. name:
  386. description: |-
  387. Name defines the name of the Secret resource to be managed
  388. This field is immutable
  389. Defaults to the .metadata.name of the ExternalSecret resource
  390. type: string
  391. template:
  392. description: Template defines a blueprint for the created Secret resource.
  393. properties:
  394. data:
  395. additionalProperties:
  396. type: string
  397. type: object
  398. engineVersion:
  399. default: v2
  400. description: |-
  401. EngineVersion specifies the template engine version
  402. that should be used to compile/execute the
  403. template specified in .data and .templateFrom[].
  404. enum:
  405. - v1
  406. - v2
  407. type: string
  408. mergePolicy:
  409. default: Replace
  410. enum:
  411. - Replace
  412. - Merge
  413. type: string
  414. metadata:
  415. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  416. properties:
  417. annotations:
  418. additionalProperties:
  419. type: string
  420. type: object
  421. labels:
  422. additionalProperties:
  423. type: string
  424. type: object
  425. type: object
  426. templateFrom:
  427. items:
  428. properties:
  429. configMap:
  430. properties:
  431. items:
  432. items:
  433. properties:
  434. key:
  435. type: string
  436. templateAs:
  437. default: Values
  438. enum:
  439. - Values
  440. - KeysAndValues
  441. type: string
  442. required:
  443. - key
  444. type: object
  445. type: array
  446. name:
  447. type: string
  448. required:
  449. - items
  450. - name
  451. type: object
  452. literal:
  453. type: string
  454. secret:
  455. properties:
  456. items:
  457. items:
  458. properties:
  459. key:
  460. type: string
  461. templateAs:
  462. default: Values
  463. enum:
  464. - Values
  465. - KeysAndValues
  466. type: string
  467. required:
  468. - key
  469. type: object
  470. type: array
  471. name:
  472. type: string
  473. required:
  474. - items
  475. - name
  476. type: object
  477. target:
  478. default: Data
  479. enum:
  480. - Data
  481. - Annotations
  482. - Labels
  483. type: string
  484. type: object
  485. type: array
  486. type:
  487. type: string
  488. type: object
  489. type: object
  490. type: object
  491. namespaceSelector:
  492. description: The labels to select by to find the Namespaces to create the ExternalSecrets in.
  493. properties:
  494. matchExpressions:
  495. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  496. items:
  497. description: |-
  498. A label selector requirement is a selector that contains values, a key, and an operator that
  499. relates the key and values.
  500. properties:
  501. key:
  502. description: key is the label key that the selector applies to.
  503. type: string
  504. operator:
  505. description: |-
  506. operator represents a key's relationship to a set of values.
  507. Valid operators are In, NotIn, Exists and DoesNotExist.
  508. type: string
  509. values:
  510. description: |-
  511. values is an array of string values. If the operator is In or NotIn,
  512. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  513. the values array must be empty. This array is replaced during a strategic
  514. merge patch.
  515. items:
  516. type: string
  517. type: array
  518. required:
  519. - key
  520. - operator
  521. type: object
  522. type: array
  523. matchLabels:
  524. additionalProperties:
  525. type: string
  526. description: |-
  527. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  528. map is equivalent to an element of matchExpressions, whose key field is "key", the
  529. operator is "In", and the values array contains only "value". The requirements are ANDed.
  530. type: object
  531. type: object
  532. x-kubernetes-map-type: atomic
  533. namespaces:
  534. description: Choose namespaces by name. This field is ORed with anything that NamespaceSelector ends up choosing.
  535. items:
  536. type: string
  537. type: array
  538. refreshTime:
  539. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  540. type: string
  541. required:
  542. - externalSecretSpec
  543. type: object
  544. status:
  545. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  546. properties:
  547. conditions:
  548. items:
  549. properties:
  550. message:
  551. type: string
  552. status:
  553. type: string
  554. type:
  555. type: string
  556. required:
  557. - status
  558. - type
  559. type: object
  560. type: array
  561. externalSecretName:
  562. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  563. type: string
  564. failedNamespaces:
  565. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  566. items:
  567. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  568. properties:
  569. namespace:
  570. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  571. type: string
  572. reason:
  573. description: Reason is why the ExternalSecret failed to apply to the namespace
  574. type: string
  575. required:
  576. - namespace
  577. type: object
  578. type: array
  579. provisionedNamespaces:
  580. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  581. items:
  582. type: string
  583. type: array
  584. type: object
  585. type: object
  586. served: true
  587. storage: true
  588. subresources:
  589. status: {}
  590. conversion:
  591. strategy: Webhook
  592. webhook:
  593. conversionReviewVersions:
  594. - v1
  595. clientConfig:
  596. service:
  597. name: kubernetes
  598. namespace: default
  599. path: /convert
  600. ---
  601. apiVersion: apiextensions.k8s.io/v1
  602. kind: CustomResourceDefinition
  603. metadata:
  604. annotations:
  605. controller-gen.kubebuilder.io/version: v0.14.0
  606. name: clustersecretstores.external-secrets.io
  607. spec:
  608. group: external-secrets.io
  609. names:
  610. categories:
  611. - externalsecrets
  612. kind: ClusterSecretStore
  613. listKind: ClusterSecretStoreList
  614. plural: clustersecretstores
  615. shortNames:
  616. - css
  617. singular: clustersecretstore
  618. scope: Cluster
  619. versions:
  620. - additionalPrinterColumns:
  621. - jsonPath: .metadata.creationTimestamp
  622. name: AGE
  623. type: date
  624. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  625. name: Status
  626. type: string
  627. deprecated: true
  628. name: v1alpha1
  629. schema:
  630. openAPIV3Schema:
  631. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  632. properties:
  633. apiVersion:
  634. description: |-
  635. APIVersion defines the versioned schema of this representation of an object.
  636. Servers should convert recognized schemas to the latest internal value, and
  637. may reject unrecognized values.
  638. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  639. type: string
  640. kind:
  641. description: |-
  642. Kind is a string value representing the REST resource this object represents.
  643. Servers may infer this from the endpoint the client submits requests to.
  644. Cannot be updated.
  645. In CamelCase.
  646. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  647. type: string
  648. metadata:
  649. type: object
  650. spec:
  651. description: SecretStoreSpec defines the desired state of SecretStore.
  652. properties:
  653. controller:
  654. description: |-
  655. Used to select the correct ESO controller (think: ingress.ingressClassName)
  656. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  657. type: string
  658. provider:
  659. description: Used to configure the provider. Only one provider may be set
  660. maxProperties: 1
  661. minProperties: 1
  662. properties:
  663. akeyless:
  664. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  665. properties:
  666. akeylessGWApiURL:
  667. description: Akeyless GW API Url from which the secrets to be fetched from.
  668. type: string
  669. authSecretRef:
  670. description: Auth configures how the operator authenticates with Akeyless.
  671. properties:
  672. kubernetesAuth:
  673. description: |-
  674. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  675. token stored in the named Secret resource.
  676. properties:
  677. accessID:
  678. description: the Akeyless Kubernetes auth-method access-id
  679. type: string
  680. k8sConfName:
  681. description: Kubernetes-auth configuration name in Akeyless-Gateway
  682. type: string
  683. secretRef:
  684. description: |-
  685. Optional secret field containing a Kubernetes ServiceAccount JWT used
  686. for authenticating with Akeyless. If a name is specified without a key,
  687. `token` is the default. If one is not specified, the one bound to
  688. the controller will be used.
  689. properties:
  690. key:
  691. description: |-
  692. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  693. defaulted, in others it may be required.
  694. type: string
  695. name:
  696. description: The name of the Secret resource being referred to.
  697. type: string
  698. namespace:
  699. description: |-
  700. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  701. to the namespace of the referent.
  702. type: string
  703. type: object
  704. serviceAccountRef:
  705. description: |-
  706. Optional service account field containing the name of a kubernetes ServiceAccount.
  707. If the service account is specified, the service account secret token JWT will be used
  708. for authenticating with Akeyless. If the service account selector is not supplied,
  709. the secretRef will be used instead.
  710. properties:
  711. audiences:
  712. description: |-
  713. Audience specifies the `aud` claim for the service account token
  714. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  715. then this audiences will be appended to the list
  716. items:
  717. type: string
  718. type: array
  719. name:
  720. description: The name of the ServiceAccount resource being referred to.
  721. type: string
  722. namespace:
  723. description: |-
  724. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  725. to the namespace of the referent.
  726. type: string
  727. required:
  728. - name
  729. type: object
  730. required:
  731. - accessID
  732. - k8sConfName
  733. type: object
  734. secretRef:
  735. description: |-
  736. Reference to a Secret that contains the details
  737. to authenticate with Akeyless.
  738. properties:
  739. accessID:
  740. description: The SecretAccessID is used for authentication
  741. properties:
  742. key:
  743. description: |-
  744. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  745. defaulted, in others it may be required.
  746. type: string
  747. name:
  748. description: The name of the Secret resource being referred to.
  749. type: string
  750. namespace:
  751. description: |-
  752. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  753. to the namespace of the referent.
  754. type: string
  755. type: object
  756. accessType:
  757. description: |-
  758. A reference to a specific 'key' within a Secret resource,
  759. In some instances, `key` is a required field.
  760. properties:
  761. key:
  762. description: |-
  763. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  764. defaulted, in others it may be required.
  765. type: string
  766. name:
  767. description: The name of the Secret resource being referred to.
  768. type: string
  769. namespace:
  770. description: |-
  771. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  772. to the namespace of the referent.
  773. type: string
  774. type: object
  775. accessTypeParam:
  776. description: |-
  777. A reference to a specific 'key' within a Secret resource,
  778. In some instances, `key` is a required field.
  779. properties:
  780. key:
  781. description: |-
  782. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  783. defaulted, in others it may be required.
  784. type: string
  785. name:
  786. description: The name of the Secret resource being referred to.
  787. type: string
  788. namespace:
  789. description: |-
  790. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  791. to the namespace of the referent.
  792. type: string
  793. type: object
  794. type: object
  795. type: object
  796. caBundle:
  797. description: |-
  798. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  799. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  800. are used to validate the TLS connection.
  801. format: byte
  802. type: string
  803. caProvider:
  804. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  805. properties:
  806. key:
  807. description: The key the value inside of the provider type to use, only used with "Secret" type
  808. type: string
  809. name:
  810. description: The name of the object located at the provider type.
  811. type: string
  812. namespace:
  813. description: The namespace the Provider type is in.
  814. type: string
  815. type:
  816. description: The type of provider to use such as "Secret", or "ConfigMap".
  817. enum:
  818. - Secret
  819. - ConfigMap
  820. type: string
  821. required:
  822. - name
  823. - type
  824. type: object
  825. required:
  826. - akeylessGWApiURL
  827. - authSecretRef
  828. type: object
  829. alibaba:
  830. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  831. properties:
  832. auth:
  833. description: AlibabaAuth contains a secretRef for credentials.
  834. properties:
  835. rrsa:
  836. description: Authenticate against Alibaba using RRSA.
  837. properties:
  838. oidcProviderArn:
  839. type: string
  840. oidcTokenFilePath:
  841. type: string
  842. roleArn:
  843. type: string
  844. sessionName:
  845. type: string
  846. required:
  847. - oidcProviderArn
  848. - oidcTokenFilePath
  849. - roleArn
  850. - sessionName
  851. type: object
  852. secretRef:
  853. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  854. properties:
  855. accessKeyIDSecretRef:
  856. description: The AccessKeyID is used for authentication
  857. properties:
  858. key:
  859. description: |-
  860. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  861. defaulted, in others it may be required.
  862. type: string
  863. name:
  864. description: The name of the Secret resource being referred to.
  865. type: string
  866. namespace:
  867. description: |-
  868. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  869. to the namespace of the referent.
  870. type: string
  871. type: object
  872. accessKeySecretSecretRef:
  873. description: The AccessKeySecret is used for authentication
  874. properties:
  875. key:
  876. description: |-
  877. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  878. defaulted, in others it may be required.
  879. type: string
  880. name:
  881. description: The name of the Secret resource being referred to.
  882. type: string
  883. namespace:
  884. description: |-
  885. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  886. to the namespace of the referent.
  887. type: string
  888. type: object
  889. required:
  890. - accessKeyIDSecretRef
  891. - accessKeySecretSecretRef
  892. type: object
  893. type: object
  894. regionID:
  895. description: Alibaba Region to be used for the provider
  896. type: string
  897. required:
  898. - auth
  899. - regionID
  900. type: object
  901. aws:
  902. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  903. properties:
  904. auth:
  905. description: |-
  906. Auth defines the information necessary to authenticate against AWS
  907. if not set aws sdk will infer credentials from your environment
  908. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  909. properties:
  910. jwt:
  911. description: Authenticate against AWS using service account tokens.
  912. properties:
  913. serviceAccountRef:
  914. description: A reference to a ServiceAccount resource.
  915. properties:
  916. audiences:
  917. description: |-
  918. Audience specifies the `aud` claim for the service account token
  919. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  920. then this audiences will be appended to the list
  921. items:
  922. type: string
  923. type: array
  924. name:
  925. description: The name of the ServiceAccount resource being referred to.
  926. type: string
  927. namespace:
  928. description: |-
  929. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  930. to the namespace of the referent.
  931. type: string
  932. required:
  933. - name
  934. type: object
  935. type: object
  936. secretRef:
  937. description: |-
  938. AWSAuthSecretRef holds secret references for AWS credentials
  939. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  940. properties:
  941. accessKeyIDSecretRef:
  942. description: The AccessKeyID is used for authentication
  943. properties:
  944. key:
  945. description: |-
  946. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  947. defaulted, in others it may be required.
  948. type: string
  949. name:
  950. description: The name of the Secret resource being referred to.
  951. type: string
  952. namespace:
  953. description: |-
  954. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  955. to the namespace of the referent.
  956. type: string
  957. type: object
  958. secretAccessKeySecretRef:
  959. description: The SecretAccessKey is used for authentication
  960. properties:
  961. key:
  962. description: |-
  963. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  964. defaulted, in others it may be required.
  965. type: string
  966. name:
  967. description: The name of the Secret resource being referred to.
  968. type: string
  969. namespace:
  970. description: |-
  971. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  972. to the namespace of the referent.
  973. type: string
  974. type: object
  975. type: object
  976. type: object
  977. region:
  978. description: AWS Region to be used for the provider
  979. type: string
  980. role:
  981. description: Role is a Role ARN which the SecretManager provider will assume
  982. type: string
  983. service:
  984. description: Service defines which service should be used to fetch the secrets
  985. enum:
  986. - SecretsManager
  987. - ParameterStore
  988. type: string
  989. required:
  990. - region
  991. - service
  992. type: object
  993. azurekv:
  994. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  995. properties:
  996. authSecretRef:
  997. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  998. properties:
  999. clientId:
  1000. description: The Azure clientId of the service principle used for authentication.
  1001. properties:
  1002. key:
  1003. description: |-
  1004. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1005. defaulted, in others it may be required.
  1006. type: string
  1007. name:
  1008. description: The name of the Secret resource being referred to.
  1009. type: string
  1010. namespace:
  1011. description: |-
  1012. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1013. to the namespace of the referent.
  1014. type: string
  1015. type: object
  1016. clientSecret:
  1017. description: The Azure ClientSecret of the service principle used for authentication.
  1018. properties:
  1019. key:
  1020. description: |-
  1021. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1022. defaulted, in others it may be required.
  1023. type: string
  1024. name:
  1025. description: The name of the Secret resource being referred to.
  1026. type: string
  1027. namespace:
  1028. description: |-
  1029. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1030. to the namespace of the referent.
  1031. type: string
  1032. type: object
  1033. type: object
  1034. authType:
  1035. default: ServicePrincipal
  1036. description: |-
  1037. Auth type defines how to authenticate to the keyvault service.
  1038. Valid values are:
  1039. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  1040. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  1041. enum:
  1042. - ServicePrincipal
  1043. - ManagedIdentity
  1044. - WorkloadIdentity
  1045. type: string
  1046. identityId:
  1047. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  1048. type: string
  1049. serviceAccountRef:
  1050. description: |-
  1051. ServiceAccountRef specified the service account
  1052. that should be used when authenticating with WorkloadIdentity.
  1053. properties:
  1054. audiences:
  1055. description: |-
  1056. Audience specifies the `aud` claim for the service account token
  1057. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1058. then this audiences will be appended to the list
  1059. items:
  1060. type: string
  1061. type: array
  1062. name:
  1063. description: The name of the ServiceAccount resource being referred to.
  1064. type: string
  1065. namespace:
  1066. description: |-
  1067. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1068. to the namespace of the referent.
  1069. type: string
  1070. required:
  1071. - name
  1072. type: object
  1073. tenantId:
  1074. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  1075. type: string
  1076. vaultUrl:
  1077. description: Vault Url from which the secrets to be fetched from.
  1078. type: string
  1079. required:
  1080. - vaultUrl
  1081. type: object
  1082. fake:
  1083. description: Fake configures a store with static key/value pairs
  1084. properties:
  1085. data:
  1086. items:
  1087. properties:
  1088. key:
  1089. type: string
  1090. value:
  1091. type: string
  1092. valueMap:
  1093. additionalProperties:
  1094. type: string
  1095. type: object
  1096. version:
  1097. type: string
  1098. required:
  1099. - key
  1100. type: object
  1101. type: array
  1102. required:
  1103. - data
  1104. type: object
  1105. gcpsm:
  1106. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1107. properties:
  1108. auth:
  1109. description: Auth defines the information necessary to authenticate against GCP
  1110. properties:
  1111. secretRef:
  1112. properties:
  1113. secretAccessKeySecretRef:
  1114. description: The SecretAccessKey is used for authentication
  1115. properties:
  1116. key:
  1117. description: |-
  1118. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1119. defaulted, in others it may be required.
  1120. type: string
  1121. name:
  1122. description: The name of the Secret resource being referred to.
  1123. type: string
  1124. namespace:
  1125. description: |-
  1126. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1127. to the namespace of the referent.
  1128. type: string
  1129. type: object
  1130. type: object
  1131. workloadIdentity:
  1132. properties:
  1133. clusterLocation:
  1134. type: string
  1135. clusterName:
  1136. type: string
  1137. clusterProjectID:
  1138. type: string
  1139. serviceAccountRef:
  1140. description: A reference to a ServiceAccount resource.
  1141. properties:
  1142. audiences:
  1143. description: |-
  1144. Audience specifies the `aud` claim for the service account token
  1145. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1146. then this audiences will be appended to the list
  1147. items:
  1148. type: string
  1149. type: array
  1150. name:
  1151. description: The name of the ServiceAccount resource being referred to.
  1152. type: string
  1153. namespace:
  1154. description: |-
  1155. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1156. to the namespace of the referent.
  1157. type: string
  1158. required:
  1159. - name
  1160. type: object
  1161. required:
  1162. - clusterLocation
  1163. - clusterName
  1164. - serviceAccountRef
  1165. type: object
  1166. type: object
  1167. projectID:
  1168. description: ProjectID project where secret is located
  1169. type: string
  1170. type: object
  1171. gitlab:
  1172. description: GitLab configures this store to sync secrets using GitLab Variables provider
  1173. properties:
  1174. auth:
  1175. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1176. properties:
  1177. SecretRef:
  1178. properties:
  1179. accessToken:
  1180. description: AccessToken is used for authentication.
  1181. properties:
  1182. key:
  1183. description: |-
  1184. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1185. defaulted, in others it may be required.
  1186. type: string
  1187. name:
  1188. description: The name of the Secret resource being referred to.
  1189. type: string
  1190. namespace:
  1191. description: |-
  1192. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1193. to the namespace of the referent.
  1194. type: string
  1195. type: object
  1196. type: object
  1197. required:
  1198. - SecretRef
  1199. type: object
  1200. projectID:
  1201. description: ProjectID specifies a project where secrets are located.
  1202. type: string
  1203. url:
  1204. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1205. type: string
  1206. required:
  1207. - auth
  1208. type: object
  1209. ibm:
  1210. description: IBM configures this store to sync secrets using IBM Cloud provider
  1211. properties:
  1212. auth:
  1213. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1214. properties:
  1215. secretRef:
  1216. properties:
  1217. secretApiKeySecretRef:
  1218. description: The SecretAccessKey is used for authentication
  1219. properties:
  1220. key:
  1221. description: |-
  1222. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1223. defaulted, in others it may be required.
  1224. type: string
  1225. name:
  1226. description: The name of the Secret resource being referred to.
  1227. type: string
  1228. namespace:
  1229. description: |-
  1230. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1231. to the namespace of the referent.
  1232. type: string
  1233. type: object
  1234. type: object
  1235. required:
  1236. - secretRef
  1237. type: object
  1238. serviceUrl:
  1239. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1240. type: string
  1241. required:
  1242. - auth
  1243. type: object
  1244. kubernetes:
  1245. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  1246. properties:
  1247. auth:
  1248. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  1249. maxProperties: 1
  1250. minProperties: 1
  1251. properties:
  1252. cert:
  1253. description: has both clientCert and clientKey as secretKeySelector
  1254. properties:
  1255. clientCert:
  1256. description: |-
  1257. A reference to a specific 'key' within a Secret resource,
  1258. In some instances, `key` is a required field.
  1259. properties:
  1260. key:
  1261. description: |-
  1262. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1263. defaulted, in others it may be required.
  1264. type: string
  1265. name:
  1266. description: The name of the Secret resource being referred to.
  1267. type: string
  1268. namespace:
  1269. description: |-
  1270. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1271. to the namespace of the referent.
  1272. type: string
  1273. type: object
  1274. clientKey:
  1275. description: |-
  1276. A reference to a specific 'key' within a Secret resource,
  1277. In some instances, `key` is a required field.
  1278. properties:
  1279. key:
  1280. description: |-
  1281. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1282. defaulted, in others it may be required.
  1283. type: string
  1284. name:
  1285. description: The name of the Secret resource being referred to.
  1286. type: string
  1287. namespace:
  1288. description: |-
  1289. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1290. to the namespace of the referent.
  1291. type: string
  1292. type: object
  1293. type: object
  1294. serviceAccount:
  1295. description: points to a service account that should be used for authentication
  1296. properties:
  1297. serviceAccount:
  1298. description: A reference to a ServiceAccount resource.
  1299. properties:
  1300. audiences:
  1301. description: |-
  1302. Audience specifies the `aud` claim for the service account token
  1303. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1304. then this audiences will be appended to the list
  1305. items:
  1306. type: string
  1307. type: array
  1308. name:
  1309. description: The name of the ServiceAccount resource being referred to.
  1310. type: string
  1311. namespace:
  1312. description: |-
  1313. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1314. to the namespace of the referent.
  1315. type: string
  1316. required:
  1317. - name
  1318. type: object
  1319. type: object
  1320. token:
  1321. description: use static token to authenticate with
  1322. properties:
  1323. bearerToken:
  1324. description: |-
  1325. A reference to a specific 'key' within a Secret resource,
  1326. In some instances, `key` is a required field.
  1327. properties:
  1328. key:
  1329. description: |-
  1330. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1331. defaulted, in others it may be required.
  1332. type: string
  1333. name:
  1334. description: The name of the Secret resource being referred to.
  1335. type: string
  1336. namespace:
  1337. description: |-
  1338. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1339. to the namespace of the referent.
  1340. type: string
  1341. type: object
  1342. type: object
  1343. type: object
  1344. remoteNamespace:
  1345. default: default
  1346. description: Remote namespace to fetch the secrets from
  1347. type: string
  1348. server:
  1349. description: configures the Kubernetes server Address.
  1350. properties:
  1351. caBundle:
  1352. description: CABundle is a base64-encoded CA certificate
  1353. format: byte
  1354. type: string
  1355. caProvider:
  1356. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  1357. properties:
  1358. key:
  1359. description: The key the value inside of the provider type to use, only used with "Secret" type
  1360. type: string
  1361. name:
  1362. description: The name of the object located at the provider type.
  1363. type: string
  1364. namespace:
  1365. description: The namespace the Provider type is in.
  1366. type: string
  1367. type:
  1368. description: The type of provider to use such as "Secret", or "ConfigMap".
  1369. enum:
  1370. - Secret
  1371. - ConfigMap
  1372. type: string
  1373. required:
  1374. - name
  1375. - type
  1376. type: object
  1377. url:
  1378. default: kubernetes.default
  1379. description: configures the Kubernetes server Address.
  1380. type: string
  1381. type: object
  1382. required:
  1383. - auth
  1384. type: object
  1385. oracle:
  1386. description: Oracle configures this store to sync secrets using Oracle Vault provider
  1387. properties:
  1388. auth:
  1389. description: |-
  1390. Auth configures how secret-manager authenticates with the Oracle Vault.
  1391. If empty, instance principal is used. Optionally, the authenticating principal type
  1392. and/or user data may be supplied for the use of workload identity and user principal.
  1393. properties:
  1394. secretRef:
  1395. description: SecretRef to pass through sensitive information.
  1396. properties:
  1397. fingerprint:
  1398. description: Fingerprint is the fingerprint of the API private key.
  1399. properties:
  1400. key:
  1401. description: |-
  1402. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1403. defaulted, in others it may be required.
  1404. type: string
  1405. name:
  1406. description: The name of the Secret resource being referred to.
  1407. type: string
  1408. namespace:
  1409. description: |-
  1410. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1411. to the namespace of the referent.
  1412. type: string
  1413. type: object
  1414. privatekey:
  1415. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  1416. properties:
  1417. key:
  1418. description: |-
  1419. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1420. defaulted, in others it may be required.
  1421. type: string
  1422. name:
  1423. description: The name of the Secret resource being referred to.
  1424. type: string
  1425. namespace:
  1426. description: |-
  1427. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1428. to the namespace of the referent.
  1429. type: string
  1430. type: object
  1431. required:
  1432. - fingerprint
  1433. - privatekey
  1434. type: object
  1435. tenancy:
  1436. description: Tenancy is the tenancy OCID where user is located.
  1437. type: string
  1438. user:
  1439. description: User is an access OCID specific to the account.
  1440. type: string
  1441. required:
  1442. - secretRef
  1443. - tenancy
  1444. - user
  1445. type: object
  1446. compartment:
  1447. description: |-
  1448. Compartment is the vault compartment OCID.
  1449. Required for PushSecret
  1450. type: string
  1451. encryptionKey:
  1452. description: |-
  1453. EncryptionKey is the OCID of the encryption key within the vault.
  1454. Required for PushSecret
  1455. type: string
  1456. principalType:
  1457. description: |-
  1458. The type of principal to use for authentication. If left blank, the Auth struct will
  1459. determine the principal type. This optional field must be specified if using
  1460. workload identity.
  1461. enum:
  1462. - ""
  1463. - UserPrincipal
  1464. - InstancePrincipal
  1465. - Workload
  1466. type: string
  1467. region:
  1468. description: Region is the region where vault is located.
  1469. type: string
  1470. serviceAccountRef:
  1471. description: |-
  1472. ServiceAccountRef specified the service account
  1473. that should be used when authenticating with WorkloadIdentity.
  1474. properties:
  1475. audiences:
  1476. description: |-
  1477. Audience specifies the `aud` claim for the service account token
  1478. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1479. then this audiences will be appended to the list
  1480. items:
  1481. type: string
  1482. type: array
  1483. name:
  1484. description: The name of the ServiceAccount resource being referred to.
  1485. type: string
  1486. namespace:
  1487. description: |-
  1488. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1489. to the namespace of the referent.
  1490. type: string
  1491. required:
  1492. - name
  1493. type: object
  1494. vault:
  1495. description: Vault is the vault's OCID of the specific vault where secret is located.
  1496. type: string
  1497. required:
  1498. - region
  1499. - vault
  1500. type: object
  1501. vault:
  1502. description: Vault configures this store to sync secrets using Hashi provider
  1503. properties:
  1504. auth:
  1505. description: Auth configures how secret-manager authenticates with the Vault server.
  1506. properties:
  1507. appRole:
  1508. description: |-
  1509. AppRole authenticates with Vault using the App Role auth mechanism,
  1510. with the role and secret stored in a Kubernetes Secret resource.
  1511. properties:
  1512. path:
  1513. default: approle
  1514. description: |-
  1515. Path where the App Role authentication backend is mounted
  1516. in Vault, e.g: "approle"
  1517. type: string
  1518. roleId:
  1519. description: |-
  1520. RoleID configured in the App Role authentication backend when setting
  1521. up the authentication backend in Vault.
  1522. type: string
  1523. secretRef:
  1524. description: |-
  1525. Reference to a key in a Secret that contains the App Role secret used
  1526. to authenticate with Vault.
  1527. The `key` field must be specified and denotes which entry within the Secret
  1528. resource is used as the app role secret.
  1529. properties:
  1530. key:
  1531. description: |-
  1532. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1533. defaulted, in others it may be required.
  1534. type: string
  1535. name:
  1536. description: The name of the Secret resource being referred to.
  1537. type: string
  1538. namespace:
  1539. description: |-
  1540. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1541. to the namespace of the referent.
  1542. type: string
  1543. type: object
  1544. required:
  1545. - path
  1546. - roleId
  1547. - secretRef
  1548. type: object
  1549. cert:
  1550. description: |-
  1551. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  1552. Cert authentication method
  1553. properties:
  1554. clientCert:
  1555. description: |-
  1556. ClientCert is a certificate to authenticate using the Cert Vault
  1557. authentication method
  1558. properties:
  1559. key:
  1560. description: |-
  1561. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1562. defaulted, in others it may be required.
  1563. type: string
  1564. name:
  1565. description: The name of the Secret resource being referred to.
  1566. type: string
  1567. namespace:
  1568. description: |-
  1569. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1570. to the namespace of the referent.
  1571. type: string
  1572. type: object
  1573. secretRef:
  1574. description: |-
  1575. SecretRef to a key in a Secret resource containing client private key to
  1576. authenticate with Vault using the Cert authentication method
  1577. properties:
  1578. key:
  1579. description: |-
  1580. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1581. defaulted, in others it may be required.
  1582. type: string
  1583. name:
  1584. description: The name of the Secret resource being referred to.
  1585. type: string
  1586. namespace:
  1587. description: |-
  1588. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1589. to the namespace of the referent.
  1590. type: string
  1591. type: object
  1592. type: object
  1593. jwt:
  1594. description: |-
  1595. Jwt authenticates with Vault by passing role and JWT token using the
  1596. JWT/OIDC authentication method
  1597. properties:
  1598. kubernetesServiceAccountToken:
  1599. description: |-
  1600. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  1601. a token for with the `TokenRequest` API.
  1602. properties:
  1603. audiences:
  1604. description: |-
  1605. Optional audiences field that will be used to request a temporary Kubernetes service
  1606. account token for the service account referenced by `serviceAccountRef`.
  1607. Defaults to a single audience `vault` it not specified.
  1608. items:
  1609. type: string
  1610. type: array
  1611. expirationSeconds:
  1612. description: |-
  1613. Optional expiration time in seconds that will be used to request a temporary
  1614. Kubernetes service account token for the service account referenced by
  1615. `serviceAccountRef`.
  1616. Defaults to 10 minutes.
  1617. format: int64
  1618. type: integer
  1619. serviceAccountRef:
  1620. description: Service account field containing the name of a kubernetes ServiceAccount.
  1621. properties:
  1622. audiences:
  1623. description: |-
  1624. Audience specifies the `aud` claim for the service account token
  1625. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1626. then this audiences will be appended to the list
  1627. items:
  1628. type: string
  1629. type: array
  1630. name:
  1631. description: The name of the ServiceAccount resource being referred to.
  1632. type: string
  1633. namespace:
  1634. description: |-
  1635. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1636. to the namespace of the referent.
  1637. type: string
  1638. required:
  1639. - name
  1640. type: object
  1641. required:
  1642. - serviceAccountRef
  1643. type: object
  1644. path:
  1645. default: jwt
  1646. description: |-
  1647. Path where the JWT authentication backend is mounted
  1648. in Vault, e.g: "jwt"
  1649. type: string
  1650. role:
  1651. description: |-
  1652. Role is a JWT role to authenticate using the JWT/OIDC Vault
  1653. authentication method
  1654. type: string
  1655. secretRef:
  1656. description: |-
  1657. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  1658. authenticate with Vault using the JWT/OIDC authentication method.
  1659. properties:
  1660. key:
  1661. description: |-
  1662. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1663. defaulted, in others it may be required.
  1664. type: string
  1665. name:
  1666. description: The name of the Secret resource being referred to.
  1667. type: string
  1668. namespace:
  1669. description: |-
  1670. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1671. to the namespace of the referent.
  1672. type: string
  1673. type: object
  1674. required:
  1675. - path
  1676. type: object
  1677. kubernetes:
  1678. description: |-
  1679. Kubernetes authenticates with Vault by passing the ServiceAccount
  1680. token stored in the named Secret resource to the Vault server.
  1681. properties:
  1682. mountPath:
  1683. default: kubernetes
  1684. description: |-
  1685. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  1686. "kubernetes"
  1687. type: string
  1688. role:
  1689. description: |-
  1690. A required field containing the Vault Role to assume. A Role binds a
  1691. Kubernetes ServiceAccount with a set of Vault policies.
  1692. type: string
  1693. secretRef:
  1694. description: |-
  1695. Optional secret field containing a Kubernetes ServiceAccount JWT used
  1696. for authenticating with Vault. If a name is specified without a key,
  1697. `token` is the default. If one is not specified, the one bound to
  1698. the controller will be used.
  1699. properties:
  1700. key:
  1701. description: |-
  1702. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1703. defaulted, in others it may be required.
  1704. type: string
  1705. name:
  1706. description: The name of the Secret resource being referred to.
  1707. type: string
  1708. namespace:
  1709. description: |-
  1710. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1711. to the namespace of the referent.
  1712. type: string
  1713. type: object
  1714. serviceAccountRef:
  1715. description: |-
  1716. Optional service account field containing the name of a kubernetes ServiceAccount.
  1717. If the service account is specified, the service account secret token JWT will be used
  1718. for authenticating with Vault. If the service account selector is not supplied,
  1719. the secretRef will be used instead.
  1720. properties:
  1721. audiences:
  1722. description: |-
  1723. Audience specifies the `aud` claim for the service account token
  1724. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1725. then this audiences will be appended to the list
  1726. items:
  1727. type: string
  1728. type: array
  1729. name:
  1730. description: The name of the ServiceAccount resource being referred to.
  1731. type: string
  1732. namespace:
  1733. description: |-
  1734. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1735. to the namespace of the referent.
  1736. type: string
  1737. required:
  1738. - name
  1739. type: object
  1740. required:
  1741. - mountPath
  1742. - role
  1743. type: object
  1744. ldap:
  1745. description: |-
  1746. Ldap authenticates with Vault by passing username/password pair using
  1747. the LDAP authentication method
  1748. properties:
  1749. path:
  1750. default: ldap
  1751. description: |-
  1752. Path where the LDAP authentication backend is mounted
  1753. in Vault, e.g: "ldap"
  1754. type: string
  1755. secretRef:
  1756. description: |-
  1757. SecretRef to a key in a Secret resource containing password for the LDAP
  1758. user used to authenticate with Vault using the LDAP authentication
  1759. method
  1760. properties:
  1761. key:
  1762. description: |-
  1763. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1764. defaulted, in others it may be required.
  1765. type: string
  1766. name:
  1767. description: The name of the Secret resource being referred to.
  1768. type: string
  1769. namespace:
  1770. description: |-
  1771. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1772. to the namespace of the referent.
  1773. type: string
  1774. type: object
  1775. username:
  1776. description: |-
  1777. Username is a LDAP user name used to authenticate using the LDAP Vault
  1778. authentication method
  1779. type: string
  1780. required:
  1781. - path
  1782. - username
  1783. type: object
  1784. tokenSecretRef:
  1785. description: TokenSecretRef authenticates with Vault by presenting a token.
  1786. properties:
  1787. key:
  1788. description: |-
  1789. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1790. defaulted, in others it may be required.
  1791. type: string
  1792. name:
  1793. description: The name of the Secret resource being referred to.
  1794. type: string
  1795. namespace:
  1796. description: |-
  1797. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1798. to the namespace of the referent.
  1799. type: string
  1800. type: object
  1801. type: object
  1802. caBundle:
  1803. description: |-
  1804. PEM encoded CA bundle used to validate Vault server certificate. Only used
  1805. if the Server URL is using HTTPS protocol. This parameter is ignored for
  1806. plain HTTP protocol connection. If not set the system root certificates
  1807. are used to validate the TLS connection.
  1808. format: byte
  1809. type: string
  1810. caProvider:
  1811. description: The provider for the CA bundle to use to validate Vault server certificate.
  1812. properties:
  1813. key:
  1814. description: The key the value inside of the provider type to use, only used with "Secret" type
  1815. type: string
  1816. name:
  1817. description: The name of the object located at the provider type.
  1818. type: string
  1819. namespace:
  1820. description: The namespace the Provider type is in.
  1821. type: string
  1822. type:
  1823. description: The type of provider to use such as "Secret", or "ConfigMap".
  1824. enum:
  1825. - Secret
  1826. - ConfigMap
  1827. type: string
  1828. required:
  1829. - name
  1830. - type
  1831. type: object
  1832. forwardInconsistent:
  1833. description: |-
  1834. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  1835. leader instead of simply retrying within a loop. This can increase performance if
  1836. the option is enabled serverside.
  1837. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1838. type: boolean
  1839. namespace:
  1840. description: |-
  1841. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  1842. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  1843. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  1844. type: string
  1845. path:
  1846. description: |-
  1847. Path is the mount path of the Vault KV backend endpoint, e.g:
  1848. "secret". The v2 KV secret engine version specific "/data" path suffix
  1849. for fetching secrets from Vault is optional and will be appended
  1850. if not present in specified path.
  1851. type: string
  1852. readYourWrites:
  1853. description: |-
  1854. ReadYourWrites ensures isolated read-after-write semantics by
  1855. providing discovered cluster replication states in each request.
  1856. More information about eventual consistency in Vault can be found here
  1857. https://www.vaultproject.io/docs/enterprise/consistency
  1858. type: boolean
  1859. server:
  1860. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  1861. type: string
  1862. version:
  1863. default: v2
  1864. description: |-
  1865. Version is the Vault KV secret engine version. This can be either "v1" or
  1866. "v2". Version defaults to "v2".
  1867. enum:
  1868. - v1
  1869. - v2
  1870. type: string
  1871. required:
  1872. - auth
  1873. - server
  1874. type: object
  1875. webhook:
  1876. description: Webhook configures this store to sync secrets using a generic templated webhook
  1877. properties:
  1878. body:
  1879. description: Body
  1880. type: string
  1881. caBundle:
  1882. description: |-
  1883. PEM encoded CA bundle used to validate webhook server certificate. Only used
  1884. if the Server URL is using HTTPS protocol. This parameter is ignored for
  1885. plain HTTP protocol connection. If not set the system root certificates
  1886. are used to validate the TLS connection.
  1887. format: byte
  1888. type: string
  1889. caProvider:
  1890. description: The provider for the CA bundle to use to validate webhook server certificate.
  1891. properties:
  1892. key:
  1893. description: The key the value inside of the provider type to use, only used with "Secret" type
  1894. type: string
  1895. name:
  1896. description: The name of the object located at the provider type.
  1897. type: string
  1898. namespace:
  1899. description: The namespace the Provider type is in.
  1900. type: string
  1901. type:
  1902. description: The type of provider to use such as "Secret", or "ConfigMap".
  1903. enum:
  1904. - Secret
  1905. - ConfigMap
  1906. type: string
  1907. required:
  1908. - name
  1909. - type
  1910. type: object
  1911. headers:
  1912. additionalProperties:
  1913. type: string
  1914. description: Headers
  1915. type: object
  1916. method:
  1917. description: Webhook Method
  1918. type: string
  1919. result:
  1920. description: Result formatting
  1921. properties:
  1922. jsonPath:
  1923. description: Json path of return value
  1924. type: string
  1925. type: object
  1926. secrets:
  1927. description: |-
  1928. Secrets to fill in templates
  1929. These secrets will be passed to the templating function as key value pairs under the given name
  1930. items:
  1931. properties:
  1932. name:
  1933. description: Name of this secret in templates
  1934. type: string
  1935. secretRef:
  1936. description: Secret ref to fill in credentials
  1937. properties:
  1938. key:
  1939. description: |-
  1940. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1941. defaulted, in others it may be required.
  1942. type: string
  1943. name:
  1944. description: The name of the Secret resource being referred to.
  1945. type: string
  1946. namespace:
  1947. description: |-
  1948. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1949. to the namespace of the referent.
  1950. type: string
  1951. type: object
  1952. required:
  1953. - name
  1954. - secretRef
  1955. type: object
  1956. type: array
  1957. timeout:
  1958. description: Timeout
  1959. type: string
  1960. url:
  1961. description: Webhook url to call
  1962. type: string
  1963. required:
  1964. - result
  1965. - url
  1966. type: object
  1967. yandexlockbox:
  1968. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  1969. properties:
  1970. apiEndpoint:
  1971. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1972. type: string
  1973. auth:
  1974. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  1975. properties:
  1976. authorizedKeySecretRef:
  1977. description: The authorized key used for authentication
  1978. properties:
  1979. key:
  1980. description: |-
  1981. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1982. defaulted, in others it may be required.
  1983. type: string
  1984. name:
  1985. description: The name of the Secret resource being referred to.
  1986. type: string
  1987. namespace:
  1988. description: |-
  1989. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1990. to the namespace of the referent.
  1991. type: string
  1992. type: object
  1993. type: object
  1994. caProvider:
  1995. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  1996. properties:
  1997. certSecretRef:
  1998. description: |-
  1999. A reference to a specific 'key' within a Secret resource,
  2000. In some instances, `key` is a required field.
  2001. properties:
  2002. key:
  2003. description: |-
  2004. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2005. defaulted, in others it may be required.
  2006. type: string
  2007. name:
  2008. description: The name of the Secret resource being referred to.
  2009. type: string
  2010. namespace:
  2011. description: |-
  2012. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2013. to the namespace of the referent.
  2014. type: string
  2015. type: object
  2016. type: object
  2017. required:
  2018. - auth
  2019. type: object
  2020. type: object
  2021. retrySettings:
  2022. description: Used to configure http retries if failed
  2023. properties:
  2024. maxRetries:
  2025. format: int32
  2026. type: integer
  2027. retryInterval:
  2028. type: string
  2029. type: object
  2030. required:
  2031. - provider
  2032. type: object
  2033. status:
  2034. description: SecretStoreStatus defines the observed state of the SecretStore.
  2035. properties:
  2036. conditions:
  2037. items:
  2038. properties:
  2039. lastTransitionTime:
  2040. format: date-time
  2041. type: string
  2042. message:
  2043. type: string
  2044. reason:
  2045. type: string
  2046. status:
  2047. type: string
  2048. type:
  2049. type: string
  2050. required:
  2051. - status
  2052. - type
  2053. type: object
  2054. type: array
  2055. type: object
  2056. type: object
  2057. served: true
  2058. storage: false
  2059. subresources:
  2060. status: {}
  2061. - additionalPrinterColumns:
  2062. - jsonPath: .metadata.creationTimestamp
  2063. name: AGE
  2064. type: date
  2065. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2066. name: Status
  2067. type: string
  2068. - jsonPath: .status.capabilities
  2069. name: Capabilities
  2070. type: string
  2071. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2072. name: Ready
  2073. type: string
  2074. name: v1beta1
  2075. schema:
  2076. openAPIV3Schema:
  2077. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2078. properties:
  2079. apiVersion:
  2080. description: |-
  2081. APIVersion defines the versioned schema of this representation of an object.
  2082. Servers should convert recognized schemas to the latest internal value, and
  2083. may reject unrecognized values.
  2084. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2085. type: string
  2086. kind:
  2087. description: |-
  2088. Kind is a string value representing the REST resource this object represents.
  2089. Servers may infer this from the endpoint the client submits requests to.
  2090. Cannot be updated.
  2091. In CamelCase.
  2092. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2093. type: string
  2094. metadata:
  2095. type: object
  2096. spec:
  2097. description: SecretStoreSpec defines the desired state of SecretStore.
  2098. properties:
  2099. conditions:
  2100. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  2101. items:
  2102. description: |-
  2103. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2104. for a ClusterSecretStore instance.
  2105. properties:
  2106. namespaceSelector:
  2107. description: Choose namespace using a labelSelector
  2108. properties:
  2109. matchExpressions:
  2110. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2111. items:
  2112. description: |-
  2113. A label selector requirement is a selector that contains values, a key, and an operator that
  2114. relates the key and values.
  2115. properties:
  2116. key:
  2117. description: key is the label key that the selector applies to.
  2118. type: string
  2119. operator:
  2120. description: |-
  2121. operator represents a key's relationship to a set of values.
  2122. Valid operators are In, NotIn, Exists and DoesNotExist.
  2123. type: string
  2124. values:
  2125. description: |-
  2126. values is an array of string values. If the operator is In or NotIn,
  2127. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2128. the values array must be empty. This array is replaced during a strategic
  2129. merge patch.
  2130. items:
  2131. type: string
  2132. type: array
  2133. required:
  2134. - key
  2135. - operator
  2136. type: object
  2137. type: array
  2138. matchLabels:
  2139. additionalProperties:
  2140. type: string
  2141. description: |-
  2142. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2143. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2144. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2145. type: object
  2146. type: object
  2147. x-kubernetes-map-type: atomic
  2148. namespaces:
  2149. description: Choose namespaces by name
  2150. items:
  2151. type: string
  2152. type: array
  2153. type: object
  2154. type: array
  2155. controller:
  2156. description: |-
  2157. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2158. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2159. type: string
  2160. provider:
  2161. description: Used to configure the provider. Only one provider may be set
  2162. maxProperties: 1
  2163. minProperties: 1
  2164. properties:
  2165. akeyless:
  2166. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2167. properties:
  2168. akeylessGWApiURL:
  2169. description: Akeyless GW API Url from which the secrets to be fetched from.
  2170. type: string
  2171. authSecretRef:
  2172. description: Auth configures how the operator authenticates with Akeyless.
  2173. properties:
  2174. kubernetesAuth:
  2175. description: |-
  2176. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2177. token stored in the named Secret resource.
  2178. properties:
  2179. accessID:
  2180. description: the Akeyless Kubernetes auth-method access-id
  2181. type: string
  2182. k8sConfName:
  2183. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2184. type: string
  2185. secretRef:
  2186. description: |-
  2187. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2188. for authenticating with Akeyless. If a name is specified without a key,
  2189. `token` is the default. If one is not specified, the one bound to
  2190. the controller will be used.
  2191. properties:
  2192. key:
  2193. description: |-
  2194. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2195. defaulted, in others it may be required.
  2196. type: string
  2197. name:
  2198. description: The name of the Secret resource being referred to.
  2199. type: string
  2200. namespace:
  2201. description: |-
  2202. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2203. to the namespace of the referent.
  2204. type: string
  2205. type: object
  2206. serviceAccountRef:
  2207. description: |-
  2208. Optional service account field containing the name of a kubernetes ServiceAccount.
  2209. If the service account is specified, the service account secret token JWT will be used
  2210. for authenticating with Akeyless. If the service account selector is not supplied,
  2211. the secretRef will be used instead.
  2212. properties:
  2213. audiences:
  2214. description: |-
  2215. Audience specifies the `aud` claim for the service account token
  2216. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2217. then this audiences will be appended to the list
  2218. items:
  2219. type: string
  2220. type: array
  2221. name:
  2222. description: The name of the ServiceAccount resource being referred to.
  2223. type: string
  2224. namespace:
  2225. description: |-
  2226. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2227. to the namespace of the referent.
  2228. type: string
  2229. required:
  2230. - name
  2231. type: object
  2232. required:
  2233. - accessID
  2234. - k8sConfName
  2235. type: object
  2236. secretRef:
  2237. description: |-
  2238. Reference to a Secret that contains the details
  2239. to authenticate with Akeyless.
  2240. properties:
  2241. accessID:
  2242. description: The SecretAccessID is used for authentication
  2243. properties:
  2244. key:
  2245. description: |-
  2246. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2247. defaulted, in others it may be required.
  2248. type: string
  2249. name:
  2250. description: The name of the Secret resource being referred to.
  2251. type: string
  2252. namespace:
  2253. description: |-
  2254. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2255. to the namespace of the referent.
  2256. type: string
  2257. type: object
  2258. accessType:
  2259. description: |-
  2260. A reference to a specific 'key' within a Secret resource,
  2261. In some instances, `key` is a required field.
  2262. properties:
  2263. key:
  2264. description: |-
  2265. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2266. defaulted, in others it may be required.
  2267. type: string
  2268. name:
  2269. description: The name of the Secret resource being referred to.
  2270. type: string
  2271. namespace:
  2272. description: |-
  2273. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2274. to the namespace of the referent.
  2275. type: string
  2276. type: object
  2277. accessTypeParam:
  2278. description: |-
  2279. A reference to a specific 'key' within a Secret resource,
  2280. In some instances, `key` is a required field.
  2281. properties:
  2282. key:
  2283. description: |-
  2284. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2285. defaulted, in others it may be required.
  2286. type: string
  2287. name:
  2288. description: The name of the Secret resource being referred to.
  2289. type: string
  2290. namespace:
  2291. description: |-
  2292. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2293. to the namespace of the referent.
  2294. type: string
  2295. type: object
  2296. type: object
  2297. type: object
  2298. caBundle:
  2299. description: |-
  2300. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2301. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2302. are used to validate the TLS connection.
  2303. format: byte
  2304. type: string
  2305. caProvider:
  2306. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2307. properties:
  2308. key:
  2309. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2310. type: string
  2311. name:
  2312. description: The name of the object located at the provider type.
  2313. type: string
  2314. namespace:
  2315. description: |-
  2316. The namespace the Provider type is in.
  2317. Can only be defined when used in a ClusterSecretStore.
  2318. type: string
  2319. type:
  2320. description: The type of provider to use such as "Secret", or "ConfigMap".
  2321. enum:
  2322. - Secret
  2323. - ConfigMap
  2324. type: string
  2325. required:
  2326. - name
  2327. - type
  2328. type: object
  2329. required:
  2330. - akeylessGWApiURL
  2331. - authSecretRef
  2332. type: object
  2333. alibaba:
  2334. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  2335. properties:
  2336. auth:
  2337. description: AlibabaAuth contains a secretRef for credentials.
  2338. properties:
  2339. rrsa:
  2340. description: Authenticate against Alibaba using RRSA.
  2341. properties:
  2342. oidcProviderArn:
  2343. type: string
  2344. oidcTokenFilePath:
  2345. type: string
  2346. roleArn:
  2347. type: string
  2348. sessionName:
  2349. type: string
  2350. required:
  2351. - oidcProviderArn
  2352. - oidcTokenFilePath
  2353. - roleArn
  2354. - sessionName
  2355. type: object
  2356. secretRef:
  2357. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  2358. properties:
  2359. accessKeyIDSecretRef:
  2360. description: The AccessKeyID is used for authentication
  2361. properties:
  2362. key:
  2363. description: |-
  2364. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2365. defaulted, in others it may be required.
  2366. type: string
  2367. name:
  2368. description: The name of the Secret resource being referred to.
  2369. type: string
  2370. namespace:
  2371. description: |-
  2372. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2373. to the namespace of the referent.
  2374. type: string
  2375. type: object
  2376. accessKeySecretSecretRef:
  2377. description: The AccessKeySecret is used for authentication
  2378. properties:
  2379. key:
  2380. description: |-
  2381. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2382. defaulted, in others it may be required.
  2383. type: string
  2384. name:
  2385. description: The name of the Secret resource being referred to.
  2386. type: string
  2387. namespace:
  2388. description: |-
  2389. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2390. to the namespace of the referent.
  2391. type: string
  2392. type: object
  2393. required:
  2394. - accessKeyIDSecretRef
  2395. - accessKeySecretSecretRef
  2396. type: object
  2397. type: object
  2398. regionID:
  2399. description: Alibaba Region to be used for the provider
  2400. type: string
  2401. required:
  2402. - auth
  2403. - regionID
  2404. type: object
  2405. aws:
  2406. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2407. properties:
  2408. additionalRoles:
  2409. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2410. items:
  2411. type: string
  2412. type: array
  2413. auth:
  2414. description: |-
  2415. Auth defines the information necessary to authenticate against AWS
  2416. if not set aws sdk will infer credentials from your environment
  2417. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2418. properties:
  2419. jwt:
  2420. description: Authenticate against AWS using service account tokens.
  2421. properties:
  2422. serviceAccountRef:
  2423. description: A reference to a ServiceAccount resource.
  2424. properties:
  2425. audiences:
  2426. description: |-
  2427. Audience specifies the `aud` claim for the service account token
  2428. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2429. then this audiences will be appended to the list
  2430. items:
  2431. type: string
  2432. type: array
  2433. name:
  2434. description: The name of the ServiceAccount resource being referred to.
  2435. type: string
  2436. namespace:
  2437. description: |-
  2438. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2439. to the namespace of the referent.
  2440. type: string
  2441. required:
  2442. - name
  2443. type: object
  2444. type: object
  2445. secretRef:
  2446. description: |-
  2447. AWSAuthSecretRef holds secret references for AWS credentials
  2448. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2449. properties:
  2450. accessKeyIDSecretRef:
  2451. description: The AccessKeyID is used for authentication
  2452. properties:
  2453. key:
  2454. description: |-
  2455. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2456. defaulted, in others it may be required.
  2457. type: string
  2458. name:
  2459. description: The name of the Secret resource being referred to.
  2460. type: string
  2461. namespace:
  2462. description: |-
  2463. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2464. to the namespace of the referent.
  2465. type: string
  2466. type: object
  2467. secretAccessKeySecretRef:
  2468. description: The SecretAccessKey is used for authentication
  2469. properties:
  2470. key:
  2471. description: |-
  2472. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2473. defaulted, in others it may be required.
  2474. type: string
  2475. name:
  2476. description: The name of the Secret resource being referred to.
  2477. type: string
  2478. namespace:
  2479. description: |-
  2480. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2481. to the namespace of the referent.
  2482. type: string
  2483. type: object
  2484. sessionTokenSecretRef:
  2485. description: |-
  2486. The SessionToken used for authentication
  2487. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2488. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2489. properties:
  2490. key:
  2491. description: |-
  2492. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2493. defaulted, in others it may be required.
  2494. type: string
  2495. name:
  2496. description: The name of the Secret resource being referred to.
  2497. type: string
  2498. namespace:
  2499. description: |-
  2500. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2501. to the namespace of the referent.
  2502. type: string
  2503. type: object
  2504. type: object
  2505. type: object
  2506. externalID:
  2507. description: AWS External ID set on assumed IAM roles
  2508. type: string
  2509. region:
  2510. description: AWS Region to be used for the provider
  2511. type: string
  2512. role:
  2513. description: Role is a Role ARN which the provider will assume
  2514. type: string
  2515. secretsManager:
  2516. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2517. properties:
  2518. forceDeleteWithoutRecovery:
  2519. description: |-
  2520. Specifies whether to delete the secret without any recovery window. You
  2521. can't use both this parameter and RecoveryWindowInDays in the same call.
  2522. If you don't use either, then by default Secrets Manager uses a 30 day
  2523. recovery window.
  2524. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2525. type: boolean
  2526. recoveryWindowInDays:
  2527. description: |-
  2528. The number of days from 7 to 30 that Secrets Manager waits before
  2529. permanently deleting the secret. You can't use both this parameter and
  2530. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2531. then by default Secrets Manager uses a 30 day recovery window.
  2532. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2533. format: int64
  2534. type: integer
  2535. type: object
  2536. service:
  2537. description: Service defines which service should be used to fetch the secrets
  2538. enum:
  2539. - SecretsManager
  2540. - ParameterStore
  2541. type: string
  2542. sessionTags:
  2543. description: AWS STS assume role session tags
  2544. items:
  2545. properties:
  2546. key:
  2547. type: string
  2548. value:
  2549. type: string
  2550. required:
  2551. - key
  2552. - value
  2553. type: object
  2554. type: array
  2555. transitiveTagKeys:
  2556. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2557. items:
  2558. type: string
  2559. type: array
  2560. required:
  2561. - region
  2562. - service
  2563. type: object
  2564. azurekv:
  2565. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2566. properties:
  2567. authSecretRef:
  2568. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  2569. properties:
  2570. clientId:
  2571. description: The Azure clientId of the service principle used for authentication.
  2572. properties:
  2573. key:
  2574. description: |-
  2575. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2576. defaulted, in others it may be required.
  2577. type: string
  2578. name:
  2579. description: The name of the Secret resource being referred to.
  2580. type: string
  2581. namespace:
  2582. description: |-
  2583. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2584. to the namespace of the referent.
  2585. type: string
  2586. type: object
  2587. clientSecret:
  2588. description: The Azure ClientSecret of the service principle used for authentication.
  2589. properties:
  2590. key:
  2591. description: |-
  2592. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2593. defaulted, in others it may be required.
  2594. type: string
  2595. name:
  2596. description: The name of the Secret resource being referred to.
  2597. type: string
  2598. namespace:
  2599. description: |-
  2600. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2601. to the namespace of the referent.
  2602. type: string
  2603. type: object
  2604. type: object
  2605. authType:
  2606. default: ServicePrincipal
  2607. description: |-
  2608. Auth type defines how to authenticate to the keyvault service.
  2609. Valid values are:
  2610. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2611. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2612. enum:
  2613. - ServicePrincipal
  2614. - ManagedIdentity
  2615. - WorkloadIdentity
  2616. type: string
  2617. environmentType:
  2618. default: PublicCloud
  2619. description: |-
  2620. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2621. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2622. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2623. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  2624. enum:
  2625. - PublicCloud
  2626. - USGovernmentCloud
  2627. - ChinaCloud
  2628. - GermanCloud
  2629. type: string
  2630. identityId:
  2631. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2632. type: string
  2633. serviceAccountRef:
  2634. description: |-
  2635. ServiceAccountRef specified the service account
  2636. that should be used when authenticating with WorkloadIdentity.
  2637. properties:
  2638. audiences:
  2639. description: |-
  2640. Audience specifies the `aud` claim for the service account token
  2641. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2642. then this audiences will be appended to the list
  2643. items:
  2644. type: string
  2645. type: array
  2646. name:
  2647. description: The name of the ServiceAccount resource being referred to.
  2648. type: string
  2649. namespace:
  2650. description: |-
  2651. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2652. to the namespace of the referent.
  2653. type: string
  2654. required:
  2655. - name
  2656. type: object
  2657. tenantId:
  2658. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  2659. type: string
  2660. vaultUrl:
  2661. description: Vault Url from which the secrets to be fetched from.
  2662. type: string
  2663. required:
  2664. - vaultUrl
  2665. type: object
  2666. conjur:
  2667. description: Conjur configures this store to sync secrets using conjur provider
  2668. properties:
  2669. auth:
  2670. properties:
  2671. apikey:
  2672. properties:
  2673. account:
  2674. type: string
  2675. apiKeyRef:
  2676. description: |-
  2677. A reference to a specific 'key' within a Secret resource,
  2678. In some instances, `key` is a required field.
  2679. properties:
  2680. key:
  2681. description: |-
  2682. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2683. defaulted, in others it may be required.
  2684. type: string
  2685. name:
  2686. description: The name of the Secret resource being referred to.
  2687. type: string
  2688. namespace:
  2689. description: |-
  2690. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2691. to the namespace of the referent.
  2692. type: string
  2693. type: object
  2694. userRef:
  2695. description: |-
  2696. A reference to a specific 'key' within a Secret resource,
  2697. In some instances, `key` is a required field.
  2698. properties:
  2699. key:
  2700. description: |-
  2701. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2702. defaulted, in others it may be required.
  2703. type: string
  2704. name:
  2705. description: The name of the Secret resource being referred to.
  2706. type: string
  2707. namespace:
  2708. description: |-
  2709. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2710. to the namespace of the referent.
  2711. type: string
  2712. type: object
  2713. required:
  2714. - account
  2715. - apiKeyRef
  2716. - userRef
  2717. type: object
  2718. jwt:
  2719. properties:
  2720. account:
  2721. type: string
  2722. secretRef:
  2723. description: |-
  2724. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  2725. authenticate with Conjur using the JWT authentication method.
  2726. properties:
  2727. key:
  2728. description: |-
  2729. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2730. defaulted, in others it may be required.
  2731. type: string
  2732. name:
  2733. description: The name of the Secret resource being referred to.
  2734. type: string
  2735. namespace:
  2736. description: |-
  2737. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2738. to the namespace of the referent.
  2739. type: string
  2740. type: object
  2741. serviceAccountRef:
  2742. description: |-
  2743. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  2744. a token for with the `TokenRequest` API.
  2745. properties:
  2746. audiences:
  2747. description: |-
  2748. Audience specifies the `aud` claim for the service account token
  2749. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2750. then this audiences will be appended to the list
  2751. items:
  2752. type: string
  2753. type: array
  2754. name:
  2755. description: The name of the ServiceAccount resource being referred to.
  2756. type: string
  2757. namespace:
  2758. description: |-
  2759. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2760. to the namespace of the referent.
  2761. type: string
  2762. required:
  2763. - name
  2764. type: object
  2765. serviceID:
  2766. description: The conjur authn jwt webservice id
  2767. type: string
  2768. required:
  2769. - account
  2770. - serviceID
  2771. type: object
  2772. type: object
  2773. caBundle:
  2774. type: string
  2775. caProvider:
  2776. description: |-
  2777. Used to provide custom certificate authority (CA) certificates
  2778. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  2779. that contains a PEM-encoded certificate.
  2780. properties:
  2781. key:
  2782. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2783. type: string
  2784. name:
  2785. description: The name of the object located at the provider type.
  2786. type: string
  2787. namespace:
  2788. description: |-
  2789. The namespace the Provider type is in.
  2790. Can only be defined when used in a ClusterSecretStore.
  2791. type: string
  2792. type:
  2793. description: The type of provider to use such as "Secret", or "ConfigMap".
  2794. enum:
  2795. - Secret
  2796. - ConfigMap
  2797. type: string
  2798. required:
  2799. - name
  2800. - type
  2801. type: object
  2802. url:
  2803. type: string
  2804. required:
  2805. - auth
  2806. - url
  2807. type: object
  2808. delinea:
  2809. description: |-
  2810. Delinea DevOps Secrets Vault
  2811. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  2812. properties:
  2813. clientId:
  2814. description: ClientID is the non-secret part of the credential.
  2815. properties:
  2816. secretRef:
  2817. description: SecretRef references a key in a secret that will be used as value.
  2818. properties:
  2819. key:
  2820. description: |-
  2821. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2822. defaulted, in others it may be required.
  2823. type: string
  2824. name:
  2825. description: The name of the Secret resource being referred to.
  2826. type: string
  2827. namespace:
  2828. description: |-
  2829. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2830. to the namespace of the referent.
  2831. type: string
  2832. type: object
  2833. value:
  2834. description: Value can be specified directly to set a value without using a secret.
  2835. type: string
  2836. type: object
  2837. clientSecret:
  2838. description: ClientSecret is the secret part of the credential.
  2839. properties:
  2840. secretRef:
  2841. description: SecretRef references a key in a secret that will be used as value.
  2842. properties:
  2843. key:
  2844. description: |-
  2845. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2846. defaulted, in others it may be required.
  2847. type: string
  2848. name:
  2849. description: The name of the Secret resource being referred to.
  2850. type: string
  2851. namespace:
  2852. description: |-
  2853. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2854. to the namespace of the referent.
  2855. type: string
  2856. type: object
  2857. value:
  2858. description: Value can be specified directly to set a value without using a secret.
  2859. type: string
  2860. type: object
  2861. tenant:
  2862. description: Tenant is the chosen hostname / site name.
  2863. type: string
  2864. tld:
  2865. description: |-
  2866. TLD is based on the server location that was chosen during provisioning.
  2867. If unset, defaults to "com".
  2868. type: string
  2869. urlTemplate:
  2870. description: |-
  2871. URLTemplate
  2872. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  2873. type: string
  2874. required:
  2875. - clientId
  2876. - clientSecret
  2877. - tenant
  2878. type: object
  2879. doppler:
  2880. description: Doppler configures this store to sync secrets using the Doppler provider
  2881. properties:
  2882. auth:
  2883. description: Auth configures how the Operator authenticates with the Doppler API
  2884. properties:
  2885. secretRef:
  2886. properties:
  2887. dopplerToken:
  2888. description: |-
  2889. The DopplerToken is used for authentication.
  2890. See https://docs.doppler.com/reference/api#authentication for auth token types.
  2891. The Key attribute defaults to dopplerToken if not specified.
  2892. properties:
  2893. key:
  2894. description: |-
  2895. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2896. defaulted, in others it may be required.
  2897. type: string
  2898. name:
  2899. description: The name of the Secret resource being referred to.
  2900. type: string
  2901. namespace:
  2902. description: |-
  2903. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2904. to the namespace of the referent.
  2905. type: string
  2906. type: object
  2907. required:
  2908. - dopplerToken
  2909. type: object
  2910. required:
  2911. - secretRef
  2912. type: object
  2913. config:
  2914. description: Doppler config (required if not using a Service Token)
  2915. type: string
  2916. format:
  2917. description: Format enables the downloading of secrets as a file (string)
  2918. enum:
  2919. - json
  2920. - dotnet-json
  2921. - env
  2922. - yaml
  2923. - docker
  2924. type: string
  2925. nameTransformer:
  2926. description: Environment variable compatible name transforms that change secret names to a different format
  2927. enum:
  2928. - upper-camel
  2929. - camel
  2930. - lower-snake
  2931. - tf-var
  2932. - dotnet-env
  2933. - lower-kebab
  2934. type: string
  2935. project:
  2936. description: Doppler project (required if not using a Service Token)
  2937. type: string
  2938. required:
  2939. - auth
  2940. type: object
  2941. fake:
  2942. description: Fake configures a store with static key/value pairs
  2943. properties:
  2944. data:
  2945. items:
  2946. properties:
  2947. key:
  2948. type: string
  2949. value:
  2950. type: string
  2951. valueMap:
  2952. additionalProperties:
  2953. type: string
  2954. description: 'Deprecated: ValueMap is deprecated and is intended to be removed in the future, use the `value` field instead.'
  2955. type: object
  2956. version:
  2957. type: string
  2958. required:
  2959. - key
  2960. type: object
  2961. type: array
  2962. required:
  2963. - data
  2964. type: object
  2965. gcpsm:
  2966. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  2967. properties:
  2968. auth:
  2969. description: Auth defines the information necessary to authenticate against GCP
  2970. properties:
  2971. secretRef:
  2972. properties:
  2973. secretAccessKeySecretRef:
  2974. description: The SecretAccessKey is used for authentication
  2975. properties:
  2976. key:
  2977. description: |-
  2978. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2979. defaulted, in others it may be required.
  2980. type: string
  2981. name:
  2982. description: The name of the Secret resource being referred to.
  2983. type: string
  2984. namespace:
  2985. description: |-
  2986. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2987. to the namespace of the referent.
  2988. type: string
  2989. type: object
  2990. type: object
  2991. workloadIdentity:
  2992. properties:
  2993. clusterLocation:
  2994. type: string
  2995. clusterName:
  2996. type: string
  2997. clusterProjectID:
  2998. type: string
  2999. serviceAccountRef:
  3000. description: A reference to a ServiceAccount resource.
  3001. properties:
  3002. audiences:
  3003. description: |-
  3004. Audience specifies the `aud` claim for the service account token
  3005. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3006. then this audiences will be appended to the list
  3007. items:
  3008. type: string
  3009. type: array
  3010. name:
  3011. description: The name of the ServiceAccount resource being referred to.
  3012. type: string
  3013. namespace:
  3014. description: |-
  3015. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3016. to the namespace of the referent.
  3017. type: string
  3018. required:
  3019. - name
  3020. type: object
  3021. required:
  3022. - clusterLocation
  3023. - clusterName
  3024. - serviceAccountRef
  3025. type: object
  3026. type: object
  3027. projectID:
  3028. description: ProjectID project where secret is located
  3029. type: string
  3030. type: object
  3031. gitlab:
  3032. description: GitLab configures this store to sync secrets using GitLab Variables provider
  3033. properties:
  3034. auth:
  3035. description: Auth configures how secret-manager authenticates with a GitLab instance.
  3036. properties:
  3037. SecretRef:
  3038. properties:
  3039. accessToken:
  3040. description: AccessToken is used for authentication.
  3041. properties:
  3042. key:
  3043. description: |-
  3044. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3045. defaulted, in others it may be required.
  3046. type: string
  3047. name:
  3048. description: The name of the Secret resource being referred to.
  3049. type: string
  3050. namespace:
  3051. description: |-
  3052. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3053. to the namespace of the referent.
  3054. type: string
  3055. type: object
  3056. type: object
  3057. required:
  3058. - SecretRef
  3059. type: object
  3060. environment:
  3061. 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)
  3062. type: string
  3063. groupIDs:
  3064. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  3065. items:
  3066. type: string
  3067. type: array
  3068. inheritFromGroups:
  3069. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  3070. type: boolean
  3071. projectID:
  3072. description: ProjectID specifies a project where secrets are located.
  3073. type: string
  3074. url:
  3075. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  3076. type: string
  3077. required:
  3078. - auth
  3079. type: object
  3080. ibm:
  3081. description: IBM configures this store to sync secrets using IBM Cloud provider
  3082. properties:
  3083. auth:
  3084. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  3085. maxProperties: 1
  3086. minProperties: 1
  3087. properties:
  3088. containerAuth:
  3089. description: IBM Container-based auth with IAM Trusted Profile.
  3090. properties:
  3091. iamEndpoint:
  3092. type: string
  3093. profile:
  3094. description: the IBM Trusted Profile
  3095. type: string
  3096. tokenLocation:
  3097. description: Location the token is mounted on the pod
  3098. type: string
  3099. required:
  3100. - profile
  3101. type: object
  3102. secretRef:
  3103. properties:
  3104. secretApiKeySecretRef:
  3105. description: The SecretAccessKey is used for authentication
  3106. properties:
  3107. key:
  3108. description: |-
  3109. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3110. defaulted, in others it may be required.
  3111. type: string
  3112. name:
  3113. description: The name of the Secret resource being referred to.
  3114. type: string
  3115. namespace:
  3116. description: |-
  3117. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3118. to the namespace of the referent.
  3119. type: string
  3120. type: object
  3121. type: object
  3122. type: object
  3123. serviceUrl:
  3124. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  3125. type: string
  3126. required:
  3127. - auth
  3128. type: object
  3129. keepersecurity:
  3130. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  3131. properties:
  3132. authRef:
  3133. description: |-
  3134. A reference to a specific 'key' within a Secret resource,
  3135. In some instances, `key` is a required field.
  3136. properties:
  3137. key:
  3138. description: |-
  3139. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3140. defaulted, in others it may be required.
  3141. type: string
  3142. name:
  3143. description: The name of the Secret resource being referred to.
  3144. type: string
  3145. namespace:
  3146. description: |-
  3147. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3148. to the namespace of the referent.
  3149. type: string
  3150. type: object
  3151. folderID:
  3152. type: string
  3153. required:
  3154. - authRef
  3155. - folderID
  3156. type: object
  3157. kubernetes:
  3158. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  3159. properties:
  3160. auth:
  3161. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  3162. maxProperties: 1
  3163. minProperties: 1
  3164. properties:
  3165. cert:
  3166. description: has both clientCert and clientKey as secretKeySelector
  3167. properties:
  3168. clientCert:
  3169. description: |-
  3170. A reference to a specific 'key' within a Secret resource,
  3171. In some instances, `key` is a required field.
  3172. properties:
  3173. key:
  3174. description: |-
  3175. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3176. defaulted, in others it may be required.
  3177. type: string
  3178. name:
  3179. description: The name of the Secret resource being referred to.
  3180. type: string
  3181. namespace:
  3182. description: |-
  3183. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3184. to the namespace of the referent.
  3185. type: string
  3186. type: object
  3187. clientKey:
  3188. description: |-
  3189. A reference to a specific 'key' within a Secret resource,
  3190. In some instances, `key` is a required field.
  3191. properties:
  3192. key:
  3193. description: |-
  3194. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3195. defaulted, in others it may be required.
  3196. type: string
  3197. name:
  3198. description: The name of the Secret resource being referred to.
  3199. type: string
  3200. namespace:
  3201. description: |-
  3202. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3203. to the namespace of the referent.
  3204. type: string
  3205. type: object
  3206. type: object
  3207. serviceAccount:
  3208. description: points to a service account that should be used for authentication
  3209. properties:
  3210. audiences:
  3211. description: |-
  3212. Audience specifies the `aud` claim for the service account token
  3213. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3214. then this audiences will be appended to the list
  3215. items:
  3216. type: string
  3217. type: array
  3218. name:
  3219. description: The name of the ServiceAccount resource being referred to.
  3220. type: string
  3221. namespace:
  3222. description: |-
  3223. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3224. to the namespace of the referent.
  3225. type: string
  3226. required:
  3227. - name
  3228. type: object
  3229. token:
  3230. description: use static token to authenticate with
  3231. properties:
  3232. bearerToken:
  3233. description: |-
  3234. A reference to a specific 'key' within a Secret resource,
  3235. In some instances, `key` is a required field.
  3236. properties:
  3237. key:
  3238. description: |-
  3239. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3240. defaulted, in others it may be required.
  3241. type: string
  3242. name:
  3243. description: The name of the Secret resource being referred to.
  3244. type: string
  3245. namespace:
  3246. description: |-
  3247. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3248. to the namespace of the referent.
  3249. type: string
  3250. type: object
  3251. type: object
  3252. type: object
  3253. remoteNamespace:
  3254. default: default
  3255. description: Remote namespace to fetch the secrets from
  3256. type: string
  3257. server:
  3258. description: configures the Kubernetes server Address.
  3259. properties:
  3260. caBundle:
  3261. description: CABundle is a base64-encoded CA certificate
  3262. format: byte
  3263. type: string
  3264. caProvider:
  3265. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  3266. properties:
  3267. key:
  3268. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3269. type: string
  3270. name:
  3271. description: The name of the object located at the provider type.
  3272. type: string
  3273. namespace:
  3274. description: |-
  3275. The namespace the Provider type is in.
  3276. Can only be defined when used in a ClusterSecretStore.
  3277. type: string
  3278. type:
  3279. description: The type of provider to use such as "Secret", or "ConfigMap".
  3280. enum:
  3281. - Secret
  3282. - ConfigMap
  3283. type: string
  3284. required:
  3285. - name
  3286. - type
  3287. type: object
  3288. url:
  3289. default: kubernetes.default
  3290. description: configures the Kubernetes server Address.
  3291. type: string
  3292. type: object
  3293. required:
  3294. - auth
  3295. type: object
  3296. onepassword:
  3297. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  3298. properties:
  3299. auth:
  3300. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  3301. properties:
  3302. secretRef:
  3303. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  3304. properties:
  3305. connectTokenSecretRef:
  3306. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  3307. properties:
  3308. key:
  3309. description: |-
  3310. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3311. defaulted, in others it may be required.
  3312. type: string
  3313. name:
  3314. description: The name of the Secret resource being referred to.
  3315. type: string
  3316. namespace:
  3317. description: |-
  3318. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3319. to the namespace of the referent.
  3320. type: string
  3321. type: object
  3322. required:
  3323. - connectTokenSecretRef
  3324. type: object
  3325. required:
  3326. - secretRef
  3327. type: object
  3328. connectHost:
  3329. description: ConnectHost defines the OnePassword Connect Server to connect to
  3330. type: string
  3331. vaults:
  3332. additionalProperties:
  3333. type: integer
  3334. description: Vaults defines which OnePassword vaults to search in which order
  3335. type: object
  3336. required:
  3337. - auth
  3338. - connectHost
  3339. - vaults
  3340. type: object
  3341. oracle:
  3342. description: Oracle configures this store to sync secrets using Oracle Vault provider
  3343. properties:
  3344. auth:
  3345. description: |-
  3346. Auth configures how secret-manager authenticates with the Oracle Vault.
  3347. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  3348. properties:
  3349. secretRef:
  3350. description: SecretRef to pass through sensitive information.
  3351. properties:
  3352. fingerprint:
  3353. description: Fingerprint is the fingerprint of the API private key.
  3354. properties:
  3355. key:
  3356. description: |-
  3357. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3358. defaulted, in others it may be required.
  3359. type: string
  3360. name:
  3361. description: The name of the Secret resource being referred to.
  3362. type: string
  3363. namespace:
  3364. description: |-
  3365. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3366. to the namespace of the referent.
  3367. type: string
  3368. type: object
  3369. privatekey:
  3370. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  3371. properties:
  3372. key:
  3373. description: |-
  3374. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3375. defaulted, in others it may be required.
  3376. type: string
  3377. name:
  3378. description: The name of the Secret resource being referred to.
  3379. type: string
  3380. namespace:
  3381. description: |-
  3382. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3383. to the namespace of the referent.
  3384. type: string
  3385. type: object
  3386. required:
  3387. - fingerprint
  3388. - privatekey
  3389. type: object
  3390. tenancy:
  3391. description: Tenancy is the tenancy OCID where user is located.
  3392. type: string
  3393. user:
  3394. description: User is an access OCID specific to the account.
  3395. type: string
  3396. required:
  3397. - secretRef
  3398. - tenancy
  3399. - user
  3400. type: object
  3401. compartment:
  3402. description: |-
  3403. Compartment is the vault compartment OCID.
  3404. Required for PushSecret
  3405. type: string
  3406. encryptionKey:
  3407. description: |-
  3408. EncryptionKey is the OCID of the encryption key within the vault.
  3409. Required for PushSecret
  3410. type: string
  3411. principalType:
  3412. description: |-
  3413. The type of principal to use for authentication. If left blank, the Auth struct will
  3414. determine the principal type. This optional field must be specified if using
  3415. workload identity.
  3416. enum:
  3417. - ""
  3418. - UserPrincipal
  3419. - InstancePrincipal
  3420. - Workload
  3421. type: string
  3422. region:
  3423. description: Region is the region where vault is located.
  3424. type: string
  3425. serviceAccountRef:
  3426. description: |-
  3427. ServiceAccountRef specified the service account
  3428. that should be used when authenticating with WorkloadIdentity.
  3429. properties:
  3430. audiences:
  3431. description: |-
  3432. Audience specifies the `aud` claim for the service account token
  3433. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3434. then this audiences will be appended to the list
  3435. items:
  3436. type: string
  3437. type: array
  3438. name:
  3439. description: The name of the ServiceAccount resource being referred to.
  3440. type: string
  3441. namespace:
  3442. description: |-
  3443. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3444. to the namespace of the referent.
  3445. type: string
  3446. required:
  3447. - name
  3448. type: object
  3449. vault:
  3450. description: Vault is the vault's OCID of the specific vault where secret is located.
  3451. type: string
  3452. required:
  3453. - region
  3454. - vault
  3455. type: object
  3456. scaleway:
  3457. description: Scaleway
  3458. properties:
  3459. accessKey:
  3460. description: AccessKey is the non-secret part of the api key.
  3461. properties:
  3462. secretRef:
  3463. description: SecretRef references a key in a secret that will be used as value.
  3464. properties:
  3465. key:
  3466. description: |-
  3467. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3468. defaulted, in others it may be required.
  3469. type: string
  3470. name:
  3471. description: The name of the Secret resource being referred to.
  3472. type: string
  3473. namespace:
  3474. description: |-
  3475. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3476. to the namespace of the referent.
  3477. type: string
  3478. type: object
  3479. value:
  3480. description: Value can be specified directly to set a value without using a secret.
  3481. type: string
  3482. type: object
  3483. apiUrl:
  3484. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  3485. type: string
  3486. projectId:
  3487. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  3488. type: string
  3489. region:
  3490. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  3491. type: string
  3492. secretKey:
  3493. description: SecretKey is the non-secret part of the api key.
  3494. properties:
  3495. secretRef:
  3496. description: SecretRef references a key in a secret that will be used as value.
  3497. properties:
  3498. key:
  3499. description: |-
  3500. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3501. defaulted, in others it may be required.
  3502. type: string
  3503. name:
  3504. description: The name of the Secret resource being referred to.
  3505. type: string
  3506. namespace:
  3507. description: |-
  3508. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3509. to the namespace of the referent.
  3510. type: string
  3511. type: object
  3512. value:
  3513. description: Value can be specified directly to set a value without using a secret.
  3514. type: string
  3515. type: object
  3516. required:
  3517. - accessKey
  3518. - projectId
  3519. - region
  3520. - secretKey
  3521. type: object
  3522. senhasegura:
  3523. description: Senhasegura configures this store to sync secrets using senhasegura provider
  3524. properties:
  3525. auth:
  3526. description: Auth defines parameters to authenticate in senhasegura
  3527. properties:
  3528. clientId:
  3529. type: string
  3530. clientSecretSecretRef:
  3531. description: |-
  3532. A reference to a specific 'key' within a Secret resource,
  3533. In some instances, `key` is a required field.
  3534. properties:
  3535. key:
  3536. description: |-
  3537. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3538. defaulted, in others it may be required.
  3539. type: string
  3540. name:
  3541. description: The name of the Secret resource being referred to.
  3542. type: string
  3543. namespace:
  3544. description: |-
  3545. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3546. to the namespace of the referent.
  3547. type: string
  3548. type: object
  3549. required:
  3550. - clientId
  3551. - clientSecretSecretRef
  3552. type: object
  3553. ignoreSslCertificate:
  3554. default: false
  3555. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  3556. type: boolean
  3557. module:
  3558. description: Module defines which senhasegura module should be used to get secrets
  3559. type: string
  3560. url:
  3561. description: URL of senhasegura
  3562. type: string
  3563. required:
  3564. - auth
  3565. - module
  3566. - url
  3567. type: object
  3568. vault:
  3569. description: Vault configures this store to sync secrets using Hashi provider
  3570. properties:
  3571. auth:
  3572. description: Auth configures how secret-manager authenticates with the Vault server.
  3573. properties:
  3574. appRole:
  3575. description: |-
  3576. AppRole authenticates with Vault using the App Role auth mechanism,
  3577. with the role and secret stored in a Kubernetes Secret resource.
  3578. properties:
  3579. path:
  3580. default: approle
  3581. description: |-
  3582. Path where the App Role authentication backend is mounted
  3583. in Vault, e.g: "approle"
  3584. type: string
  3585. roleId:
  3586. description: |-
  3587. RoleID configured in the App Role authentication backend when setting
  3588. up the authentication backend in Vault.
  3589. type: string
  3590. roleRef:
  3591. description: |-
  3592. Reference to a key in a Secret that contains the App Role ID used
  3593. to authenticate with Vault.
  3594. The `key` field must be specified and denotes which entry within the Secret
  3595. resource is used as the app role id.
  3596. properties:
  3597. key:
  3598. description: |-
  3599. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3600. defaulted, in others it may be required.
  3601. type: string
  3602. name:
  3603. description: The name of the Secret resource being referred to.
  3604. type: string
  3605. namespace:
  3606. description: |-
  3607. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3608. to the namespace of the referent.
  3609. type: string
  3610. type: object
  3611. secretRef:
  3612. description: |-
  3613. Reference to a key in a Secret that contains the App Role secret used
  3614. to authenticate with Vault.
  3615. The `key` field must be specified and denotes which entry within the Secret
  3616. resource is used as the app role secret.
  3617. properties:
  3618. key:
  3619. description: |-
  3620. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3621. defaulted, in others it may be required.
  3622. type: string
  3623. name:
  3624. description: The name of the Secret resource being referred to.
  3625. type: string
  3626. namespace:
  3627. description: |-
  3628. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3629. to the namespace of the referent.
  3630. type: string
  3631. type: object
  3632. required:
  3633. - path
  3634. - secretRef
  3635. type: object
  3636. cert:
  3637. description: |-
  3638. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  3639. Cert authentication method
  3640. properties:
  3641. clientCert:
  3642. description: |-
  3643. ClientCert is a certificate to authenticate using the Cert Vault
  3644. authentication method
  3645. properties:
  3646. key:
  3647. description: |-
  3648. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3649. defaulted, in others it may be required.
  3650. type: string
  3651. name:
  3652. description: The name of the Secret resource being referred to.
  3653. type: string
  3654. namespace:
  3655. description: |-
  3656. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3657. to the namespace of the referent.
  3658. type: string
  3659. type: object
  3660. secretRef:
  3661. description: |-
  3662. SecretRef to a key in a Secret resource containing client private key to
  3663. authenticate with Vault using the Cert authentication method
  3664. properties:
  3665. key:
  3666. description: |-
  3667. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3668. defaulted, in others it may be required.
  3669. type: string
  3670. name:
  3671. description: The name of the Secret resource being referred to.
  3672. type: string
  3673. namespace:
  3674. description: |-
  3675. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3676. to the namespace of the referent.
  3677. type: string
  3678. type: object
  3679. type: object
  3680. iam:
  3681. description: |-
  3682. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  3683. AWS IAM authentication method
  3684. properties:
  3685. externalID:
  3686. description: AWS External ID set on assumed IAM roles
  3687. type: string
  3688. jwt:
  3689. description: Specify a service account with IRSA enabled
  3690. properties:
  3691. serviceAccountRef:
  3692. description: A reference to a ServiceAccount resource.
  3693. properties:
  3694. audiences:
  3695. description: |-
  3696. Audience specifies the `aud` claim for the service account token
  3697. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3698. then this audiences will be appended to the list
  3699. items:
  3700. type: string
  3701. type: array
  3702. name:
  3703. description: The name of the ServiceAccount resource being referred to.
  3704. type: string
  3705. namespace:
  3706. description: |-
  3707. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3708. to the namespace of the referent.
  3709. type: string
  3710. required:
  3711. - name
  3712. type: object
  3713. type: object
  3714. path:
  3715. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  3716. type: string
  3717. region:
  3718. description: AWS region
  3719. type: string
  3720. role:
  3721. description: This is the AWS role to be assumed before talking to vault
  3722. type: string
  3723. secretRef:
  3724. description: Specify credentials in a Secret object
  3725. properties:
  3726. accessKeyIDSecretRef:
  3727. description: The AccessKeyID is used for authentication
  3728. properties:
  3729. key:
  3730. description: |-
  3731. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3732. defaulted, in others it may be required.
  3733. type: string
  3734. name:
  3735. description: The name of the Secret resource being referred to.
  3736. type: string
  3737. namespace:
  3738. description: |-
  3739. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3740. to the namespace of the referent.
  3741. type: string
  3742. type: object
  3743. secretAccessKeySecretRef:
  3744. description: The SecretAccessKey is used for authentication
  3745. properties:
  3746. key:
  3747. description: |-
  3748. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3749. defaulted, in others it may be required.
  3750. type: string
  3751. name:
  3752. description: The name of the Secret resource being referred to.
  3753. type: string
  3754. namespace:
  3755. description: |-
  3756. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3757. to the namespace of the referent.
  3758. type: string
  3759. type: object
  3760. sessionTokenSecretRef:
  3761. description: |-
  3762. The SessionToken used for authentication
  3763. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  3764. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  3765. properties:
  3766. key:
  3767. description: |-
  3768. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3769. defaulted, in others it may be required.
  3770. type: string
  3771. name:
  3772. description: The name of the Secret resource being referred to.
  3773. type: string
  3774. namespace:
  3775. description: |-
  3776. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3777. to the namespace of the referent.
  3778. type: string
  3779. type: object
  3780. type: object
  3781. vaultAwsIamServerID:
  3782. 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'
  3783. type: string
  3784. vaultRole:
  3785. 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
  3786. type: string
  3787. required:
  3788. - vaultRole
  3789. type: object
  3790. jwt:
  3791. description: |-
  3792. Jwt authenticates with Vault by passing role and JWT token using the
  3793. JWT/OIDC authentication method
  3794. properties:
  3795. kubernetesServiceAccountToken:
  3796. description: |-
  3797. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  3798. a token for with the `TokenRequest` API.
  3799. properties:
  3800. audiences:
  3801. description: |-
  3802. Optional audiences field that will be used to request a temporary Kubernetes service
  3803. account token for the service account referenced by `serviceAccountRef`.
  3804. Defaults to a single audience `vault` it not specified.
  3805. Deprecated: use serviceAccountRef.Audiences instead
  3806. items:
  3807. type: string
  3808. type: array
  3809. expirationSeconds:
  3810. description: |-
  3811. Optional expiration time in seconds that will be used to request a temporary
  3812. Kubernetes service account token for the service account referenced by
  3813. `serviceAccountRef`.
  3814. Deprecated: this will be removed in the future.
  3815. Defaults to 10 minutes.
  3816. format: int64
  3817. type: integer
  3818. serviceAccountRef:
  3819. description: Service account field containing the name of a kubernetes ServiceAccount.
  3820. properties:
  3821. audiences:
  3822. description: |-
  3823. Audience specifies the `aud` claim for the service account token
  3824. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3825. then this audiences will be appended to the list
  3826. items:
  3827. type: string
  3828. type: array
  3829. name:
  3830. description: The name of the ServiceAccount resource being referred to.
  3831. type: string
  3832. namespace:
  3833. description: |-
  3834. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3835. to the namespace of the referent.
  3836. type: string
  3837. required:
  3838. - name
  3839. type: object
  3840. required:
  3841. - serviceAccountRef
  3842. type: object
  3843. path:
  3844. default: jwt
  3845. description: |-
  3846. Path where the JWT authentication backend is mounted
  3847. in Vault, e.g: "jwt"
  3848. type: string
  3849. role:
  3850. description: |-
  3851. Role is a JWT role to authenticate using the JWT/OIDC Vault
  3852. authentication method
  3853. type: string
  3854. secretRef:
  3855. description: |-
  3856. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3857. authenticate with Vault using the JWT/OIDC authentication method.
  3858. properties:
  3859. key:
  3860. description: |-
  3861. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3862. defaulted, in others it may be required.
  3863. type: string
  3864. name:
  3865. description: The name of the Secret resource being referred to.
  3866. type: string
  3867. namespace:
  3868. description: |-
  3869. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3870. to the namespace of the referent.
  3871. type: string
  3872. type: object
  3873. required:
  3874. - path
  3875. type: object
  3876. kubernetes:
  3877. description: |-
  3878. Kubernetes authenticates with Vault by passing the ServiceAccount
  3879. token stored in the named Secret resource to the Vault server.
  3880. properties:
  3881. mountPath:
  3882. default: kubernetes
  3883. description: |-
  3884. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  3885. "kubernetes"
  3886. type: string
  3887. role:
  3888. description: |-
  3889. A required field containing the Vault Role to assume. A Role binds a
  3890. Kubernetes ServiceAccount with a set of Vault policies.
  3891. type: string
  3892. secretRef:
  3893. description: |-
  3894. Optional secret field containing a Kubernetes ServiceAccount JWT used
  3895. for authenticating with Vault. If a name is specified without a key,
  3896. `token` is the default. If one is not specified, the one bound to
  3897. the controller will be used.
  3898. properties:
  3899. key:
  3900. description: |-
  3901. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3902. defaulted, in others it may be required.
  3903. type: string
  3904. name:
  3905. description: The name of the Secret resource being referred to.
  3906. type: string
  3907. namespace:
  3908. description: |-
  3909. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3910. to the namespace of the referent.
  3911. type: string
  3912. type: object
  3913. serviceAccountRef:
  3914. description: |-
  3915. Optional service account field containing the name of a kubernetes ServiceAccount.
  3916. If the service account is specified, the service account secret token JWT will be used
  3917. for authenticating with Vault. If the service account selector is not supplied,
  3918. the secretRef will be used instead.
  3919. properties:
  3920. audiences:
  3921. description: |-
  3922. Audience specifies the `aud` claim for the service account token
  3923. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3924. then this audiences will be appended to the list
  3925. items:
  3926. type: string
  3927. type: array
  3928. name:
  3929. description: The name of the ServiceAccount resource being referred to.
  3930. type: string
  3931. namespace:
  3932. description: |-
  3933. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3934. to the namespace of the referent.
  3935. type: string
  3936. required:
  3937. - name
  3938. type: object
  3939. required:
  3940. - mountPath
  3941. - role
  3942. type: object
  3943. ldap:
  3944. description: |-
  3945. Ldap authenticates with Vault by passing username/password pair using
  3946. the LDAP authentication method
  3947. properties:
  3948. path:
  3949. default: ldap
  3950. description: |-
  3951. Path where the LDAP authentication backend is mounted
  3952. in Vault, e.g: "ldap"
  3953. type: string
  3954. secretRef:
  3955. description: |-
  3956. SecretRef to a key in a Secret resource containing password for the LDAP
  3957. user used to authenticate with Vault using the LDAP authentication
  3958. method
  3959. properties:
  3960. key:
  3961. description: |-
  3962. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3963. defaulted, in others it may be required.
  3964. type: string
  3965. name:
  3966. description: The name of the Secret resource being referred to.
  3967. type: string
  3968. namespace:
  3969. description: |-
  3970. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3971. to the namespace of the referent.
  3972. type: string
  3973. type: object
  3974. username:
  3975. description: |-
  3976. Username is a LDAP user name used to authenticate using the LDAP Vault
  3977. authentication method
  3978. type: string
  3979. required:
  3980. - path
  3981. - username
  3982. type: object
  3983. tokenSecretRef:
  3984. description: TokenSecretRef authenticates with Vault by presenting a token.
  3985. properties:
  3986. key:
  3987. description: |-
  3988. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3989. defaulted, in others it may be required.
  3990. type: string
  3991. name:
  3992. description: The name of the Secret resource being referred to.
  3993. type: string
  3994. namespace:
  3995. description: |-
  3996. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3997. to the namespace of the referent.
  3998. type: string
  3999. type: object
  4000. userPass:
  4001. description: UserPass authenticates with Vault by passing username/password pair
  4002. properties:
  4003. path:
  4004. default: user
  4005. description: |-
  4006. Path where the UserPassword authentication backend is mounted
  4007. in Vault, e.g: "user"
  4008. type: string
  4009. secretRef:
  4010. description: |-
  4011. SecretRef to a key in a Secret resource containing password for the
  4012. user used to authenticate with Vault using the UserPass authentication
  4013. method
  4014. properties:
  4015. key:
  4016. description: |-
  4017. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4018. defaulted, in others it may be required.
  4019. type: string
  4020. name:
  4021. description: The name of the Secret resource being referred to.
  4022. type: string
  4023. namespace:
  4024. description: |-
  4025. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4026. to the namespace of the referent.
  4027. type: string
  4028. type: object
  4029. username:
  4030. description: |-
  4031. Username is a user name used to authenticate using the UserPass Vault
  4032. authentication method
  4033. type: string
  4034. required:
  4035. - path
  4036. - username
  4037. type: object
  4038. type: object
  4039. caBundle:
  4040. description: |-
  4041. PEM encoded CA bundle used to validate Vault server certificate. Only used
  4042. if the Server URL is using HTTPS protocol. This parameter is ignored for
  4043. plain HTTP protocol connection. If not set the system root certificates
  4044. are used to validate the TLS connection.
  4045. format: byte
  4046. type: string
  4047. caProvider:
  4048. description: The provider for the CA bundle to use to validate Vault server certificate.
  4049. properties:
  4050. key:
  4051. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4052. type: string
  4053. name:
  4054. description: The name of the object located at the provider type.
  4055. type: string
  4056. namespace:
  4057. description: |-
  4058. The namespace the Provider type is in.
  4059. Can only be defined when used in a ClusterSecretStore.
  4060. type: string
  4061. type:
  4062. description: The type of provider to use such as "Secret", or "ConfigMap".
  4063. enum:
  4064. - Secret
  4065. - ConfigMap
  4066. type: string
  4067. required:
  4068. - name
  4069. - type
  4070. type: object
  4071. forwardInconsistent:
  4072. description: |-
  4073. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  4074. leader instead of simply retrying within a loop. This can increase performance if
  4075. the option is enabled serverside.
  4076. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  4077. type: boolean
  4078. namespace:
  4079. description: |-
  4080. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  4081. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  4082. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  4083. type: string
  4084. path:
  4085. description: |-
  4086. Path is the mount path of the Vault KV backend endpoint, e.g:
  4087. "secret". The v2 KV secret engine version specific "/data" path suffix
  4088. for fetching secrets from Vault is optional and will be appended
  4089. if not present in specified path.
  4090. type: string
  4091. readYourWrites:
  4092. description: |-
  4093. ReadYourWrites ensures isolated read-after-write semantics by
  4094. providing discovered cluster replication states in each request.
  4095. More information about eventual consistency in Vault can be found here
  4096. https://www.vaultproject.io/docs/enterprise/consistency
  4097. type: boolean
  4098. server:
  4099. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  4100. type: string
  4101. tls:
  4102. description: |-
  4103. The configuration used for client side related TLS communication, when the Vault server
  4104. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  4105. This parameter is ignored for plain HTTP protocol connection.
  4106. It's worth noting this configuration is different from the "TLS certificates auth method",
  4107. which is available under the `auth.cert` section.
  4108. properties:
  4109. certSecretRef:
  4110. description: |-
  4111. CertSecretRef is a certificate added to the transport layer
  4112. when communicating with the Vault server.
  4113. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  4114. properties:
  4115. key:
  4116. description: |-
  4117. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4118. defaulted, in others it may be required.
  4119. type: string
  4120. name:
  4121. description: The name of the Secret resource being referred to.
  4122. type: string
  4123. namespace:
  4124. description: |-
  4125. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4126. to the namespace of the referent.
  4127. type: string
  4128. type: object
  4129. keySecretRef:
  4130. description: |-
  4131. KeySecretRef to a key in a Secret resource containing client private key
  4132. added to the transport layer when communicating with the Vault server.
  4133. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  4134. properties:
  4135. key:
  4136. description: |-
  4137. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4138. defaulted, in others it may be required.
  4139. type: string
  4140. name:
  4141. description: The name of the Secret resource being referred to.
  4142. type: string
  4143. namespace:
  4144. description: |-
  4145. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4146. to the namespace of the referent.
  4147. type: string
  4148. type: object
  4149. type: object
  4150. version:
  4151. default: v2
  4152. description: |-
  4153. Version is the Vault KV secret engine version. This can be either "v1" or
  4154. "v2". Version defaults to "v2".
  4155. enum:
  4156. - v1
  4157. - v2
  4158. type: string
  4159. required:
  4160. - auth
  4161. - server
  4162. type: object
  4163. webhook:
  4164. description: Webhook configures this store to sync secrets using a generic templated webhook
  4165. properties:
  4166. body:
  4167. description: Body
  4168. type: string
  4169. caBundle:
  4170. description: |-
  4171. PEM encoded CA bundle used to validate webhook server certificate. Only used
  4172. if the Server URL is using HTTPS protocol. This parameter is ignored for
  4173. plain HTTP protocol connection. If not set the system root certificates
  4174. are used to validate the TLS connection.
  4175. format: byte
  4176. type: string
  4177. caProvider:
  4178. description: The provider for the CA bundle to use to validate webhook server certificate.
  4179. properties:
  4180. key:
  4181. description: The key the value inside of the provider type to use, only used with "Secret" type
  4182. type: string
  4183. name:
  4184. description: The name of the object located at the provider type.
  4185. type: string
  4186. namespace:
  4187. description: The namespace the Provider type is in.
  4188. type: string
  4189. type:
  4190. description: The type of provider to use such as "Secret", or "ConfigMap".
  4191. enum:
  4192. - Secret
  4193. - ConfigMap
  4194. type: string
  4195. required:
  4196. - name
  4197. - type
  4198. type: object
  4199. headers:
  4200. additionalProperties:
  4201. type: string
  4202. description: Headers
  4203. type: object
  4204. method:
  4205. description: Webhook Method
  4206. type: string
  4207. result:
  4208. description: Result formatting
  4209. properties:
  4210. jsonPath:
  4211. description: Json path of return value
  4212. type: string
  4213. type: object
  4214. secrets:
  4215. description: |-
  4216. Secrets to fill in templates
  4217. These secrets will be passed to the templating function as key value pairs under the given name
  4218. items:
  4219. properties:
  4220. name:
  4221. description: Name of this secret in templates
  4222. type: string
  4223. secretRef:
  4224. description: Secret ref to fill in credentials
  4225. properties:
  4226. key:
  4227. description: |-
  4228. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4229. defaulted, in others it may be required.
  4230. type: string
  4231. name:
  4232. description: The name of the Secret resource being referred to.
  4233. type: string
  4234. namespace:
  4235. description: |-
  4236. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4237. to the namespace of the referent.
  4238. type: string
  4239. type: object
  4240. required:
  4241. - name
  4242. - secretRef
  4243. type: object
  4244. type: array
  4245. timeout:
  4246. description: Timeout
  4247. type: string
  4248. url:
  4249. description: Webhook url to call
  4250. type: string
  4251. required:
  4252. - result
  4253. - url
  4254. type: object
  4255. yandexcertificatemanager:
  4256. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  4257. properties:
  4258. apiEndpoint:
  4259. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4260. type: string
  4261. auth:
  4262. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  4263. properties:
  4264. authorizedKeySecretRef:
  4265. description: The authorized key used for authentication
  4266. properties:
  4267. key:
  4268. description: |-
  4269. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4270. defaulted, in others it may be required.
  4271. type: string
  4272. name:
  4273. description: The name of the Secret resource being referred to.
  4274. type: string
  4275. namespace:
  4276. description: |-
  4277. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4278. to the namespace of the referent.
  4279. type: string
  4280. type: object
  4281. type: object
  4282. caProvider:
  4283. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4284. properties:
  4285. certSecretRef:
  4286. description: |-
  4287. A reference to a specific 'key' within a Secret resource,
  4288. In some instances, `key` is a required field.
  4289. properties:
  4290. key:
  4291. description: |-
  4292. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4293. defaulted, in others it may be required.
  4294. type: string
  4295. name:
  4296. description: The name of the Secret resource being referred to.
  4297. type: string
  4298. namespace:
  4299. description: |-
  4300. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4301. to the namespace of the referent.
  4302. type: string
  4303. type: object
  4304. type: object
  4305. required:
  4306. - auth
  4307. type: object
  4308. yandexlockbox:
  4309. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  4310. properties:
  4311. apiEndpoint:
  4312. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4313. type: string
  4314. auth:
  4315. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  4316. properties:
  4317. authorizedKeySecretRef:
  4318. description: The authorized key used for authentication
  4319. properties:
  4320. key:
  4321. description: |-
  4322. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4323. defaulted, in others it may be required.
  4324. type: string
  4325. name:
  4326. description: The name of the Secret resource being referred to.
  4327. type: string
  4328. namespace:
  4329. description: |-
  4330. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4331. to the namespace of the referent.
  4332. type: string
  4333. type: object
  4334. type: object
  4335. caProvider:
  4336. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4337. properties:
  4338. certSecretRef:
  4339. description: |-
  4340. A reference to a specific 'key' within a Secret resource,
  4341. In some instances, `key` is a required field.
  4342. properties:
  4343. key:
  4344. description: |-
  4345. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4346. defaulted, in others it may be required.
  4347. type: string
  4348. name:
  4349. description: The name of the Secret resource being referred to.
  4350. type: string
  4351. namespace:
  4352. description: |-
  4353. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4354. to the namespace of the referent.
  4355. type: string
  4356. type: object
  4357. type: object
  4358. required:
  4359. - auth
  4360. type: object
  4361. type: object
  4362. refreshInterval:
  4363. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  4364. type: integer
  4365. retrySettings:
  4366. description: Used to configure http retries if failed
  4367. properties:
  4368. maxRetries:
  4369. format: int32
  4370. type: integer
  4371. retryInterval:
  4372. type: string
  4373. type: object
  4374. required:
  4375. - provider
  4376. type: object
  4377. status:
  4378. description: SecretStoreStatus defines the observed state of the SecretStore.
  4379. properties:
  4380. capabilities:
  4381. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  4382. type: string
  4383. conditions:
  4384. items:
  4385. properties:
  4386. lastTransitionTime:
  4387. format: date-time
  4388. type: string
  4389. message:
  4390. type: string
  4391. reason:
  4392. type: string
  4393. status:
  4394. type: string
  4395. type:
  4396. type: string
  4397. required:
  4398. - status
  4399. - type
  4400. type: object
  4401. type: array
  4402. type: object
  4403. type: object
  4404. served: true
  4405. storage: true
  4406. subresources:
  4407. status: {}
  4408. conversion:
  4409. strategy: Webhook
  4410. webhook:
  4411. conversionReviewVersions:
  4412. - v1
  4413. clientConfig:
  4414. service:
  4415. name: kubernetes
  4416. namespace: default
  4417. path: /convert
  4418. ---
  4419. apiVersion: apiextensions.k8s.io/v1
  4420. kind: CustomResourceDefinition
  4421. metadata:
  4422. annotations:
  4423. controller-gen.kubebuilder.io/version: v0.14.0
  4424. name: externalsecrets.external-secrets.io
  4425. spec:
  4426. group: external-secrets.io
  4427. names:
  4428. categories:
  4429. - externalsecrets
  4430. kind: ExternalSecret
  4431. listKind: ExternalSecretList
  4432. plural: externalsecrets
  4433. shortNames:
  4434. - es
  4435. singular: externalsecret
  4436. scope: Namespaced
  4437. versions:
  4438. - additionalPrinterColumns:
  4439. - jsonPath: .spec.secretStoreRef.name
  4440. name: Store
  4441. type: string
  4442. - jsonPath: .spec.refreshInterval
  4443. name: Refresh Interval
  4444. type: string
  4445. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4446. name: Status
  4447. type: string
  4448. deprecated: true
  4449. name: v1alpha1
  4450. schema:
  4451. openAPIV3Schema:
  4452. description: ExternalSecret is the Schema for the external-secrets API.
  4453. properties:
  4454. apiVersion:
  4455. description: |-
  4456. APIVersion defines the versioned schema of this representation of an object.
  4457. Servers should convert recognized schemas to the latest internal value, and
  4458. may reject unrecognized values.
  4459. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  4460. type: string
  4461. kind:
  4462. description: |-
  4463. Kind is a string value representing the REST resource this object represents.
  4464. Servers may infer this from the endpoint the client submits requests to.
  4465. Cannot be updated.
  4466. In CamelCase.
  4467. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  4468. type: string
  4469. metadata:
  4470. type: object
  4471. spec:
  4472. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  4473. properties:
  4474. data:
  4475. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  4476. items:
  4477. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  4478. properties:
  4479. remoteRef:
  4480. description: ExternalSecretDataRemoteRef defines Provider data location.
  4481. properties:
  4482. conversionStrategy:
  4483. default: Default
  4484. description: Used to define a conversion Strategy
  4485. enum:
  4486. - Default
  4487. - Unicode
  4488. type: string
  4489. key:
  4490. description: Key is the key used in the Provider, mandatory
  4491. type: string
  4492. property:
  4493. description: Used to select a specific property of the Provider value (if a map), if supported
  4494. type: string
  4495. version:
  4496. description: Used to select a specific version of the Provider value, if supported
  4497. type: string
  4498. required:
  4499. - key
  4500. type: object
  4501. secretKey:
  4502. type: string
  4503. required:
  4504. - remoteRef
  4505. - secretKey
  4506. type: object
  4507. type: array
  4508. dataFrom:
  4509. description: |-
  4510. DataFrom is used to fetch all properties from a specific Provider data
  4511. If multiple entries are specified, the Secret keys are merged in the specified order
  4512. items:
  4513. description: ExternalSecretDataRemoteRef defines Provider data location.
  4514. properties:
  4515. conversionStrategy:
  4516. default: Default
  4517. description: Used to define a conversion Strategy
  4518. enum:
  4519. - Default
  4520. - Unicode
  4521. type: string
  4522. key:
  4523. description: Key is the key used in the Provider, mandatory
  4524. type: string
  4525. property:
  4526. description: Used to select a specific property of the Provider value (if a map), if supported
  4527. type: string
  4528. version:
  4529. description: Used to select a specific version of the Provider value, if supported
  4530. type: string
  4531. required:
  4532. - key
  4533. type: object
  4534. type: array
  4535. refreshInterval:
  4536. default: 1h
  4537. description: |-
  4538. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  4539. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  4540. May be set to zero to fetch and create it once. Defaults to 1h.
  4541. type: string
  4542. secretStoreRef:
  4543. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4544. properties:
  4545. kind:
  4546. description: |-
  4547. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4548. Defaults to `SecretStore`
  4549. type: string
  4550. name:
  4551. description: Name of the SecretStore resource
  4552. type: string
  4553. required:
  4554. - name
  4555. type: object
  4556. target:
  4557. description: |-
  4558. ExternalSecretTarget defines the Kubernetes Secret to be created
  4559. There can be only one target per ExternalSecret.
  4560. properties:
  4561. creationPolicy:
  4562. default: Owner
  4563. description: |-
  4564. CreationPolicy defines rules on how to create the resulting Secret
  4565. Defaults to 'Owner'
  4566. enum:
  4567. - Owner
  4568. - Merge
  4569. - None
  4570. type: string
  4571. immutable:
  4572. description: Immutable defines if the final secret will be immutable
  4573. type: boolean
  4574. name:
  4575. description: |-
  4576. Name defines the name of the Secret resource to be managed
  4577. This field is immutable
  4578. Defaults to the .metadata.name of the ExternalSecret resource
  4579. type: string
  4580. template:
  4581. description: Template defines a blueprint for the created Secret resource.
  4582. properties:
  4583. data:
  4584. additionalProperties:
  4585. type: string
  4586. type: object
  4587. engineVersion:
  4588. default: v1
  4589. description: |-
  4590. EngineVersion specifies the template engine version
  4591. that should be used to compile/execute the
  4592. template specified in .data and .templateFrom[].
  4593. enum:
  4594. - v1
  4595. - v2
  4596. type: string
  4597. metadata:
  4598. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  4599. properties:
  4600. annotations:
  4601. additionalProperties:
  4602. type: string
  4603. type: object
  4604. labels:
  4605. additionalProperties:
  4606. type: string
  4607. type: object
  4608. type: object
  4609. templateFrom:
  4610. items:
  4611. maxProperties: 1
  4612. minProperties: 1
  4613. properties:
  4614. configMap:
  4615. properties:
  4616. items:
  4617. items:
  4618. properties:
  4619. key:
  4620. type: string
  4621. required:
  4622. - key
  4623. type: object
  4624. type: array
  4625. name:
  4626. type: string
  4627. required:
  4628. - items
  4629. - name
  4630. type: object
  4631. secret:
  4632. properties:
  4633. items:
  4634. items:
  4635. properties:
  4636. key:
  4637. type: string
  4638. required:
  4639. - key
  4640. type: object
  4641. type: array
  4642. name:
  4643. type: string
  4644. required:
  4645. - items
  4646. - name
  4647. type: object
  4648. type: object
  4649. type: array
  4650. type:
  4651. type: string
  4652. type: object
  4653. type: object
  4654. required:
  4655. - secretStoreRef
  4656. - target
  4657. type: object
  4658. status:
  4659. properties:
  4660. binding:
  4661. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  4662. properties:
  4663. name:
  4664. description: |-
  4665. Name of the referent.
  4666. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  4667. TODO: Add other useful fields. apiVersion, kind, uid?
  4668. type: string
  4669. type: object
  4670. x-kubernetes-map-type: atomic
  4671. conditions:
  4672. items:
  4673. properties:
  4674. lastTransitionTime:
  4675. format: date-time
  4676. type: string
  4677. message:
  4678. type: string
  4679. reason:
  4680. type: string
  4681. status:
  4682. type: string
  4683. type:
  4684. type: string
  4685. required:
  4686. - status
  4687. - type
  4688. type: object
  4689. type: array
  4690. refreshTime:
  4691. description: |-
  4692. refreshTime is the time and date the external secret was fetched and
  4693. the target secret updated
  4694. format: date-time
  4695. nullable: true
  4696. type: string
  4697. syncedResourceVersion:
  4698. description: SyncedResourceVersion keeps track of the last synced version
  4699. type: string
  4700. type: object
  4701. type: object
  4702. served: true
  4703. storage: false
  4704. subresources:
  4705. status: {}
  4706. - additionalPrinterColumns:
  4707. - jsonPath: .spec.secretStoreRef.name
  4708. name: Store
  4709. type: string
  4710. - jsonPath: .spec.refreshInterval
  4711. name: Refresh Interval
  4712. type: string
  4713. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4714. name: Status
  4715. type: string
  4716. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  4717. name: Ready
  4718. type: string
  4719. name: v1beta1
  4720. schema:
  4721. openAPIV3Schema:
  4722. description: ExternalSecret is the Schema for the external-secrets API.
  4723. properties:
  4724. apiVersion:
  4725. description: |-
  4726. APIVersion defines the versioned schema of this representation of an object.
  4727. Servers should convert recognized schemas to the latest internal value, and
  4728. may reject unrecognized values.
  4729. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  4730. type: string
  4731. kind:
  4732. description: |-
  4733. Kind is a string value representing the REST resource this object represents.
  4734. Servers may infer this from the endpoint the client submits requests to.
  4735. Cannot be updated.
  4736. In CamelCase.
  4737. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  4738. type: string
  4739. metadata:
  4740. type: object
  4741. spec:
  4742. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  4743. properties:
  4744. data:
  4745. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  4746. items:
  4747. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  4748. properties:
  4749. remoteRef:
  4750. description: |-
  4751. RemoteRef points to the remote secret and defines
  4752. which secret (version/property/..) to fetch.
  4753. properties:
  4754. conversionStrategy:
  4755. default: Default
  4756. description: Used to define a conversion Strategy
  4757. enum:
  4758. - Default
  4759. - Unicode
  4760. type: string
  4761. decodingStrategy:
  4762. default: None
  4763. description: Used to define a decoding Strategy
  4764. enum:
  4765. - Auto
  4766. - Base64
  4767. - Base64URL
  4768. - None
  4769. type: string
  4770. key:
  4771. description: Key is the key used in the Provider, mandatory
  4772. type: string
  4773. metadataPolicy:
  4774. default: None
  4775. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  4776. enum:
  4777. - None
  4778. - Fetch
  4779. type: string
  4780. property:
  4781. description: Used to select a specific property of the Provider value (if a map), if supported
  4782. type: string
  4783. version:
  4784. description: Used to select a specific version of the Provider value, if supported
  4785. type: string
  4786. required:
  4787. - key
  4788. type: object
  4789. secretKey:
  4790. description: |-
  4791. SecretKey defines the key in which the controller stores
  4792. the value. This is the key in the Kind=Secret
  4793. type: string
  4794. sourceRef:
  4795. description: |-
  4796. SourceRef allows you to override the source
  4797. from which the value will pulled from.
  4798. maxProperties: 1
  4799. properties:
  4800. generatorRef:
  4801. description: |-
  4802. GeneratorRef points to a generator custom resource.
  4803. Deprecated: The generatorRef is not implemented in .data[].
  4804. this will be removed with v1.
  4805. properties:
  4806. apiVersion:
  4807. default: generators.external-secrets.io/v1alpha1
  4808. description: Specify the apiVersion of the generator resource
  4809. type: string
  4810. kind:
  4811. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  4812. type: string
  4813. name:
  4814. description: Specify the name of the generator resource
  4815. type: string
  4816. required:
  4817. - kind
  4818. - name
  4819. type: object
  4820. storeRef:
  4821. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4822. properties:
  4823. kind:
  4824. description: |-
  4825. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4826. Defaults to `SecretStore`
  4827. type: string
  4828. name:
  4829. description: Name of the SecretStore resource
  4830. type: string
  4831. required:
  4832. - name
  4833. type: object
  4834. type: object
  4835. required:
  4836. - remoteRef
  4837. - secretKey
  4838. type: object
  4839. type: array
  4840. dataFrom:
  4841. description: |-
  4842. DataFrom is used to fetch all properties from a specific Provider data
  4843. If multiple entries are specified, the Secret keys are merged in the specified order
  4844. items:
  4845. properties:
  4846. extract:
  4847. description: |-
  4848. Used to extract multiple key/value pairs from one secret
  4849. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  4850. properties:
  4851. conversionStrategy:
  4852. default: Default
  4853. description: Used to define a conversion Strategy
  4854. enum:
  4855. - Default
  4856. - Unicode
  4857. type: string
  4858. decodingStrategy:
  4859. default: None
  4860. description: Used to define a decoding Strategy
  4861. enum:
  4862. - Auto
  4863. - Base64
  4864. - Base64URL
  4865. - None
  4866. type: string
  4867. key:
  4868. description: Key is the key used in the Provider, mandatory
  4869. type: string
  4870. metadataPolicy:
  4871. default: None
  4872. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  4873. enum:
  4874. - None
  4875. - Fetch
  4876. type: string
  4877. property:
  4878. description: Used to select a specific property of the Provider value (if a map), if supported
  4879. type: string
  4880. version:
  4881. description: Used to select a specific version of the Provider value, if supported
  4882. type: string
  4883. required:
  4884. - key
  4885. type: object
  4886. find:
  4887. description: |-
  4888. Used to find secrets based on tags or regular expressions
  4889. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  4890. properties:
  4891. conversionStrategy:
  4892. default: Default
  4893. description: Used to define a conversion Strategy
  4894. enum:
  4895. - Default
  4896. - Unicode
  4897. type: string
  4898. decodingStrategy:
  4899. default: None
  4900. description: Used to define a decoding Strategy
  4901. enum:
  4902. - Auto
  4903. - Base64
  4904. - Base64URL
  4905. - None
  4906. type: string
  4907. name:
  4908. description: Finds secrets based on the name.
  4909. properties:
  4910. regexp:
  4911. description: Finds secrets base
  4912. type: string
  4913. type: object
  4914. path:
  4915. description: A root path to start the find operations.
  4916. type: string
  4917. tags:
  4918. additionalProperties:
  4919. type: string
  4920. description: Find secrets based on tags.
  4921. type: object
  4922. type: object
  4923. rewrite:
  4924. description: |-
  4925. Used to rewrite secret Keys after getting them from the secret Provider
  4926. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  4927. items:
  4928. properties:
  4929. regexp:
  4930. description: |-
  4931. Used to rewrite with regular expressions.
  4932. The resulting key will be the output of a regexp.ReplaceAll operation.
  4933. properties:
  4934. source:
  4935. description: Used to define the regular expression of a re.Compiler.
  4936. type: string
  4937. target:
  4938. description: Used to define the target pattern of a ReplaceAll operation.
  4939. type: string
  4940. required:
  4941. - source
  4942. - target
  4943. type: object
  4944. transform:
  4945. description: |-
  4946. Used to apply string transformation on the secrets.
  4947. The resulting key will be the output of the template applied by the operation.
  4948. properties:
  4949. template:
  4950. description: |-
  4951. Used to define the template to apply on the secret name.
  4952. `.value ` will specify the secret name in the template.
  4953. type: string
  4954. required:
  4955. - template
  4956. type: object
  4957. type: object
  4958. type: array
  4959. sourceRef:
  4960. description: |-
  4961. SourceRef points to a store or generator
  4962. which contains secret values ready to use.
  4963. Use this in combination with Extract or Find pull values out of
  4964. a specific SecretStore.
  4965. When sourceRef points to a generator Extract or Find is not supported.
  4966. The generator returns a static map of values
  4967. maxProperties: 1
  4968. properties:
  4969. generatorRef:
  4970. description: GeneratorRef points to a generator custom resource.
  4971. properties:
  4972. apiVersion:
  4973. default: generators.external-secrets.io/v1alpha1
  4974. description: Specify the apiVersion of the generator resource
  4975. type: string
  4976. kind:
  4977. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  4978. type: string
  4979. name:
  4980. description: Specify the name of the generator resource
  4981. type: string
  4982. required:
  4983. - kind
  4984. - name
  4985. type: object
  4986. storeRef:
  4987. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4988. properties:
  4989. kind:
  4990. description: |-
  4991. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4992. Defaults to `SecretStore`
  4993. type: string
  4994. name:
  4995. description: Name of the SecretStore resource
  4996. type: string
  4997. required:
  4998. - name
  4999. type: object
  5000. type: object
  5001. type: object
  5002. type: array
  5003. refreshInterval:
  5004. default: 1h
  5005. description: |-
  5006. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  5007. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  5008. May be set to zero to fetch and create it once. Defaults to 1h.
  5009. type: string
  5010. secretStoreRef:
  5011. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  5012. properties:
  5013. kind:
  5014. description: |-
  5015. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  5016. Defaults to `SecretStore`
  5017. type: string
  5018. name:
  5019. description: Name of the SecretStore resource
  5020. type: string
  5021. required:
  5022. - name
  5023. type: object
  5024. target:
  5025. default:
  5026. creationPolicy: Owner
  5027. deletionPolicy: Retain
  5028. description: |-
  5029. ExternalSecretTarget defines the Kubernetes Secret to be created
  5030. There can be only one target per ExternalSecret.
  5031. properties:
  5032. creationPolicy:
  5033. default: Owner
  5034. description: |-
  5035. CreationPolicy defines rules on how to create the resulting Secret
  5036. Defaults to 'Owner'
  5037. enum:
  5038. - Owner
  5039. - Orphan
  5040. - Merge
  5041. - None
  5042. type: string
  5043. deletionPolicy:
  5044. default: Retain
  5045. description: |-
  5046. DeletionPolicy defines rules on how to delete the resulting Secret
  5047. Defaults to 'Retain'
  5048. enum:
  5049. - Delete
  5050. - Merge
  5051. - Retain
  5052. type: string
  5053. immutable:
  5054. description: Immutable defines if the final secret will be immutable
  5055. type: boolean
  5056. name:
  5057. description: |-
  5058. Name defines the name of the Secret resource to be managed
  5059. This field is immutable
  5060. Defaults to the .metadata.name of the ExternalSecret resource
  5061. type: string
  5062. template:
  5063. description: Template defines a blueprint for the created Secret resource.
  5064. properties:
  5065. data:
  5066. additionalProperties:
  5067. type: string
  5068. type: object
  5069. engineVersion:
  5070. default: v2
  5071. description: |-
  5072. EngineVersion specifies the template engine version
  5073. that should be used to compile/execute the
  5074. template specified in .data and .templateFrom[].
  5075. enum:
  5076. - v1
  5077. - v2
  5078. type: string
  5079. mergePolicy:
  5080. default: Replace
  5081. enum:
  5082. - Replace
  5083. - Merge
  5084. type: string
  5085. metadata:
  5086. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  5087. properties:
  5088. annotations:
  5089. additionalProperties:
  5090. type: string
  5091. type: object
  5092. labels:
  5093. additionalProperties:
  5094. type: string
  5095. type: object
  5096. type: object
  5097. templateFrom:
  5098. items:
  5099. properties:
  5100. configMap:
  5101. properties:
  5102. items:
  5103. items:
  5104. properties:
  5105. key:
  5106. type: string
  5107. templateAs:
  5108. default: Values
  5109. enum:
  5110. - Values
  5111. - KeysAndValues
  5112. type: string
  5113. required:
  5114. - key
  5115. type: object
  5116. type: array
  5117. name:
  5118. type: string
  5119. required:
  5120. - items
  5121. - name
  5122. type: object
  5123. literal:
  5124. type: string
  5125. secret:
  5126. properties:
  5127. items:
  5128. items:
  5129. properties:
  5130. key:
  5131. type: string
  5132. templateAs:
  5133. default: Values
  5134. enum:
  5135. - Values
  5136. - KeysAndValues
  5137. type: string
  5138. required:
  5139. - key
  5140. type: object
  5141. type: array
  5142. name:
  5143. type: string
  5144. required:
  5145. - items
  5146. - name
  5147. type: object
  5148. target:
  5149. default: Data
  5150. enum:
  5151. - Data
  5152. - Annotations
  5153. - Labels
  5154. type: string
  5155. type: object
  5156. type: array
  5157. type:
  5158. type: string
  5159. type: object
  5160. type: object
  5161. type: object
  5162. status:
  5163. properties:
  5164. binding:
  5165. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  5166. properties:
  5167. name:
  5168. description: |-
  5169. Name of the referent.
  5170. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  5171. TODO: Add other useful fields. apiVersion, kind, uid?
  5172. type: string
  5173. type: object
  5174. x-kubernetes-map-type: atomic
  5175. conditions:
  5176. items:
  5177. properties:
  5178. lastTransitionTime:
  5179. format: date-time
  5180. type: string
  5181. message:
  5182. type: string
  5183. reason:
  5184. type: string
  5185. status:
  5186. type: string
  5187. type:
  5188. type: string
  5189. required:
  5190. - status
  5191. - type
  5192. type: object
  5193. type: array
  5194. refreshTime:
  5195. description: |-
  5196. refreshTime is the time and date the external secret was fetched and
  5197. the target secret updated
  5198. format: date-time
  5199. nullable: true
  5200. type: string
  5201. syncedResourceVersion:
  5202. description: SyncedResourceVersion keeps track of the last synced version
  5203. type: string
  5204. type: object
  5205. type: object
  5206. served: true
  5207. storage: true
  5208. subresources:
  5209. status: {}
  5210. conversion:
  5211. strategy: Webhook
  5212. webhook:
  5213. conversionReviewVersions:
  5214. - v1
  5215. clientConfig:
  5216. service:
  5217. name: kubernetes
  5218. namespace: default
  5219. path: /convert
  5220. ---
  5221. apiVersion: apiextensions.k8s.io/v1
  5222. kind: CustomResourceDefinition
  5223. metadata:
  5224. annotations:
  5225. controller-gen.kubebuilder.io/version: v0.14.0
  5226. name: pushsecrets.external-secrets.io
  5227. spec:
  5228. group: external-secrets.io
  5229. names:
  5230. categories:
  5231. - pushsecrets
  5232. kind: PushSecret
  5233. listKind: PushSecretList
  5234. plural: pushsecrets
  5235. singular: pushsecret
  5236. scope: Namespaced
  5237. versions:
  5238. - additionalPrinterColumns:
  5239. - jsonPath: .metadata.creationTimestamp
  5240. name: AGE
  5241. type: date
  5242. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  5243. name: Status
  5244. type: string
  5245. name: v1alpha1
  5246. schema:
  5247. openAPIV3Schema:
  5248. properties:
  5249. apiVersion:
  5250. description: |-
  5251. APIVersion defines the versioned schema of this representation of an object.
  5252. Servers should convert recognized schemas to the latest internal value, and
  5253. may reject unrecognized values.
  5254. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  5255. type: string
  5256. kind:
  5257. description: |-
  5258. Kind is a string value representing the REST resource this object represents.
  5259. Servers may infer this from the endpoint the client submits requests to.
  5260. Cannot be updated.
  5261. In CamelCase.
  5262. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  5263. type: string
  5264. metadata:
  5265. type: object
  5266. spec:
  5267. description: PushSecretSpec configures the behavior of the PushSecret.
  5268. properties:
  5269. data:
  5270. description: Secret Data that should be pushed to providers
  5271. items:
  5272. properties:
  5273. match:
  5274. description: Match a given Secret Key to be pushed to the provider.
  5275. properties:
  5276. remoteRef:
  5277. description: Remote Refs to push to providers.
  5278. properties:
  5279. property:
  5280. description: Name of the property in the resulting secret
  5281. type: string
  5282. remoteKey:
  5283. description: Name of the resulting provider secret.
  5284. type: string
  5285. required:
  5286. - remoteKey
  5287. type: object
  5288. secretKey:
  5289. description: Secret Key to be pushed
  5290. type: string
  5291. required:
  5292. - remoteRef
  5293. type: object
  5294. metadata:
  5295. description: |-
  5296. Metadata is metadata attached to the secret.
  5297. The structure of metadata is provider specific, please look it up in the provider documentation.
  5298. x-kubernetes-preserve-unknown-fields: true
  5299. required:
  5300. - match
  5301. type: object
  5302. type: array
  5303. deletionPolicy:
  5304. default: None
  5305. description: 'Deletion Policy to handle Secrets in the provider. Possible Values: "Delete/None". Defaults to "None".'
  5306. enum:
  5307. - Delete
  5308. - None
  5309. type: string
  5310. refreshInterval:
  5311. description: The Interval to which External Secrets will try to push a secret definition
  5312. type: string
  5313. secretStoreRefs:
  5314. items:
  5315. properties:
  5316. kind:
  5317. default: SecretStore
  5318. description: |-
  5319. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  5320. Defaults to `SecretStore`
  5321. type: string
  5322. labelSelector:
  5323. description: Optionally, sync to secret stores with label selector
  5324. properties:
  5325. matchExpressions:
  5326. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  5327. items:
  5328. description: |-
  5329. A label selector requirement is a selector that contains values, a key, and an operator that
  5330. relates the key and values.
  5331. properties:
  5332. key:
  5333. description: key is the label key that the selector applies to.
  5334. type: string
  5335. operator:
  5336. description: |-
  5337. operator represents a key's relationship to a set of values.
  5338. Valid operators are In, NotIn, Exists and DoesNotExist.
  5339. type: string
  5340. values:
  5341. description: |-
  5342. values is an array of string values. If the operator is In or NotIn,
  5343. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  5344. the values array must be empty. This array is replaced during a strategic
  5345. merge patch.
  5346. items:
  5347. type: string
  5348. type: array
  5349. required:
  5350. - key
  5351. - operator
  5352. type: object
  5353. type: array
  5354. matchLabels:
  5355. additionalProperties:
  5356. type: string
  5357. description: |-
  5358. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  5359. map is equivalent to an element of matchExpressions, whose key field is "key", the
  5360. operator is "In", and the values array contains only "value". The requirements are ANDed.
  5361. type: object
  5362. type: object
  5363. x-kubernetes-map-type: atomic
  5364. name:
  5365. description: Optionally, sync to the SecretStore of the given name
  5366. type: string
  5367. type: object
  5368. type: array
  5369. selector:
  5370. description: The Secret Selector (k8s source) for the Push Secret
  5371. properties:
  5372. secret:
  5373. description: Select a Secret to Push.
  5374. properties:
  5375. name:
  5376. description: Name of the Secret. The Secret must exist in the same namespace as the PushSecret manifest.
  5377. type: string
  5378. required:
  5379. - name
  5380. type: object
  5381. required:
  5382. - secret
  5383. type: object
  5384. template:
  5385. description: Template defines a blueprint for the created Secret resource.
  5386. properties:
  5387. data:
  5388. additionalProperties:
  5389. type: string
  5390. type: object
  5391. engineVersion:
  5392. default: v2
  5393. description: |-
  5394. EngineVersion specifies the template engine version
  5395. that should be used to compile/execute the
  5396. template specified in .data and .templateFrom[].
  5397. enum:
  5398. - v1
  5399. - v2
  5400. type: string
  5401. mergePolicy:
  5402. default: Replace
  5403. enum:
  5404. - Replace
  5405. - Merge
  5406. type: string
  5407. metadata:
  5408. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  5409. properties:
  5410. annotations:
  5411. additionalProperties:
  5412. type: string
  5413. type: object
  5414. labels:
  5415. additionalProperties:
  5416. type: string
  5417. type: object
  5418. type: object
  5419. templateFrom:
  5420. items:
  5421. properties:
  5422. configMap:
  5423. properties:
  5424. items:
  5425. items:
  5426. properties:
  5427. key:
  5428. type: string
  5429. templateAs:
  5430. default: Values
  5431. enum:
  5432. - Values
  5433. - KeysAndValues
  5434. type: string
  5435. required:
  5436. - key
  5437. type: object
  5438. type: array
  5439. name:
  5440. type: string
  5441. required:
  5442. - items
  5443. - name
  5444. type: object
  5445. literal:
  5446. type: string
  5447. secret:
  5448. properties:
  5449. items:
  5450. items:
  5451. properties:
  5452. key:
  5453. type: string
  5454. templateAs:
  5455. default: Values
  5456. enum:
  5457. - Values
  5458. - KeysAndValues
  5459. type: string
  5460. required:
  5461. - key
  5462. type: object
  5463. type: array
  5464. name:
  5465. type: string
  5466. required:
  5467. - items
  5468. - name
  5469. type: object
  5470. target:
  5471. default: Data
  5472. enum:
  5473. - Data
  5474. - Annotations
  5475. - Labels
  5476. type: string
  5477. type: object
  5478. type: array
  5479. type:
  5480. type: string
  5481. type: object
  5482. required:
  5483. - secretStoreRefs
  5484. - selector
  5485. type: object
  5486. status:
  5487. description: PushSecretStatus indicates the history of the status of PushSecret.
  5488. properties:
  5489. conditions:
  5490. items:
  5491. description: PushSecretStatusCondition indicates the status of the PushSecret.
  5492. properties:
  5493. lastTransitionTime:
  5494. format: date-time
  5495. type: string
  5496. message:
  5497. type: string
  5498. reason:
  5499. type: string
  5500. status:
  5501. type: string
  5502. type:
  5503. description: PushSecretConditionType indicates the condition of the PushSecret.
  5504. type: string
  5505. required:
  5506. - status
  5507. - type
  5508. type: object
  5509. type: array
  5510. refreshTime:
  5511. description: |-
  5512. refreshTime is the time and date the external secret was fetched and
  5513. the target secret updated
  5514. format: date-time
  5515. nullable: true
  5516. type: string
  5517. syncedPushSecrets:
  5518. additionalProperties:
  5519. additionalProperties:
  5520. properties:
  5521. match:
  5522. description: Match a given Secret Key to be pushed to the provider.
  5523. properties:
  5524. remoteRef:
  5525. description: Remote Refs to push to providers.
  5526. properties:
  5527. property:
  5528. description: Name of the property in the resulting secret
  5529. type: string
  5530. remoteKey:
  5531. description: Name of the resulting provider secret.
  5532. type: string
  5533. required:
  5534. - remoteKey
  5535. type: object
  5536. secretKey:
  5537. description: Secret Key to be pushed
  5538. type: string
  5539. required:
  5540. - remoteRef
  5541. type: object
  5542. metadata:
  5543. description: |-
  5544. Metadata is metadata attached to the secret.
  5545. The structure of metadata is provider specific, please look it up in the provider documentation.
  5546. x-kubernetes-preserve-unknown-fields: true
  5547. required:
  5548. - match
  5549. type: object
  5550. type: object
  5551. description: Synced Push Secrets for later deletion. Matches Secret Stores to PushSecretData that was stored to that secretStore.
  5552. type: object
  5553. syncedResourceVersion:
  5554. description: SyncedResourceVersion keeps track of the last synced version.
  5555. type: string
  5556. type: object
  5557. type: object
  5558. served: true
  5559. storage: true
  5560. subresources:
  5561. status: {}
  5562. conversion:
  5563. strategy: Webhook
  5564. webhook:
  5565. conversionReviewVersions:
  5566. - v1
  5567. clientConfig:
  5568. service:
  5569. name: kubernetes
  5570. namespace: default
  5571. path: /convert
  5572. ---
  5573. apiVersion: apiextensions.k8s.io/v1
  5574. kind: CustomResourceDefinition
  5575. metadata:
  5576. annotations:
  5577. controller-gen.kubebuilder.io/version: v0.14.0
  5578. name: secretstores.external-secrets.io
  5579. spec:
  5580. group: external-secrets.io
  5581. names:
  5582. categories:
  5583. - externalsecrets
  5584. kind: SecretStore
  5585. listKind: SecretStoreList
  5586. plural: secretstores
  5587. shortNames:
  5588. - ss
  5589. singular: secretstore
  5590. scope: Namespaced
  5591. versions:
  5592. - additionalPrinterColumns:
  5593. - jsonPath: .metadata.creationTimestamp
  5594. name: AGE
  5595. type: date
  5596. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  5597. name: Status
  5598. type: string
  5599. deprecated: true
  5600. name: v1alpha1
  5601. schema:
  5602. openAPIV3Schema:
  5603. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  5604. properties:
  5605. apiVersion:
  5606. description: |-
  5607. APIVersion defines the versioned schema of this representation of an object.
  5608. Servers should convert recognized schemas to the latest internal value, and
  5609. may reject unrecognized values.
  5610. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  5611. type: string
  5612. kind:
  5613. description: |-
  5614. Kind is a string value representing the REST resource this object represents.
  5615. Servers may infer this from the endpoint the client submits requests to.
  5616. Cannot be updated.
  5617. In CamelCase.
  5618. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  5619. type: string
  5620. metadata:
  5621. type: object
  5622. spec:
  5623. description: SecretStoreSpec defines the desired state of SecretStore.
  5624. properties:
  5625. controller:
  5626. description: |-
  5627. Used to select the correct ESO controller (think: ingress.ingressClassName)
  5628. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  5629. type: string
  5630. provider:
  5631. description: Used to configure the provider. Only one provider may be set
  5632. maxProperties: 1
  5633. minProperties: 1
  5634. properties:
  5635. akeyless:
  5636. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  5637. properties:
  5638. akeylessGWApiURL:
  5639. description: Akeyless GW API Url from which the secrets to be fetched from.
  5640. type: string
  5641. authSecretRef:
  5642. description: Auth configures how the operator authenticates with Akeyless.
  5643. properties:
  5644. kubernetesAuth:
  5645. description: |-
  5646. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  5647. token stored in the named Secret resource.
  5648. properties:
  5649. accessID:
  5650. description: the Akeyless Kubernetes auth-method access-id
  5651. type: string
  5652. k8sConfName:
  5653. description: Kubernetes-auth configuration name in Akeyless-Gateway
  5654. type: string
  5655. secretRef:
  5656. description: |-
  5657. Optional secret field containing a Kubernetes ServiceAccount JWT used
  5658. for authenticating with Akeyless. If a name is specified without a key,
  5659. `token` is the default. If one is not specified, the one bound to
  5660. the controller will be used.
  5661. properties:
  5662. key:
  5663. description: |-
  5664. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5665. defaulted, in others it may be required.
  5666. type: string
  5667. name:
  5668. description: The name of the Secret resource being referred to.
  5669. type: string
  5670. namespace:
  5671. description: |-
  5672. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5673. to the namespace of the referent.
  5674. type: string
  5675. type: object
  5676. serviceAccountRef:
  5677. description: |-
  5678. Optional service account field containing the name of a kubernetes ServiceAccount.
  5679. If the service account is specified, the service account secret token JWT will be used
  5680. for authenticating with Akeyless. If the service account selector is not supplied,
  5681. the secretRef will be used instead.
  5682. properties:
  5683. audiences:
  5684. description: |-
  5685. Audience specifies the `aud` claim for the service account token
  5686. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5687. then this audiences will be appended to the list
  5688. items:
  5689. type: string
  5690. type: array
  5691. name:
  5692. description: The name of the ServiceAccount resource being referred to.
  5693. type: string
  5694. namespace:
  5695. description: |-
  5696. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5697. to the namespace of the referent.
  5698. type: string
  5699. required:
  5700. - name
  5701. type: object
  5702. required:
  5703. - accessID
  5704. - k8sConfName
  5705. type: object
  5706. secretRef:
  5707. description: |-
  5708. Reference to a Secret that contains the details
  5709. to authenticate with Akeyless.
  5710. properties:
  5711. accessID:
  5712. description: The SecretAccessID is used for authentication
  5713. properties:
  5714. key:
  5715. description: |-
  5716. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5717. defaulted, in others it may be required.
  5718. type: string
  5719. name:
  5720. description: The name of the Secret resource being referred to.
  5721. type: string
  5722. namespace:
  5723. description: |-
  5724. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5725. to the namespace of the referent.
  5726. type: string
  5727. type: object
  5728. accessType:
  5729. description: |-
  5730. A reference to a specific 'key' within a Secret resource,
  5731. In some instances, `key` is a required field.
  5732. properties:
  5733. key:
  5734. description: |-
  5735. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5736. defaulted, in others it may be required.
  5737. type: string
  5738. name:
  5739. description: The name of the Secret resource being referred to.
  5740. type: string
  5741. namespace:
  5742. description: |-
  5743. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5744. to the namespace of the referent.
  5745. type: string
  5746. type: object
  5747. accessTypeParam:
  5748. description: |-
  5749. A reference to a specific 'key' within a Secret resource,
  5750. In some instances, `key` is a required field.
  5751. properties:
  5752. key:
  5753. description: |-
  5754. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5755. defaulted, in others it may be required.
  5756. type: string
  5757. name:
  5758. description: The name of the Secret resource being referred to.
  5759. type: string
  5760. namespace:
  5761. description: |-
  5762. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5763. to the namespace of the referent.
  5764. type: string
  5765. type: object
  5766. type: object
  5767. type: object
  5768. caBundle:
  5769. description: |-
  5770. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  5771. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  5772. are used to validate the TLS connection.
  5773. format: byte
  5774. type: string
  5775. caProvider:
  5776. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  5777. properties:
  5778. key:
  5779. description: The key the value inside of the provider type to use, only used with "Secret" type
  5780. type: string
  5781. name:
  5782. description: The name of the object located at the provider type.
  5783. type: string
  5784. namespace:
  5785. description: The namespace the Provider type is in.
  5786. type: string
  5787. type:
  5788. description: The type of provider to use such as "Secret", or "ConfigMap".
  5789. enum:
  5790. - Secret
  5791. - ConfigMap
  5792. type: string
  5793. required:
  5794. - name
  5795. - type
  5796. type: object
  5797. required:
  5798. - akeylessGWApiURL
  5799. - authSecretRef
  5800. type: object
  5801. alibaba:
  5802. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  5803. properties:
  5804. auth:
  5805. description: AlibabaAuth contains a secretRef for credentials.
  5806. properties:
  5807. rrsa:
  5808. description: Authenticate against Alibaba using RRSA.
  5809. properties:
  5810. oidcProviderArn:
  5811. type: string
  5812. oidcTokenFilePath:
  5813. type: string
  5814. roleArn:
  5815. type: string
  5816. sessionName:
  5817. type: string
  5818. required:
  5819. - oidcProviderArn
  5820. - oidcTokenFilePath
  5821. - roleArn
  5822. - sessionName
  5823. type: object
  5824. secretRef:
  5825. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  5826. properties:
  5827. accessKeyIDSecretRef:
  5828. description: The AccessKeyID is used for authentication
  5829. properties:
  5830. key:
  5831. description: |-
  5832. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5833. defaulted, in others it may be required.
  5834. type: string
  5835. name:
  5836. description: The name of the Secret resource being referred to.
  5837. type: string
  5838. namespace:
  5839. description: |-
  5840. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5841. to the namespace of the referent.
  5842. type: string
  5843. type: object
  5844. accessKeySecretSecretRef:
  5845. description: The AccessKeySecret is used for authentication
  5846. properties:
  5847. key:
  5848. description: |-
  5849. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5850. defaulted, in others it may be required.
  5851. type: string
  5852. name:
  5853. description: The name of the Secret resource being referred to.
  5854. type: string
  5855. namespace:
  5856. description: |-
  5857. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5858. to the namespace of the referent.
  5859. type: string
  5860. type: object
  5861. required:
  5862. - accessKeyIDSecretRef
  5863. - accessKeySecretSecretRef
  5864. type: object
  5865. type: object
  5866. regionID:
  5867. description: Alibaba Region to be used for the provider
  5868. type: string
  5869. required:
  5870. - auth
  5871. - regionID
  5872. type: object
  5873. aws:
  5874. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  5875. properties:
  5876. auth:
  5877. description: |-
  5878. Auth defines the information necessary to authenticate against AWS
  5879. if not set aws sdk will infer credentials from your environment
  5880. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  5881. properties:
  5882. jwt:
  5883. description: Authenticate against AWS using service account tokens.
  5884. properties:
  5885. serviceAccountRef:
  5886. description: A reference to a ServiceAccount resource.
  5887. properties:
  5888. audiences:
  5889. description: |-
  5890. Audience specifies the `aud` claim for the service account token
  5891. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5892. then this audiences will be appended to the list
  5893. items:
  5894. type: string
  5895. type: array
  5896. name:
  5897. description: The name of the ServiceAccount resource being referred to.
  5898. type: string
  5899. namespace:
  5900. description: |-
  5901. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5902. to the namespace of the referent.
  5903. type: string
  5904. required:
  5905. - name
  5906. type: object
  5907. type: object
  5908. secretRef:
  5909. description: |-
  5910. AWSAuthSecretRef holds secret references for AWS credentials
  5911. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  5912. properties:
  5913. accessKeyIDSecretRef:
  5914. description: The AccessKeyID is used for authentication
  5915. properties:
  5916. key:
  5917. description: |-
  5918. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5919. defaulted, in others it may be required.
  5920. type: string
  5921. name:
  5922. description: The name of the Secret resource being referred to.
  5923. type: string
  5924. namespace:
  5925. description: |-
  5926. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5927. to the namespace of the referent.
  5928. type: string
  5929. type: object
  5930. secretAccessKeySecretRef:
  5931. description: The SecretAccessKey is used for authentication
  5932. properties:
  5933. key:
  5934. description: |-
  5935. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5936. defaulted, in others it may be required.
  5937. type: string
  5938. name:
  5939. description: The name of the Secret resource being referred to.
  5940. type: string
  5941. namespace:
  5942. description: |-
  5943. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5944. to the namespace of the referent.
  5945. type: string
  5946. type: object
  5947. type: object
  5948. type: object
  5949. region:
  5950. description: AWS Region to be used for the provider
  5951. type: string
  5952. role:
  5953. description: Role is a Role ARN which the SecretManager provider will assume
  5954. type: string
  5955. service:
  5956. description: Service defines which service should be used to fetch the secrets
  5957. enum:
  5958. - SecretsManager
  5959. - ParameterStore
  5960. type: string
  5961. required:
  5962. - region
  5963. - service
  5964. type: object
  5965. azurekv:
  5966. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  5967. properties:
  5968. authSecretRef:
  5969. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  5970. properties:
  5971. clientId:
  5972. description: The Azure clientId of the service principle used for authentication.
  5973. properties:
  5974. key:
  5975. description: |-
  5976. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5977. defaulted, in others it may be required.
  5978. type: string
  5979. name:
  5980. description: The name of the Secret resource being referred to.
  5981. type: string
  5982. namespace:
  5983. description: |-
  5984. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5985. to the namespace of the referent.
  5986. type: string
  5987. type: object
  5988. clientSecret:
  5989. description: The Azure ClientSecret of the service principle used for authentication.
  5990. properties:
  5991. key:
  5992. description: |-
  5993. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5994. defaulted, in others it may be required.
  5995. type: string
  5996. name:
  5997. description: The name of the Secret resource being referred to.
  5998. type: string
  5999. namespace:
  6000. description: |-
  6001. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6002. to the namespace of the referent.
  6003. type: string
  6004. type: object
  6005. type: object
  6006. authType:
  6007. default: ServicePrincipal
  6008. description: |-
  6009. Auth type defines how to authenticate to the keyvault service.
  6010. Valid values are:
  6011. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  6012. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  6013. enum:
  6014. - ServicePrincipal
  6015. - ManagedIdentity
  6016. - WorkloadIdentity
  6017. type: string
  6018. identityId:
  6019. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  6020. type: string
  6021. serviceAccountRef:
  6022. description: |-
  6023. ServiceAccountRef specified the service account
  6024. that should be used when authenticating with WorkloadIdentity.
  6025. properties:
  6026. audiences:
  6027. description: |-
  6028. Audience specifies the `aud` claim for the service account token
  6029. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6030. then this audiences will be appended to the list
  6031. items:
  6032. type: string
  6033. type: array
  6034. name:
  6035. description: The name of the ServiceAccount resource being referred to.
  6036. type: string
  6037. namespace:
  6038. description: |-
  6039. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6040. to the namespace of the referent.
  6041. type: string
  6042. required:
  6043. - name
  6044. type: object
  6045. tenantId:
  6046. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  6047. type: string
  6048. vaultUrl:
  6049. description: Vault Url from which the secrets to be fetched from.
  6050. type: string
  6051. required:
  6052. - vaultUrl
  6053. type: object
  6054. fake:
  6055. description: Fake configures a store with static key/value pairs
  6056. properties:
  6057. data:
  6058. items:
  6059. properties:
  6060. key:
  6061. type: string
  6062. value:
  6063. type: string
  6064. valueMap:
  6065. additionalProperties:
  6066. type: string
  6067. type: object
  6068. version:
  6069. type: string
  6070. required:
  6071. - key
  6072. type: object
  6073. type: array
  6074. required:
  6075. - data
  6076. type: object
  6077. gcpsm:
  6078. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  6079. properties:
  6080. auth:
  6081. description: Auth defines the information necessary to authenticate against GCP
  6082. properties:
  6083. secretRef:
  6084. properties:
  6085. secretAccessKeySecretRef:
  6086. description: The SecretAccessKey is used for authentication
  6087. properties:
  6088. key:
  6089. description: |-
  6090. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6091. defaulted, in others it may be required.
  6092. type: string
  6093. name:
  6094. description: The name of the Secret resource being referred to.
  6095. type: string
  6096. namespace:
  6097. description: |-
  6098. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6099. to the namespace of the referent.
  6100. type: string
  6101. type: object
  6102. type: object
  6103. workloadIdentity:
  6104. properties:
  6105. clusterLocation:
  6106. type: string
  6107. clusterName:
  6108. type: string
  6109. clusterProjectID:
  6110. type: string
  6111. serviceAccountRef:
  6112. description: A reference to a ServiceAccount resource.
  6113. properties:
  6114. audiences:
  6115. description: |-
  6116. Audience specifies the `aud` claim for the service account token
  6117. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6118. then this audiences will be appended to the list
  6119. items:
  6120. type: string
  6121. type: array
  6122. name:
  6123. description: The name of the ServiceAccount resource being referred to.
  6124. type: string
  6125. namespace:
  6126. description: |-
  6127. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6128. to the namespace of the referent.
  6129. type: string
  6130. required:
  6131. - name
  6132. type: object
  6133. required:
  6134. - clusterLocation
  6135. - clusterName
  6136. - serviceAccountRef
  6137. type: object
  6138. type: object
  6139. projectID:
  6140. description: ProjectID project where secret is located
  6141. type: string
  6142. type: object
  6143. gitlab:
  6144. description: GitLab configures this store to sync secrets using GitLab Variables provider
  6145. properties:
  6146. auth:
  6147. description: Auth configures how secret-manager authenticates with a GitLab instance.
  6148. properties:
  6149. SecretRef:
  6150. properties:
  6151. accessToken:
  6152. description: AccessToken is used for authentication.
  6153. properties:
  6154. key:
  6155. description: |-
  6156. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6157. defaulted, in others it may be required.
  6158. type: string
  6159. name:
  6160. description: The name of the Secret resource being referred to.
  6161. type: string
  6162. namespace:
  6163. description: |-
  6164. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6165. to the namespace of the referent.
  6166. type: string
  6167. type: object
  6168. type: object
  6169. required:
  6170. - SecretRef
  6171. type: object
  6172. projectID:
  6173. description: ProjectID specifies a project where secrets are located.
  6174. type: string
  6175. url:
  6176. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  6177. type: string
  6178. required:
  6179. - auth
  6180. type: object
  6181. ibm:
  6182. description: IBM configures this store to sync secrets using IBM Cloud provider
  6183. properties:
  6184. auth:
  6185. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  6186. properties:
  6187. secretRef:
  6188. properties:
  6189. secretApiKeySecretRef:
  6190. description: The SecretAccessKey is used for authentication
  6191. properties:
  6192. key:
  6193. description: |-
  6194. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6195. defaulted, in others it may be required.
  6196. type: string
  6197. name:
  6198. description: The name of the Secret resource being referred to.
  6199. type: string
  6200. namespace:
  6201. description: |-
  6202. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6203. to the namespace of the referent.
  6204. type: string
  6205. type: object
  6206. type: object
  6207. required:
  6208. - secretRef
  6209. type: object
  6210. serviceUrl:
  6211. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  6212. type: string
  6213. required:
  6214. - auth
  6215. type: object
  6216. kubernetes:
  6217. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  6218. properties:
  6219. auth:
  6220. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  6221. maxProperties: 1
  6222. minProperties: 1
  6223. properties:
  6224. cert:
  6225. description: has both clientCert and clientKey as secretKeySelector
  6226. properties:
  6227. clientCert:
  6228. description: |-
  6229. A reference to a specific 'key' within a Secret resource,
  6230. In some instances, `key` is a required field.
  6231. properties:
  6232. key:
  6233. description: |-
  6234. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6235. defaulted, in others it may be required.
  6236. type: string
  6237. name:
  6238. description: The name of the Secret resource being referred to.
  6239. type: string
  6240. namespace:
  6241. description: |-
  6242. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6243. to the namespace of the referent.
  6244. type: string
  6245. type: object
  6246. clientKey:
  6247. description: |-
  6248. A reference to a specific 'key' within a Secret resource,
  6249. In some instances, `key` is a required field.
  6250. properties:
  6251. key:
  6252. description: |-
  6253. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6254. defaulted, in others it may be required.
  6255. type: string
  6256. name:
  6257. description: The name of the Secret resource being referred to.
  6258. type: string
  6259. namespace:
  6260. description: |-
  6261. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6262. to the namespace of the referent.
  6263. type: string
  6264. type: object
  6265. type: object
  6266. serviceAccount:
  6267. description: points to a service account that should be used for authentication
  6268. properties:
  6269. serviceAccount:
  6270. description: A reference to a ServiceAccount resource.
  6271. properties:
  6272. audiences:
  6273. description: |-
  6274. Audience specifies the `aud` claim for the service account token
  6275. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6276. then this audiences will be appended to the list
  6277. items:
  6278. type: string
  6279. type: array
  6280. name:
  6281. description: The name of the ServiceAccount resource being referred to.
  6282. type: string
  6283. namespace:
  6284. description: |-
  6285. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6286. to the namespace of the referent.
  6287. type: string
  6288. required:
  6289. - name
  6290. type: object
  6291. type: object
  6292. token:
  6293. description: use static token to authenticate with
  6294. properties:
  6295. bearerToken:
  6296. description: |-
  6297. A reference to a specific 'key' within a Secret resource,
  6298. In some instances, `key` is a required field.
  6299. properties:
  6300. key:
  6301. description: |-
  6302. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6303. defaulted, in others it may be required.
  6304. type: string
  6305. name:
  6306. description: The name of the Secret resource being referred to.
  6307. type: string
  6308. namespace:
  6309. description: |-
  6310. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6311. to the namespace of the referent.
  6312. type: string
  6313. type: object
  6314. type: object
  6315. type: object
  6316. remoteNamespace:
  6317. default: default
  6318. description: Remote namespace to fetch the secrets from
  6319. type: string
  6320. server:
  6321. description: configures the Kubernetes server Address.
  6322. properties:
  6323. caBundle:
  6324. description: CABundle is a base64-encoded CA certificate
  6325. format: byte
  6326. type: string
  6327. caProvider:
  6328. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  6329. properties:
  6330. key:
  6331. description: The key the value inside of the provider type to use, only used with "Secret" type
  6332. type: string
  6333. name:
  6334. description: The name of the object located at the provider type.
  6335. type: string
  6336. namespace:
  6337. description: The namespace the Provider type is in.
  6338. type: string
  6339. type:
  6340. description: The type of provider to use such as "Secret", or "ConfigMap".
  6341. enum:
  6342. - Secret
  6343. - ConfigMap
  6344. type: string
  6345. required:
  6346. - name
  6347. - type
  6348. type: object
  6349. url:
  6350. default: kubernetes.default
  6351. description: configures the Kubernetes server Address.
  6352. type: string
  6353. type: object
  6354. required:
  6355. - auth
  6356. type: object
  6357. oracle:
  6358. description: Oracle configures this store to sync secrets using Oracle Vault provider
  6359. properties:
  6360. auth:
  6361. description: |-
  6362. Auth configures how secret-manager authenticates with the Oracle Vault.
  6363. If empty, instance principal is used. Optionally, the authenticating principal type
  6364. and/or user data may be supplied for the use of workload identity and user principal.
  6365. properties:
  6366. secretRef:
  6367. description: SecretRef to pass through sensitive information.
  6368. properties:
  6369. fingerprint:
  6370. description: Fingerprint is the fingerprint of the API private key.
  6371. properties:
  6372. key:
  6373. description: |-
  6374. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6375. defaulted, in others it may be required.
  6376. type: string
  6377. name:
  6378. description: The name of the Secret resource being referred to.
  6379. type: string
  6380. namespace:
  6381. description: |-
  6382. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6383. to the namespace of the referent.
  6384. type: string
  6385. type: object
  6386. privatekey:
  6387. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6388. properties:
  6389. key:
  6390. description: |-
  6391. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6392. defaulted, in others it may be required.
  6393. type: string
  6394. name:
  6395. description: The name of the Secret resource being referred to.
  6396. type: string
  6397. namespace:
  6398. description: |-
  6399. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6400. to the namespace of the referent.
  6401. type: string
  6402. type: object
  6403. required:
  6404. - fingerprint
  6405. - privatekey
  6406. type: object
  6407. tenancy:
  6408. description: Tenancy is the tenancy OCID where user is located.
  6409. type: string
  6410. user:
  6411. description: User is an access OCID specific to the account.
  6412. type: string
  6413. required:
  6414. - secretRef
  6415. - tenancy
  6416. - user
  6417. type: object
  6418. compartment:
  6419. description: |-
  6420. Compartment is the vault compartment OCID.
  6421. Required for PushSecret
  6422. type: string
  6423. encryptionKey:
  6424. description: |-
  6425. EncryptionKey is the OCID of the encryption key within the vault.
  6426. Required for PushSecret
  6427. type: string
  6428. principalType:
  6429. description: |-
  6430. The type of principal to use for authentication. If left blank, the Auth struct will
  6431. determine the principal type. This optional field must be specified if using
  6432. workload identity.
  6433. enum:
  6434. - ""
  6435. - UserPrincipal
  6436. - InstancePrincipal
  6437. - Workload
  6438. type: string
  6439. region:
  6440. description: Region is the region where vault is located.
  6441. type: string
  6442. serviceAccountRef:
  6443. description: |-
  6444. ServiceAccountRef specified the service account
  6445. that should be used when authenticating with WorkloadIdentity.
  6446. properties:
  6447. audiences:
  6448. description: |-
  6449. Audience specifies the `aud` claim for the service account token
  6450. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6451. then this audiences will be appended to the list
  6452. items:
  6453. type: string
  6454. type: array
  6455. name:
  6456. description: The name of the ServiceAccount resource being referred to.
  6457. type: string
  6458. namespace:
  6459. description: |-
  6460. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6461. to the namespace of the referent.
  6462. type: string
  6463. required:
  6464. - name
  6465. type: object
  6466. vault:
  6467. description: Vault is the vault's OCID of the specific vault where secret is located.
  6468. type: string
  6469. required:
  6470. - region
  6471. - vault
  6472. type: object
  6473. vault:
  6474. description: Vault configures this store to sync secrets using Hashi provider
  6475. properties:
  6476. auth:
  6477. description: Auth configures how secret-manager authenticates with the Vault server.
  6478. properties:
  6479. appRole:
  6480. description: |-
  6481. AppRole authenticates with Vault using the App Role auth mechanism,
  6482. with the role and secret stored in a Kubernetes Secret resource.
  6483. properties:
  6484. path:
  6485. default: approle
  6486. description: |-
  6487. Path where the App Role authentication backend is mounted
  6488. in Vault, e.g: "approle"
  6489. type: string
  6490. roleId:
  6491. description: |-
  6492. RoleID configured in the App Role authentication backend when setting
  6493. up the authentication backend in Vault.
  6494. type: string
  6495. secretRef:
  6496. description: |-
  6497. Reference to a key in a Secret that contains the App Role secret used
  6498. to authenticate with Vault.
  6499. The `key` field must be specified and denotes which entry within the Secret
  6500. resource is used as the app role secret.
  6501. properties:
  6502. key:
  6503. description: |-
  6504. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6505. defaulted, in others it may be required.
  6506. type: string
  6507. name:
  6508. description: The name of the Secret resource being referred to.
  6509. type: string
  6510. namespace:
  6511. description: |-
  6512. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6513. to the namespace of the referent.
  6514. type: string
  6515. type: object
  6516. required:
  6517. - path
  6518. - roleId
  6519. - secretRef
  6520. type: object
  6521. cert:
  6522. description: |-
  6523. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  6524. Cert authentication method
  6525. properties:
  6526. clientCert:
  6527. description: |-
  6528. ClientCert is a certificate to authenticate using the Cert Vault
  6529. authentication method
  6530. properties:
  6531. key:
  6532. description: |-
  6533. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6534. defaulted, in others it may be required.
  6535. type: string
  6536. name:
  6537. description: The name of the Secret resource being referred to.
  6538. type: string
  6539. namespace:
  6540. description: |-
  6541. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6542. to the namespace of the referent.
  6543. type: string
  6544. type: object
  6545. secretRef:
  6546. description: |-
  6547. SecretRef to a key in a Secret resource containing client private key to
  6548. authenticate with Vault using the Cert authentication method
  6549. properties:
  6550. key:
  6551. description: |-
  6552. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6553. defaulted, in others it may be required.
  6554. type: string
  6555. name:
  6556. description: The name of the Secret resource being referred to.
  6557. type: string
  6558. namespace:
  6559. description: |-
  6560. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6561. to the namespace of the referent.
  6562. type: string
  6563. type: object
  6564. type: object
  6565. jwt:
  6566. description: |-
  6567. Jwt authenticates with Vault by passing role and JWT token using the
  6568. JWT/OIDC authentication method
  6569. properties:
  6570. kubernetesServiceAccountToken:
  6571. description: |-
  6572. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  6573. a token for with the `TokenRequest` API.
  6574. properties:
  6575. audiences:
  6576. description: |-
  6577. Optional audiences field that will be used to request a temporary Kubernetes service
  6578. account token for the service account referenced by `serviceAccountRef`.
  6579. Defaults to a single audience `vault` it not specified.
  6580. items:
  6581. type: string
  6582. type: array
  6583. expirationSeconds:
  6584. description: |-
  6585. Optional expiration time in seconds that will be used to request a temporary
  6586. Kubernetes service account token for the service account referenced by
  6587. `serviceAccountRef`.
  6588. Defaults to 10 minutes.
  6589. format: int64
  6590. type: integer
  6591. serviceAccountRef:
  6592. description: Service account field containing the name of a kubernetes ServiceAccount.
  6593. properties:
  6594. audiences:
  6595. description: |-
  6596. Audience specifies the `aud` claim for the service account token
  6597. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6598. then this audiences will be appended to the list
  6599. items:
  6600. type: string
  6601. type: array
  6602. name:
  6603. description: The name of the ServiceAccount resource being referred to.
  6604. type: string
  6605. namespace:
  6606. description: |-
  6607. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6608. to the namespace of the referent.
  6609. type: string
  6610. required:
  6611. - name
  6612. type: object
  6613. required:
  6614. - serviceAccountRef
  6615. type: object
  6616. path:
  6617. default: jwt
  6618. description: |-
  6619. Path where the JWT authentication backend is mounted
  6620. in Vault, e.g: "jwt"
  6621. type: string
  6622. role:
  6623. description: |-
  6624. Role is a JWT role to authenticate using the JWT/OIDC Vault
  6625. authentication method
  6626. type: string
  6627. secretRef:
  6628. description: |-
  6629. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  6630. authenticate with Vault using the JWT/OIDC authentication method.
  6631. properties:
  6632. key:
  6633. description: |-
  6634. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6635. defaulted, in others it may be required.
  6636. type: string
  6637. name:
  6638. description: The name of the Secret resource being referred to.
  6639. type: string
  6640. namespace:
  6641. description: |-
  6642. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6643. to the namespace of the referent.
  6644. type: string
  6645. type: object
  6646. required:
  6647. - path
  6648. type: object
  6649. kubernetes:
  6650. description: |-
  6651. Kubernetes authenticates with Vault by passing the ServiceAccount
  6652. token stored in the named Secret resource to the Vault server.
  6653. properties:
  6654. mountPath:
  6655. default: kubernetes
  6656. description: |-
  6657. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  6658. "kubernetes"
  6659. type: string
  6660. role:
  6661. description: |-
  6662. A required field containing the Vault Role to assume. A Role binds a
  6663. Kubernetes ServiceAccount with a set of Vault policies.
  6664. type: string
  6665. secretRef:
  6666. description: |-
  6667. Optional secret field containing a Kubernetes ServiceAccount JWT used
  6668. for authenticating with Vault. If a name is specified without a key,
  6669. `token` is the default. If one is not specified, the one bound to
  6670. the controller will be used.
  6671. properties:
  6672. key:
  6673. description: |-
  6674. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6675. defaulted, in others it may be required.
  6676. type: string
  6677. name:
  6678. description: The name of the Secret resource being referred to.
  6679. type: string
  6680. namespace:
  6681. description: |-
  6682. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6683. to the namespace of the referent.
  6684. type: string
  6685. type: object
  6686. serviceAccountRef:
  6687. description: |-
  6688. Optional service account field containing the name of a kubernetes ServiceAccount.
  6689. If the service account is specified, the service account secret token JWT will be used
  6690. for authenticating with Vault. If the service account selector is not supplied,
  6691. the secretRef will be used instead.
  6692. properties:
  6693. audiences:
  6694. description: |-
  6695. Audience specifies the `aud` claim for the service account token
  6696. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6697. then this audiences will be appended to the list
  6698. items:
  6699. type: string
  6700. type: array
  6701. name:
  6702. description: The name of the ServiceAccount resource being referred to.
  6703. type: string
  6704. namespace:
  6705. description: |-
  6706. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6707. to the namespace of the referent.
  6708. type: string
  6709. required:
  6710. - name
  6711. type: object
  6712. required:
  6713. - mountPath
  6714. - role
  6715. type: object
  6716. ldap:
  6717. description: |-
  6718. Ldap authenticates with Vault by passing username/password pair using
  6719. the LDAP authentication method
  6720. properties:
  6721. path:
  6722. default: ldap
  6723. description: |-
  6724. Path where the LDAP authentication backend is mounted
  6725. in Vault, e.g: "ldap"
  6726. type: string
  6727. secretRef:
  6728. description: |-
  6729. SecretRef to a key in a Secret resource containing password for the LDAP
  6730. user used to authenticate with Vault using the LDAP authentication
  6731. method
  6732. properties:
  6733. key:
  6734. description: |-
  6735. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6736. defaulted, in others it may be required.
  6737. type: string
  6738. name:
  6739. description: The name of the Secret resource being referred to.
  6740. type: string
  6741. namespace:
  6742. description: |-
  6743. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6744. to the namespace of the referent.
  6745. type: string
  6746. type: object
  6747. username:
  6748. description: |-
  6749. Username is a LDAP user name used to authenticate using the LDAP Vault
  6750. authentication method
  6751. type: string
  6752. required:
  6753. - path
  6754. - username
  6755. type: object
  6756. tokenSecretRef:
  6757. description: TokenSecretRef authenticates with Vault by presenting a token.
  6758. properties:
  6759. key:
  6760. description: |-
  6761. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6762. defaulted, in others it may be required.
  6763. type: string
  6764. name:
  6765. description: The name of the Secret resource being referred to.
  6766. type: string
  6767. namespace:
  6768. description: |-
  6769. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6770. to the namespace of the referent.
  6771. type: string
  6772. type: object
  6773. type: object
  6774. caBundle:
  6775. description: |-
  6776. PEM encoded CA bundle used to validate Vault server certificate. Only used
  6777. if the Server URL is using HTTPS protocol. This parameter is ignored for
  6778. plain HTTP protocol connection. If not set the system root certificates
  6779. are used to validate the TLS connection.
  6780. format: byte
  6781. type: string
  6782. caProvider:
  6783. description: The provider for the CA bundle to use to validate Vault server certificate.
  6784. properties:
  6785. key:
  6786. description: The key the value inside of the provider type to use, only used with "Secret" type
  6787. type: string
  6788. name:
  6789. description: The name of the object located at the provider type.
  6790. type: string
  6791. namespace:
  6792. description: The namespace the Provider type is in.
  6793. type: string
  6794. type:
  6795. description: The type of provider to use such as "Secret", or "ConfigMap".
  6796. enum:
  6797. - Secret
  6798. - ConfigMap
  6799. type: string
  6800. required:
  6801. - name
  6802. - type
  6803. type: object
  6804. forwardInconsistent:
  6805. description: |-
  6806. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  6807. leader instead of simply retrying within a loop. This can increase performance if
  6808. the option is enabled serverside.
  6809. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  6810. type: boolean
  6811. namespace:
  6812. description: |-
  6813. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  6814. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  6815. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  6816. type: string
  6817. path:
  6818. description: |-
  6819. Path is the mount path of the Vault KV backend endpoint, e.g:
  6820. "secret". The v2 KV secret engine version specific "/data" path suffix
  6821. for fetching secrets from Vault is optional and will be appended
  6822. if not present in specified path.
  6823. type: string
  6824. readYourWrites:
  6825. description: |-
  6826. ReadYourWrites ensures isolated read-after-write semantics by
  6827. providing discovered cluster replication states in each request.
  6828. More information about eventual consistency in Vault can be found here
  6829. https://www.vaultproject.io/docs/enterprise/consistency
  6830. type: boolean
  6831. server:
  6832. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  6833. type: string
  6834. version:
  6835. default: v2
  6836. description: |-
  6837. Version is the Vault KV secret engine version. This can be either "v1" or
  6838. "v2". Version defaults to "v2".
  6839. enum:
  6840. - v1
  6841. - v2
  6842. type: string
  6843. required:
  6844. - auth
  6845. - server
  6846. type: object
  6847. webhook:
  6848. description: Webhook configures this store to sync secrets using a generic templated webhook
  6849. properties:
  6850. body:
  6851. description: Body
  6852. type: string
  6853. caBundle:
  6854. description: |-
  6855. PEM encoded CA bundle used to validate webhook server certificate. Only used
  6856. if the Server URL is using HTTPS protocol. This parameter is ignored for
  6857. plain HTTP protocol connection. If not set the system root certificates
  6858. are used to validate the TLS connection.
  6859. format: byte
  6860. type: string
  6861. caProvider:
  6862. description: The provider for the CA bundle to use to validate webhook server certificate.
  6863. properties:
  6864. key:
  6865. description: The key the value inside of the provider type to use, only used with "Secret" type
  6866. type: string
  6867. name:
  6868. description: The name of the object located at the provider type.
  6869. type: string
  6870. namespace:
  6871. description: The namespace the Provider type is in.
  6872. type: string
  6873. type:
  6874. description: The type of provider to use such as "Secret", or "ConfigMap".
  6875. enum:
  6876. - Secret
  6877. - ConfigMap
  6878. type: string
  6879. required:
  6880. - name
  6881. - type
  6882. type: object
  6883. headers:
  6884. additionalProperties:
  6885. type: string
  6886. description: Headers
  6887. type: object
  6888. method:
  6889. description: Webhook Method
  6890. type: string
  6891. result:
  6892. description: Result formatting
  6893. properties:
  6894. jsonPath:
  6895. description: Json path of return value
  6896. type: string
  6897. type: object
  6898. secrets:
  6899. description: |-
  6900. Secrets to fill in templates
  6901. These secrets will be passed to the templating function as key value pairs under the given name
  6902. items:
  6903. properties:
  6904. name:
  6905. description: Name of this secret in templates
  6906. type: string
  6907. secretRef:
  6908. description: Secret ref to fill in credentials
  6909. properties:
  6910. key:
  6911. description: |-
  6912. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6913. defaulted, in others it may be required.
  6914. type: string
  6915. name:
  6916. description: The name of the Secret resource being referred to.
  6917. type: string
  6918. namespace:
  6919. description: |-
  6920. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6921. to the namespace of the referent.
  6922. type: string
  6923. type: object
  6924. required:
  6925. - name
  6926. - secretRef
  6927. type: object
  6928. type: array
  6929. timeout:
  6930. description: Timeout
  6931. type: string
  6932. url:
  6933. description: Webhook url to call
  6934. type: string
  6935. required:
  6936. - result
  6937. - url
  6938. type: object
  6939. yandexlockbox:
  6940. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  6941. properties:
  6942. apiEndpoint:
  6943. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  6944. type: string
  6945. auth:
  6946. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  6947. properties:
  6948. authorizedKeySecretRef:
  6949. description: The authorized key used for authentication
  6950. properties:
  6951. key:
  6952. description: |-
  6953. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6954. defaulted, in others it may be required.
  6955. type: string
  6956. name:
  6957. description: The name of the Secret resource being referred to.
  6958. type: string
  6959. namespace:
  6960. description: |-
  6961. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6962. to the namespace of the referent.
  6963. type: string
  6964. type: object
  6965. type: object
  6966. caProvider:
  6967. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  6968. properties:
  6969. certSecretRef:
  6970. description: |-
  6971. A reference to a specific 'key' within a Secret resource,
  6972. In some instances, `key` is a required field.
  6973. properties:
  6974. key:
  6975. description: |-
  6976. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6977. defaulted, in others it may be required.
  6978. type: string
  6979. name:
  6980. description: The name of the Secret resource being referred to.
  6981. type: string
  6982. namespace:
  6983. description: |-
  6984. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6985. to the namespace of the referent.
  6986. type: string
  6987. type: object
  6988. type: object
  6989. required:
  6990. - auth
  6991. type: object
  6992. type: object
  6993. retrySettings:
  6994. description: Used to configure http retries if failed
  6995. properties:
  6996. maxRetries:
  6997. format: int32
  6998. type: integer
  6999. retryInterval:
  7000. type: string
  7001. type: object
  7002. required:
  7003. - provider
  7004. type: object
  7005. status:
  7006. description: SecretStoreStatus defines the observed state of the SecretStore.
  7007. properties:
  7008. conditions:
  7009. items:
  7010. properties:
  7011. lastTransitionTime:
  7012. format: date-time
  7013. type: string
  7014. message:
  7015. type: string
  7016. reason:
  7017. type: string
  7018. status:
  7019. type: string
  7020. type:
  7021. type: string
  7022. required:
  7023. - status
  7024. - type
  7025. type: object
  7026. type: array
  7027. type: object
  7028. type: object
  7029. served: true
  7030. storage: false
  7031. subresources:
  7032. status: {}
  7033. - additionalPrinterColumns:
  7034. - jsonPath: .metadata.creationTimestamp
  7035. name: AGE
  7036. type: date
  7037. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  7038. name: Status
  7039. type: string
  7040. - jsonPath: .status.capabilities
  7041. name: Capabilities
  7042. type: string
  7043. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  7044. name: Ready
  7045. type: string
  7046. name: v1beta1
  7047. schema:
  7048. openAPIV3Schema:
  7049. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  7050. properties:
  7051. apiVersion:
  7052. description: |-
  7053. APIVersion defines the versioned schema of this representation of an object.
  7054. Servers should convert recognized schemas to the latest internal value, and
  7055. may reject unrecognized values.
  7056. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  7057. type: string
  7058. kind:
  7059. description: |-
  7060. Kind is a string value representing the REST resource this object represents.
  7061. Servers may infer this from the endpoint the client submits requests to.
  7062. Cannot be updated.
  7063. In CamelCase.
  7064. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  7065. type: string
  7066. metadata:
  7067. type: object
  7068. spec:
  7069. description: SecretStoreSpec defines the desired state of SecretStore.
  7070. properties:
  7071. conditions:
  7072. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  7073. items:
  7074. description: |-
  7075. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  7076. for a ClusterSecretStore instance.
  7077. properties:
  7078. namespaceSelector:
  7079. description: Choose namespace using a labelSelector
  7080. properties:
  7081. matchExpressions:
  7082. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  7083. items:
  7084. description: |-
  7085. A label selector requirement is a selector that contains values, a key, and an operator that
  7086. relates the key and values.
  7087. properties:
  7088. key:
  7089. description: key is the label key that the selector applies to.
  7090. type: string
  7091. operator:
  7092. description: |-
  7093. operator represents a key's relationship to a set of values.
  7094. Valid operators are In, NotIn, Exists and DoesNotExist.
  7095. type: string
  7096. values:
  7097. description: |-
  7098. values is an array of string values. If the operator is In or NotIn,
  7099. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  7100. the values array must be empty. This array is replaced during a strategic
  7101. merge patch.
  7102. items:
  7103. type: string
  7104. type: array
  7105. required:
  7106. - key
  7107. - operator
  7108. type: object
  7109. type: array
  7110. matchLabels:
  7111. additionalProperties:
  7112. type: string
  7113. description: |-
  7114. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  7115. map is equivalent to an element of matchExpressions, whose key field is "key", the
  7116. operator is "In", and the values array contains only "value". The requirements are ANDed.
  7117. type: object
  7118. type: object
  7119. x-kubernetes-map-type: atomic
  7120. namespaces:
  7121. description: Choose namespaces by name
  7122. items:
  7123. type: string
  7124. type: array
  7125. type: object
  7126. type: array
  7127. controller:
  7128. description: |-
  7129. Used to select the correct ESO controller (think: ingress.ingressClassName)
  7130. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  7131. type: string
  7132. provider:
  7133. description: Used to configure the provider. Only one provider may be set
  7134. maxProperties: 1
  7135. minProperties: 1
  7136. properties:
  7137. akeyless:
  7138. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  7139. properties:
  7140. akeylessGWApiURL:
  7141. description: Akeyless GW API Url from which the secrets to be fetched from.
  7142. type: string
  7143. authSecretRef:
  7144. description: Auth configures how the operator authenticates with Akeyless.
  7145. properties:
  7146. kubernetesAuth:
  7147. description: |-
  7148. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  7149. token stored in the named Secret resource.
  7150. properties:
  7151. accessID:
  7152. description: the Akeyless Kubernetes auth-method access-id
  7153. type: string
  7154. k8sConfName:
  7155. description: Kubernetes-auth configuration name in Akeyless-Gateway
  7156. type: string
  7157. secretRef:
  7158. description: |-
  7159. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7160. for authenticating with Akeyless. If a name is specified without a key,
  7161. `token` is the default. If one is not specified, the one bound to
  7162. the controller will be used.
  7163. properties:
  7164. key:
  7165. description: |-
  7166. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7167. defaulted, in others it may be required.
  7168. type: string
  7169. name:
  7170. description: The name of the Secret resource being referred to.
  7171. type: string
  7172. namespace:
  7173. description: |-
  7174. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7175. to the namespace of the referent.
  7176. type: string
  7177. type: object
  7178. serviceAccountRef:
  7179. description: |-
  7180. Optional service account field containing the name of a kubernetes ServiceAccount.
  7181. If the service account is specified, the service account secret token JWT will be used
  7182. for authenticating with Akeyless. If the service account selector is not supplied,
  7183. the secretRef will be used instead.
  7184. properties:
  7185. audiences:
  7186. description: |-
  7187. Audience specifies the `aud` claim for the service account token
  7188. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7189. then this audiences will be appended to the list
  7190. items:
  7191. type: string
  7192. type: array
  7193. name:
  7194. description: The name of the ServiceAccount resource being referred to.
  7195. type: string
  7196. namespace:
  7197. description: |-
  7198. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7199. to the namespace of the referent.
  7200. type: string
  7201. required:
  7202. - name
  7203. type: object
  7204. required:
  7205. - accessID
  7206. - k8sConfName
  7207. type: object
  7208. secretRef:
  7209. description: |-
  7210. Reference to a Secret that contains the details
  7211. to authenticate with Akeyless.
  7212. properties:
  7213. accessID:
  7214. description: The SecretAccessID is used for authentication
  7215. properties:
  7216. key:
  7217. description: |-
  7218. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7219. defaulted, in others it may be required.
  7220. type: string
  7221. name:
  7222. description: The name of the Secret resource being referred to.
  7223. type: string
  7224. namespace:
  7225. description: |-
  7226. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7227. to the namespace of the referent.
  7228. type: string
  7229. type: object
  7230. accessType:
  7231. description: |-
  7232. A reference to a specific 'key' within a Secret resource,
  7233. In some instances, `key` is a required field.
  7234. properties:
  7235. key:
  7236. description: |-
  7237. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7238. defaulted, in others it may be required.
  7239. type: string
  7240. name:
  7241. description: The name of the Secret resource being referred to.
  7242. type: string
  7243. namespace:
  7244. description: |-
  7245. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7246. to the namespace of the referent.
  7247. type: string
  7248. type: object
  7249. accessTypeParam:
  7250. description: |-
  7251. A reference to a specific 'key' within a Secret resource,
  7252. In some instances, `key` is a required field.
  7253. properties:
  7254. key:
  7255. description: |-
  7256. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7257. defaulted, in others it may be required.
  7258. type: string
  7259. name:
  7260. description: The name of the Secret resource being referred to.
  7261. type: string
  7262. namespace:
  7263. description: |-
  7264. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7265. to the namespace of the referent.
  7266. type: string
  7267. type: object
  7268. type: object
  7269. type: object
  7270. caBundle:
  7271. description: |-
  7272. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  7273. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  7274. are used to validate the TLS connection.
  7275. format: byte
  7276. type: string
  7277. caProvider:
  7278. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  7279. properties:
  7280. key:
  7281. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7282. type: string
  7283. name:
  7284. description: The name of the object located at the provider type.
  7285. type: string
  7286. namespace:
  7287. description: |-
  7288. The namespace the Provider type is in.
  7289. Can only be defined when used in a ClusterSecretStore.
  7290. type: string
  7291. type:
  7292. description: The type of provider to use such as "Secret", or "ConfigMap".
  7293. enum:
  7294. - Secret
  7295. - ConfigMap
  7296. type: string
  7297. required:
  7298. - name
  7299. - type
  7300. type: object
  7301. required:
  7302. - akeylessGWApiURL
  7303. - authSecretRef
  7304. type: object
  7305. alibaba:
  7306. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  7307. properties:
  7308. auth:
  7309. description: AlibabaAuth contains a secretRef for credentials.
  7310. properties:
  7311. rrsa:
  7312. description: Authenticate against Alibaba using RRSA.
  7313. properties:
  7314. oidcProviderArn:
  7315. type: string
  7316. oidcTokenFilePath:
  7317. type: string
  7318. roleArn:
  7319. type: string
  7320. sessionName:
  7321. type: string
  7322. required:
  7323. - oidcProviderArn
  7324. - oidcTokenFilePath
  7325. - roleArn
  7326. - sessionName
  7327. type: object
  7328. secretRef:
  7329. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  7330. properties:
  7331. accessKeyIDSecretRef:
  7332. description: The AccessKeyID is used for authentication
  7333. properties:
  7334. key:
  7335. description: |-
  7336. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7337. defaulted, in others it may be required.
  7338. type: string
  7339. name:
  7340. description: The name of the Secret resource being referred to.
  7341. type: string
  7342. namespace:
  7343. description: |-
  7344. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7345. to the namespace of the referent.
  7346. type: string
  7347. type: object
  7348. accessKeySecretSecretRef:
  7349. description: The AccessKeySecret is used for authentication
  7350. properties:
  7351. key:
  7352. description: |-
  7353. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7354. defaulted, in others it may be required.
  7355. type: string
  7356. name:
  7357. description: The name of the Secret resource being referred to.
  7358. type: string
  7359. namespace:
  7360. description: |-
  7361. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7362. to the namespace of the referent.
  7363. type: string
  7364. type: object
  7365. required:
  7366. - accessKeyIDSecretRef
  7367. - accessKeySecretSecretRef
  7368. type: object
  7369. type: object
  7370. regionID:
  7371. description: Alibaba Region to be used for the provider
  7372. type: string
  7373. required:
  7374. - auth
  7375. - regionID
  7376. type: object
  7377. aws:
  7378. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  7379. properties:
  7380. additionalRoles:
  7381. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  7382. items:
  7383. type: string
  7384. type: array
  7385. auth:
  7386. description: |-
  7387. Auth defines the information necessary to authenticate against AWS
  7388. if not set aws sdk will infer credentials from your environment
  7389. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  7390. properties:
  7391. jwt:
  7392. description: Authenticate against AWS using service account tokens.
  7393. properties:
  7394. serviceAccountRef:
  7395. description: A reference to a ServiceAccount resource.
  7396. properties:
  7397. audiences:
  7398. description: |-
  7399. Audience specifies the `aud` claim for the service account token
  7400. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7401. then this audiences will be appended to the list
  7402. items:
  7403. type: string
  7404. type: array
  7405. name:
  7406. description: The name of the ServiceAccount resource being referred to.
  7407. type: string
  7408. namespace:
  7409. description: |-
  7410. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7411. to the namespace of the referent.
  7412. type: string
  7413. required:
  7414. - name
  7415. type: object
  7416. type: object
  7417. secretRef:
  7418. description: |-
  7419. AWSAuthSecretRef holds secret references for AWS credentials
  7420. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  7421. properties:
  7422. accessKeyIDSecretRef:
  7423. description: The AccessKeyID is used for authentication
  7424. properties:
  7425. key:
  7426. description: |-
  7427. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7428. defaulted, in others it may be required.
  7429. type: string
  7430. name:
  7431. description: The name of the Secret resource being referred to.
  7432. type: string
  7433. namespace:
  7434. description: |-
  7435. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7436. to the namespace of the referent.
  7437. type: string
  7438. type: object
  7439. secretAccessKeySecretRef:
  7440. description: The SecretAccessKey is used for authentication
  7441. properties:
  7442. key:
  7443. description: |-
  7444. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7445. defaulted, in others it may be required.
  7446. type: string
  7447. name:
  7448. description: The name of the Secret resource being referred to.
  7449. type: string
  7450. namespace:
  7451. description: |-
  7452. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7453. to the namespace of the referent.
  7454. type: string
  7455. type: object
  7456. sessionTokenSecretRef:
  7457. description: |-
  7458. The SessionToken used for authentication
  7459. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7460. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7461. properties:
  7462. key:
  7463. description: |-
  7464. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7465. defaulted, in others it may be required.
  7466. type: string
  7467. name:
  7468. description: The name of the Secret resource being referred to.
  7469. type: string
  7470. namespace:
  7471. description: |-
  7472. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7473. to the namespace of the referent.
  7474. type: string
  7475. type: object
  7476. type: object
  7477. type: object
  7478. externalID:
  7479. description: AWS External ID set on assumed IAM roles
  7480. type: string
  7481. region:
  7482. description: AWS Region to be used for the provider
  7483. type: string
  7484. role:
  7485. description: Role is a Role ARN which the provider will assume
  7486. type: string
  7487. secretsManager:
  7488. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  7489. properties:
  7490. forceDeleteWithoutRecovery:
  7491. description: |-
  7492. Specifies whether to delete the secret without any recovery window. You
  7493. can't use both this parameter and RecoveryWindowInDays in the same call.
  7494. If you don't use either, then by default Secrets Manager uses a 30 day
  7495. recovery window.
  7496. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  7497. type: boolean
  7498. recoveryWindowInDays:
  7499. description: |-
  7500. The number of days from 7 to 30 that Secrets Manager waits before
  7501. permanently deleting the secret. You can't use both this parameter and
  7502. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  7503. then by default Secrets Manager uses a 30 day recovery window.
  7504. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  7505. format: int64
  7506. type: integer
  7507. type: object
  7508. service:
  7509. description: Service defines which service should be used to fetch the secrets
  7510. enum:
  7511. - SecretsManager
  7512. - ParameterStore
  7513. type: string
  7514. sessionTags:
  7515. description: AWS STS assume role session tags
  7516. items:
  7517. properties:
  7518. key:
  7519. type: string
  7520. value:
  7521. type: string
  7522. required:
  7523. - key
  7524. - value
  7525. type: object
  7526. type: array
  7527. transitiveTagKeys:
  7528. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  7529. items:
  7530. type: string
  7531. type: array
  7532. required:
  7533. - region
  7534. - service
  7535. type: object
  7536. azurekv:
  7537. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  7538. properties:
  7539. authSecretRef:
  7540. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  7541. properties:
  7542. clientId:
  7543. description: The Azure clientId of the service principle used for authentication.
  7544. properties:
  7545. key:
  7546. description: |-
  7547. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7548. defaulted, in others it may be required.
  7549. type: string
  7550. name:
  7551. description: The name of the Secret resource being referred to.
  7552. type: string
  7553. namespace:
  7554. description: |-
  7555. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7556. to the namespace of the referent.
  7557. type: string
  7558. type: object
  7559. clientSecret:
  7560. description: The Azure ClientSecret of the service principle used for authentication.
  7561. properties:
  7562. key:
  7563. description: |-
  7564. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7565. defaulted, in others it may be required.
  7566. type: string
  7567. name:
  7568. description: The name of the Secret resource being referred to.
  7569. type: string
  7570. namespace:
  7571. description: |-
  7572. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7573. to the namespace of the referent.
  7574. type: string
  7575. type: object
  7576. type: object
  7577. authType:
  7578. default: ServicePrincipal
  7579. description: |-
  7580. Auth type defines how to authenticate to the keyvault service.
  7581. Valid values are:
  7582. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  7583. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  7584. enum:
  7585. - ServicePrincipal
  7586. - ManagedIdentity
  7587. - WorkloadIdentity
  7588. type: string
  7589. environmentType:
  7590. default: PublicCloud
  7591. description: |-
  7592. EnvironmentType specifies the Azure cloud environment endpoints to use for
  7593. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  7594. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  7595. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  7596. enum:
  7597. - PublicCloud
  7598. - USGovernmentCloud
  7599. - ChinaCloud
  7600. - GermanCloud
  7601. type: string
  7602. identityId:
  7603. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  7604. type: string
  7605. serviceAccountRef:
  7606. description: |-
  7607. ServiceAccountRef specified the service account
  7608. that should be used when authenticating with WorkloadIdentity.
  7609. properties:
  7610. audiences:
  7611. description: |-
  7612. Audience specifies the `aud` claim for the service account token
  7613. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7614. then this audiences will be appended to the list
  7615. items:
  7616. type: string
  7617. type: array
  7618. name:
  7619. description: The name of the ServiceAccount resource being referred to.
  7620. type: string
  7621. namespace:
  7622. description: |-
  7623. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7624. to the namespace of the referent.
  7625. type: string
  7626. required:
  7627. - name
  7628. type: object
  7629. tenantId:
  7630. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  7631. type: string
  7632. vaultUrl:
  7633. description: Vault Url from which the secrets to be fetched from.
  7634. type: string
  7635. required:
  7636. - vaultUrl
  7637. type: object
  7638. conjur:
  7639. description: Conjur configures this store to sync secrets using conjur provider
  7640. properties:
  7641. auth:
  7642. properties:
  7643. apikey:
  7644. properties:
  7645. account:
  7646. type: string
  7647. apiKeyRef:
  7648. description: |-
  7649. A reference to a specific 'key' within a Secret resource,
  7650. In some instances, `key` is a required field.
  7651. properties:
  7652. key:
  7653. description: |-
  7654. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7655. defaulted, in others it may be required.
  7656. type: string
  7657. name:
  7658. description: The name of the Secret resource being referred to.
  7659. type: string
  7660. namespace:
  7661. description: |-
  7662. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7663. to the namespace of the referent.
  7664. type: string
  7665. type: object
  7666. userRef:
  7667. description: |-
  7668. A reference to a specific 'key' within a Secret resource,
  7669. In some instances, `key` is a required field.
  7670. properties:
  7671. key:
  7672. description: |-
  7673. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7674. defaulted, in others it may be required.
  7675. type: string
  7676. name:
  7677. description: The name of the Secret resource being referred to.
  7678. type: string
  7679. namespace:
  7680. description: |-
  7681. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7682. to the namespace of the referent.
  7683. type: string
  7684. type: object
  7685. required:
  7686. - account
  7687. - apiKeyRef
  7688. - userRef
  7689. type: object
  7690. jwt:
  7691. properties:
  7692. account:
  7693. type: string
  7694. secretRef:
  7695. description: |-
  7696. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7697. authenticate with Conjur using the JWT authentication method.
  7698. properties:
  7699. key:
  7700. description: |-
  7701. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7702. defaulted, in others it may be required.
  7703. type: string
  7704. name:
  7705. description: The name of the Secret resource being referred to.
  7706. type: string
  7707. namespace:
  7708. description: |-
  7709. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7710. to the namespace of the referent.
  7711. type: string
  7712. type: object
  7713. serviceAccountRef:
  7714. description: |-
  7715. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  7716. a token for with the `TokenRequest` API.
  7717. properties:
  7718. audiences:
  7719. description: |-
  7720. Audience specifies the `aud` claim for the service account token
  7721. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7722. then this audiences will be appended to the list
  7723. items:
  7724. type: string
  7725. type: array
  7726. name:
  7727. description: The name of the ServiceAccount resource being referred to.
  7728. type: string
  7729. namespace:
  7730. description: |-
  7731. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7732. to the namespace of the referent.
  7733. type: string
  7734. required:
  7735. - name
  7736. type: object
  7737. serviceID:
  7738. description: The conjur authn jwt webservice id
  7739. type: string
  7740. required:
  7741. - account
  7742. - serviceID
  7743. type: object
  7744. type: object
  7745. caBundle:
  7746. type: string
  7747. caProvider:
  7748. description: |-
  7749. Used to provide custom certificate authority (CA) certificates
  7750. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  7751. that contains a PEM-encoded certificate.
  7752. properties:
  7753. key:
  7754. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7755. type: string
  7756. name:
  7757. description: The name of the object located at the provider type.
  7758. type: string
  7759. namespace:
  7760. description: |-
  7761. The namespace the Provider type is in.
  7762. Can only be defined when used in a ClusterSecretStore.
  7763. type: string
  7764. type:
  7765. description: The type of provider to use such as "Secret", or "ConfigMap".
  7766. enum:
  7767. - Secret
  7768. - ConfigMap
  7769. type: string
  7770. required:
  7771. - name
  7772. - type
  7773. type: object
  7774. url:
  7775. type: string
  7776. required:
  7777. - auth
  7778. - url
  7779. type: object
  7780. delinea:
  7781. description: |-
  7782. Delinea DevOps Secrets Vault
  7783. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  7784. properties:
  7785. clientId:
  7786. description: ClientID is the non-secret part of the credential.
  7787. properties:
  7788. secretRef:
  7789. description: SecretRef references a key in a secret that will be used as value.
  7790. properties:
  7791. key:
  7792. description: |-
  7793. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7794. defaulted, in others it may be required.
  7795. type: string
  7796. name:
  7797. description: The name of the Secret resource being referred to.
  7798. type: string
  7799. namespace:
  7800. description: |-
  7801. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7802. to the namespace of the referent.
  7803. type: string
  7804. type: object
  7805. value:
  7806. description: Value can be specified directly to set a value without using a secret.
  7807. type: string
  7808. type: object
  7809. clientSecret:
  7810. description: ClientSecret is the secret part of the credential.
  7811. properties:
  7812. secretRef:
  7813. description: SecretRef references a key in a secret that will be used as value.
  7814. properties:
  7815. key:
  7816. description: |-
  7817. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7818. defaulted, in others it may be required.
  7819. type: string
  7820. name:
  7821. description: The name of the Secret resource being referred to.
  7822. type: string
  7823. namespace:
  7824. description: |-
  7825. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7826. to the namespace of the referent.
  7827. type: string
  7828. type: object
  7829. value:
  7830. description: Value can be specified directly to set a value without using a secret.
  7831. type: string
  7832. type: object
  7833. tenant:
  7834. description: Tenant is the chosen hostname / site name.
  7835. type: string
  7836. tld:
  7837. description: |-
  7838. TLD is based on the server location that was chosen during provisioning.
  7839. If unset, defaults to "com".
  7840. type: string
  7841. urlTemplate:
  7842. description: |-
  7843. URLTemplate
  7844. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  7845. type: string
  7846. required:
  7847. - clientId
  7848. - clientSecret
  7849. - tenant
  7850. type: object
  7851. doppler:
  7852. description: Doppler configures this store to sync secrets using the Doppler provider
  7853. properties:
  7854. auth:
  7855. description: Auth configures how the Operator authenticates with the Doppler API
  7856. properties:
  7857. secretRef:
  7858. properties:
  7859. dopplerToken:
  7860. description: |-
  7861. The DopplerToken is used for authentication.
  7862. See https://docs.doppler.com/reference/api#authentication for auth token types.
  7863. The Key attribute defaults to dopplerToken if not specified.
  7864. properties:
  7865. key:
  7866. description: |-
  7867. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7868. defaulted, in others it may be required.
  7869. type: string
  7870. name:
  7871. description: The name of the Secret resource being referred to.
  7872. type: string
  7873. namespace:
  7874. description: |-
  7875. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7876. to the namespace of the referent.
  7877. type: string
  7878. type: object
  7879. required:
  7880. - dopplerToken
  7881. type: object
  7882. required:
  7883. - secretRef
  7884. type: object
  7885. config:
  7886. description: Doppler config (required if not using a Service Token)
  7887. type: string
  7888. format:
  7889. description: Format enables the downloading of secrets as a file (string)
  7890. enum:
  7891. - json
  7892. - dotnet-json
  7893. - env
  7894. - yaml
  7895. - docker
  7896. type: string
  7897. nameTransformer:
  7898. description: Environment variable compatible name transforms that change secret names to a different format
  7899. enum:
  7900. - upper-camel
  7901. - camel
  7902. - lower-snake
  7903. - tf-var
  7904. - dotnet-env
  7905. - lower-kebab
  7906. type: string
  7907. project:
  7908. description: Doppler project (required if not using a Service Token)
  7909. type: string
  7910. required:
  7911. - auth
  7912. type: object
  7913. fake:
  7914. description: Fake configures a store with static key/value pairs
  7915. properties:
  7916. data:
  7917. items:
  7918. properties:
  7919. key:
  7920. type: string
  7921. value:
  7922. type: string
  7923. valueMap:
  7924. additionalProperties:
  7925. type: string
  7926. description: 'Deprecated: ValueMap is deprecated and is intended to be removed in the future, use the `value` field instead.'
  7927. type: object
  7928. version:
  7929. type: string
  7930. required:
  7931. - key
  7932. type: object
  7933. type: array
  7934. required:
  7935. - data
  7936. type: object
  7937. gcpsm:
  7938. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  7939. properties:
  7940. auth:
  7941. description: Auth defines the information necessary to authenticate against GCP
  7942. properties:
  7943. secretRef:
  7944. properties:
  7945. secretAccessKeySecretRef:
  7946. description: The SecretAccessKey is used for authentication
  7947. properties:
  7948. key:
  7949. description: |-
  7950. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7951. defaulted, in others it may be required.
  7952. type: string
  7953. name:
  7954. description: The name of the Secret resource being referred to.
  7955. type: string
  7956. namespace:
  7957. description: |-
  7958. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7959. to the namespace of the referent.
  7960. type: string
  7961. type: object
  7962. type: object
  7963. workloadIdentity:
  7964. properties:
  7965. clusterLocation:
  7966. type: string
  7967. clusterName:
  7968. type: string
  7969. clusterProjectID:
  7970. type: string
  7971. serviceAccountRef:
  7972. description: A reference to a ServiceAccount resource.
  7973. properties:
  7974. audiences:
  7975. description: |-
  7976. Audience specifies the `aud` claim for the service account token
  7977. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7978. then this audiences will be appended to the list
  7979. items:
  7980. type: string
  7981. type: array
  7982. name:
  7983. description: The name of the ServiceAccount resource being referred to.
  7984. type: string
  7985. namespace:
  7986. description: |-
  7987. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7988. to the namespace of the referent.
  7989. type: string
  7990. required:
  7991. - name
  7992. type: object
  7993. required:
  7994. - clusterLocation
  7995. - clusterName
  7996. - serviceAccountRef
  7997. type: object
  7998. type: object
  7999. projectID:
  8000. description: ProjectID project where secret is located
  8001. type: string
  8002. type: object
  8003. gitlab:
  8004. description: GitLab configures this store to sync secrets using GitLab Variables provider
  8005. properties:
  8006. auth:
  8007. description: Auth configures how secret-manager authenticates with a GitLab instance.
  8008. properties:
  8009. SecretRef:
  8010. properties:
  8011. accessToken:
  8012. description: AccessToken is used for authentication.
  8013. properties:
  8014. key:
  8015. description: |-
  8016. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8017. defaulted, in others it may be required.
  8018. type: string
  8019. name:
  8020. description: The name of the Secret resource being referred to.
  8021. type: string
  8022. namespace:
  8023. description: |-
  8024. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8025. to the namespace of the referent.
  8026. type: string
  8027. type: object
  8028. type: object
  8029. required:
  8030. - SecretRef
  8031. type: object
  8032. environment:
  8033. 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)
  8034. type: string
  8035. groupIDs:
  8036. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  8037. items:
  8038. type: string
  8039. type: array
  8040. inheritFromGroups:
  8041. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  8042. type: boolean
  8043. projectID:
  8044. description: ProjectID specifies a project where secrets are located.
  8045. type: string
  8046. url:
  8047. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  8048. type: string
  8049. required:
  8050. - auth
  8051. type: object
  8052. ibm:
  8053. description: IBM configures this store to sync secrets using IBM Cloud provider
  8054. properties:
  8055. auth:
  8056. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  8057. maxProperties: 1
  8058. minProperties: 1
  8059. properties:
  8060. containerAuth:
  8061. description: IBM Container-based auth with IAM Trusted Profile.
  8062. properties:
  8063. iamEndpoint:
  8064. type: string
  8065. profile:
  8066. description: the IBM Trusted Profile
  8067. type: string
  8068. tokenLocation:
  8069. description: Location the token is mounted on the pod
  8070. type: string
  8071. required:
  8072. - profile
  8073. type: object
  8074. secretRef:
  8075. properties:
  8076. secretApiKeySecretRef:
  8077. description: The SecretAccessKey is used for authentication
  8078. properties:
  8079. key:
  8080. description: |-
  8081. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8082. defaulted, in others it may be required.
  8083. type: string
  8084. name:
  8085. description: The name of the Secret resource being referred to.
  8086. type: string
  8087. namespace:
  8088. description: |-
  8089. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8090. to the namespace of the referent.
  8091. type: string
  8092. type: object
  8093. type: object
  8094. type: object
  8095. serviceUrl:
  8096. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  8097. type: string
  8098. required:
  8099. - auth
  8100. type: object
  8101. keepersecurity:
  8102. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  8103. properties:
  8104. authRef:
  8105. description: |-
  8106. A reference to a specific 'key' within a Secret resource,
  8107. In some instances, `key` is a required field.
  8108. properties:
  8109. key:
  8110. description: |-
  8111. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8112. defaulted, in others it may be required.
  8113. type: string
  8114. name:
  8115. description: The name of the Secret resource being referred to.
  8116. type: string
  8117. namespace:
  8118. description: |-
  8119. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8120. to the namespace of the referent.
  8121. type: string
  8122. type: object
  8123. folderID:
  8124. type: string
  8125. required:
  8126. - authRef
  8127. - folderID
  8128. type: object
  8129. kubernetes:
  8130. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  8131. properties:
  8132. auth:
  8133. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  8134. maxProperties: 1
  8135. minProperties: 1
  8136. properties:
  8137. cert:
  8138. description: has both clientCert and clientKey as secretKeySelector
  8139. properties:
  8140. clientCert:
  8141. description: |-
  8142. A reference to a specific 'key' within a Secret resource,
  8143. In some instances, `key` is a required field.
  8144. properties:
  8145. key:
  8146. description: |-
  8147. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8148. defaulted, in others it may be required.
  8149. type: string
  8150. name:
  8151. description: The name of the Secret resource being referred to.
  8152. type: string
  8153. namespace:
  8154. description: |-
  8155. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8156. to the namespace of the referent.
  8157. type: string
  8158. type: object
  8159. clientKey:
  8160. description: |-
  8161. A reference to a specific 'key' within a Secret resource,
  8162. In some instances, `key` is a required field.
  8163. properties:
  8164. key:
  8165. description: |-
  8166. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8167. defaulted, in others it may be required.
  8168. type: string
  8169. name:
  8170. description: The name of the Secret resource being referred to.
  8171. type: string
  8172. namespace:
  8173. description: |-
  8174. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8175. to the namespace of the referent.
  8176. type: string
  8177. type: object
  8178. type: object
  8179. serviceAccount:
  8180. description: points to a service account that should be used for authentication
  8181. properties:
  8182. audiences:
  8183. description: |-
  8184. Audience specifies the `aud` claim for the service account token
  8185. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8186. then this audiences will be appended to the list
  8187. items:
  8188. type: string
  8189. type: array
  8190. name:
  8191. description: The name of the ServiceAccount resource being referred to.
  8192. type: string
  8193. namespace:
  8194. description: |-
  8195. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8196. to the namespace of the referent.
  8197. type: string
  8198. required:
  8199. - name
  8200. type: object
  8201. token:
  8202. description: use static token to authenticate with
  8203. properties:
  8204. bearerToken:
  8205. description: |-
  8206. A reference to a specific 'key' within a Secret resource,
  8207. In some instances, `key` is a required field.
  8208. properties:
  8209. key:
  8210. description: |-
  8211. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8212. defaulted, in others it may be required.
  8213. type: string
  8214. name:
  8215. description: The name of the Secret resource being referred to.
  8216. type: string
  8217. namespace:
  8218. description: |-
  8219. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8220. to the namespace of the referent.
  8221. type: string
  8222. type: object
  8223. type: object
  8224. type: object
  8225. remoteNamespace:
  8226. default: default
  8227. description: Remote namespace to fetch the secrets from
  8228. type: string
  8229. server:
  8230. description: configures the Kubernetes server Address.
  8231. properties:
  8232. caBundle:
  8233. description: CABundle is a base64-encoded CA certificate
  8234. format: byte
  8235. type: string
  8236. caProvider:
  8237. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  8238. properties:
  8239. key:
  8240. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8241. type: string
  8242. name:
  8243. description: The name of the object located at the provider type.
  8244. type: string
  8245. namespace:
  8246. description: |-
  8247. The namespace the Provider type is in.
  8248. Can only be defined when used in a ClusterSecretStore.
  8249. type: string
  8250. type:
  8251. description: The type of provider to use such as "Secret", or "ConfigMap".
  8252. enum:
  8253. - Secret
  8254. - ConfigMap
  8255. type: string
  8256. required:
  8257. - name
  8258. - type
  8259. type: object
  8260. url:
  8261. default: kubernetes.default
  8262. description: configures the Kubernetes server Address.
  8263. type: string
  8264. type: object
  8265. required:
  8266. - auth
  8267. type: object
  8268. onepassword:
  8269. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  8270. properties:
  8271. auth:
  8272. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  8273. properties:
  8274. secretRef:
  8275. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  8276. properties:
  8277. connectTokenSecretRef:
  8278. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  8279. properties:
  8280. key:
  8281. description: |-
  8282. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8283. defaulted, in others it may be required.
  8284. type: string
  8285. name:
  8286. description: The name of the Secret resource being referred to.
  8287. type: string
  8288. namespace:
  8289. description: |-
  8290. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8291. to the namespace of the referent.
  8292. type: string
  8293. type: object
  8294. required:
  8295. - connectTokenSecretRef
  8296. type: object
  8297. required:
  8298. - secretRef
  8299. type: object
  8300. connectHost:
  8301. description: ConnectHost defines the OnePassword Connect Server to connect to
  8302. type: string
  8303. vaults:
  8304. additionalProperties:
  8305. type: integer
  8306. description: Vaults defines which OnePassword vaults to search in which order
  8307. type: object
  8308. required:
  8309. - auth
  8310. - connectHost
  8311. - vaults
  8312. type: object
  8313. oracle:
  8314. description: Oracle configures this store to sync secrets using Oracle Vault provider
  8315. properties:
  8316. auth:
  8317. description: |-
  8318. Auth configures how secret-manager authenticates with the Oracle Vault.
  8319. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  8320. properties:
  8321. secretRef:
  8322. description: SecretRef to pass through sensitive information.
  8323. properties:
  8324. fingerprint:
  8325. description: Fingerprint is the fingerprint of the API private key.
  8326. properties:
  8327. key:
  8328. description: |-
  8329. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8330. defaulted, in others it may be required.
  8331. type: string
  8332. name:
  8333. description: The name of the Secret resource being referred to.
  8334. type: string
  8335. namespace:
  8336. description: |-
  8337. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8338. to the namespace of the referent.
  8339. type: string
  8340. type: object
  8341. privatekey:
  8342. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  8343. properties:
  8344. key:
  8345. description: |-
  8346. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8347. defaulted, in others it may be required.
  8348. type: string
  8349. name:
  8350. description: The name of the Secret resource being referred to.
  8351. type: string
  8352. namespace:
  8353. description: |-
  8354. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8355. to the namespace of the referent.
  8356. type: string
  8357. type: object
  8358. required:
  8359. - fingerprint
  8360. - privatekey
  8361. type: object
  8362. tenancy:
  8363. description: Tenancy is the tenancy OCID where user is located.
  8364. type: string
  8365. user:
  8366. description: User is an access OCID specific to the account.
  8367. type: string
  8368. required:
  8369. - secretRef
  8370. - tenancy
  8371. - user
  8372. type: object
  8373. compartment:
  8374. description: |-
  8375. Compartment is the vault compartment OCID.
  8376. Required for PushSecret
  8377. type: string
  8378. encryptionKey:
  8379. description: |-
  8380. EncryptionKey is the OCID of the encryption key within the vault.
  8381. Required for PushSecret
  8382. type: string
  8383. principalType:
  8384. description: |-
  8385. The type of principal to use for authentication. If left blank, the Auth struct will
  8386. determine the principal type. This optional field must be specified if using
  8387. workload identity.
  8388. enum:
  8389. - ""
  8390. - UserPrincipal
  8391. - InstancePrincipal
  8392. - Workload
  8393. type: string
  8394. region:
  8395. description: Region is the region where vault is located.
  8396. type: string
  8397. serviceAccountRef:
  8398. description: |-
  8399. ServiceAccountRef specified the service account
  8400. that should be used when authenticating with WorkloadIdentity.
  8401. properties:
  8402. audiences:
  8403. description: |-
  8404. Audience specifies the `aud` claim for the service account token
  8405. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8406. then this audiences will be appended to the list
  8407. items:
  8408. type: string
  8409. type: array
  8410. name:
  8411. description: The name of the ServiceAccount resource being referred to.
  8412. type: string
  8413. namespace:
  8414. description: |-
  8415. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8416. to the namespace of the referent.
  8417. type: string
  8418. required:
  8419. - name
  8420. type: object
  8421. vault:
  8422. description: Vault is the vault's OCID of the specific vault where secret is located.
  8423. type: string
  8424. required:
  8425. - region
  8426. - vault
  8427. type: object
  8428. scaleway:
  8429. description: Scaleway
  8430. properties:
  8431. accessKey:
  8432. description: AccessKey is the non-secret part of the api key.
  8433. properties:
  8434. secretRef:
  8435. description: SecretRef references a key in a secret that will be used as value.
  8436. properties:
  8437. key:
  8438. description: |-
  8439. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8440. defaulted, in others it may be required.
  8441. type: string
  8442. name:
  8443. description: The name of the Secret resource being referred to.
  8444. type: string
  8445. namespace:
  8446. description: |-
  8447. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8448. to the namespace of the referent.
  8449. type: string
  8450. type: object
  8451. value:
  8452. description: Value can be specified directly to set a value without using a secret.
  8453. type: string
  8454. type: object
  8455. apiUrl:
  8456. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  8457. type: string
  8458. projectId:
  8459. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  8460. type: string
  8461. region:
  8462. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  8463. type: string
  8464. secretKey:
  8465. description: SecretKey is the non-secret part of the api key.
  8466. properties:
  8467. secretRef:
  8468. description: SecretRef references a key in a secret that will be used as value.
  8469. properties:
  8470. key:
  8471. description: |-
  8472. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8473. defaulted, in others it may be required.
  8474. type: string
  8475. name:
  8476. description: The name of the Secret resource being referred to.
  8477. type: string
  8478. namespace:
  8479. description: |-
  8480. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8481. to the namespace of the referent.
  8482. type: string
  8483. type: object
  8484. value:
  8485. description: Value can be specified directly to set a value without using a secret.
  8486. type: string
  8487. type: object
  8488. required:
  8489. - accessKey
  8490. - projectId
  8491. - region
  8492. - secretKey
  8493. type: object
  8494. senhasegura:
  8495. description: Senhasegura configures this store to sync secrets using senhasegura provider
  8496. properties:
  8497. auth:
  8498. description: Auth defines parameters to authenticate in senhasegura
  8499. properties:
  8500. clientId:
  8501. type: string
  8502. clientSecretSecretRef:
  8503. description: |-
  8504. A reference to a specific 'key' within a Secret resource,
  8505. In some instances, `key` is a required field.
  8506. properties:
  8507. key:
  8508. description: |-
  8509. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8510. defaulted, in others it may be required.
  8511. type: string
  8512. name:
  8513. description: The name of the Secret resource being referred to.
  8514. type: string
  8515. namespace:
  8516. description: |-
  8517. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8518. to the namespace of the referent.
  8519. type: string
  8520. type: object
  8521. required:
  8522. - clientId
  8523. - clientSecretSecretRef
  8524. type: object
  8525. ignoreSslCertificate:
  8526. default: false
  8527. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  8528. type: boolean
  8529. module:
  8530. description: Module defines which senhasegura module should be used to get secrets
  8531. type: string
  8532. url:
  8533. description: URL of senhasegura
  8534. type: string
  8535. required:
  8536. - auth
  8537. - module
  8538. - url
  8539. type: object
  8540. vault:
  8541. description: Vault configures this store to sync secrets using Hashi provider
  8542. properties:
  8543. auth:
  8544. description: Auth configures how secret-manager authenticates with the Vault server.
  8545. properties:
  8546. appRole:
  8547. description: |-
  8548. AppRole authenticates with Vault using the App Role auth mechanism,
  8549. with the role and secret stored in a Kubernetes Secret resource.
  8550. properties:
  8551. path:
  8552. default: approle
  8553. description: |-
  8554. Path where the App Role authentication backend is mounted
  8555. in Vault, e.g: "approle"
  8556. type: string
  8557. roleId:
  8558. description: |-
  8559. RoleID configured in the App Role authentication backend when setting
  8560. up the authentication backend in Vault.
  8561. type: string
  8562. roleRef:
  8563. description: |-
  8564. Reference to a key in a Secret that contains the App Role ID used
  8565. to authenticate with Vault.
  8566. The `key` field must be specified and denotes which entry within the Secret
  8567. resource is used as the app role id.
  8568. properties:
  8569. key:
  8570. description: |-
  8571. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8572. defaulted, in others it may be required.
  8573. type: string
  8574. name:
  8575. description: The name of the Secret resource being referred to.
  8576. type: string
  8577. namespace:
  8578. description: |-
  8579. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8580. to the namespace of the referent.
  8581. type: string
  8582. type: object
  8583. secretRef:
  8584. description: |-
  8585. Reference to a key in a Secret that contains the App Role secret used
  8586. to authenticate with Vault.
  8587. The `key` field must be specified and denotes which entry within the Secret
  8588. resource is used as the app role secret.
  8589. properties:
  8590. key:
  8591. description: |-
  8592. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8593. defaulted, in others it may be required.
  8594. type: string
  8595. name:
  8596. description: The name of the Secret resource being referred to.
  8597. type: string
  8598. namespace:
  8599. description: |-
  8600. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8601. to the namespace of the referent.
  8602. type: string
  8603. type: object
  8604. required:
  8605. - path
  8606. - secretRef
  8607. type: object
  8608. cert:
  8609. description: |-
  8610. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  8611. Cert authentication method
  8612. properties:
  8613. clientCert:
  8614. description: |-
  8615. ClientCert is a certificate to authenticate using the Cert Vault
  8616. authentication method
  8617. properties:
  8618. key:
  8619. description: |-
  8620. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8621. defaulted, in others it may be required.
  8622. type: string
  8623. name:
  8624. description: The name of the Secret resource being referred to.
  8625. type: string
  8626. namespace:
  8627. description: |-
  8628. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8629. to the namespace of the referent.
  8630. type: string
  8631. type: object
  8632. secretRef:
  8633. description: |-
  8634. SecretRef to a key in a Secret resource containing client private key to
  8635. authenticate with Vault using the Cert authentication method
  8636. properties:
  8637. key:
  8638. description: |-
  8639. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8640. defaulted, in others it may be required.
  8641. type: string
  8642. name:
  8643. description: The name of the Secret resource being referred to.
  8644. type: string
  8645. namespace:
  8646. description: |-
  8647. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8648. to the namespace of the referent.
  8649. type: string
  8650. type: object
  8651. type: object
  8652. iam:
  8653. description: |-
  8654. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  8655. AWS IAM authentication method
  8656. properties:
  8657. externalID:
  8658. description: AWS External ID set on assumed IAM roles
  8659. type: string
  8660. jwt:
  8661. description: Specify a service account with IRSA enabled
  8662. properties:
  8663. serviceAccountRef:
  8664. description: A reference to a ServiceAccount resource.
  8665. properties:
  8666. audiences:
  8667. description: |-
  8668. Audience specifies the `aud` claim for the service account token
  8669. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8670. then this audiences will be appended to the list
  8671. items:
  8672. type: string
  8673. type: array
  8674. name:
  8675. description: The name of the ServiceAccount resource being referred to.
  8676. type: string
  8677. namespace:
  8678. description: |-
  8679. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8680. to the namespace of the referent.
  8681. type: string
  8682. required:
  8683. - name
  8684. type: object
  8685. type: object
  8686. path:
  8687. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  8688. type: string
  8689. region:
  8690. description: AWS region
  8691. type: string
  8692. role:
  8693. description: This is the AWS role to be assumed before talking to vault
  8694. type: string
  8695. secretRef:
  8696. description: Specify credentials in a Secret object
  8697. properties:
  8698. accessKeyIDSecretRef:
  8699. description: The AccessKeyID is used for authentication
  8700. properties:
  8701. key:
  8702. description: |-
  8703. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8704. defaulted, in others it may be required.
  8705. type: string
  8706. name:
  8707. description: The name of the Secret resource being referred to.
  8708. type: string
  8709. namespace:
  8710. description: |-
  8711. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8712. to the namespace of the referent.
  8713. type: string
  8714. type: object
  8715. secretAccessKeySecretRef:
  8716. description: The SecretAccessKey is used for authentication
  8717. properties:
  8718. key:
  8719. description: |-
  8720. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8721. defaulted, in others it may be required.
  8722. type: string
  8723. name:
  8724. description: The name of the Secret resource being referred to.
  8725. type: string
  8726. namespace:
  8727. description: |-
  8728. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8729. to the namespace of the referent.
  8730. type: string
  8731. type: object
  8732. sessionTokenSecretRef:
  8733. description: |-
  8734. The SessionToken used for authentication
  8735. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8736. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8737. properties:
  8738. key:
  8739. description: |-
  8740. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8741. defaulted, in others it may be required.
  8742. type: string
  8743. name:
  8744. description: The name of the Secret resource being referred to.
  8745. type: string
  8746. namespace:
  8747. description: |-
  8748. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8749. to the namespace of the referent.
  8750. type: string
  8751. type: object
  8752. type: object
  8753. vaultAwsIamServerID:
  8754. 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'
  8755. type: string
  8756. vaultRole:
  8757. 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
  8758. type: string
  8759. required:
  8760. - vaultRole
  8761. type: object
  8762. jwt:
  8763. description: |-
  8764. Jwt authenticates with Vault by passing role and JWT token using the
  8765. JWT/OIDC authentication method
  8766. properties:
  8767. kubernetesServiceAccountToken:
  8768. description: |-
  8769. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  8770. a token for with the `TokenRequest` API.
  8771. properties:
  8772. audiences:
  8773. description: |-
  8774. Optional audiences field that will be used to request a temporary Kubernetes service
  8775. account token for the service account referenced by `serviceAccountRef`.
  8776. Defaults to a single audience `vault` it not specified.
  8777. Deprecated: use serviceAccountRef.Audiences instead
  8778. items:
  8779. type: string
  8780. type: array
  8781. expirationSeconds:
  8782. description: |-
  8783. Optional expiration time in seconds that will be used to request a temporary
  8784. Kubernetes service account token for the service account referenced by
  8785. `serviceAccountRef`.
  8786. Deprecated: this will be removed in the future.
  8787. Defaults to 10 minutes.
  8788. format: int64
  8789. type: integer
  8790. serviceAccountRef:
  8791. description: Service account field containing the name of a kubernetes ServiceAccount.
  8792. properties:
  8793. audiences:
  8794. description: |-
  8795. Audience specifies the `aud` claim for the service account token
  8796. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8797. then this audiences will be appended to the list
  8798. items:
  8799. type: string
  8800. type: array
  8801. name:
  8802. description: The name of the ServiceAccount resource being referred to.
  8803. type: string
  8804. namespace:
  8805. description: |-
  8806. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8807. to the namespace of the referent.
  8808. type: string
  8809. required:
  8810. - name
  8811. type: object
  8812. required:
  8813. - serviceAccountRef
  8814. type: object
  8815. path:
  8816. default: jwt
  8817. description: |-
  8818. Path where the JWT authentication backend is mounted
  8819. in Vault, e.g: "jwt"
  8820. type: string
  8821. role:
  8822. description: |-
  8823. Role is a JWT role to authenticate using the JWT/OIDC Vault
  8824. authentication method
  8825. type: string
  8826. secretRef:
  8827. description: |-
  8828. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  8829. authenticate with Vault using the JWT/OIDC authentication method.
  8830. properties:
  8831. key:
  8832. description: |-
  8833. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8834. defaulted, in others it may be required.
  8835. type: string
  8836. name:
  8837. description: The name of the Secret resource being referred to.
  8838. type: string
  8839. namespace:
  8840. description: |-
  8841. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8842. to the namespace of the referent.
  8843. type: string
  8844. type: object
  8845. required:
  8846. - path
  8847. type: object
  8848. kubernetes:
  8849. description: |-
  8850. Kubernetes authenticates with Vault by passing the ServiceAccount
  8851. token stored in the named Secret resource to the Vault server.
  8852. properties:
  8853. mountPath:
  8854. default: kubernetes
  8855. description: |-
  8856. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  8857. "kubernetes"
  8858. type: string
  8859. role:
  8860. description: |-
  8861. A required field containing the Vault Role to assume. A Role binds a
  8862. Kubernetes ServiceAccount with a set of Vault policies.
  8863. type: string
  8864. secretRef:
  8865. description: |-
  8866. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8867. for authenticating with Vault. If a name is specified without a key,
  8868. `token` is the default. If one is not specified, the one bound to
  8869. the controller will be used.
  8870. properties:
  8871. key:
  8872. description: |-
  8873. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8874. defaulted, in others it may be required.
  8875. type: string
  8876. name:
  8877. description: The name of the Secret resource being referred to.
  8878. type: string
  8879. namespace:
  8880. description: |-
  8881. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8882. to the namespace of the referent.
  8883. type: string
  8884. type: object
  8885. serviceAccountRef:
  8886. description: |-
  8887. Optional service account field containing the name of a kubernetes ServiceAccount.
  8888. If the service account is specified, the service account secret token JWT will be used
  8889. for authenticating with Vault. If the service account selector is not supplied,
  8890. the secretRef will be used instead.
  8891. properties:
  8892. audiences:
  8893. description: |-
  8894. Audience specifies the `aud` claim for the service account token
  8895. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8896. then this audiences will be appended to the list
  8897. items:
  8898. type: string
  8899. type: array
  8900. name:
  8901. description: The name of the ServiceAccount resource being referred to.
  8902. type: string
  8903. namespace:
  8904. description: |-
  8905. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8906. to the namespace of the referent.
  8907. type: string
  8908. required:
  8909. - name
  8910. type: object
  8911. required:
  8912. - mountPath
  8913. - role
  8914. type: object
  8915. ldap:
  8916. description: |-
  8917. Ldap authenticates with Vault by passing username/password pair using
  8918. the LDAP authentication method
  8919. properties:
  8920. path:
  8921. default: ldap
  8922. description: |-
  8923. Path where the LDAP authentication backend is mounted
  8924. in Vault, e.g: "ldap"
  8925. type: string
  8926. secretRef:
  8927. description: |-
  8928. SecretRef to a key in a Secret resource containing password for the LDAP
  8929. user used to authenticate with Vault using the LDAP authentication
  8930. method
  8931. properties:
  8932. key:
  8933. description: |-
  8934. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8935. defaulted, in others it may be required.
  8936. type: string
  8937. name:
  8938. description: The name of the Secret resource being referred to.
  8939. type: string
  8940. namespace:
  8941. description: |-
  8942. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8943. to the namespace of the referent.
  8944. type: string
  8945. type: object
  8946. username:
  8947. description: |-
  8948. Username is a LDAP user name used to authenticate using the LDAP Vault
  8949. authentication method
  8950. type: string
  8951. required:
  8952. - path
  8953. - username
  8954. type: object
  8955. tokenSecretRef:
  8956. description: TokenSecretRef authenticates with Vault by presenting a token.
  8957. properties:
  8958. key:
  8959. description: |-
  8960. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8961. defaulted, in others it may be required.
  8962. type: string
  8963. name:
  8964. description: The name of the Secret resource being referred to.
  8965. type: string
  8966. namespace:
  8967. description: |-
  8968. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8969. to the namespace of the referent.
  8970. type: string
  8971. type: object
  8972. userPass:
  8973. description: UserPass authenticates with Vault by passing username/password pair
  8974. properties:
  8975. path:
  8976. default: user
  8977. description: |-
  8978. Path where the UserPassword authentication backend is mounted
  8979. in Vault, e.g: "user"
  8980. type: string
  8981. secretRef:
  8982. description: |-
  8983. SecretRef to a key in a Secret resource containing password for the
  8984. user used to authenticate with Vault using the UserPass authentication
  8985. method
  8986. properties:
  8987. key:
  8988. description: |-
  8989. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8990. defaulted, in others it may be required.
  8991. type: string
  8992. name:
  8993. description: The name of the Secret resource being referred to.
  8994. type: string
  8995. namespace:
  8996. description: |-
  8997. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8998. to the namespace of the referent.
  8999. type: string
  9000. type: object
  9001. username:
  9002. description: |-
  9003. Username is a user name used to authenticate using the UserPass Vault
  9004. authentication method
  9005. type: string
  9006. required:
  9007. - path
  9008. - username
  9009. type: object
  9010. type: object
  9011. caBundle:
  9012. description: |-
  9013. PEM encoded CA bundle used to validate Vault server certificate. Only used
  9014. if the Server URL is using HTTPS protocol. This parameter is ignored for
  9015. plain HTTP protocol connection. If not set the system root certificates
  9016. are used to validate the TLS connection.
  9017. format: byte
  9018. type: string
  9019. caProvider:
  9020. description: The provider for the CA bundle to use to validate Vault server certificate.
  9021. properties:
  9022. key:
  9023. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9024. type: string
  9025. name:
  9026. description: The name of the object located at the provider type.
  9027. type: string
  9028. namespace:
  9029. description: |-
  9030. The namespace the Provider type is in.
  9031. Can only be defined when used in a ClusterSecretStore.
  9032. type: string
  9033. type:
  9034. description: The type of provider to use such as "Secret", or "ConfigMap".
  9035. enum:
  9036. - Secret
  9037. - ConfigMap
  9038. type: string
  9039. required:
  9040. - name
  9041. - type
  9042. type: object
  9043. forwardInconsistent:
  9044. description: |-
  9045. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  9046. leader instead of simply retrying within a loop. This can increase performance if
  9047. the option is enabled serverside.
  9048. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  9049. type: boolean
  9050. namespace:
  9051. description: |-
  9052. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  9053. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  9054. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  9055. type: string
  9056. path:
  9057. description: |-
  9058. Path is the mount path of the Vault KV backend endpoint, e.g:
  9059. "secret". The v2 KV secret engine version specific "/data" path suffix
  9060. for fetching secrets from Vault is optional and will be appended
  9061. if not present in specified path.
  9062. type: string
  9063. readYourWrites:
  9064. description: |-
  9065. ReadYourWrites ensures isolated read-after-write semantics by
  9066. providing discovered cluster replication states in each request.
  9067. More information about eventual consistency in Vault can be found here
  9068. https://www.vaultproject.io/docs/enterprise/consistency
  9069. type: boolean
  9070. server:
  9071. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  9072. type: string
  9073. tls:
  9074. description: |-
  9075. The configuration used for client side related TLS communication, when the Vault server
  9076. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  9077. This parameter is ignored for plain HTTP protocol connection.
  9078. It's worth noting this configuration is different from the "TLS certificates auth method",
  9079. which is available under the `auth.cert` section.
  9080. properties:
  9081. certSecretRef:
  9082. description: |-
  9083. CertSecretRef is a certificate added to the transport layer
  9084. when communicating with the Vault server.
  9085. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  9086. properties:
  9087. key:
  9088. description: |-
  9089. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9090. defaulted, in others it may be required.
  9091. type: string
  9092. name:
  9093. description: The name of the Secret resource being referred to.
  9094. type: string
  9095. namespace:
  9096. description: |-
  9097. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9098. to the namespace of the referent.
  9099. type: string
  9100. type: object
  9101. keySecretRef:
  9102. description: |-
  9103. KeySecretRef to a key in a Secret resource containing client private key
  9104. added to the transport layer when communicating with the Vault server.
  9105. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  9106. properties:
  9107. key:
  9108. description: |-
  9109. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9110. defaulted, in others it may be required.
  9111. type: string
  9112. name:
  9113. description: The name of the Secret resource being referred to.
  9114. type: string
  9115. namespace:
  9116. description: |-
  9117. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9118. to the namespace of the referent.
  9119. type: string
  9120. type: object
  9121. type: object
  9122. version:
  9123. default: v2
  9124. description: |-
  9125. Version is the Vault KV secret engine version. This can be either "v1" or
  9126. "v2". Version defaults to "v2".
  9127. enum:
  9128. - v1
  9129. - v2
  9130. type: string
  9131. required:
  9132. - auth
  9133. - server
  9134. type: object
  9135. webhook:
  9136. description: Webhook configures this store to sync secrets using a generic templated webhook
  9137. properties:
  9138. body:
  9139. description: Body
  9140. type: string
  9141. caBundle:
  9142. description: |-
  9143. PEM encoded CA bundle used to validate webhook server certificate. Only used
  9144. if the Server URL is using HTTPS protocol. This parameter is ignored for
  9145. plain HTTP protocol connection. If not set the system root certificates
  9146. are used to validate the TLS connection.
  9147. format: byte
  9148. type: string
  9149. caProvider:
  9150. description: The provider for the CA bundle to use to validate webhook server certificate.
  9151. properties:
  9152. key:
  9153. description: The key the value inside of the provider type to use, only used with "Secret" type
  9154. type: string
  9155. name:
  9156. description: The name of the object located at the provider type.
  9157. type: string
  9158. namespace:
  9159. description: The namespace the Provider type is in.
  9160. type: string
  9161. type:
  9162. description: The type of provider to use such as "Secret", or "ConfigMap".
  9163. enum:
  9164. - Secret
  9165. - ConfigMap
  9166. type: string
  9167. required:
  9168. - name
  9169. - type
  9170. type: object
  9171. headers:
  9172. additionalProperties:
  9173. type: string
  9174. description: Headers
  9175. type: object
  9176. method:
  9177. description: Webhook Method
  9178. type: string
  9179. result:
  9180. description: Result formatting
  9181. properties:
  9182. jsonPath:
  9183. description: Json path of return value
  9184. type: string
  9185. type: object
  9186. secrets:
  9187. description: |-
  9188. Secrets to fill in templates
  9189. These secrets will be passed to the templating function as key value pairs under the given name
  9190. items:
  9191. properties:
  9192. name:
  9193. description: Name of this secret in templates
  9194. type: string
  9195. secretRef:
  9196. description: Secret ref to fill in credentials
  9197. properties:
  9198. key:
  9199. description: |-
  9200. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9201. defaulted, in others it may be required.
  9202. type: string
  9203. name:
  9204. description: The name of the Secret resource being referred to.
  9205. type: string
  9206. namespace:
  9207. description: |-
  9208. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9209. to the namespace of the referent.
  9210. type: string
  9211. type: object
  9212. required:
  9213. - name
  9214. - secretRef
  9215. type: object
  9216. type: array
  9217. timeout:
  9218. description: Timeout
  9219. type: string
  9220. url:
  9221. description: Webhook url to call
  9222. type: string
  9223. required:
  9224. - result
  9225. - url
  9226. type: object
  9227. yandexcertificatemanager:
  9228. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  9229. properties:
  9230. apiEndpoint:
  9231. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  9232. type: string
  9233. auth:
  9234. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  9235. properties:
  9236. authorizedKeySecretRef:
  9237. description: The authorized key used for authentication
  9238. properties:
  9239. key:
  9240. description: |-
  9241. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9242. defaulted, in others it may be required.
  9243. type: string
  9244. name:
  9245. description: The name of the Secret resource being referred to.
  9246. type: string
  9247. namespace:
  9248. description: |-
  9249. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9250. to the namespace of the referent.
  9251. type: string
  9252. type: object
  9253. type: object
  9254. caProvider:
  9255. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  9256. properties:
  9257. certSecretRef:
  9258. description: |-
  9259. A reference to a specific 'key' within a Secret resource,
  9260. In some instances, `key` is a required field.
  9261. properties:
  9262. key:
  9263. description: |-
  9264. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9265. defaulted, in others it may be required.
  9266. type: string
  9267. name:
  9268. description: The name of the Secret resource being referred to.
  9269. type: string
  9270. namespace:
  9271. description: |-
  9272. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9273. to the namespace of the referent.
  9274. type: string
  9275. type: object
  9276. type: object
  9277. required:
  9278. - auth
  9279. type: object
  9280. yandexlockbox:
  9281. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  9282. properties:
  9283. apiEndpoint:
  9284. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  9285. type: string
  9286. auth:
  9287. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  9288. properties:
  9289. authorizedKeySecretRef:
  9290. description: The authorized key used for authentication
  9291. properties:
  9292. key:
  9293. description: |-
  9294. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9295. defaulted, in others it may be required.
  9296. type: string
  9297. name:
  9298. description: The name of the Secret resource being referred to.
  9299. type: string
  9300. namespace:
  9301. description: |-
  9302. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9303. to the namespace of the referent.
  9304. type: string
  9305. type: object
  9306. type: object
  9307. caProvider:
  9308. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  9309. properties:
  9310. certSecretRef:
  9311. description: |-
  9312. A reference to a specific 'key' within a Secret resource,
  9313. In some instances, `key` is a required field.
  9314. properties:
  9315. key:
  9316. description: |-
  9317. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9318. defaulted, in others it may be required.
  9319. type: string
  9320. name:
  9321. description: The name of the Secret resource being referred to.
  9322. type: string
  9323. namespace:
  9324. description: |-
  9325. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9326. to the namespace of the referent.
  9327. type: string
  9328. type: object
  9329. type: object
  9330. required:
  9331. - auth
  9332. type: object
  9333. type: object
  9334. refreshInterval:
  9335. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  9336. type: integer
  9337. retrySettings:
  9338. description: Used to configure http retries if failed
  9339. properties:
  9340. maxRetries:
  9341. format: int32
  9342. type: integer
  9343. retryInterval:
  9344. type: string
  9345. type: object
  9346. required:
  9347. - provider
  9348. type: object
  9349. status:
  9350. description: SecretStoreStatus defines the observed state of the SecretStore.
  9351. properties:
  9352. capabilities:
  9353. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  9354. type: string
  9355. conditions:
  9356. items:
  9357. properties:
  9358. lastTransitionTime:
  9359. format: date-time
  9360. type: string
  9361. message:
  9362. type: string
  9363. reason:
  9364. type: string
  9365. status:
  9366. type: string
  9367. type:
  9368. type: string
  9369. required:
  9370. - status
  9371. - type
  9372. type: object
  9373. type: array
  9374. type: object
  9375. type: object
  9376. served: true
  9377. storage: true
  9378. subresources:
  9379. status: {}
  9380. conversion:
  9381. strategy: Webhook
  9382. webhook:
  9383. conversionReviewVersions:
  9384. - v1
  9385. clientConfig:
  9386. service:
  9387. name: kubernetes
  9388. namespace: default
  9389. path: /convert
  9390. ---
  9391. apiVersion: apiextensions.k8s.io/v1
  9392. kind: CustomResourceDefinition
  9393. metadata:
  9394. annotations:
  9395. controller-gen.kubebuilder.io/version: v0.14.0
  9396. name: acraccesstokens.generators.external-secrets.io
  9397. spec:
  9398. group: generators.external-secrets.io
  9399. names:
  9400. categories:
  9401. - acraccesstoken
  9402. kind: ACRAccessToken
  9403. listKind: ACRAccessTokenList
  9404. plural: acraccesstokens
  9405. shortNames:
  9406. - acraccesstoken
  9407. singular: acraccesstoken
  9408. scope: Namespaced
  9409. versions:
  9410. - name: v1alpha1
  9411. schema:
  9412. openAPIV3Schema:
  9413. description: |-
  9414. ACRAccessToken returns a Azure Container Registry token
  9415. that can be used for pushing/pulling images.
  9416. Note: by default it will return an ACR Refresh Token with full access
  9417. (depending on the identity).
  9418. This can be scoped down to the repository level using .spec.scope.
  9419. In case scope is defined it will return an ACR Access Token.
  9420. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  9421. properties:
  9422. apiVersion:
  9423. description: |-
  9424. APIVersion defines the versioned schema of this representation of an object.
  9425. Servers should convert recognized schemas to the latest internal value, and
  9426. may reject unrecognized values.
  9427. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  9428. type: string
  9429. kind:
  9430. description: |-
  9431. Kind is a string value representing the REST resource this object represents.
  9432. Servers may infer this from the endpoint the client submits requests to.
  9433. Cannot be updated.
  9434. In CamelCase.
  9435. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  9436. type: string
  9437. metadata:
  9438. type: object
  9439. spec:
  9440. description: |-
  9441. ACRAccessTokenSpec defines how to generate the access token
  9442. e.g. how to authenticate and which registry to use.
  9443. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  9444. properties:
  9445. auth:
  9446. properties:
  9447. managedIdentity:
  9448. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  9449. properties:
  9450. identityId:
  9451. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9452. type: string
  9453. type: object
  9454. servicePrincipal:
  9455. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  9456. properties:
  9457. secretRef:
  9458. description: |-
  9459. Configuration used to authenticate with Azure using static
  9460. credentials stored in a Kind=Secret.
  9461. properties:
  9462. clientId:
  9463. description: The Azure clientId of the service principle used for authentication.
  9464. properties:
  9465. key:
  9466. description: |-
  9467. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9468. defaulted, in others it may be required.
  9469. type: string
  9470. name:
  9471. description: The name of the Secret resource being referred to.
  9472. type: string
  9473. namespace:
  9474. description: |-
  9475. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9476. to the namespace of the referent.
  9477. type: string
  9478. type: object
  9479. clientSecret:
  9480. description: The Azure ClientSecret of the service principle used for authentication.
  9481. properties:
  9482. key:
  9483. description: |-
  9484. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9485. defaulted, in others it may be required.
  9486. type: string
  9487. name:
  9488. description: The name of the Secret resource being referred to.
  9489. type: string
  9490. namespace:
  9491. description: |-
  9492. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9493. to the namespace of the referent.
  9494. type: string
  9495. type: object
  9496. type: object
  9497. required:
  9498. - secretRef
  9499. type: object
  9500. workloadIdentity:
  9501. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  9502. properties:
  9503. serviceAccountRef:
  9504. description: |-
  9505. ServiceAccountRef specified the service account
  9506. that should be used when authenticating with WorkloadIdentity.
  9507. properties:
  9508. audiences:
  9509. description: |-
  9510. Audience specifies the `aud` claim for the service account token
  9511. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9512. then this audiences will be appended to the list
  9513. items:
  9514. type: string
  9515. type: array
  9516. name:
  9517. description: The name of the ServiceAccount resource being referred to.
  9518. type: string
  9519. namespace:
  9520. description: |-
  9521. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9522. to the namespace of the referent.
  9523. type: string
  9524. required:
  9525. - name
  9526. type: object
  9527. type: object
  9528. type: object
  9529. environmentType:
  9530. default: PublicCloud
  9531. description: |-
  9532. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9533. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9534. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9535. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9536. enum:
  9537. - PublicCloud
  9538. - USGovernmentCloud
  9539. - ChinaCloud
  9540. - GermanCloud
  9541. type: string
  9542. registry:
  9543. description: |-
  9544. the domain name of the ACR registry
  9545. e.g. foobarexample.azurecr.io
  9546. type: string
  9547. scope:
  9548. description: |-
  9549. Define the scope for the access token, e.g. pull/push access for a repository.
  9550. if not provided it will return a refresh token that has full scope.
  9551. Note: you need to pin it down to the repository level, there is no wildcard available.
  9552. examples:
  9553. repository:my-repository:pull,push
  9554. repository:my-repository:pull
  9555. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  9556. type: string
  9557. tenantId:
  9558. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  9559. type: string
  9560. required:
  9561. - auth
  9562. - registry
  9563. type: object
  9564. type: object
  9565. served: true
  9566. storage: true
  9567. subresources:
  9568. status: {}
  9569. conversion:
  9570. strategy: Webhook
  9571. webhook:
  9572. conversionReviewVersions:
  9573. - v1
  9574. clientConfig:
  9575. service:
  9576. name: kubernetes
  9577. namespace: default
  9578. path: /convert
  9579. ---
  9580. apiVersion: apiextensions.k8s.io/v1
  9581. kind: CustomResourceDefinition
  9582. metadata:
  9583. annotations:
  9584. controller-gen.kubebuilder.io/version: v0.14.0
  9585. name: ecrauthorizationtokens.generators.external-secrets.io
  9586. spec:
  9587. group: generators.external-secrets.io
  9588. names:
  9589. categories:
  9590. - ecrauthorizationtoken
  9591. kind: ECRAuthorizationToken
  9592. listKind: ECRAuthorizationTokenList
  9593. plural: ecrauthorizationtokens
  9594. shortNames:
  9595. - ecrauthorizationtoken
  9596. singular: ecrauthorizationtoken
  9597. scope: Namespaced
  9598. versions:
  9599. - name: v1alpha1
  9600. schema:
  9601. openAPIV3Schema:
  9602. description: |-
  9603. ECRAuthorizationTokenSpec uses the GetAuthorizationToken API to retrieve an
  9604. authorization token.
  9605. The authorization token is valid for 12 hours.
  9606. The authorizationToken returned is a base64 encoded string that can be decoded
  9607. and used in a docker login command to authenticate to a registry.
  9608. 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.
  9609. properties:
  9610. apiVersion:
  9611. description: |-
  9612. APIVersion defines the versioned schema of this representation of an object.
  9613. Servers should convert recognized schemas to the latest internal value, and
  9614. may reject unrecognized values.
  9615. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  9616. type: string
  9617. kind:
  9618. description: |-
  9619. Kind is a string value representing the REST resource this object represents.
  9620. Servers may infer this from the endpoint the client submits requests to.
  9621. Cannot be updated.
  9622. In CamelCase.
  9623. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  9624. type: string
  9625. metadata:
  9626. type: object
  9627. spec:
  9628. properties:
  9629. auth:
  9630. description: Auth defines how to authenticate with AWS
  9631. properties:
  9632. jwt:
  9633. description: Authenticate against AWS using service account tokens.
  9634. properties:
  9635. serviceAccountRef:
  9636. description: A reference to a ServiceAccount resource.
  9637. properties:
  9638. audiences:
  9639. description: |-
  9640. Audience specifies the `aud` claim for the service account token
  9641. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9642. then this audiences will be appended to the list
  9643. items:
  9644. type: string
  9645. type: array
  9646. name:
  9647. description: The name of the ServiceAccount resource being referred to.
  9648. type: string
  9649. namespace:
  9650. description: |-
  9651. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9652. to the namespace of the referent.
  9653. type: string
  9654. required:
  9655. - name
  9656. type: object
  9657. type: object
  9658. secretRef:
  9659. description: |-
  9660. AWSAuthSecretRef holds secret references for AWS credentials
  9661. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  9662. properties:
  9663. accessKeyIDSecretRef:
  9664. description: The AccessKeyID is used for authentication
  9665. properties:
  9666. key:
  9667. description: |-
  9668. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9669. defaulted, in others it may be required.
  9670. type: string
  9671. name:
  9672. description: The name of the Secret resource being referred to.
  9673. type: string
  9674. namespace:
  9675. description: |-
  9676. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9677. to the namespace of the referent.
  9678. type: string
  9679. type: object
  9680. secretAccessKeySecretRef:
  9681. description: The SecretAccessKey is used for authentication
  9682. properties:
  9683. key:
  9684. description: |-
  9685. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9686. defaulted, in others it may be required.
  9687. type: string
  9688. name:
  9689. description: The name of the Secret resource being referred to.
  9690. type: string
  9691. namespace:
  9692. description: |-
  9693. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9694. to the namespace of the referent.
  9695. type: string
  9696. type: object
  9697. sessionTokenSecretRef:
  9698. description: |-
  9699. The SessionToken used for authentication
  9700. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  9701. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  9702. properties:
  9703. key:
  9704. description: |-
  9705. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9706. defaulted, in others it may be required.
  9707. type: string
  9708. name:
  9709. description: The name of the Secret resource being referred to.
  9710. type: string
  9711. namespace:
  9712. description: |-
  9713. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9714. to the namespace of the referent.
  9715. type: string
  9716. type: object
  9717. type: object
  9718. type: object
  9719. region:
  9720. description: Region specifies the region to operate in.
  9721. type: string
  9722. role:
  9723. description: |-
  9724. You can assume a role before making calls to the
  9725. desired AWS service.
  9726. type: string
  9727. required:
  9728. - region
  9729. type: object
  9730. type: object
  9731. served: true
  9732. storage: true
  9733. subresources:
  9734. status: {}
  9735. conversion:
  9736. strategy: Webhook
  9737. webhook:
  9738. conversionReviewVersions:
  9739. - v1
  9740. clientConfig:
  9741. service:
  9742. name: kubernetes
  9743. namespace: default
  9744. path: /convert
  9745. ---
  9746. apiVersion: apiextensions.k8s.io/v1
  9747. kind: CustomResourceDefinition
  9748. metadata:
  9749. annotations:
  9750. controller-gen.kubebuilder.io/version: v0.14.0
  9751. name: fakes.generators.external-secrets.io
  9752. spec:
  9753. group: generators.external-secrets.io
  9754. names:
  9755. categories:
  9756. - fake
  9757. kind: Fake
  9758. listKind: FakeList
  9759. plural: fakes
  9760. shortNames:
  9761. - fake
  9762. singular: fake
  9763. scope: Namespaced
  9764. versions:
  9765. - name: v1alpha1
  9766. schema:
  9767. openAPIV3Schema:
  9768. description: |-
  9769. Fake generator is used for testing. It lets you define
  9770. a static set of credentials that is always returned.
  9771. properties:
  9772. apiVersion:
  9773. description: |-
  9774. APIVersion defines the versioned schema of this representation of an object.
  9775. Servers should convert recognized schemas to the latest internal value, and
  9776. may reject unrecognized values.
  9777. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  9778. type: string
  9779. kind:
  9780. description: |-
  9781. Kind is a string value representing the REST resource this object represents.
  9782. Servers may infer this from the endpoint the client submits requests to.
  9783. Cannot be updated.
  9784. In CamelCase.
  9785. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  9786. type: string
  9787. metadata:
  9788. type: object
  9789. spec:
  9790. description: FakeSpec contains the static data.
  9791. properties:
  9792. controller:
  9793. description: |-
  9794. Used to select the correct ESO controller (think: ingress.ingressClassName)
  9795. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  9796. type: string
  9797. data:
  9798. additionalProperties:
  9799. type: string
  9800. description: |-
  9801. Data defines the static data returned
  9802. by this generator.
  9803. type: object
  9804. type: object
  9805. type: object
  9806. served: true
  9807. storage: true
  9808. subresources:
  9809. status: {}
  9810. conversion:
  9811. strategy: Webhook
  9812. webhook:
  9813. conversionReviewVersions:
  9814. - v1
  9815. clientConfig:
  9816. service:
  9817. name: kubernetes
  9818. namespace: default
  9819. path: /convert
  9820. ---
  9821. apiVersion: apiextensions.k8s.io/v1
  9822. kind: CustomResourceDefinition
  9823. metadata:
  9824. annotations:
  9825. controller-gen.kubebuilder.io/version: v0.14.0
  9826. name: gcraccesstokens.generators.external-secrets.io
  9827. spec:
  9828. group: generators.external-secrets.io
  9829. names:
  9830. categories:
  9831. - gcraccesstoken
  9832. kind: GCRAccessToken
  9833. listKind: GCRAccessTokenList
  9834. plural: gcraccesstokens
  9835. shortNames:
  9836. - gcraccesstoken
  9837. singular: gcraccesstoken
  9838. scope: Namespaced
  9839. versions:
  9840. - name: v1alpha1
  9841. schema:
  9842. openAPIV3Schema:
  9843. description: |-
  9844. GCRAccessToken generates an GCP access token
  9845. that can be used to authenticate with GCR.
  9846. properties:
  9847. apiVersion:
  9848. description: |-
  9849. APIVersion defines the versioned schema of this representation of an object.
  9850. Servers should convert recognized schemas to the latest internal value, and
  9851. may reject unrecognized values.
  9852. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  9853. type: string
  9854. kind:
  9855. description: |-
  9856. Kind is a string value representing the REST resource this object represents.
  9857. Servers may infer this from the endpoint the client submits requests to.
  9858. Cannot be updated.
  9859. In CamelCase.
  9860. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  9861. type: string
  9862. metadata:
  9863. type: object
  9864. spec:
  9865. properties:
  9866. auth:
  9867. description: Auth defines the means for authenticating with GCP
  9868. properties:
  9869. secretRef:
  9870. properties:
  9871. secretAccessKeySecretRef:
  9872. description: The SecretAccessKey is used for authentication
  9873. properties:
  9874. key:
  9875. description: |-
  9876. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9877. defaulted, in others it may be required.
  9878. type: string
  9879. name:
  9880. description: The name of the Secret resource being referred to.
  9881. type: string
  9882. namespace:
  9883. description: |-
  9884. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9885. to the namespace of the referent.
  9886. type: string
  9887. type: object
  9888. type: object
  9889. workloadIdentity:
  9890. properties:
  9891. clusterLocation:
  9892. type: string
  9893. clusterName:
  9894. type: string
  9895. clusterProjectID:
  9896. type: string
  9897. serviceAccountRef:
  9898. description: A reference to a ServiceAccount resource.
  9899. properties:
  9900. audiences:
  9901. description: |-
  9902. Audience specifies the `aud` claim for the service account token
  9903. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9904. then this audiences will be appended to the list
  9905. items:
  9906. type: string
  9907. type: array
  9908. name:
  9909. description: The name of the ServiceAccount resource being referred to.
  9910. type: string
  9911. namespace:
  9912. description: |-
  9913. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9914. to the namespace of the referent.
  9915. type: string
  9916. required:
  9917. - name
  9918. type: object
  9919. required:
  9920. - clusterLocation
  9921. - clusterName
  9922. - serviceAccountRef
  9923. type: object
  9924. type: object
  9925. projectID:
  9926. description: ProjectID defines which project to use to authenticate with
  9927. type: string
  9928. required:
  9929. - auth
  9930. - projectID
  9931. type: object
  9932. type: object
  9933. served: true
  9934. storage: true
  9935. subresources:
  9936. status: {}
  9937. conversion:
  9938. strategy: Webhook
  9939. webhook:
  9940. conversionReviewVersions:
  9941. - v1
  9942. clientConfig:
  9943. service:
  9944. name: kubernetes
  9945. namespace: default
  9946. path: /convert
  9947. ---
  9948. apiVersion: apiextensions.k8s.io/v1
  9949. kind: CustomResourceDefinition
  9950. metadata:
  9951. annotations:
  9952. controller-gen.kubebuilder.io/version: v0.14.0
  9953. name: passwords.generators.external-secrets.io
  9954. spec:
  9955. group: generators.external-secrets.io
  9956. names:
  9957. categories:
  9958. - password
  9959. kind: Password
  9960. listKind: PasswordList
  9961. plural: passwords
  9962. shortNames:
  9963. - password
  9964. singular: password
  9965. scope: Namespaced
  9966. versions:
  9967. - name: v1alpha1
  9968. schema:
  9969. openAPIV3Schema:
  9970. description: |-
  9971. Password generates a random password based on the
  9972. configuration parameters in spec.
  9973. You can specify the length, characterset and other attributes.
  9974. properties:
  9975. apiVersion:
  9976. description: |-
  9977. APIVersion defines the versioned schema of this representation of an object.
  9978. Servers should convert recognized schemas to the latest internal value, and
  9979. may reject unrecognized values.
  9980. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  9981. type: string
  9982. kind:
  9983. description: |-
  9984. Kind is a string value representing the REST resource this object represents.
  9985. Servers may infer this from the endpoint the client submits requests to.
  9986. Cannot be updated.
  9987. In CamelCase.
  9988. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  9989. type: string
  9990. metadata:
  9991. type: object
  9992. spec:
  9993. description: PasswordSpec controls the behavior of the password generator.
  9994. properties:
  9995. allowRepeat:
  9996. default: false
  9997. description: set AllowRepeat to true to allow repeating characters.
  9998. type: boolean
  9999. digits:
  10000. description: |-
  10001. Digits specifies the number of digits in the generated
  10002. password. If omitted it defaults to 25% of the length of the password
  10003. type: integer
  10004. length:
  10005. default: 24
  10006. description: |-
  10007. Length of the password to be generated.
  10008. Defaults to 24
  10009. type: integer
  10010. noUpper:
  10011. default: false
  10012. description: Set NoUpper to disable uppercase characters
  10013. type: boolean
  10014. symbolCharacters:
  10015. description: |-
  10016. SymbolCharacters specifies the special characters that should be used
  10017. in the generated password.
  10018. type: string
  10019. symbols:
  10020. description: |-
  10021. Symbols specifies the number of symbol characters in the generated
  10022. password. If omitted it defaults to 25% of the length of the password
  10023. type: integer
  10024. required:
  10025. - allowRepeat
  10026. - length
  10027. - noUpper
  10028. type: object
  10029. type: object
  10030. served: true
  10031. storage: true
  10032. subresources:
  10033. status: {}
  10034. conversion:
  10035. strategy: Webhook
  10036. webhook:
  10037. conversionReviewVersions:
  10038. - v1
  10039. clientConfig:
  10040. service:
  10041. name: kubernetes
  10042. namespace: default
  10043. path: /convert
  10044. ---
  10045. apiVersion: apiextensions.k8s.io/v1
  10046. kind: CustomResourceDefinition
  10047. metadata:
  10048. annotations:
  10049. controller-gen.kubebuilder.io/version: v0.14.0
  10050. name: vaultdynamicsecrets.generators.external-secrets.io
  10051. spec:
  10052. group: generators.external-secrets.io
  10053. names:
  10054. categories:
  10055. - vaultdynamicsecret
  10056. kind: VaultDynamicSecret
  10057. listKind: VaultDynamicSecretList
  10058. plural: vaultdynamicsecrets
  10059. shortNames:
  10060. - vaultdynamicsecret
  10061. singular: vaultdynamicsecret
  10062. scope: Namespaced
  10063. versions:
  10064. - name: v1alpha1
  10065. schema:
  10066. openAPIV3Schema:
  10067. properties:
  10068. apiVersion:
  10069. description: |-
  10070. APIVersion defines the versioned schema of this representation of an object.
  10071. Servers should convert recognized schemas to the latest internal value, and
  10072. may reject unrecognized values.
  10073. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  10074. type: string
  10075. kind:
  10076. description: |-
  10077. Kind is a string value representing the REST resource this object represents.
  10078. Servers may infer this from the endpoint the client submits requests to.
  10079. Cannot be updated.
  10080. In CamelCase.
  10081. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  10082. type: string
  10083. metadata:
  10084. type: object
  10085. spec:
  10086. properties:
  10087. controller:
  10088. description: |-
  10089. Used to select the correct ESO controller (think: ingress.ingressClassName)
  10090. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  10091. type: string
  10092. method:
  10093. description: Vault API method to use (GET/POST/other)
  10094. type: string
  10095. parameters:
  10096. description: Parameters to pass to Vault write (for non-GET methods)
  10097. x-kubernetes-preserve-unknown-fields: true
  10098. path:
  10099. description: Vault path to obtain the dynamic secret from
  10100. type: string
  10101. provider:
  10102. description: Vault provider common spec
  10103. properties:
  10104. auth:
  10105. description: Auth configures how secret-manager authenticates with the Vault server.
  10106. properties:
  10107. appRole:
  10108. description: |-
  10109. AppRole authenticates with Vault using the App Role auth mechanism,
  10110. with the role and secret stored in a Kubernetes Secret resource.
  10111. properties:
  10112. path:
  10113. default: approle
  10114. description: |-
  10115. Path where the App Role authentication backend is mounted
  10116. in Vault, e.g: "approle"
  10117. type: string
  10118. roleId:
  10119. description: |-
  10120. RoleID configured in the App Role authentication backend when setting
  10121. up the authentication backend in Vault.
  10122. type: string
  10123. roleRef:
  10124. description: |-
  10125. Reference to a key in a Secret that contains the App Role ID used
  10126. to authenticate with Vault.
  10127. The `key` field must be specified and denotes which entry within the Secret
  10128. resource is used as the app role id.
  10129. properties:
  10130. key:
  10131. description: |-
  10132. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10133. defaulted, in others it may be required.
  10134. type: string
  10135. name:
  10136. description: The name of the Secret resource being referred to.
  10137. type: string
  10138. namespace:
  10139. description: |-
  10140. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10141. to the namespace of the referent.
  10142. type: string
  10143. type: object
  10144. secretRef:
  10145. description: |-
  10146. Reference to a key in a Secret that contains the App Role secret used
  10147. to authenticate with Vault.
  10148. The `key` field must be specified and denotes which entry within the Secret
  10149. resource is used as the app role secret.
  10150. properties:
  10151. key:
  10152. description: |-
  10153. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10154. defaulted, in others it may be required.
  10155. type: string
  10156. name:
  10157. description: The name of the Secret resource being referred to.
  10158. type: string
  10159. namespace:
  10160. description: |-
  10161. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10162. to the namespace of the referent.
  10163. type: string
  10164. type: object
  10165. required:
  10166. - path
  10167. - secretRef
  10168. type: object
  10169. cert:
  10170. description: |-
  10171. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  10172. Cert authentication method
  10173. properties:
  10174. clientCert:
  10175. description: |-
  10176. ClientCert is a certificate to authenticate using the Cert Vault
  10177. authentication method
  10178. properties:
  10179. key:
  10180. description: |-
  10181. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10182. defaulted, in others it may be required.
  10183. type: string
  10184. name:
  10185. description: The name of the Secret resource being referred to.
  10186. type: string
  10187. namespace:
  10188. description: |-
  10189. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10190. to the namespace of the referent.
  10191. type: string
  10192. type: object
  10193. secretRef:
  10194. description: |-
  10195. SecretRef to a key in a Secret resource containing client private key to
  10196. authenticate with Vault using the Cert authentication method
  10197. properties:
  10198. key:
  10199. description: |-
  10200. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10201. defaulted, in others it may be required.
  10202. type: string
  10203. name:
  10204. description: The name of the Secret resource being referred to.
  10205. type: string
  10206. namespace:
  10207. description: |-
  10208. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10209. to the namespace of the referent.
  10210. type: string
  10211. type: object
  10212. type: object
  10213. iam:
  10214. description: |-
  10215. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  10216. AWS IAM authentication method
  10217. properties:
  10218. externalID:
  10219. description: AWS External ID set on assumed IAM roles
  10220. type: string
  10221. jwt:
  10222. description: Specify a service account with IRSA enabled
  10223. properties:
  10224. serviceAccountRef:
  10225. description: A reference to a ServiceAccount resource.
  10226. properties:
  10227. audiences:
  10228. description: |-
  10229. Audience specifies the `aud` claim for the service account token
  10230. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10231. then this audiences will be appended to the list
  10232. items:
  10233. type: string
  10234. type: array
  10235. name:
  10236. description: The name of the ServiceAccount resource being referred to.
  10237. type: string
  10238. namespace:
  10239. description: |-
  10240. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10241. to the namespace of the referent.
  10242. type: string
  10243. required:
  10244. - name
  10245. type: object
  10246. type: object
  10247. path:
  10248. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  10249. type: string
  10250. region:
  10251. description: AWS region
  10252. type: string
  10253. role:
  10254. description: This is the AWS role to be assumed before talking to vault
  10255. type: string
  10256. secretRef:
  10257. description: Specify credentials in a Secret object
  10258. properties:
  10259. accessKeyIDSecretRef:
  10260. description: The AccessKeyID is used for authentication
  10261. properties:
  10262. key:
  10263. description: |-
  10264. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10265. defaulted, in others it may be required.
  10266. type: string
  10267. name:
  10268. description: The name of the Secret resource being referred to.
  10269. type: string
  10270. namespace:
  10271. description: |-
  10272. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10273. to the namespace of the referent.
  10274. type: string
  10275. type: object
  10276. secretAccessKeySecretRef:
  10277. description: The SecretAccessKey is used for authentication
  10278. properties:
  10279. key:
  10280. description: |-
  10281. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10282. defaulted, in others it may be required.
  10283. type: string
  10284. name:
  10285. description: The name of the Secret resource being referred to.
  10286. type: string
  10287. namespace:
  10288. description: |-
  10289. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10290. to the namespace of the referent.
  10291. type: string
  10292. type: object
  10293. sessionTokenSecretRef:
  10294. description: |-
  10295. The SessionToken used for authentication
  10296. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  10297. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  10298. properties:
  10299. key:
  10300. description: |-
  10301. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10302. defaulted, in others it may be required.
  10303. type: string
  10304. name:
  10305. description: The name of the Secret resource being referred to.
  10306. type: string
  10307. namespace:
  10308. description: |-
  10309. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10310. to the namespace of the referent.
  10311. type: string
  10312. type: object
  10313. type: object
  10314. vaultAwsIamServerID:
  10315. 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'
  10316. type: string
  10317. vaultRole:
  10318. 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
  10319. type: string
  10320. required:
  10321. - vaultRole
  10322. type: object
  10323. jwt:
  10324. description: |-
  10325. Jwt authenticates with Vault by passing role and JWT token using the
  10326. JWT/OIDC authentication method
  10327. properties:
  10328. kubernetesServiceAccountToken:
  10329. description: |-
  10330. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  10331. a token for with the `TokenRequest` API.
  10332. properties:
  10333. audiences:
  10334. description: |-
  10335. Optional audiences field that will be used to request a temporary Kubernetes service
  10336. account token for the service account referenced by `serviceAccountRef`.
  10337. Defaults to a single audience `vault` it not specified.
  10338. Deprecated: use serviceAccountRef.Audiences instead
  10339. items:
  10340. type: string
  10341. type: array
  10342. expirationSeconds:
  10343. description: |-
  10344. Optional expiration time in seconds that will be used to request a temporary
  10345. Kubernetes service account token for the service account referenced by
  10346. `serviceAccountRef`.
  10347. Deprecated: this will be removed in the future.
  10348. Defaults to 10 minutes.
  10349. format: int64
  10350. type: integer
  10351. serviceAccountRef:
  10352. description: Service account field containing the name of a kubernetes ServiceAccount.
  10353. properties:
  10354. audiences:
  10355. description: |-
  10356. Audience specifies the `aud` claim for the service account token
  10357. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10358. then this audiences will be appended to the list
  10359. items:
  10360. type: string
  10361. type: array
  10362. name:
  10363. description: The name of the ServiceAccount resource being referred to.
  10364. type: string
  10365. namespace:
  10366. description: |-
  10367. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10368. to the namespace of the referent.
  10369. type: string
  10370. required:
  10371. - name
  10372. type: object
  10373. required:
  10374. - serviceAccountRef
  10375. type: object
  10376. path:
  10377. default: jwt
  10378. description: |-
  10379. Path where the JWT authentication backend is mounted
  10380. in Vault, e.g: "jwt"
  10381. type: string
  10382. role:
  10383. description: |-
  10384. Role is a JWT role to authenticate using the JWT/OIDC Vault
  10385. authentication method
  10386. type: string
  10387. secretRef:
  10388. description: |-
  10389. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  10390. authenticate with Vault using the JWT/OIDC authentication method.
  10391. properties:
  10392. key:
  10393. description: |-
  10394. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10395. defaulted, in others it may be required.
  10396. type: string
  10397. name:
  10398. description: The name of the Secret resource being referred to.
  10399. type: string
  10400. namespace:
  10401. description: |-
  10402. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10403. to the namespace of the referent.
  10404. type: string
  10405. type: object
  10406. required:
  10407. - path
  10408. type: object
  10409. kubernetes:
  10410. description: |-
  10411. Kubernetes authenticates with Vault by passing the ServiceAccount
  10412. token stored in the named Secret resource to the Vault server.
  10413. properties:
  10414. mountPath:
  10415. default: kubernetes
  10416. description: |-
  10417. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  10418. "kubernetes"
  10419. type: string
  10420. role:
  10421. description: |-
  10422. A required field containing the Vault Role to assume. A Role binds a
  10423. Kubernetes ServiceAccount with a set of Vault policies.
  10424. type: string
  10425. secretRef:
  10426. description: |-
  10427. Optional secret field containing a Kubernetes ServiceAccount JWT used
  10428. for authenticating with Vault. If a name is specified without a key,
  10429. `token` is the default. If one is not specified, the one bound to
  10430. the controller will be used.
  10431. properties:
  10432. key:
  10433. description: |-
  10434. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10435. defaulted, in others it may be required.
  10436. type: string
  10437. name:
  10438. description: The name of the Secret resource being referred to.
  10439. type: string
  10440. namespace:
  10441. description: |-
  10442. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10443. to the namespace of the referent.
  10444. type: string
  10445. type: object
  10446. serviceAccountRef:
  10447. description: |-
  10448. Optional service account field containing the name of a kubernetes ServiceAccount.
  10449. If the service account is specified, the service account secret token JWT will be used
  10450. for authenticating with Vault. If the service account selector is not supplied,
  10451. the secretRef will be used instead.
  10452. properties:
  10453. audiences:
  10454. description: |-
  10455. Audience specifies the `aud` claim for the service account token
  10456. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10457. then this audiences will be appended to the list
  10458. items:
  10459. type: string
  10460. type: array
  10461. name:
  10462. description: The name of the ServiceAccount resource being referred to.
  10463. type: string
  10464. namespace:
  10465. description: |-
  10466. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10467. to the namespace of the referent.
  10468. type: string
  10469. required:
  10470. - name
  10471. type: object
  10472. required:
  10473. - mountPath
  10474. - role
  10475. type: object
  10476. ldap:
  10477. description: |-
  10478. Ldap authenticates with Vault by passing username/password pair using
  10479. the LDAP authentication method
  10480. properties:
  10481. path:
  10482. default: ldap
  10483. description: |-
  10484. Path where the LDAP authentication backend is mounted
  10485. in Vault, e.g: "ldap"
  10486. type: string
  10487. secretRef:
  10488. description: |-
  10489. SecretRef to a key in a Secret resource containing password for the LDAP
  10490. user used to authenticate with Vault using the LDAP authentication
  10491. method
  10492. properties:
  10493. key:
  10494. description: |-
  10495. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10496. defaulted, in others it may be required.
  10497. type: string
  10498. name:
  10499. description: The name of the Secret resource being referred to.
  10500. type: string
  10501. namespace:
  10502. description: |-
  10503. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10504. to the namespace of the referent.
  10505. type: string
  10506. type: object
  10507. username:
  10508. description: |-
  10509. Username is a LDAP user name used to authenticate using the LDAP Vault
  10510. authentication method
  10511. type: string
  10512. required:
  10513. - path
  10514. - username
  10515. type: object
  10516. tokenSecretRef:
  10517. description: TokenSecretRef authenticates with Vault by presenting a token.
  10518. properties:
  10519. key:
  10520. description: |-
  10521. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10522. defaulted, in others it may be required.
  10523. type: string
  10524. name:
  10525. description: The name of the Secret resource being referred to.
  10526. type: string
  10527. namespace:
  10528. description: |-
  10529. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10530. to the namespace of the referent.
  10531. type: string
  10532. type: object
  10533. userPass:
  10534. description: UserPass authenticates with Vault by passing username/password pair
  10535. properties:
  10536. path:
  10537. default: user
  10538. description: |-
  10539. Path where the UserPassword authentication backend is mounted
  10540. in Vault, e.g: "user"
  10541. type: string
  10542. secretRef:
  10543. description: |-
  10544. SecretRef to a key in a Secret resource containing password for the
  10545. user used to authenticate with Vault using the UserPass authentication
  10546. method
  10547. properties:
  10548. key:
  10549. description: |-
  10550. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10551. defaulted, in others it may be required.
  10552. type: string
  10553. name:
  10554. description: The name of the Secret resource being referred to.
  10555. type: string
  10556. namespace:
  10557. description: |-
  10558. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10559. to the namespace of the referent.
  10560. type: string
  10561. type: object
  10562. username:
  10563. description: |-
  10564. Username is a user name used to authenticate using the UserPass Vault
  10565. authentication method
  10566. type: string
  10567. required:
  10568. - path
  10569. - username
  10570. type: object
  10571. type: object
  10572. caBundle:
  10573. description: |-
  10574. PEM encoded CA bundle used to validate Vault server certificate. Only used
  10575. if the Server URL is using HTTPS protocol. This parameter is ignored for
  10576. plain HTTP protocol connection. If not set the system root certificates
  10577. are used to validate the TLS connection.
  10578. format: byte
  10579. type: string
  10580. caProvider:
  10581. description: The provider for the CA bundle to use to validate Vault server certificate.
  10582. properties:
  10583. key:
  10584. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10585. type: string
  10586. name:
  10587. description: The name of the object located at the provider type.
  10588. type: string
  10589. namespace:
  10590. description: |-
  10591. The namespace the Provider type is in.
  10592. Can only be defined when used in a ClusterSecretStore.
  10593. type: string
  10594. type:
  10595. description: The type of provider to use such as "Secret", or "ConfigMap".
  10596. enum:
  10597. - Secret
  10598. - ConfigMap
  10599. type: string
  10600. required:
  10601. - name
  10602. - type
  10603. type: object
  10604. forwardInconsistent:
  10605. description: |-
  10606. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  10607. leader instead of simply retrying within a loop. This can increase performance if
  10608. the option is enabled serverside.
  10609. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  10610. type: boolean
  10611. namespace:
  10612. description: |-
  10613. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  10614. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  10615. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  10616. type: string
  10617. path:
  10618. description: |-
  10619. Path is the mount path of the Vault KV backend endpoint, e.g:
  10620. "secret". The v2 KV secret engine version specific "/data" path suffix
  10621. for fetching secrets from Vault is optional and will be appended
  10622. if not present in specified path.
  10623. type: string
  10624. readYourWrites:
  10625. description: |-
  10626. ReadYourWrites ensures isolated read-after-write semantics by
  10627. providing discovered cluster replication states in each request.
  10628. More information about eventual consistency in Vault can be found here
  10629. https://www.vaultproject.io/docs/enterprise/consistency
  10630. type: boolean
  10631. server:
  10632. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  10633. type: string
  10634. tls:
  10635. description: |-
  10636. The configuration used for client side related TLS communication, when the Vault server
  10637. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  10638. This parameter is ignored for plain HTTP protocol connection.
  10639. It's worth noting this configuration is different from the "TLS certificates auth method",
  10640. which is available under the `auth.cert` section.
  10641. properties:
  10642. certSecretRef:
  10643. description: |-
  10644. CertSecretRef is a certificate added to the transport layer
  10645. when communicating with the Vault server.
  10646. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  10647. properties:
  10648. key:
  10649. description: |-
  10650. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10651. defaulted, in others it may be required.
  10652. type: string
  10653. name:
  10654. description: The name of the Secret resource being referred to.
  10655. type: string
  10656. namespace:
  10657. description: |-
  10658. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10659. to the namespace of the referent.
  10660. type: string
  10661. type: object
  10662. keySecretRef:
  10663. description: |-
  10664. KeySecretRef to a key in a Secret resource containing client private key
  10665. added to the transport layer when communicating with the Vault server.
  10666. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  10667. properties:
  10668. key:
  10669. description: |-
  10670. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10671. defaulted, in others it may be required.
  10672. type: string
  10673. name:
  10674. description: The name of the Secret resource being referred to.
  10675. type: string
  10676. namespace:
  10677. description: |-
  10678. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10679. to the namespace of the referent.
  10680. type: string
  10681. type: object
  10682. type: object
  10683. version:
  10684. default: v2
  10685. description: |-
  10686. Version is the Vault KV secret engine version. This can be either "v1" or
  10687. "v2". Version defaults to "v2".
  10688. enum:
  10689. - v1
  10690. - v2
  10691. type: string
  10692. required:
  10693. - auth
  10694. - server
  10695. type: object
  10696. resultType:
  10697. default: Data
  10698. description: |-
  10699. Result type defines which data is returned from the generator.
  10700. By default it is the "data" section of the Vault API response.
  10701. When using e.g. /auth/token/create the "data" section is empty but
  10702. the "auth" section contains the generated token.
  10703. Please refer to the vault docs regarding the result data structure.
  10704. enum:
  10705. - Data
  10706. - Auth
  10707. type: string
  10708. required:
  10709. - path
  10710. - provider
  10711. type: object
  10712. type: object
  10713. served: true
  10714. storage: true
  10715. subresources:
  10716. status: {}
  10717. conversion:
  10718. strategy: Webhook
  10719. webhook:
  10720. conversionReviewVersions:
  10721. - v1
  10722. clientConfig:
  10723. service:
  10724. name: kubernetes
  10725. namespace: default
  10726. path: /convert