bundle.yaml 316 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.9.0
  6. creationTimestamp: null
  7. name: clusterexternalsecrets.external-secrets.io
  8. spec:
  9. group: external-secrets.io
  10. names:
  11. categories:
  12. - externalsecrets
  13. kind: ClusterExternalSecret
  14. listKind: ClusterExternalSecretList
  15. plural: clusterexternalsecrets
  16. shortNames:
  17. - ces
  18. singular: clusterexternalsecret
  19. scope: Cluster
  20. versions:
  21. - additionalPrinterColumns:
  22. - jsonPath: .spec.secretStoreRef.name
  23. name: Store
  24. type: string
  25. - jsonPath: .spec.refreshInterval
  26. name: Refresh Interval
  27. type: string
  28. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  29. name: Status
  30. type: string
  31. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  32. name: Ready
  33. type: string
  34. name: v1beta1
  35. schema:
  36. openAPIV3Schema:
  37. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  38. properties:
  39. apiVersion:
  40. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  41. type: string
  42. kind:
  43. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  44. type: string
  45. metadata:
  46. type: object
  47. spec:
  48. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  49. properties:
  50. externalSecretName:
  51. description: The name of the external secrets to be created defaults to the name of the ClusterExternalSecret
  52. type: string
  53. externalSecretSpec:
  54. description: The spec for the ExternalSecrets to be created
  55. properties:
  56. data:
  57. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  58. items:
  59. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  60. properties:
  61. remoteRef:
  62. description: ExternalSecretDataRemoteRef defines Provider data location.
  63. properties:
  64. conversionStrategy:
  65. default: Default
  66. description: Used to define a conversion Strategy
  67. type: string
  68. decodingStrategy:
  69. default: None
  70. description: Used to define a conversion Strategy
  71. type: string
  72. key:
  73. description: Key is the key used in the Provider, mandatory
  74. type: string
  75. metadataPolicy:
  76. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  77. type: string
  78. property:
  79. description: Used to select a specific property of the Provider value (if a map), if supported
  80. type: string
  81. version:
  82. description: Used to select a specific version of the Provider value, if supported
  83. type: string
  84. required:
  85. - key
  86. type: object
  87. secretKey:
  88. type: string
  89. required:
  90. - remoteRef
  91. - secretKey
  92. type: object
  93. type: array
  94. dataFrom:
  95. description: DataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
  96. items:
  97. maxProperties: 1
  98. minProperties: 1
  99. properties:
  100. extract:
  101. description: Used to extract multiple key/value pairs from one secret
  102. properties:
  103. conversionStrategy:
  104. default: Default
  105. description: Used to define a conversion Strategy
  106. type: string
  107. decodingStrategy:
  108. default: None
  109. description: Used to define a conversion Strategy
  110. type: string
  111. key:
  112. description: Key is the key used in the Provider, mandatory
  113. type: string
  114. metadataPolicy:
  115. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  116. type: string
  117. property:
  118. description: Used to select a specific property of the Provider value (if a map), if supported
  119. type: string
  120. version:
  121. description: Used to select a specific version of the Provider value, if supported
  122. type: string
  123. required:
  124. - key
  125. type: object
  126. find:
  127. description: Used to find secrets based on tags or regular expressions
  128. properties:
  129. conversionStrategy:
  130. default: Default
  131. description: Used to define a conversion Strategy
  132. type: string
  133. decodingStrategy:
  134. default: None
  135. description: Used to define a conversion Strategy
  136. type: string
  137. name:
  138. description: Finds secrets based on the name.
  139. properties:
  140. regexp:
  141. description: Finds secrets base
  142. type: string
  143. type: object
  144. path:
  145. description: A root path to start the find operations.
  146. type: string
  147. tags:
  148. additionalProperties:
  149. type: string
  150. description: Find secrets based on tags.
  151. type: object
  152. type: object
  153. type: object
  154. type: array
  155. refreshInterval:
  156. default: 1h
  157. description: RefreshInterval is the amount of time before the values are read again from the SecretStore provider Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to fetch and create it once. Defaults to 1h.
  158. type: string
  159. secretStoreRef:
  160. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  161. properties:
  162. kind:
  163. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  164. type: string
  165. name:
  166. description: Name of the SecretStore resource
  167. type: string
  168. required:
  169. - name
  170. type: object
  171. target:
  172. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  173. properties:
  174. creationPolicy:
  175. default: Owner
  176. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  177. enum:
  178. - Owner
  179. - Orphan
  180. - Merge
  181. - None
  182. type: string
  183. deletionPolicy:
  184. default: Retain
  185. description: DeletionPolicy defines rules on how to delete the resulting Secret Defaults to 'Retain'
  186. enum:
  187. - Delete
  188. - Merge
  189. - Retain
  190. type: string
  191. immutable:
  192. description: Immutable defines if the final secret will be immutable
  193. type: boolean
  194. name:
  195. description: Name defines the name of the Secret resource to be managed This field is immutable Defaults to the .metadata.name of the ExternalSecret resource
  196. type: string
  197. template:
  198. description: Template defines a blueprint for the created Secret resource.
  199. properties:
  200. data:
  201. additionalProperties:
  202. type: string
  203. type: object
  204. engineVersion:
  205. default: v2
  206. type: string
  207. metadata:
  208. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  209. properties:
  210. annotations:
  211. additionalProperties:
  212. type: string
  213. type: object
  214. labels:
  215. additionalProperties:
  216. type: string
  217. type: object
  218. type: object
  219. templateFrom:
  220. items:
  221. maxProperties: 1
  222. minProperties: 1
  223. properties:
  224. configMap:
  225. properties:
  226. items:
  227. items:
  228. properties:
  229. key:
  230. type: string
  231. required:
  232. - key
  233. type: object
  234. type: array
  235. name:
  236. type: string
  237. required:
  238. - items
  239. - name
  240. type: object
  241. secret:
  242. properties:
  243. items:
  244. items:
  245. properties:
  246. key:
  247. type: string
  248. required:
  249. - key
  250. type: object
  251. type: array
  252. name:
  253. type: string
  254. required:
  255. - items
  256. - name
  257. type: object
  258. type: object
  259. type: array
  260. type:
  261. type: string
  262. type: object
  263. type: object
  264. required:
  265. - secretStoreRef
  266. type: object
  267. namespaceSelector:
  268. description: The labels to select by to find the Namespaces to create the ExternalSecrets in.
  269. properties:
  270. matchExpressions:
  271. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  272. items:
  273. description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
  274. properties:
  275. key:
  276. description: key is the label key that the selector applies to.
  277. type: string
  278. operator:
  279. description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
  280. type: string
  281. values:
  282. description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
  283. items:
  284. type: string
  285. type: array
  286. required:
  287. - key
  288. - operator
  289. type: object
  290. type: array
  291. matchLabels:
  292. additionalProperties:
  293. type: string
  294. description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
  295. type: object
  296. type: object
  297. refreshTime:
  298. description: The time in which the controller should reconcile it's objects and recheck namespaces for labels.
  299. type: string
  300. required:
  301. - externalSecretSpec
  302. - namespaceSelector
  303. type: object
  304. status:
  305. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  306. properties:
  307. conditions:
  308. items:
  309. properties:
  310. message:
  311. type: string
  312. status:
  313. type: string
  314. type:
  315. type: string
  316. required:
  317. - status
  318. - type
  319. type: object
  320. type: array
  321. failedNamespaces:
  322. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  323. items:
  324. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  325. properties:
  326. namespace:
  327. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  328. type: string
  329. reason:
  330. description: Reason is why the ExternalSecret failed to apply to the namespace
  331. type: string
  332. required:
  333. - namespace
  334. type: object
  335. type: array
  336. provisionedNamespaces:
  337. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  338. items:
  339. type: string
  340. type: array
  341. type: object
  342. type: object
  343. served: true
  344. storage: true
  345. subresources:
  346. status: {}
  347. conversion:
  348. strategy: Webhook
  349. webhook:
  350. conversionReviewVersions:
  351. - v1
  352. clientConfig:
  353. service:
  354. name: kubernetes
  355. namespace: default
  356. path: /convert
  357. ---
  358. apiVersion: apiextensions.k8s.io/v1
  359. kind: CustomResourceDefinition
  360. metadata:
  361. annotations:
  362. controller-gen.kubebuilder.io/version: v0.9.0
  363. creationTimestamp: null
  364. name: clustersecretstores.external-secrets.io
  365. spec:
  366. group: external-secrets.io
  367. names:
  368. categories:
  369. - externalsecrets
  370. kind: ClusterSecretStore
  371. listKind: ClusterSecretStoreList
  372. plural: clustersecretstores
  373. shortNames:
  374. - css
  375. singular: clustersecretstore
  376. scope: Cluster
  377. versions:
  378. - additionalPrinterColumns:
  379. - jsonPath: .metadata.creationTimestamp
  380. name: AGE
  381. type: date
  382. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  383. name: Status
  384. type: string
  385. deprecated: true
  386. name: v1alpha1
  387. schema:
  388. openAPIV3Schema:
  389. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  390. properties:
  391. apiVersion:
  392. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  393. type: string
  394. kind:
  395. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  396. type: string
  397. metadata:
  398. type: object
  399. spec:
  400. description: SecretStoreSpec defines the desired state of SecretStore.
  401. properties:
  402. controller:
  403. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  404. type: string
  405. provider:
  406. description: Used to configure the provider. Only one provider may be set
  407. maxProperties: 1
  408. minProperties: 1
  409. properties:
  410. akeyless:
  411. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  412. properties:
  413. akeylessGWApiURL:
  414. description: Akeyless GW API Url from which the secrets to be fetched from.
  415. type: string
  416. authSecretRef:
  417. description: Auth configures how the operator authenticates with Akeyless.
  418. properties:
  419. secretRef:
  420. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  421. properties:
  422. accessID:
  423. description: The SecretAccessID is used for authentication
  424. properties:
  425. key:
  426. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  427. type: string
  428. name:
  429. description: The name of the Secret resource being referred to.
  430. type: string
  431. namespace:
  432. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  433. type: string
  434. type: object
  435. accessType:
  436. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  437. properties:
  438. key:
  439. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  440. type: string
  441. name:
  442. description: The name of the Secret resource being referred to.
  443. type: string
  444. namespace:
  445. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  446. type: string
  447. type: object
  448. accessTypeParam:
  449. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  450. properties:
  451. key:
  452. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  453. type: string
  454. name:
  455. description: The name of the Secret resource being referred to.
  456. type: string
  457. namespace:
  458. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  459. type: string
  460. type: object
  461. type: object
  462. required:
  463. - secretRef
  464. type: object
  465. required:
  466. - akeylessGWApiURL
  467. - authSecretRef
  468. type: object
  469. alibaba:
  470. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  471. properties:
  472. auth:
  473. description: AlibabaAuth contains a secretRef for credentials.
  474. properties:
  475. secretRef:
  476. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  477. properties:
  478. accessKeyIDSecretRef:
  479. description: The AccessKeyID is used for authentication
  480. properties:
  481. key:
  482. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  483. type: string
  484. name:
  485. description: The name of the Secret resource being referred to.
  486. type: string
  487. namespace:
  488. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  489. type: string
  490. type: object
  491. accessKeySecretSecretRef:
  492. description: The AccessKeySecret is used for authentication
  493. properties:
  494. key:
  495. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  496. type: string
  497. name:
  498. description: The name of the Secret resource being referred to.
  499. type: string
  500. namespace:
  501. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  502. type: string
  503. type: object
  504. required:
  505. - accessKeyIDSecretRef
  506. - accessKeySecretSecretRef
  507. type: object
  508. required:
  509. - secretRef
  510. type: object
  511. endpoint:
  512. type: string
  513. regionID:
  514. description: Alibaba Region to be used for the provider
  515. type: string
  516. required:
  517. - auth
  518. - regionID
  519. type: object
  520. aws:
  521. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  522. properties:
  523. auth:
  524. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  525. properties:
  526. jwt:
  527. description: Authenticate against AWS using service account tokens.
  528. properties:
  529. serviceAccountRef:
  530. description: A reference to a ServiceAccount resource.
  531. properties:
  532. name:
  533. description: The name of the ServiceAccount resource being referred to.
  534. type: string
  535. namespace:
  536. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  537. type: string
  538. required:
  539. - name
  540. type: object
  541. type: object
  542. secretRef:
  543. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  544. properties:
  545. accessKeyIDSecretRef:
  546. description: The AccessKeyID is used for authentication
  547. properties:
  548. key:
  549. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  550. type: string
  551. name:
  552. description: The name of the Secret resource being referred to.
  553. type: string
  554. namespace:
  555. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  556. type: string
  557. type: object
  558. secretAccessKeySecretRef:
  559. description: The SecretAccessKey is used for authentication
  560. properties:
  561. key:
  562. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  563. type: string
  564. name:
  565. description: The name of the Secret resource being referred to.
  566. type: string
  567. namespace:
  568. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  569. type: string
  570. type: object
  571. type: object
  572. type: object
  573. region:
  574. description: AWS Region to be used for the provider
  575. type: string
  576. role:
  577. description: Role is a Role ARN which the SecretManager provider will assume
  578. type: string
  579. service:
  580. description: Service defines which service should be used to fetch the secrets
  581. enum:
  582. - SecretsManager
  583. - ParameterStore
  584. type: string
  585. required:
  586. - region
  587. - service
  588. type: object
  589. azurekv:
  590. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  591. properties:
  592. authSecretRef:
  593. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  594. properties:
  595. clientId:
  596. description: The Azure clientId of the service principle used for authentication.
  597. properties:
  598. key:
  599. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  600. type: string
  601. name:
  602. description: The name of the Secret resource being referred to.
  603. type: string
  604. namespace:
  605. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  606. type: string
  607. type: object
  608. clientSecret:
  609. description: The Azure ClientSecret of the service principle used for authentication.
  610. properties:
  611. key:
  612. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  613. type: string
  614. name:
  615. description: The name of the Secret resource being referred to.
  616. type: string
  617. namespace:
  618. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  619. type: string
  620. type: object
  621. type: object
  622. authType:
  623. default: ServicePrincipal
  624. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  625. enum:
  626. - ServicePrincipal
  627. - ManagedIdentity
  628. - WorkloadIdentity
  629. type: string
  630. identityId:
  631. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  632. type: string
  633. serviceAccountRef:
  634. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  635. properties:
  636. name:
  637. description: The name of the ServiceAccount resource being referred to.
  638. type: string
  639. namespace:
  640. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  641. type: string
  642. required:
  643. - name
  644. type: object
  645. tenantId:
  646. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  647. type: string
  648. vaultUrl:
  649. description: Vault Url from which the secrets to be fetched from.
  650. type: string
  651. required:
  652. - vaultUrl
  653. type: object
  654. fake:
  655. description: Fake configures a store with static key/value pairs
  656. properties:
  657. data:
  658. items:
  659. properties:
  660. key:
  661. type: string
  662. value:
  663. type: string
  664. valueMap:
  665. additionalProperties:
  666. type: string
  667. type: object
  668. version:
  669. type: string
  670. required:
  671. - key
  672. type: object
  673. type: array
  674. required:
  675. - data
  676. type: object
  677. gcpsm:
  678. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  679. properties:
  680. auth:
  681. description: Auth defines the information necessary to authenticate against GCP
  682. properties:
  683. secretRef:
  684. properties:
  685. secretAccessKeySecretRef:
  686. description: The SecretAccessKey is used for authentication
  687. properties:
  688. key:
  689. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  690. type: string
  691. name:
  692. description: The name of the Secret resource being referred to.
  693. type: string
  694. namespace:
  695. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  696. type: string
  697. type: object
  698. type: object
  699. workloadIdentity:
  700. properties:
  701. clusterLocation:
  702. type: string
  703. clusterName:
  704. type: string
  705. clusterProjectID:
  706. type: string
  707. serviceAccountRef:
  708. description: A reference to a ServiceAccount resource.
  709. properties:
  710. name:
  711. description: The name of the ServiceAccount resource being referred to.
  712. type: string
  713. namespace:
  714. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  715. type: string
  716. required:
  717. - name
  718. type: object
  719. required:
  720. - clusterLocation
  721. - clusterName
  722. - serviceAccountRef
  723. type: object
  724. type: object
  725. projectID:
  726. description: ProjectID project where secret is located
  727. type: string
  728. type: object
  729. gitlab:
  730. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  731. properties:
  732. auth:
  733. description: Auth configures how secret-manager authenticates with a GitLab instance.
  734. properties:
  735. SecretRef:
  736. properties:
  737. accessToken:
  738. description: AccessToken is used for authentication.
  739. properties:
  740. key:
  741. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  742. type: string
  743. name:
  744. description: The name of the Secret resource being referred to.
  745. type: string
  746. namespace:
  747. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  748. type: string
  749. type: object
  750. type: object
  751. required:
  752. - SecretRef
  753. type: object
  754. projectID:
  755. description: ProjectID specifies a project where secrets are located.
  756. type: string
  757. url:
  758. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  759. type: string
  760. required:
  761. - auth
  762. type: object
  763. ibm:
  764. description: IBM configures this store to sync secrets using IBM Cloud provider
  765. properties:
  766. auth:
  767. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  768. properties:
  769. secretRef:
  770. properties:
  771. secretApiKeySecretRef:
  772. description: The SecretAccessKey is used for authentication
  773. properties:
  774. key:
  775. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  776. type: string
  777. name:
  778. description: The name of the Secret resource being referred to.
  779. type: string
  780. namespace:
  781. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  782. type: string
  783. type: object
  784. type: object
  785. required:
  786. - secretRef
  787. type: object
  788. serviceUrl:
  789. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  790. type: string
  791. required:
  792. - auth
  793. type: object
  794. kubernetes:
  795. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  796. properties:
  797. auth:
  798. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  799. maxProperties: 1
  800. minProperties: 1
  801. properties:
  802. cert:
  803. description: has both clientCert and clientKey as secretKeySelector
  804. properties:
  805. clientCert:
  806. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  807. properties:
  808. key:
  809. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  810. type: string
  811. name:
  812. description: The name of the Secret resource being referred to.
  813. type: string
  814. namespace:
  815. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  816. type: string
  817. type: object
  818. clientKey:
  819. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  820. properties:
  821. key:
  822. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  823. type: string
  824. name:
  825. description: The name of the Secret resource being referred to.
  826. type: string
  827. namespace:
  828. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  829. type: string
  830. type: object
  831. type: object
  832. serviceAccount:
  833. description: points to a service account that should be used for authentication
  834. properties:
  835. serviceAccount:
  836. description: A reference to a ServiceAccount resource.
  837. properties:
  838. name:
  839. description: The name of the ServiceAccount resource being referred to.
  840. type: string
  841. namespace:
  842. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  843. type: string
  844. required:
  845. - name
  846. type: object
  847. type: object
  848. token:
  849. description: use static token to authenticate with
  850. properties:
  851. bearerToken:
  852. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  853. properties:
  854. key:
  855. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  856. type: string
  857. name:
  858. description: The name of the Secret resource being referred to.
  859. type: string
  860. namespace:
  861. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  862. type: string
  863. type: object
  864. type: object
  865. type: object
  866. remoteNamespace:
  867. default: default
  868. description: Remote namespace to fetch the secrets from
  869. type: string
  870. server:
  871. description: configures the Kubernetes server Address.
  872. properties:
  873. caBundle:
  874. description: CABundle is a base64-encoded CA certificate
  875. format: byte
  876. type: string
  877. caProvider:
  878. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  879. properties:
  880. key:
  881. description: The key the value inside of the provider type to use, only used with "Secret" type
  882. type: string
  883. name:
  884. description: The name of the object located at the provider type.
  885. type: string
  886. namespace:
  887. description: The namespace the Provider type is in.
  888. type: string
  889. type:
  890. description: The type of provider to use such as "Secret", or "ConfigMap".
  891. enum:
  892. - Secret
  893. - ConfigMap
  894. type: string
  895. required:
  896. - name
  897. - type
  898. type: object
  899. url:
  900. default: kubernetes.default
  901. description: configures the Kubernetes server Address.
  902. type: string
  903. type: object
  904. required:
  905. - auth
  906. type: object
  907. oracle:
  908. description: Oracle configures this store to sync secrets using Oracle Vault provider
  909. properties:
  910. auth:
  911. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  912. properties:
  913. secretRef:
  914. description: SecretRef to pass through sensitive information.
  915. properties:
  916. fingerprint:
  917. description: Fingerprint is the fingerprint of the API private key.
  918. properties:
  919. key:
  920. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  921. type: string
  922. name:
  923. description: The name of the Secret resource being referred to.
  924. type: string
  925. namespace:
  926. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  927. type: string
  928. type: object
  929. privatekey:
  930. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  931. properties:
  932. key:
  933. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  934. type: string
  935. name:
  936. description: The name of the Secret resource being referred to.
  937. type: string
  938. namespace:
  939. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  940. type: string
  941. type: object
  942. required:
  943. - fingerprint
  944. - privatekey
  945. type: object
  946. tenancy:
  947. description: Tenancy is the tenancy OCID where user is located.
  948. type: string
  949. user:
  950. description: User is an access OCID specific to the account.
  951. type: string
  952. required:
  953. - secretRef
  954. - tenancy
  955. - user
  956. type: object
  957. region:
  958. description: Region is the region where vault is located.
  959. type: string
  960. vault:
  961. description: Vault is the vault's OCID of the specific vault where secret is located.
  962. type: string
  963. required:
  964. - region
  965. - vault
  966. type: object
  967. vault:
  968. description: Vault configures this store to sync secrets using Hashi provider
  969. properties:
  970. auth:
  971. description: Auth configures how secret-manager authenticates with the Vault server.
  972. properties:
  973. appRole:
  974. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  975. properties:
  976. path:
  977. default: approle
  978. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  979. type: string
  980. roleId:
  981. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  982. type: string
  983. secretRef:
  984. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  985. properties:
  986. key:
  987. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  988. type: string
  989. name:
  990. description: The name of the Secret resource being referred to.
  991. type: string
  992. namespace:
  993. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  994. type: string
  995. type: object
  996. required:
  997. - path
  998. - roleId
  999. - secretRef
  1000. type: object
  1001. cert:
  1002. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  1003. properties:
  1004. clientCert:
  1005. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  1006. properties:
  1007. key:
  1008. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1009. type: string
  1010. name:
  1011. description: The name of the Secret resource being referred to.
  1012. type: string
  1013. namespace:
  1014. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1015. type: string
  1016. type: object
  1017. secretRef:
  1018. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  1019. properties:
  1020. key:
  1021. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1022. type: string
  1023. name:
  1024. description: The name of the Secret resource being referred to.
  1025. type: string
  1026. namespace:
  1027. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1028. type: string
  1029. type: object
  1030. type: object
  1031. jwt:
  1032. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  1033. properties:
  1034. kubernetesServiceAccountToken:
  1035. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  1036. properties:
  1037. audiences:
  1038. description: Optional audiences field that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to a single audience `vault` it not specified.
  1039. items:
  1040. type: string
  1041. type: array
  1042. expirationSeconds:
  1043. description: Optional expiration time in seconds that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to 10 minutes.
  1044. format: int64
  1045. type: integer
  1046. serviceAccountRef:
  1047. description: Service account field containing the name of a kubernetes ServiceAccount.
  1048. properties:
  1049. name:
  1050. description: The name of the ServiceAccount resource being referred to.
  1051. type: string
  1052. namespace:
  1053. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1054. type: string
  1055. required:
  1056. - name
  1057. type: object
  1058. required:
  1059. - serviceAccountRef
  1060. type: object
  1061. path:
  1062. default: jwt
  1063. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  1064. type: string
  1065. role:
  1066. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  1067. type: string
  1068. secretRef:
  1069. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
  1070. properties:
  1071. key:
  1072. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1073. type: string
  1074. name:
  1075. description: The name of the Secret resource being referred to.
  1076. type: string
  1077. namespace:
  1078. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1079. type: string
  1080. type: object
  1081. required:
  1082. - path
  1083. type: object
  1084. kubernetes:
  1085. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  1086. properties:
  1087. mountPath:
  1088. default: kubernetes
  1089. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  1090. type: string
  1091. role:
  1092. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  1093. type: string
  1094. secretRef:
  1095. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  1096. properties:
  1097. key:
  1098. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1099. type: string
  1100. name:
  1101. description: The name of the Secret resource being referred to.
  1102. type: string
  1103. namespace:
  1104. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1105. type: string
  1106. type: object
  1107. serviceAccountRef:
  1108. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  1109. properties:
  1110. name:
  1111. description: The name of the ServiceAccount resource being referred to.
  1112. type: string
  1113. namespace:
  1114. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1115. type: string
  1116. required:
  1117. - name
  1118. type: object
  1119. required:
  1120. - mountPath
  1121. - role
  1122. type: object
  1123. ldap:
  1124. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  1125. properties:
  1126. path:
  1127. default: ldap
  1128. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  1129. type: string
  1130. secretRef:
  1131. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  1132. properties:
  1133. key:
  1134. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1135. type: string
  1136. name:
  1137. description: The name of the Secret resource being referred to.
  1138. type: string
  1139. namespace:
  1140. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1141. type: string
  1142. type: object
  1143. username:
  1144. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  1145. type: string
  1146. required:
  1147. - path
  1148. - username
  1149. type: object
  1150. tokenSecretRef:
  1151. description: TokenSecretRef authenticates with Vault by presenting a token.
  1152. properties:
  1153. key:
  1154. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1155. type: string
  1156. name:
  1157. description: The name of the Secret resource being referred to.
  1158. type: string
  1159. namespace:
  1160. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1161. type: string
  1162. type: object
  1163. type: object
  1164. caBundle:
  1165. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  1166. format: byte
  1167. type: string
  1168. caProvider:
  1169. description: The provider for the CA bundle to use to validate Vault server certificate.
  1170. properties:
  1171. key:
  1172. description: The key the value inside of the provider type to use, only used with "Secret" type
  1173. type: string
  1174. name:
  1175. description: The name of the object located at the provider type.
  1176. type: string
  1177. namespace:
  1178. description: The namespace the Provider type is in.
  1179. type: string
  1180. type:
  1181. description: The type of provider to use such as "Secret", or "ConfigMap".
  1182. enum:
  1183. - Secret
  1184. - ConfigMap
  1185. type: string
  1186. required:
  1187. - name
  1188. - type
  1189. type: object
  1190. forwardInconsistent:
  1191. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1192. type: boolean
  1193. namespace:
  1194. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  1195. type: string
  1196. path:
  1197. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  1198. type: string
  1199. readYourWrites:
  1200. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  1201. type: boolean
  1202. server:
  1203. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  1204. type: string
  1205. version:
  1206. default: v2
  1207. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  1208. enum:
  1209. - v1
  1210. - v2
  1211. type: string
  1212. required:
  1213. - auth
  1214. - server
  1215. type: object
  1216. webhook:
  1217. description: Webhook configures this store to sync secrets using a generic templated webhook
  1218. properties:
  1219. body:
  1220. description: Body
  1221. type: string
  1222. caBundle:
  1223. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  1224. format: byte
  1225. type: string
  1226. caProvider:
  1227. description: The provider for the CA bundle to use to validate webhook server certificate.
  1228. properties:
  1229. key:
  1230. description: The key the value inside of the provider type to use, only used with "Secret" type
  1231. type: string
  1232. name:
  1233. description: The name of the object located at the provider type.
  1234. type: string
  1235. namespace:
  1236. description: The namespace the Provider type is in.
  1237. type: string
  1238. type:
  1239. description: The type of provider to use such as "Secret", or "ConfigMap".
  1240. enum:
  1241. - Secret
  1242. - ConfigMap
  1243. type: string
  1244. required:
  1245. - name
  1246. - type
  1247. type: object
  1248. headers:
  1249. additionalProperties:
  1250. type: string
  1251. description: Headers
  1252. type: object
  1253. method:
  1254. description: Webhook Method
  1255. type: string
  1256. result:
  1257. description: Result formatting
  1258. properties:
  1259. jsonPath:
  1260. description: Json path of return value
  1261. type: string
  1262. type: object
  1263. secrets:
  1264. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  1265. items:
  1266. properties:
  1267. name:
  1268. description: Name of this secret in templates
  1269. type: string
  1270. secretRef:
  1271. description: Secret ref to fill in credentials
  1272. properties:
  1273. key:
  1274. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1275. type: string
  1276. name:
  1277. description: The name of the Secret resource being referred to.
  1278. type: string
  1279. namespace:
  1280. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1281. type: string
  1282. type: object
  1283. required:
  1284. - name
  1285. - secretRef
  1286. type: object
  1287. type: array
  1288. timeout:
  1289. description: Timeout
  1290. type: string
  1291. url:
  1292. description: Webhook url to call
  1293. type: string
  1294. required:
  1295. - result
  1296. - url
  1297. type: object
  1298. yandexlockbox:
  1299. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  1300. properties:
  1301. apiEndpoint:
  1302. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1303. type: string
  1304. auth:
  1305. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  1306. properties:
  1307. authorizedKeySecretRef:
  1308. description: The authorized key used for authentication
  1309. properties:
  1310. key:
  1311. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1312. type: string
  1313. name:
  1314. description: The name of the Secret resource being referred to.
  1315. type: string
  1316. namespace:
  1317. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1318. type: string
  1319. type: object
  1320. type: object
  1321. caProvider:
  1322. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  1323. properties:
  1324. certSecretRef:
  1325. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1326. properties:
  1327. key:
  1328. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1329. type: string
  1330. name:
  1331. description: The name of the Secret resource being referred to.
  1332. type: string
  1333. namespace:
  1334. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1335. type: string
  1336. type: object
  1337. type: object
  1338. required:
  1339. - auth
  1340. type: object
  1341. type: object
  1342. retrySettings:
  1343. description: Used to configure http retries if failed
  1344. properties:
  1345. maxRetries:
  1346. format: int32
  1347. type: integer
  1348. retryInterval:
  1349. type: string
  1350. type: object
  1351. required:
  1352. - provider
  1353. type: object
  1354. status:
  1355. description: SecretStoreStatus defines the observed state of the SecretStore.
  1356. properties:
  1357. conditions:
  1358. items:
  1359. properties:
  1360. lastTransitionTime:
  1361. format: date-time
  1362. type: string
  1363. message:
  1364. type: string
  1365. reason:
  1366. type: string
  1367. status:
  1368. type: string
  1369. type:
  1370. type: string
  1371. required:
  1372. - status
  1373. - type
  1374. type: object
  1375. type: array
  1376. type: object
  1377. type: object
  1378. served: true
  1379. storage: false
  1380. subresources:
  1381. status: {}
  1382. - additionalPrinterColumns:
  1383. - jsonPath: .metadata.creationTimestamp
  1384. name: AGE
  1385. type: date
  1386. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1387. name: Status
  1388. type: string
  1389. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1390. name: Ready
  1391. type: string
  1392. name: v1beta1
  1393. schema:
  1394. openAPIV3Schema:
  1395. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  1396. properties:
  1397. apiVersion:
  1398. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1399. type: string
  1400. kind:
  1401. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1402. type: string
  1403. metadata:
  1404. type: object
  1405. spec:
  1406. description: SecretStoreSpec defines the desired state of SecretStore.
  1407. properties:
  1408. controller:
  1409. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  1410. type: string
  1411. provider:
  1412. description: Used to configure the provider. Only one provider may be set
  1413. maxProperties: 1
  1414. minProperties: 1
  1415. properties:
  1416. akeyless:
  1417. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  1418. properties:
  1419. akeylessGWApiURL:
  1420. description: Akeyless GW API Url from which the secrets to be fetched from.
  1421. type: string
  1422. authSecretRef:
  1423. description: Auth configures how the operator authenticates with Akeyless.
  1424. properties:
  1425. secretRef:
  1426. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  1427. properties:
  1428. accessID:
  1429. description: The SecretAccessID is used for authentication
  1430. properties:
  1431. key:
  1432. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1433. type: string
  1434. name:
  1435. description: The name of the Secret resource being referred to.
  1436. type: string
  1437. namespace:
  1438. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1439. type: string
  1440. type: object
  1441. accessType:
  1442. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1443. properties:
  1444. key:
  1445. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1446. type: string
  1447. name:
  1448. description: The name of the Secret resource being referred to.
  1449. type: string
  1450. namespace:
  1451. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1452. type: string
  1453. type: object
  1454. accessTypeParam:
  1455. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1456. properties:
  1457. key:
  1458. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1459. type: string
  1460. name:
  1461. description: The name of the Secret resource being referred to.
  1462. type: string
  1463. namespace:
  1464. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1465. type: string
  1466. type: object
  1467. type: object
  1468. required:
  1469. - secretRef
  1470. type: object
  1471. required:
  1472. - akeylessGWApiURL
  1473. - authSecretRef
  1474. type: object
  1475. alibaba:
  1476. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  1477. properties:
  1478. auth:
  1479. description: AlibabaAuth contains a secretRef for credentials.
  1480. properties:
  1481. secretRef:
  1482. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  1483. properties:
  1484. accessKeyIDSecretRef:
  1485. description: The AccessKeyID is used for authentication
  1486. properties:
  1487. key:
  1488. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1489. type: string
  1490. name:
  1491. description: The name of the Secret resource being referred to.
  1492. type: string
  1493. namespace:
  1494. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1495. type: string
  1496. type: object
  1497. accessKeySecretSecretRef:
  1498. description: The AccessKeySecret is used for authentication
  1499. properties:
  1500. key:
  1501. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1502. type: string
  1503. name:
  1504. description: The name of the Secret resource being referred to.
  1505. type: string
  1506. namespace:
  1507. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1508. type: string
  1509. type: object
  1510. required:
  1511. - accessKeyIDSecretRef
  1512. - accessKeySecretSecretRef
  1513. type: object
  1514. required:
  1515. - secretRef
  1516. type: object
  1517. endpoint:
  1518. type: string
  1519. regionID:
  1520. description: Alibaba Region to be used for the provider
  1521. type: string
  1522. required:
  1523. - auth
  1524. - regionID
  1525. type: object
  1526. aws:
  1527. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  1528. properties:
  1529. auth:
  1530. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  1531. properties:
  1532. jwt:
  1533. description: Authenticate against AWS using service account tokens.
  1534. properties:
  1535. serviceAccountRef:
  1536. description: A reference to a ServiceAccount resource.
  1537. properties:
  1538. name:
  1539. description: The name of the ServiceAccount resource being referred to.
  1540. type: string
  1541. namespace:
  1542. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1543. type: string
  1544. required:
  1545. - name
  1546. type: object
  1547. type: object
  1548. secretRef:
  1549. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  1550. properties:
  1551. accessKeyIDSecretRef:
  1552. description: The AccessKeyID is used for authentication
  1553. properties:
  1554. key:
  1555. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1556. type: string
  1557. name:
  1558. description: The name of the Secret resource being referred to.
  1559. type: string
  1560. namespace:
  1561. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1562. type: string
  1563. type: object
  1564. secretAccessKeySecretRef:
  1565. description: The SecretAccessKey is used for authentication
  1566. properties:
  1567. key:
  1568. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1569. type: string
  1570. name:
  1571. description: The name of the Secret resource being referred to.
  1572. type: string
  1573. namespace:
  1574. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1575. type: string
  1576. type: object
  1577. type: object
  1578. type: object
  1579. region:
  1580. description: AWS Region to be used for the provider
  1581. type: string
  1582. role:
  1583. description: Role is a Role ARN which the SecretManager provider will assume
  1584. type: string
  1585. service:
  1586. description: Service defines which service should be used to fetch the secrets
  1587. enum:
  1588. - SecretsManager
  1589. - ParameterStore
  1590. type: string
  1591. required:
  1592. - region
  1593. - service
  1594. type: object
  1595. azurekv:
  1596. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  1597. properties:
  1598. authSecretRef:
  1599. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  1600. properties:
  1601. clientId:
  1602. description: The Azure clientId of the service principle used for authentication.
  1603. properties:
  1604. key:
  1605. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1606. type: string
  1607. name:
  1608. description: The name of the Secret resource being referred to.
  1609. type: string
  1610. namespace:
  1611. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1612. type: string
  1613. type: object
  1614. clientSecret:
  1615. description: The Azure ClientSecret of the service principle used for authentication.
  1616. properties:
  1617. key:
  1618. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1619. type: string
  1620. name:
  1621. description: The name of the Secret resource being referred to.
  1622. type: string
  1623. namespace:
  1624. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1625. type: string
  1626. type: object
  1627. type: object
  1628. authType:
  1629. default: ServicePrincipal
  1630. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  1631. enum:
  1632. - ServicePrincipal
  1633. - ManagedIdentity
  1634. - WorkloadIdentity
  1635. type: string
  1636. identityId:
  1637. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  1638. type: string
  1639. serviceAccountRef:
  1640. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  1641. properties:
  1642. name:
  1643. description: The name of the ServiceAccount resource being referred to.
  1644. type: string
  1645. namespace:
  1646. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1647. type: string
  1648. required:
  1649. - name
  1650. type: object
  1651. tenantId:
  1652. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  1653. type: string
  1654. vaultUrl:
  1655. description: Vault Url from which the secrets to be fetched from.
  1656. type: string
  1657. required:
  1658. - vaultUrl
  1659. type: object
  1660. fake:
  1661. description: Fake configures a store with static key/value pairs
  1662. properties:
  1663. data:
  1664. items:
  1665. properties:
  1666. key:
  1667. type: string
  1668. value:
  1669. type: string
  1670. valueMap:
  1671. additionalProperties:
  1672. type: string
  1673. type: object
  1674. version:
  1675. type: string
  1676. required:
  1677. - key
  1678. type: object
  1679. type: array
  1680. required:
  1681. - data
  1682. type: object
  1683. gcpsm:
  1684. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1685. properties:
  1686. auth:
  1687. description: Auth defines the information necessary to authenticate against GCP
  1688. properties:
  1689. secretRef:
  1690. properties:
  1691. secretAccessKeySecretRef:
  1692. description: The SecretAccessKey is used for authentication
  1693. properties:
  1694. key:
  1695. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1696. type: string
  1697. name:
  1698. description: The name of the Secret resource being referred to.
  1699. type: string
  1700. namespace:
  1701. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1702. type: string
  1703. type: object
  1704. type: object
  1705. workloadIdentity:
  1706. properties:
  1707. clusterLocation:
  1708. type: string
  1709. clusterName:
  1710. type: string
  1711. clusterProjectID:
  1712. type: string
  1713. serviceAccountRef:
  1714. description: A reference to a ServiceAccount resource.
  1715. properties:
  1716. name:
  1717. description: The name of the ServiceAccount resource being referred to.
  1718. type: string
  1719. namespace:
  1720. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1721. type: string
  1722. required:
  1723. - name
  1724. type: object
  1725. required:
  1726. - clusterLocation
  1727. - clusterName
  1728. - serviceAccountRef
  1729. type: object
  1730. type: object
  1731. projectID:
  1732. description: ProjectID project where secret is located
  1733. type: string
  1734. type: object
  1735. gitlab:
  1736. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  1737. properties:
  1738. auth:
  1739. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1740. properties:
  1741. SecretRef:
  1742. properties:
  1743. accessToken:
  1744. description: AccessToken is used for authentication.
  1745. properties:
  1746. key:
  1747. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1748. type: string
  1749. name:
  1750. description: The name of the Secret resource being referred to.
  1751. type: string
  1752. namespace:
  1753. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1754. type: string
  1755. type: object
  1756. type: object
  1757. required:
  1758. - SecretRef
  1759. type: object
  1760. projectID:
  1761. description: ProjectID specifies a project where secrets are located.
  1762. type: string
  1763. url:
  1764. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1765. type: string
  1766. required:
  1767. - auth
  1768. type: object
  1769. ibm:
  1770. description: IBM configures this store to sync secrets using IBM Cloud provider
  1771. properties:
  1772. auth:
  1773. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1774. maxProperties: 1
  1775. minProperties: 1
  1776. properties:
  1777. containerAuth:
  1778. description: IBM Container-based auth with IAM Trusted Profile.
  1779. properties:
  1780. iamEndpoint:
  1781. type: string
  1782. profile:
  1783. description: the IBM Trusted Profile
  1784. type: string
  1785. tokenLocation:
  1786. description: Location the token is mounted on the pod
  1787. type: string
  1788. required:
  1789. - profile
  1790. type: object
  1791. secretRef:
  1792. properties:
  1793. secretApiKeySecretRef:
  1794. description: The SecretAccessKey is used for authentication
  1795. properties:
  1796. key:
  1797. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1798. type: string
  1799. name:
  1800. description: The name of the Secret resource being referred to.
  1801. type: string
  1802. namespace:
  1803. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1804. type: string
  1805. type: object
  1806. type: object
  1807. type: object
  1808. serviceUrl:
  1809. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1810. type: string
  1811. required:
  1812. - auth
  1813. type: object
  1814. kubernetes:
  1815. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  1816. properties:
  1817. auth:
  1818. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  1819. maxProperties: 1
  1820. minProperties: 1
  1821. properties:
  1822. cert:
  1823. description: has both clientCert and clientKey as secretKeySelector
  1824. properties:
  1825. clientCert:
  1826. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1827. properties:
  1828. key:
  1829. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1830. type: string
  1831. name:
  1832. description: The name of the Secret resource being referred to.
  1833. type: string
  1834. namespace:
  1835. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1836. type: string
  1837. type: object
  1838. clientKey:
  1839. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1840. properties:
  1841. key:
  1842. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1843. type: string
  1844. name:
  1845. description: The name of the Secret resource being referred to.
  1846. type: string
  1847. namespace:
  1848. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1849. type: string
  1850. type: object
  1851. type: object
  1852. serviceAccount:
  1853. description: points to a service account that should be used for authentication
  1854. properties:
  1855. name:
  1856. description: The name of the ServiceAccount resource being referred to.
  1857. type: string
  1858. namespace:
  1859. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1860. type: string
  1861. required:
  1862. - name
  1863. type: object
  1864. token:
  1865. description: use static token to authenticate with
  1866. properties:
  1867. bearerToken:
  1868. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1869. properties:
  1870. key:
  1871. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1872. type: string
  1873. name:
  1874. description: The name of the Secret resource being referred to.
  1875. type: string
  1876. namespace:
  1877. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1878. type: string
  1879. type: object
  1880. type: object
  1881. type: object
  1882. remoteNamespace:
  1883. default: default
  1884. description: Remote namespace to fetch the secrets from
  1885. type: string
  1886. server:
  1887. description: configures the Kubernetes server Address.
  1888. properties:
  1889. caBundle:
  1890. description: CABundle is a base64-encoded CA certificate
  1891. format: byte
  1892. type: string
  1893. caProvider:
  1894. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  1895. properties:
  1896. key:
  1897. description: The key the value inside of the provider type to use, only used with "Secret" type
  1898. type: string
  1899. name:
  1900. description: The name of the object located at the provider type.
  1901. type: string
  1902. namespace:
  1903. description: The namespace the Provider type is in.
  1904. type: string
  1905. type:
  1906. description: The type of provider to use such as "Secret", or "ConfigMap".
  1907. enum:
  1908. - Secret
  1909. - ConfigMap
  1910. type: string
  1911. required:
  1912. - name
  1913. - type
  1914. type: object
  1915. url:
  1916. default: kubernetes.default
  1917. description: configures the Kubernetes server Address.
  1918. type: string
  1919. type: object
  1920. required:
  1921. - auth
  1922. type: object
  1923. onepassword:
  1924. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  1925. properties:
  1926. auth:
  1927. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  1928. properties:
  1929. secretRef:
  1930. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  1931. properties:
  1932. connectTokenSecretRef:
  1933. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  1934. properties:
  1935. key:
  1936. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1937. type: string
  1938. name:
  1939. description: The name of the Secret resource being referred to.
  1940. type: string
  1941. namespace:
  1942. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1943. type: string
  1944. type: object
  1945. required:
  1946. - connectTokenSecretRef
  1947. type: object
  1948. required:
  1949. - secretRef
  1950. type: object
  1951. connectHost:
  1952. description: ConnectHost defines the OnePassword Connect Server to connect to
  1953. type: string
  1954. vaults:
  1955. additionalProperties:
  1956. type: integer
  1957. description: Vaults defines which OnePassword vaults to search in which order
  1958. type: object
  1959. required:
  1960. - auth
  1961. - connectHost
  1962. - vaults
  1963. type: object
  1964. oracle:
  1965. description: Oracle configures this store to sync secrets using Oracle Vault provider
  1966. properties:
  1967. auth:
  1968. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  1969. properties:
  1970. secretRef:
  1971. description: SecretRef to pass through sensitive information.
  1972. properties:
  1973. fingerprint:
  1974. description: Fingerprint is the fingerprint of the API private key.
  1975. properties:
  1976. key:
  1977. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1978. type: string
  1979. name:
  1980. description: The name of the Secret resource being referred to.
  1981. type: string
  1982. namespace:
  1983. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1984. type: string
  1985. type: object
  1986. privatekey:
  1987. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  1988. properties:
  1989. key:
  1990. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1991. type: string
  1992. name:
  1993. description: The name of the Secret resource being referred to.
  1994. type: string
  1995. namespace:
  1996. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1997. type: string
  1998. type: object
  1999. required:
  2000. - fingerprint
  2001. - privatekey
  2002. type: object
  2003. tenancy:
  2004. description: Tenancy is the tenancy OCID where user is located.
  2005. type: string
  2006. user:
  2007. description: User is an access OCID specific to the account.
  2008. type: string
  2009. required:
  2010. - secretRef
  2011. - tenancy
  2012. - user
  2013. type: object
  2014. region:
  2015. description: Region is the region where vault is located.
  2016. type: string
  2017. vault:
  2018. description: Vault is the vault's OCID of the specific vault where secret is located.
  2019. type: string
  2020. required:
  2021. - region
  2022. - vault
  2023. type: object
  2024. senhasegura:
  2025. description: Senhasegura configures this store to sync secrets using senhasegura provider
  2026. properties:
  2027. auth:
  2028. description: Auth defines parameters to authenticate in senhasegura
  2029. properties:
  2030. clientId:
  2031. type: string
  2032. clientSecretSecretRef:
  2033. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2034. properties:
  2035. key:
  2036. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2037. type: string
  2038. name:
  2039. description: The name of the Secret resource being referred to.
  2040. type: string
  2041. namespace:
  2042. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2043. type: string
  2044. type: object
  2045. required:
  2046. - clientId
  2047. - clientSecretSecretRef
  2048. type: object
  2049. ignoreSslCertificate:
  2050. default: false
  2051. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  2052. type: boolean
  2053. module:
  2054. description: Module defines which senhasegura module should be used to get secrets
  2055. type: string
  2056. url:
  2057. description: URL of senhasegura
  2058. type: string
  2059. required:
  2060. - auth
  2061. - module
  2062. - url
  2063. type: object
  2064. vault:
  2065. description: Vault configures this store to sync secrets using Hashi provider
  2066. properties:
  2067. auth:
  2068. description: Auth configures how secret-manager authenticates with the Vault server.
  2069. properties:
  2070. appRole:
  2071. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  2072. properties:
  2073. path:
  2074. default: approle
  2075. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  2076. type: string
  2077. roleId:
  2078. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  2079. type: string
  2080. secretRef:
  2081. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  2082. properties:
  2083. key:
  2084. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2085. type: string
  2086. name:
  2087. description: The name of the Secret resource being referred to.
  2088. type: string
  2089. namespace:
  2090. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2091. type: string
  2092. type: object
  2093. required:
  2094. - path
  2095. - roleId
  2096. - secretRef
  2097. type: object
  2098. cert:
  2099. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  2100. properties:
  2101. clientCert:
  2102. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  2103. properties:
  2104. key:
  2105. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2106. type: string
  2107. name:
  2108. description: The name of the Secret resource being referred to.
  2109. type: string
  2110. namespace:
  2111. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2112. type: string
  2113. type: object
  2114. secretRef:
  2115. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  2116. properties:
  2117. key:
  2118. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2119. type: string
  2120. name:
  2121. description: The name of the Secret resource being referred to.
  2122. type: string
  2123. namespace:
  2124. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2125. type: string
  2126. type: object
  2127. type: object
  2128. jwt:
  2129. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  2130. properties:
  2131. kubernetesServiceAccountToken:
  2132. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  2133. properties:
  2134. audiences:
  2135. description: Optional audiences field that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to a single audience `vault` it not specified.
  2136. items:
  2137. type: string
  2138. type: array
  2139. expirationSeconds:
  2140. description: Optional expiration time in seconds that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to 10 minutes.
  2141. format: int64
  2142. type: integer
  2143. serviceAccountRef:
  2144. description: Service account field containing the name of a kubernetes ServiceAccount.
  2145. properties:
  2146. name:
  2147. description: The name of the ServiceAccount resource being referred to.
  2148. type: string
  2149. namespace:
  2150. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2151. type: string
  2152. required:
  2153. - name
  2154. type: object
  2155. required:
  2156. - serviceAccountRef
  2157. type: object
  2158. path:
  2159. default: jwt
  2160. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  2161. type: string
  2162. role:
  2163. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  2164. type: string
  2165. secretRef:
  2166. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
  2167. properties:
  2168. key:
  2169. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2170. type: string
  2171. name:
  2172. description: The name of the Secret resource being referred to.
  2173. type: string
  2174. namespace:
  2175. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2176. type: string
  2177. type: object
  2178. required:
  2179. - path
  2180. type: object
  2181. kubernetes:
  2182. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  2183. properties:
  2184. mountPath:
  2185. default: kubernetes
  2186. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  2187. type: string
  2188. role:
  2189. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  2190. type: string
  2191. secretRef:
  2192. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  2193. properties:
  2194. key:
  2195. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be 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: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2202. type: string
  2203. type: object
  2204. serviceAccountRef:
  2205. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  2206. properties:
  2207. name:
  2208. description: The name of the ServiceAccount resource being referred to.
  2209. type: string
  2210. namespace:
  2211. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2212. type: string
  2213. required:
  2214. - name
  2215. type: object
  2216. required:
  2217. - mountPath
  2218. - role
  2219. type: object
  2220. ldap:
  2221. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  2222. properties:
  2223. path:
  2224. default: ldap
  2225. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  2226. type: string
  2227. secretRef:
  2228. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  2229. properties:
  2230. key:
  2231. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2232. type: string
  2233. name:
  2234. description: The name of the Secret resource being referred to.
  2235. type: string
  2236. namespace:
  2237. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2238. type: string
  2239. type: object
  2240. username:
  2241. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  2242. type: string
  2243. required:
  2244. - path
  2245. - username
  2246. type: object
  2247. tokenSecretRef:
  2248. description: TokenSecretRef authenticates with Vault by presenting a token.
  2249. properties:
  2250. key:
  2251. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2252. type: string
  2253. name:
  2254. description: The name of the Secret resource being referred to.
  2255. type: string
  2256. namespace:
  2257. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2258. type: string
  2259. type: object
  2260. type: object
  2261. caBundle:
  2262. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  2263. format: byte
  2264. type: string
  2265. caProvider:
  2266. description: The provider for the CA bundle to use to validate Vault server certificate.
  2267. properties:
  2268. key:
  2269. description: The key the value inside of the provider type to use, only used with "Secret" type
  2270. type: string
  2271. name:
  2272. description: The name of the object located at the provider type.
  2273. type: string
  2274. namespace:
  2275. description: The namespace the Provider type is in.
  2276. type: string
  2277. type:
  2278. description: The type of provider to use such as "Secret", or "ConfigMap".
  2279. enum:
  2280. - Secret
  2281. - ConfigMap
  2282. type: string
  2283. required:
  2284. - name
  2285. - type
  2286. type: object
  2287. forwardInconsistent:
  2288. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  2289. type: boolean
  2290. namespace:
  2291. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  2292. type: string
  2293. path:
  2294. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  2295. type: string
  2296. readYourWrites:
  2297. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  2298. type: boolean
  2299. server:
  2300. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  2301. type: string
  2302. version:
  2303. default: v2
  2304. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  2305. enum:
  2306. - v1
  2307. - v2
  2308. type: string
  2309. required:
  2310. - auth
  2311. - server
  2312. type: object
  2313. webhook:
  2314. description: Webhook configures this store to sync secrets using a generic templated webhook
  2315. properties:
  2316. body:
  2317. description: Body
  2318. type: string
  2319. caBundle:
  2320. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  2321. format: byte
  2322. type: string
  2323. caProvider:
  2324. description: The provider for the CA bundle to use to validate webhook server certificate.
  2325. properties:
  2326. key:
  2327. description: The key the value inside of the provider type to use, only used with "Secret" type
  2328. type: string
  2329. name:
  2330. description: The name of the object located at the provider type.
  2331. type: string
  2332. namespace:
  2333. description: The namespace the Provider type is in.
  2334. type: string
  2335. type:
  2336. description: The type of provider to use such as "Secret", or "ConfigMap".
  2337. enum:
  2338. - Secret
  2339. - ConfigMap
  2340. type: string
  2341. required:
  2342. - name
  2343. - type
  2344. type: object
  2345. headers:
  2346. additionalProperties:
  2347. type: string
  2348. description: Headers
  2349. type: object
  2350. method:
  2351. description: Webhook Method
  2352. type: string
  2353. result:
  2354. description: Result formatting
  2355. properties:
  2356. jsonPath:
  2357. description: Json path of return value
  2358. type: string
  2359. type: object
  2360. secrets:
  2361. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  2362. items:
  2363. properties:
  2364. name:
  2365. description: Name of this secret in templates
  2366. type: string
  2367. secretRef:
  2368. description: Secret ref to fill in credentials
  2369. properties:
  2370. key:
  2371. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2372. type: string
  2373. name:
  2374. description: The name of the Secret resource being referred to.
  2375. type: string
  2376. namespace:
  2377. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2378. type: string
  2379. type: object
  2380. required:
  2381. - name
  2382. - secretRef
  2383. type: object
  2384. type: array
  2385. timeout:
  2386. description: Timeout
  2387. type: string
  2388. url:
  2389. description: Webhook url to call
  2390. type: string
  2391. required:
  2392. - result
  2393. - url
  2394. type: object
  2395. yandexcertificatemanager:
  2396. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  2397. properties:
  2398. apiEndpoint:
  2399. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2400. type: string
  2401. auth:
  2402. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  2403. properties:
  2404. authorizedKeySecretRef:
  2405. description: The authorized key used for authentication
  2406. properties:
  2407. key:
  2408. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2409. type: string
  2410. name:
  2411. description: The name of the Secret resource being referred to.
  2412. type: string
  2413. namespace:
  2414. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2415. type: string
  2416. type: object
  2417. type: object
  2418. caProvider:
  2419. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2420. properties:
  2421. certSecretRef:
  2422. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2423. properties:
  2424. key:
  2425. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2426. type: string
  2427. name:
  2428. description: The name of the Secret resource being referred to.
  2429. type: string
  2430. namespace:
  2431. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2432. type: string
  2433. type: object
  2434. type: object
  2435. required:
  2436. - auth
  2437. type: object
  2438. yandexlockbox:
  2439. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  2440. properties:
  2441. apiEndpoint:
  2442. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2443. type: string
  2444. auth:
  2445. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  2446. properties:
  2447. authorizedKeySecretRef:
  2448. description: The authorized key used for authentication
  2449. properties:
  2450. key:
  2451. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2452. type: string
  2453. name:
  2454. description: The name of the Secret resource being referred to.
  2455. type: string
  2456. namespace:
  2457. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2458. type: string
  2459. type: object
  2460. type: object
  2461. caProvider:
  2462. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2463. properties:
  2464. certSecretRef:
  2465. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2466. properties:
  2467. key:
  2468. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2469. type: string
  2470. name:
  2471. description: The name of the Secret resource being referred to.
  2472. type: string
  2473. namespace:
  2474. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2475. type: string
  2476. type: object
  2477. type: object
  2478. required:
  2479. - auth
  2480. type: object
  2481. type: object
  2482. refreshInterval:
  2483. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  2484. type: integer
  2485. retrySettings:
  2486. description: Used to configure http retries if failed
  2487. properties:
  2488. maxRetries:
  2489. format: int32
  2490. type: integer
  2491. retryInterval:
  2492. type: string
  2493. type: object
  2494. required:
  2495. - provider
  2496. type: object
  2497. status:
  2498. description: SecretStoreStatus defines the observed state of the SecretStore.
  2499. properties:
  2500. conditions:
  2501. items:
  2502. properties:
  2503. lastTransitionTime:
  2504. format: date-time
  2505. type: string
  2506. message:
  2507. type: string
  2508. reason:
  2509. type: string
  2510. status:
  2511. type: string
  2512. type:
  2513. type: string
  2514. required:
  2515. - status
  2516. - type
  2517. type: object
  2518. type: array
  2519. type: object
  2520. type: object
  2521. served: true
  2522. storage: true
  2523. subresources:
  2524. status: {}
  2525. conversion:
  2526. strategy: Webhook
  2527. webhook:
  2528. conversionReviewVersions:
  2529. - v1
  2530. clientConfig:
  2531. service:
  2532. name: kubernetes
  2533. namespace: default
  2534. path: /convert
  2535. ---
  2536. apiVersion: apiextensions.k8s.io/v1
  2537. kind: CustomResourceDefinition
  2538. metadata:
  2539. annotations:
  2540. controller-gen.kubebuilder.io/version: v0.9.0
  2541. creationTimestamp: null
  2542. name: externalsecrets.external-secrets.io
  2543. spec:
  2544. group: external-secrets.io
  2545. names:
  2546. categories:
  2547. - externalsecrets
  2548. kind: ExternalSecret
  2549. listKind: ExternalSecretList
  2550. plural: externalsecrets
  2551. shortNames:
  2552. - es
  2553. singular: externalsecret
  2554. scope: Namespaced
  2555. versions:
  2556. - additionalPrinterColumns:
  2557. - jsonPath: .spec.secretStoreRef.name
  2558. name: Store
  2559. type: string
  2560. - jsonPath: .spec.refreshInterval
  2561. name: Refresh Interval
  2562. type: string
  2563. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2564. name: Status
  2565. type: string
  2566. deprecated: true
  2567. name: v1alpha1
  2568. schema:
  2569. openAPIV3Schema:
  2570. description: ExternalSecret is the Schema for the external-secrets API.
  2571. properties:
  2572. apiVersion:
  2573. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2574. type: string
  2575. kind:
  2576. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2577. type: string
  2578. metadata:
  2579. type: object
  2580. spec:
  2581. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  2582. properties:
  2583. data:
  2584. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  2585. items:
  2586. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  2587. properties:
  2588. remoteRef:
  2589. description: ExternalSecretDataRemoteRef defines Provider data location.
  2590. properties:
  2591. conversionStrategy:
  2592. default: Default
  2593. description: Used to define a conversion Strategy
  2594. type: string
  2595. key:
  2596. description: Key is the key used in the Provider, mandatory
  2597. type: string
  2598. property:
  2599. description: Used to select a specific property of the Provider value (if a map), if supported
  2600. type: string
  2601. version:
  2602. description: Used to select a specific version of the Provider value, if supported
  2603. type: string
  2604. required:
  2605. - key
  2606. type: object
  2607. secretKey:
  2608. type: string
  2609. required:
  2610. - remoteRef
  2611. - secretKey
  2612. type: object
  2613. type: array
  2614. dataFrom:
  2615. description: DataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
  2616. items:
  2617. description: ExternalSecretDataRemoteRef defines Provider data location.
  2618. properties:
  2619. conversionStrategy:
  2620. default: Default
  2621. description: Used to define a conversion Strategy
  2622. type: string
  2623. key:
  2624. description: Key is the key used in the Provider, mandatory
  2625. type: string
  2626. property:
  2627. description: Used to select a specific property of the Provider value (if a map), if supported
  2628. type: string
  2629. version:
  2630. description: Used to select a specific version of the Provider value, if supported
  2631. type: string
  2632. required:
  2633. - key
  2634. type: object
  2635. type: array
  2636. refreshInterval:
  2637. default: 1h
  2638. description: RefreshInterval is the amount of time before the values are read again from the SecretStore provider Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to fetch and create it once. Defaults to 1h.
  2639. type: string
  2640. secretStoreRef:
  2641. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  2642. properties:
  2643. kind:
  2644. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  2645. type: string
  2646. name:
  2647. description: Name of the SecretStore resource
  2648. type: string
  2649. required:
  2650. - name
  2651. type: object
  2652. target:
  2653. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  2654. properties:
  2655. creationPolicy:
  2656. default: Owner
  2657. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  2658. type: string
  2659. immutable:
  2660. description: Immutable defines if the final secret will be immutable
  2661. type: boolean
  2662. name:
  2663. description: Name defines the name of the Secret resource to be managed This field is immutable Defaults to the .metadata.name of the ExternalSecret resource
  2664. type: string
  2665. template:
  2666. description: Template defines a blueprint for the created Secret resource.
  2667. properties:
  2668. data:
  2669. additionalProperties:
  2670. type: string
  2671. type: object
  2672. engineVersion:
  2673. default: v1
  2674. description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[].
  2675. type: string
  2676. metadata:
  2677. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2678. properties:
  2679. annotations:
  2680. additionalProperties:
  2681. type: string
  2682. type: object
  2683. labels:
  2684. additionalProperties:
  2685. type: string
  2686. type: object
  2687. type: object
  2688. templateFrom:
  2689. items:
  2690. maxProperties: 1
  2691. minProperties: 1
  2692. properties:
  2693. configMap:
  2694. properties:
  2695. items:
  2696. items:
  2697. properties:
  2698. key:
  2699. type: string
  2700. required:
  2701. - key
  2702. type: object
  2703. type: array
  2704. name:
  2705. type: string
  2706. required:
  2707. - items
  2708. - name
  2709. type: object
  2710. secret:
  2711. properties:
  2712. items:
  2713. items:
  2714. properties:
  2715. key:
  2716. type: string
  2717. required:
  2718. - key
  2719. type: object
  2720. type: array
  2721. name:
  2722. type: string
  2723. required:
  2724. - items
  2725. - name
  2726. type: object
  2727. type: object
  2728. type: array
  2729. type:
  2730. type: string
  2731. type: object
  2732. type: object
  2733. required:
  2734. - secretStoreRef
  2735. - target
  2736. type: object
  2737. status:
  2738. properties:
  2739. conditions:
  2740. items:
  2741. properties:
  2742. lastTransitionTime:
  2743. format: date-time
  2744. type: string
  2745. message:
  2746. type: string
  2747. reason:
  2748. type: string
  2749. status:
  2750. type: string
  2751. type:
  2752. type: string
  2753. required:
  2754. - status
  2755. - type
  2756. type: object
  2757. type: array
  2758. refreshTime:
  2759. description: refreshTime is the time and date the external secret was fetched and the target secret updated
  2760. format: date-time
  2761. nullable: true
  2762. type: string
  2763. syncedResourceVersion:
  2764. description: SyncedResourceVersion keeps track of the last synced version
  2765. type: string
  2766. type: object
  2767. type: object
  2768. served: true
  2769. storage: false
  2770. subresources:
  2771. status: {}
  2772. - additionalPrinterColumns:
  2773. - jsonPath: .spec.secretStoreRef.name
  2774. name: Store
  2775. type: string
  2776. - jsonPath: .spec.refreshInterval
  2777. name: Refresh Interval
  2778. type: string
  2779. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2780. name: Status
  2781. type: string
  2782. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2783. name: Ready
  2784. type: string
  2785. name: v1beta1
  2786. schema:
  2787. openAPIV3Schema:
  2788. description: ExternalSecret is the Schema for the external-secrets API.
  2789. properties:
  2790. apiVersion:
  2791. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2792. type: string
  2793. kind:
  2794. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2795. type: string
  2796. metadata:
  2797. type: object
  2798. spec:
  2799. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  2800. properties:
  2801. data:
  2802. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  2803. items:
  2804. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  2805. properties:
  2806. remoteRef:
  2807. description: ExternalSecretDataRemoteRef defines Provider data location.
  2808. properties:
  2809. conversionStrategy:
  2810. default: Default
  2811. description: Used to define a conversion Strategy
  2812. type: string
  2813. decodingStrategy:
  2814. default: None
  2815. description: Used to define a conversion Strategy
  2816. type: string
  2817. key:
  2818. description: Key is the key used in the Provider, mandatory
  2819. type: string
  2820. metadataPolicy:
  2821. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  2822. type: string
  2823. property:
  2824. description: Used to select a specific property of the Provider value (if a map), if supported
  2825. type: string
  2826. version:
  2827. description: Used to select a specific version of the Provider value, if supported
  2828. type: string
  2829. required:
  2830. - key
  2831. type: object
  2832. secretKey:
  2833. type: string
  2834. required:
  2835. - remoteRef
  2836. - secretKey
  2837. type: object
  2838. type: array
  2839. dataFrom:
  2840. description: DataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
  2841. items:
  2842. maxProperties: 1
  2843. minProperties: 1
  2844. properties:
  2845. extract:
  2846. description: Used to extract multiple key/value pairs from one secret
  2847. properties:
  2848. conversionStrategy:
  2849. default: Default
  2850. description: Used to define a conversion Strategy
  2851. type: string
  2852. decodingStrategy:
  2853. default: None
  2854. description: Used to define a conversion Strategy
  2855. type: string
  2856. key:
  2857. description: Key is the key used in the Provider, mandatory
  2858. type: string
  2859. metadataPolicy:
  2860. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  2861. type: string
  2862. property:
  2863. description: Used to select a specific property of the Provider value (if a map), if supported
  2864. type: string
  2865. version:
  2866. description: Used to select a specific version of the Provider value, if supported
  2867. type: string
  2868. required:
  2869. - key
  2870. type: object
  2871. find:
  2872. description: Used to find secrets based on tags or regular expressions
  2873. properties:
  2874. conversionStrategy:
  2875. default: Default
  2876. description: Used to define a conversion Strategy
  2877. type: string
  2878. decodingStrategy:
  2879. default: None
  2880. description: Used to define a conversion Strategy
  2881. type: string
  2882. name:
  2883. description: Finds secrets based on the name.
  2884. properties:
  2885. regexp:
  2886. description: Finds secrets base
  2887. type: string
  2888. type: object
  2889. path:
  2890. description: A root path to start the find operations.
  2891. type: string
  2892. tags:
  2893. additionalProperties:
  2894. type: string
  2895. description: Find secrets based on tags.
  2896. type: object
  2897. type: object
  2898. type: object
  2899. type: array
  2900. refreshInterval:
  2901. default: 1h
  2902. description: RefreshInterval is the amount of time before the values are read again from the SecretStore provider Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to fetch and create it once. Defaults to 1h.
  2903. type: string
  2904. secretStoreRef:
  2905. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  2906. properties:
  2907. kind:
  2908. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  2909. type: string
  2910. name:
  2911. description: Name of the SecretStore resource
  2912. type: string
  2913. required:
  2914. - name
  2915. type: object
  2916. target:
  2917. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  2918. properties:
  2919. creationPolicy:
  2920. default: Owner
  2921. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  2922. enum:
  2923. - Owner
  2924. - Orphan
  2925. - Merge
  2926. - None
  2927. type: string
  2928. deletionPolicy:
  2929. default: Retain
  2930. description: DeletionPolicy defines rules on how to delete the resulting Secret Defaults to 'Retain'
  2931. enum:
  2932. - Delete
  2933. - Merge
  2934. - Retain
  2935. type: string
  2936. immutable:
  2937. description: Immutable defines if the final secret will be immutable
  2938. type: boolean
  2939. name:
  2940. description: Name defines the name of the Secret resource to be managed This field is immutable Defaults to the .metadata.name of the ExternalSecret resource
  2941. type: string
  2942. template:
  2943. description: Template defines a blueprint for the created Secret resource.
  2944. properties:
  2945. data:
  2946. additionalProperties:
  2947. type: string
  2948. type: object
  2949. engineVersion:
  2950. default: v2
  2951. type: string
  2952. metadata:
  2953. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2954. properties:
  2955. annotations:
  2956. additionalProperties:
  2957. type: string
  2958. type: object
  2959. labels:
  2960. additionalProperties:
  2961. type: string
  2962. type: object
  2963. type: object
  2964. templateFrom:
  2965. items:
  2966. maxProperties: 1
  2967. minProperties: 1
  2968. properties:
  2969. configMap:
  2970. properties:
  2971. items:
  2972. items:
  2973. properties:
  2974. key:
  2975. type: string
  2976. required:
  2977. - key
  2978. type: object
  2979. type: array
  2980. name:
  2981. type: string
  2982. required:
  2983. - items
  2984. - name
  2985. type: object
  2986. secret:
  2987. properties:
  2988. items:
  2989. items:
  2990. properties:
  2991. key:
  2992. type: string
  2993. required:
  2994. - key
  2995. type: object
  2996. type: array
  2997. name:
  2998. type: string
  2999. required:
  3000. - items
  3001. - name
  3002. type: object
  3003. type: object
  3004. type: array
  3005. type:
  3006. type: string
  3007. type: object
  3008. type: object
  3009. required:
  3010. - secretStoreRef
  3011. type: object
  3012. status:
  3013. properties:
  3014. conditions:
  3015. items:
  3016. properties:
  3017. lastTransitionTime:
  3018. format: date-time
  3019. type: string
  3020. message:
  3021. type: string
  3022. reason:
  3023. type: string
  3024. status:
  3025. type: string
  3026. type:
  3027. type: string
  3028. required:
  3029. - status
  3030. - type
  3031. type: object
  3032. type: array
  3033. refreshTime:
  3034. description: refreshTime is the time and date the external secret was fetched and the target secret updated
  3035. format: date-time
  3036. nullable: true
  3037. type: string
  3038. syncedResourceVersion:
  3039. description: SyncedResourceVersion keeps track of the last synced version
  3040. type: string
  3041. type: object
  3042. type: object
  3043. served: true
  3044. storage: true
  3045. subresources:
  3046. status: {}
  3047. conversion:
  3048. strategy: Webhook
  3049. webhook:
  3050. conversionReviewVersions:
  3051. - v1
  3052. clientConfig:
  3053. service:
  3054. name: kubernetes
  3055. namespace: default
  3056. path: /convert
  3057. ---
  3058. apiVersion: apiextensions.k8s.io/v1
  3059. kind: CustomResourceDefinition
  3060. metadata:
  3061. annotations:
  3062. controller-gen.kubebuilder.io/version: v0.9.0
  3063. creationTimestamp: null
  3064. name: secretstores.external-secrets.io
  3065. spec:
  3066. group: external-secrets.io
  3067. names:
  3068. categories:
  3069. - externalsecrets
  3070. kind: SecretStore
  3071. listKind: SecretStoreList
  3072. plural: secretstores
  3073. shortNames:
  3074. - ss
  3075. singular: secretstore
  3076. scope: Namespaced
  3077. versions:
  3078. - additionalPrinterColumns:
  3079. - jsonPath: .metadata.creationTimestamp
  3080. name: AGE
  3081. type: date
  3082. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  3083. name: Status
  3084. type: string
  3085. deprecated: true
  3086. name: v1alpha1
  3087. schema:
  3088. openAPIV3Schema:
  3089. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  3090. properties:
  3091. apiVersion:
  3092. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  3093. type: string
  3094. kind:
  3095. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  3096. type: string
  3097. metadata:
  3098. type: object
  3099. spec:
  3100. description: SecretStoreSpec defines the desired state of SecretStore.
  3101. properties:
  3102. controller:
  3103. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  3104. type: string
  3105. provider:
  3106. description: Used to configure the provider. Only one provider may be set
  3107. maxProperties: 1
  3108. minProperties: 1
  3109. properties:
  3110. akeyless:
  3111. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  3112. properties:
  3113. akeylessGWApiURL:
  3114. description: Akeyless GW API Url from which the secrets to be fetched from.
  3115. type: string
  3116. authSecretRef:
  3117. description: Auth configures how the operator authenticates with Akeyless.
  3118. properties:
  3119. secretRef:
  3120. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  3121. properties:
  3122. accessID:
  3123. description: The SecretAccessID is used for authentication
  3124. properties:
  3125. key:
  3126. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3127. type: string
  3128. name:
  3129. description: The name of the Secret resource being referred to.
  3130. type: string
  3131. namespace:
  3132. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3133. type: string
  3134. type: object
  3135. accessType:
  3136. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3137. properties:
  3138. key:
  3139. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3140. type: string
  3141. name:
  3142. description: The name of the Secret resource being referred to.
  3143. type: string
  3144. namespace:
  3145. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3146. type: string
  3147. type: object
  3148. accessTypeParam:
  3149. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3150. properties:
  3151. key:
  3152. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3153. type: string
  3154. name:
  3155. description: The name of the Secret resource being referred to.
  3156. type: string
  3157. namespace:
  3158. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3159. type: string
  3160. type: object
  3161. type: object
  3162. required:
  3163. - secretRef
  3164. type: object
  3165. required:
  3166. - akeylessGWApiURL
  3167. - authSecretRef
  3168. type: object
  3169. alibaba:
  3170. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  3171. properties:
  3172. auth:
  3173. description: AlibabaAuth contains a secretRef for credentials.
  3174. properties:
  3175. secretRef:
  3176. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  3177. properties:
  3178. accessKeyIDSecretRef:
  3179. description: The AccessKeyID is used for authentication
  3180. properties:
  3181. key:
  3182. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3183. type: string
  3184. name:
  3185. description: The name of the Secret resource being referred to.
  3186. type: string
  3187. namespace:
  3188. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3189. type: string
  3190. type: object
  3191. accessKeySecretSecretRef:
  3192. description: The AccessKeySecret is used for authentication
  3193. properties:
  3194. key:
  3195. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be 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: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3202. type: string
  3203. type: object
  3204. required:
  3205. - accessKeyIDSecretRef
  3206. - accessKeySecretSecretRef
  3207. type: object
  3208. required:
  3209. - secretRef
  3210. type: object
  3211. endpoint:
  3212. type: string
  3213. regionID:
  3214. description: Alibaba Region to be used for the provider
  3215. type: string
  3216. required:
  3217. - auth
  3218. - regionID
  3219. type: object
  3220. aws:
  3221. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  3222. properties:
  3223. auth:
  3224. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  3225. properties:
  3226. jwt:
  3227. description: Authenticate against AWS using service account tokens.
  3228. properties:
  3229. serviceAccountRef:
  3230. description: A reference to a ServiceAccount resource.
  3231. properties:
  3232. name:
  3233. description: The name of the ServiceAccount resource being referred to.
  3234. type: string
  3235. namespace:
  3236. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3237. type: string
  3238. required:
  3239. - name
  3240. type: object
  3241. type: object
  3242. secretRef:
  3243. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  3244. properties:
  3245. accessKeyIDSecretRef:
  3246. description: The AccessKeyID is used for authentication
  3247. properties:
  3248. key:
  3249. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3250. type: string
  3251. name:
  3252. description: The name of the Secret resource being referred to.
  3253. type: string
  3254. namespace:
  3255. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3256. type: string
  3257. type: object
  3258. secretAccessKeySecretRef:
  3259. description: The SecretAccessKey is used for authentication
  3260. properties:
  3261. key:
  3262. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3263. type: string
  3264. name:
  3265. description: The name of the Secret resource being referred to.
  3266. type: string
  3267. namespace:
  3268. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3269. type: string
  3270. type: object
  3271. type: object
  3272. type: object
  3273. region:
  3274. description: AWS Region to be used for the provider
  3275. type: string
  3276. role:
  3277. description: Role is a Role ARN which the SecretManager provider will assume
  3278. type: string
  3279. service:
  3280. description: Service defines which service should be used to fetch the secrets
  3281. enum:
  3282. - SecretsManager
  3283. - ParameterStore
  3284. type: string
  3285. required:
  3286. - region
  3287. - service
  3288. type: object
  3289. azurekv:
  3290. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  3291. properties:
  3292. authSecretRef:
  3293. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  3294. properties:
  3295. clientId:
  3296. description: The Azure clientId of the service principle used for authentication.
  3297. properties:
  3298. key:
  3299. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3300. type: string
  3301. name:
  3302. description: The name of the Secret resource being referred to.
  3303. type: string
  3304. namespace:
  3305. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3306. type: string
  3307. type: object
  3308. clientSecret:
  3309. description: The Azure ClientSecret of the service principle used for authentication.
  3310. properties:
  3311. key:
  3312. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3313. type: string
  3314. name:
  3315. description: The name of the Secret resource being referred to.
  3316. type: string
  3317. namespace:
  3318. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3319. type: string
  3320. type: object
  3321. type: object
  3322. authType:
  3323. default: ServicePrincipal
  3324. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  3325. enum:
  3326. - ServicePrincipal
  3327. - ManagedIdentity
  3328. - WorkloadIdentity
  3329. type: string
  3330. identityId:
  3331. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3332. type: string
  3333. serviceAccountRef:
  3334. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  3335. properties:
  3336. name:
  3337. description: The name of the ServiceAccount resource being referred to.
  3338. type: string
  3339. namespace:
  3340. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3341. type: string
  3342. required:
  3343. - name
  3344. type: object
  3345. tenantId:
  3346. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  3347. type: string
  3348. vaultUrl:
  3349. description: Vault Url from which the secrets to be fetched from.
  3350. type: string
  3351. required:
  3352. - vaultUrl
  3353. type: object
  3354. fake:
  3355. description: Fake configures a store with static key/value pairs
  3356. properties:
  3357. data:
  3358. items:
  3359. properties:
  3360. key:
  3361. type: string
  3362. value:
  3363. type: string
  3364. valueMap:
  3365. additionalProperties:
  3366. type: string
  3367. type: object
  3368. version:
  3369. type: string
  3370. required:
  3371. - key
  3372. type: object
  3373. type: array
  3374. required:
  3375. - data
  3376. type: object
  3377. gcpsm:
  3378. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  3379. properties:
  3380. auth:
  3381. description: Auth defines the information necessary to authenticate against GCP
  3382. properties:
  3383. secretRef:
  3384. properties:
  3385. secretAccessKeySecretRef:
  3386. description: The SecretAccessKey is used for authentication
  3387. properties:
  3388. key:
  3389. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3390. type: string
  3391. name:
  3392. description: The name of the Secret resource being referred to.
  3393. type: string
  3394. namespace:
  3395. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3396. type: string
  3397. type: object
  3398. type: object
  3399. workloadIdentity:
  3400. properties:
  3401. clusterLocation:
  3402. type: string
  3403. clusterName:
  3404. type: string
  3405. clusterProjectID:
  3406. type: string
  3407. serviceAccountRef:
  3408. description: A reference to a ServiceAccount resource.
  3409. properties:
  3410. name:
  3411. description: The name of the ServiceAccount resource being referred to.
  3412. type: string
  3413. namespace:
  3414. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3415. type: string
  3416. required:
  3417. - name
  3418. type: object
  3419. required:
  3420. - clusterLocation
  3421. - clusterName
  3422. - serviceAccountRef
  3423. type: object
  3424. type: object
  3425. projectID:
  3426. description: ProjectID project where secret is located
  3427. type: string
  3428. type: object
  3429. gitlab:
  3430. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  3431. properties:
  3432. auth:
  3433. description: Auth configures how secret-manager authenticates with a GitLab instance.
  3434. properties:
  3435. SecretRef:
  3436. properties:
  3437. accessToken:
  3438. description: AccessToken is used for authentication.
  3439. properties:
  3440. key:
  3441. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3442. type: string
  3443. name:
  3444. description: The name of the Secret resource being referred to.
  3445. type: string
  3446. namespace:
  3447. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3448. type: string
  3449. type: object
  3450. type: object
  3451. required:
  3452. - SecretRef
  3453. type: object
  3454. projectID:
  3455. description: ProjectID specifies a project where secrets are located.
  3456. type: string
  3457. url:
  3458. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  3459. type: string
  3460. required:
  3461. - auth
  3462. type: object
  3463. ibm:
  3464. description: IBM configures this store to sync secrets using IBM Cloud provider
  3465. properties:
  3466. auth:
  3467. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  3468. properties:
  3469. secretRef:
  3470. properties:
  3471. secretApiKeySecretRef:
  3472. description: The SecretAccessKey is used for authentication
  3473. properties:
  3474. key:
  3475. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3476. type: string
  3477. name:
  3478. description: The name of the Secret resource being referred to.
  3479. type: string
  3480. namespace:
  3481. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3482. type: string
  3483. type: object
  3484. type: object
  3485. required:
  3486. - secretRef
  3487. type: object
  3488. serviceUrl:
  3489. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  3490. type: string
  3491. required:
  3492. - auth
  3493. type: object
  3494. kubernetes:
  3495. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  3496. properties:
  3497. auth:
  3498. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  3499. maxProperties: 1
  3500. minProperties: 1
  3501. properties:
  3502. cert:
  3503. description: has both clientCert and clientKey as secretKeySelector
  3504. properties:
  3505. clientCert:
  3506. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3507. properties:
  3508. key:
  3509. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3510. type: string
  3511. name:
  3512. description: The name of the Secret resource being referred to.
  3513. type: string
  3514. namespace:
  3515. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3516. type: string
  3517. type: object
  3518. clientKey:
  3519. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3520. properties:
  3521. key:
  3522. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3523. type: string
  3524. name:
  3525. description: The name of the Secret resource being referred to.
  3526. type: string
  3527. namespace:
  3528. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3529. type: string
  3530. type: object
  3531. type: object
  3532. serviceAccount:
  3533. description: points to a service account that should be used for authentication
  3534. properties:
  3535. serviceAccount:
  3536. description: A reference to a ServiceAccount resource.
  3537. properties:
  3538. name:
  3539. description: The name of the ServiceAccount resource being referred to.
  3540. type: string
  3541. namespace:
  3542. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3543. type: string
  3544. required:
  3545. - name
  3546. type: object
  3547. type: object
  3548. token:
  3549. description: use static token to authenticate with
  3550. properties:
  3551. bearerToken:
  3552. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3553. properties:
  3554. key:
  3555. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3556. type: string
  3557. name:
  3558. description: The name of the Secret resource being referred to.
  3559. type: string
  3560. namespace:
  3561. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3562. type: string
  3563. type: object
  3564. type: object
  3565. type: object
  3566. remoteNamespace:
  3567. default: default
  3568. description: Remote namespace to fetch the secrets from
  3569. type: string
  3570. server:
  3571. description: configures the Kubernetes server Address.
  3572. properties:
  3573. caBundle:
  3574. description: CABundle is a base64-encoded CA certificate
  3575. format: byte
  3576. type: string
  3577. caProvider:
  3578. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  3579. properties:
  3580. key:
  3581. description: The key the value inside of the provider type to use, only used with "Secret" type
  3582. type: string
  3583. name:
  3584. description: The name of the object located at the provider type.
  3585. type: string
  3586. namespace:
  3587. description: The namespace the Provider type is in.
  3588. type: string
  3589. type:
  3590. description: The type of provider to use such as "Secret", or "ConfigMap".
  3591. enum:
  3592. - Secret
  3593. - ConfigMap
  3594. type: string
  3595. required:
  3596. - name
  3597. - type
  3598. type: object
  3599. url:
  3600. default: kubernetes.default
  3601. description: configures the Kubernetes server Address.
  3602. type: string
  3603. type: object
  3604. required:
  3605. - auth
  3606. type: object
  3607. oracle:
  3608. description: Oracle configures this store to sync secrets using Oracle Vault provider
  3609. properties:
  3610. auth:
  3611. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  3612. properties:
  3613. secretRef:
  3614. description: SecretRef to pass through sensitive information.
  3615. properties:
  3616. fingerprint:
  3617. description: Fingerprint is the fingerprint of the API private key.
  3618. properties:
  3619. key:
  3620. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3621. type: string
  3622. name:
  3623. description: The name of the Secret resource being referred to.
  3624. type: string
  3625. namespace:
  3626. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3627. type: string
  3628. type: object
  3629. privatekey:
  3630. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  3631. properties:
  3632. key:
  3633. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3634. type: string
  3635. name:
  3636. description: The name of the Secret resource being referred to.
  3637. type: string
  3638. namespace:
  3639. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3640. type: string
  3641. type: object
  3642. required:
  3643. - fingerprint
  3644. - privatekey
  3645. type: object
  3646. tenancy:
  3647. description: Tenancy is the tenancy OCID where user is located.
  3648. type: string
  3649. user:
  3650. description: User is an access OCID specific to the account.
  3651. type: string
  3652. required:
  3653. - secretRef
  3654. - tenancy
  3655. - user
  3656. type: object
  3657. region:
  3658. description: Region is the region where vault is located.
  3659. type: string
  3660. vault:
  3661. description: Vault is the vault's OCID of the specific vault where secret is located.
  3662. type: string
  3663. required:
  3664. - region
  3665. - vault
  3666. type: object
  3667. vault:
  3668. description: Vault configures this store to sync secrets using Hashi provider
  3669. properties:
  3670. auth:
  3671. description: Auth configures how secret-manager authenticates with the Vault server.
  3672. properties:
  3673. appRole:
  3674. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  3675. properties:
  3676. path:
  3677. default: approle
  3678. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  3679. type: string
  3680. roleId:
  3681. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  3682. type: string
  3683. secretRef:
  3684. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  3685. properties:
  3686. key:
  3687. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3688. type: string
  3689. name:
  3690. description: The name of the Secret resource being referred to.
  3691. type: string
  3692. namespace:
  3693. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3694. type: string
  3695. type: object
  3696. required:
  3697. - path
  3698. - roleId
  3699. - secretRef
  3700. type: object
  3701. cert:
  3702. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  3703. properties:
  3704. clientCert:
  3705. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  3706. properties:
  3707. key:
  3708. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3709. type: string
  3710. name:
  3711. description: The name of the Secret resource being referred to.
  3712. type: string
  3713. namespace:
  3714. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3715. type: string
  3716. type: object
  3717. secretRef:
  3718. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  3719. properties:
  3720. key:
  3721. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3722. type: string
  3723. name:
  3724. description: The name of the Secret resource being referred to.
  3725. type: string
  3726. namespace:
  3727. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3728. type: string
  3729. type: object
  3730. type: object
  3731. jwt:
  3732. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  3733. properties:
  3734. kubernetesServiceAccountToken:
  3735. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  3736. properties:
  3737. audiences:
  3738. description: Optional audiences field that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to a single audience `vault` it not specified.
  3739. items:
  3740. type: string
  3741. type: array
  3742. expirationSeconds:
  3743. description: Optional expiration time in seconds that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to 10 minutes.
  3744. format: int64
  3745. type: integer
  3746. serviceAccountRef:
  3747. description: Service account field containing the name of a kubernetes ServiceAccount.
  3748. properties:
  3749. name:
  3750. description: The name of the ServiceAccount resource being referred to.
  3751. type: string
  3752. namespace:
  3753. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3754. type: string
  3755. required:
  3756. - name
  3757. type: object
  3758. required:
  3759. - serviceAccountRef
  3760. type: object
  3761. path:
  3762. default: jwt
  3763. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  3764. type: string
  3765. role:
  3766. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  3767. type: string
  3768. secretRef:
  3769. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
  3770. properties:
  3771. key:
  3772. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3773. type: string
  3774. name:
  3775. description: The name of the Secret resource being referred to.
  3776. type: string
  3777. namespace:
  3778. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3779. type: string
  3780. type: object
  3781. required:
  3782. - path
  3783. type: object
  3784. kubernetes:
  3785. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  3786. properties:
  3787. mountPath:
  3788. default: kubernetes
  3789. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  3790. type: string
  3791. role:
  3792. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  3793. type: string
  3794. secretRef:
  3795. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  3796. properties:
  3797. key:
  3798. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3799. type: string
  3800. name:
  3801. description: The name of the Secret resource being referred to.
  3802. type: string
  3803. namespace:
  3804. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3805. type: string
  3806. type: object
  3807. serviceAccountRef:
  3808. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  3809. properties:
  3810. name:
  3811. description: The name of the ServiceAccount resource being referred to.
  3812. type: string
  3813. namespace:
  3814. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3815. type: string
  3816. required:
  3817. - name
  3818. type: object
  3819. required:
  3820. - mountPath
  3821. - role
  3822. type: object
  3823. ldap:
  3824. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  3825. properties:
  3826. path:
  3827. default: ldap
  3828. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  3829. type: string
  3830. secretRef:
  3831. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  3832. properties:
  3833. key:
  3834. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3835. type: string
  3836. name:
  3837. description: The name of the Secret resource being referred to.
  3838. type: string
  3839. namespace:
  3840. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3841. type: string
  3842. type: object
  3843. username:
  3844. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  3845. type: string
  3846. required:
  3847. - path
  3848. - username
  3849. type: object
  3850. tokenSecretRef:
  3851. description: TokenSecretRef authenticates with Vault by presenting a token.
  3852. properties:
  3853. key:
  3854. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3855. type: string
  3856. name:
  3857. description: The name of the Secret resource being referred to.
  3858. type: string
  3859. namespace:
  3860. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3861. type: string
  3862. type: object
  3863. type: object
  3864. caBundle:
  3865. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  3866. format: byte
  3867. type: string
  3868. caProvider:
  3869. description: The provider for the CA bundle to use to validate Vault server certificate.
  3870. properties:
  3871. key:
  3872. description: The key the value inside of the provider type to use, only used with "Secret" type
  3873. type: string
  3874. name:
  3875. description: The name of the object located at the provider type.
  3876. type: string
  3877. namespace:
  3878. description: The namespace the Provider type is in.
  3879. type: string
  3880. type:
  3881. description: The type of provider to use such as "Secret", or "ConfigMap".
  3882. enum:
  3883. - Secret
  3884. - ConfigMap
  3885. type: string
  3886. required:
  3887. - name
  3888. - type
  3889. type: object
  3890. forwardInconsistent:
  3891. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  3892. type: boolean
  3893. namespace:
  3894. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  3895. type: string
  3896. path:
  3897. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  3898. type: string
  3899. readYourWrites:
  3900. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  3901. type: boolean
  3902. server:
  3903. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  3904. type: string
  3905. version:
  3906. default: v2
  3907. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  3908. enum:
  3909. - v1
  3910. - v2
  3911. type: string
  3912. required:
  3913. - auth
  3914. - server
  3915. type: object
  3916. webhook:
  3917. description: Webhook configures this store to sync secrets using a generic templated webhook
  3918. properties:
  3919. body:
  3920. description: Body
  3921. type: string
  3922. caBundle:
  3923. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  3924. format: byte
  3925. type: string
  3926. caProvider:
  3927. description: The provider for the CA bundle to use to validate webhook server certificate.
  3928. properties:
  3929. key:
  3930. description: The key the value inside of the provider type to use, only used with "Secret" type
  3931. type: string
  3932. name:
  3933. description: The name of the object located at the provider type.
  3934. type: string
  3935. namespace:
  3936. description: The namespace the Provider type is in.
  3937. type: string
  3938. type:
  3939. description: The type of provider to use such as "Secret", or "ConfigMap".
  3940. enum:
  3941. - Secret
  3942. - ConfigMap
  3943. type: string
  3944. required:
  3945. - name
  3946. - type
  3947. type: object
  3948. headers:
  3949. additionalProperties:
  3950. type: string
  3951. description: Headers
  3952. type: object
  3953. method:
  3954. description: Webhook Method
  3955. type: string
  3956. result:
  3957. description: Result formatting
  3958. properties:
  3959. jsonPath:
  3960. description: Json path of return value
  3961. type: string
  3962. type: object
  3963. secrets:
  3964. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  3965. items:
  3966. properties:
  3967. name:
  3968. description: Name of this secret in templates
  3969. type: string
  3970. secretRef:
  3971. description: Secret ref to fill in credentials
  3972. properties:
  3973. key:
  3974. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3975. type: string
  3976. name:
  3977. description: The name of the Secret resource being referred to.
  3978. type: string
  3979. namespace:
  3980. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3981. type: string
  3982. type: object
  3983. required:
  3984. - name
  3985. - secretRef
  3986. type: object
  3987. type: array
  3988. timeout:
  3989. description: Timeout
  3990. type: string
  3991. url:
  3992. description: Webhook url to call
  3993. type: string
  3994. required:
  3995. - result
  3996. - url
  3997. type: object
  3998. yandexlockbox:
  3999. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  4000. properties:
  4001. apiEndpoint:
  4002. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4003. type: string
  4004. auth:
  4005. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  4006. properties:
  4007. authorizedKeySecretRef:
  4008. description: The authorized key used for authentication
  4009. properties:
  4010. key:
  4011. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4012. type: string
  4013. name:
  4014. description: The name of the Secret resource being referred to.
  4015. type: string
  4016. namespace:
  4017. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4018. type: string
  4019. type: object
  4020. type: object
  4021. caProvider:
  4022. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4023. properties:
  4024. certSecretRef:
  4025. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4026. properties:
  4027. key:
  4028. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4029. type: string
  4030. name:
  4031. description: The name of the Secret resource being referred to.
  4032. type: string
  4033. namespace:
  4034. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4035. type: string
  4036. type: object
  4037. type: object
  4038. required:
  4039. - auth
  4040. type: object
  4041. type: object
  4042. retrySettings:
  4043. description: Used to configure http retries if failed
  4044. properties:
  4045. maxRetries:
  4046. format: int32
  4047. type: integer
  4048. retryInterval:
  4049. type: string
  4050. type: object
  4051. required:
  4052. - provider
  4053. type: object
  4054. status:
  4055. description: SecretStoreStatus defines the observed state of the SecretStore.
  4056. properties:
  4057. conditions:
  4058. items:
  4059. properties:
  4060. lastTransitionTime:
  4061. format: date-time
  4062. type: string
  4063. message:
  4064. type: string
  4065. reason:
  4066. type: string
  4067. status:
  4068. type: string
  4069. type:
  4070. type: string
  4071. required:
  4072. - status
  4073. - type
  4074. type: object
  4075. type: array
  4076. type: object
  4077. type: object
  4078. served: true
  4079. storage: false
  4080. subresources:
  4081. status: {}
  4082. - additionalPrinterColumns:
  4083. - jsonPath: .metadata.creationTimestamp
  4084. name: AGE
  4085. type: date
  4086. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4087. name: Status
  4088. type: string
  4089. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  4090. name: Ready
  4091. type: string
  4092. name: v1beta1
  4093. schema:
  4094. openAPIV3Schema:
  4095. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  4096. properties:
  4097. apiVersion:
  4098. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  4099. type: string
  4100. kind:
  4101. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  4102. type: string
  4103. metadata:
  4104. type: object
  4105. spec:
  4106. description: SecretStoreSpec defines the desired state of SecretStore.
  4107. properties:
  4108. controller:
  4109. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  4110. type: string
  4111. provider:
  4112. description: Used to configure the provider. Only one provider may be set
  4113. maxProperties: 1
  4114. minProperties: 1
  4115. properties:
  4116. akeyless:
  4117. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  4118. properties:
  4119. akeylessGWApiURL:
  4120. description: Akeyless GW API Url from which the secrets to be fetched from.
  4121. type: string
  4122. authSecretRef:
  4123. description: Auth configures how the operator authenticates with Akeyless.
  4124. properties:
  4125. secretRef:
  4126. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  4127. properties:
  4128. accessID:
  4129. description: The SecretAccessID is used for authentication
  4130. properties:
  4131. key:
  4132. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4133. type: string
  4134. name:
  4135. description: The name of the Secret resource being referred to.
  4136. type: string
  4137. namespace:
  4138. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4139. type: string
  4140. type: object
  4141. accessType:
  4142. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4143. properties:
  4144. key:
  4145. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4146. type: string
  4147. name:
  4148. description: The name of the Secret resource being referred to.
  4149. type: string
  4150. namespace:
  4151. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4152. type: string
  4153. type: object
  4154. accessTypeParam:
  4155. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4156. properties:
  4157. key:
  4158. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4159. type: string
  4160. name:
  4161. description: The name of the Secret resource being referred to.
  4162. type: string
  4163. namespace:
  4164. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4165. type: string
  4166. type: object
  4167. type: object
  4168. required:
  4169. - secretRef
  4170. type: object
  4171. required:
  4172. - akeylessGWApiURL
  4173. - authSecretRef
  4174. type: object
  4175. alibaba:
  4176. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  4177. properties:
  4178. auth:
  4179. description: AlibabaAuth contains a secretRef for credentials.
  4180. properties:
  4181. secretRef:
  4182. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  4183. properties:
  4184. accessKeyIDSecretRef:
  4185. description: The AccessKeyID is used for authentication
  4186. properties:
  4187. key:
  4188. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4189. type: string
  4190. name:
  4191. description: The name of the Secret resource being referred to.
  4192. type: string
  4193. namespace:
  4194. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4195. type: string
  4196. type: object
  4197. accessKeySecretSecretRef:
  4198. description: The AccessKeySecret is used for authentication
  4199. properties:
  4200. key:
  4201. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4202. type: string
  4203. name:
  4204. description: The name of the Secret resource being referred to.
  4205. type: string
  4206. namespace:
  4207. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4208. type: string
  4209. type: object
  4210. required:
  4211. - accessKeyIDSecretRef
  4212. - accessKeySecretSecretRef
  4213. type: object
  4214. required:
  4215. - secretRef
  4216. type: object
  4217. endpoint:
  4218. type: string
  4219. regionID:
  4220. description: Alibaba Region to be used for the provider
  4221. type: string
  4222. required:
  4223. - auth
  4224. - regionID
  4225. type: object
  4226. aws:
  4227. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  4228. properties:
  4229. auth:
  4230. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  4231. properties:
  4232. jwt:
  4233. description: Authenticate against AWS using service account tokens.
  4234. properties:
  4235. serviceAccountRef:
  4236. description: A reference to a ServiceAccount resource.
  4237. properties:
  4238. name:
  4239. description: The name of the ServiceAccount resource being referred to.
  4240. type: string
  4241. namespace:
  4242. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4243. type: string
  4244. required:
  4245. - name
  4246. type: object
  4247. type: object
  4248. secretRef:
  4249. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  4250. properties:
  4251. accessKeyIDSecretRef:
  4252. description: The AccessKeyID is used for authentication
  4253. properties:
  4254. key:
  4255. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4256. type: string
  4257. name:
  4258. description: The name of the Secret resource being referred to.
  4259. type: string
  4260. namespace:
  4261. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4262. type: string
  4263. type: object
  4264. secretAccessKeySecretRef:
  4265. description: The SecretAccessKey is used for authentication
  4266. properties:
  4267. key:
  4268. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4269. type: string
  4270. name:
  4271. description: The name of the Secret resource being referred to.
  4272. type: string
  4273. namespace:
  4274. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4275. type: string
  4276. type: object
  4277. type: object
  4278. type: object
  4279. region:
  4280. description: AWS Region to be used for the provider
  4281. type: string
  4282. role:
  4283. description: Role is a Role ARN which the SecretManager provider will assume
  4284. type: string
  4285. service:
  4286. description: Service defines which service should be used to fetch the secrets
  4287. enum:
  4288. - SecretsManager
  4289. - ParameterStore
  4290. type: string
  4291. required:
  4292. - region
  4293. - service
  4294. type: object
  4295. azurekv:
  4296. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  4297. properties:
  4298. authSecretRef:
  4299. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  4300. properties:
  4301. clientId:
  4302. description: The Azure clientId of the service principle used for authentication.
  4303. properties:
  4304. key:
  4305. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4306. type: string
  4307. name:
  4308. description: The name of the Secret resource being referred to.
  4309. type: string
  4310. namespace:
  4311. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4312. type: string
  4313. type: object
  4314. clientSecret:
  4315. description: The Azure ClientSecret of the service principle used for authentication.
  4316. properties:
  4317. key:
  4318. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4319. type: string
  4320. name:
  4321. description: The name of the Secret resource being referred to.
  4322. type: string
  4323. namespace:
  4324. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4325. type: string
  4326. type: object
  4327. type: object
  4328. authType:
  4329. default: ServicePrincipal
  4330. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  4331. enum:
  4332. - ServicePrincipal
  4333. - ManagedIdentity
  4334. - WorkloadIdentity
  4335. type: string
  4336. identityId:
  4337. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  4338. type: string
  4339. serviceAccountRef:
  4340. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  4341. properties:
  4342. name:
  4343. description: The name of the ServiceAccount resource being referred to.
  4344. type: string
  4345. namespace:
  4346. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4347. type: string
  4348. required:
  4349. - name
  4350. type: object
  4351. tenantId:
  4352. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  4353. type: string
  4354. vaultUrl:
  4355. description: Vault Url from which the secrets to be fetched from.
  4356. type: string
  4357. required:
  4358. - vaultUrl
  4359. type: object
  4360. fake:
  4361. description: Fake configures a store with static key/value pairs
  4362. properties:
  4363. data:
  4364. items:
  4365. properties:
  4366. key:
  4367. type: string
  4368. value:
  4369. type: string
  4370. valueMap:
  4371. additionalProperties:
  4372. type: string
  4373. type: object
  4374. version:
  4375. type: string
  4376. required:
  4377. - key
  4378. type: object
  4379. type: array
  4380. required:
  4381. - data
  4382. type: object
  4383. gcpsm:
  4384. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4385. properties:
  4386. auth:
  4387. description: Auth defines the information necessary to authenticate against GCP
  4388. properties:
  4389. secretRef:
  4390. properties:
  4391. secretAccessKeySecretRef:
  4392. description: The SecretAccessKey is used for authentication
  4393. properties:
  4394. key:
  4395. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4396. type: string
  4397. name:
  4398. description: The name of the Secret resource being referred to.
  4399. type: string
  4400. namespace:
  4401. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4402. type: string
  4403. type: object
  4404. type: object
  4405. workloadIdentity:
  4406. properties:
  4407. clusterLocation:
  4408. type: string
  4409. clusterName:
  4410. type: string
  4411. clusterProjectID:
  4412. type: string
  4413. serviceAccountRef:
  4414. description: A reference to a ServiceAccount resource.
  4415. properties:
  4416. name:
  4417. description: The name of the ServiceAccount resource being referred to.
  4418. type: string
  4419. namespace:
  4420. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4421. type: string
  4422. required:
  4423. - name
  4424. type: object
  4425. required:
  4426. - clusterLocation
  4427. - clusterName
  4428. - serviceAccountRef
  4429. type: object
  4430. type: object
  4431. projectID:
  4432. description: ProjectID project where secret is located
  4433. type: string
  4434. type: object
  4435. gitlab:
  4436. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  4437. properties:
  4438. auth:
  4439. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4440. properties:
  4441. SecretRef:
  4442. properties:
  4443. accessToken:
  4444. description: AccessToken is used for authentication.
  4445. properties:
  4446. key:
  4447. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4448. type: string
  4449. name:
  4450. description: The name of the Secret resource being referred to.
  4451. type: string
  4452. namespace:
  4453. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4454. type: string
  4455. type: object
  4456. type: object
  4457. required:
  4458. - SecretRef
  4459. type: object
  4460. projectID:
  4461. description: ProjectID specifies a project where secrets are located.
  4462. type: string
  4463. url:
  4464. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4465. type: string
  4466. required:
  4467. - auth
  4468. type: object
  4469. ibm:
  4470. description: IBM configures this store to sync secrets using IBM Cloud provider
  4471. properties:
  4472. auth:
  4473. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4474. maxProperties: 1
  4475. minProperties: 1
  4476. properties:
  4477. containerAuth:
  4478. description: IBM Container-based auth with IAM Trusted Profile.
  4479. properties:
  4480. iamEndpoint:
  4481. type: string
  4482. profile:
  4483. description: the IBM Trusted Profile
  4484. type: string
  4485. tokenLocation:
  4486. description: Location the token is mounted on the pod
  4487. type: string
  4488. required:
  4489. - profile
  4490. type: object
  4491. secretRef:
  4492. properties:
  4493. secretApiKeySecretRef:
  4494. description: The SecretAccessKey is used for authentication
  4495. properties:
  4496. key:
  4497. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4498. type: string
  4499. name:
  4500. description: The name of the Secret resource being referred to.
  4501. type: string
  4502. namespace:
  4503. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4504. type: string
  4505. type: object
  4506. type: object
  4507. type: object
  4508. serviceUrl:
  4509. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4510. type: string
  4511. required:
  4512. - auth
  4513. type: object
  4514. kubernetes:
  4515. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  4516. properties:
  4517. auth:
  4518. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  4519. maxProperties: 1
  4520. minProperties: 1
  4521. properties:
  4522. cert:
  4523. description: has both clientCert and clientKey as secretKeySelector
  4524. properties:
  4525. clientCert:
  4526. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4527. properties:
  4528. key:
  4529. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4530. type: string
  4531. name:
  4532. description: The name of the Secret resource being referred to.
  4533. type: string
  4534. namespace:
  4535. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4536. type: string
  4537. type: object
  4538. clientKey:
  4539. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4540. properties:
  4541. key:
  4542. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4543. type: string
  4544. name:
  4545. description: The name of the Secret resource being referred to.
  4546. type: string
  4547. namespace:
  4548. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4549. type: string
  4550. type: object
  4551. type: object
  4552. serviceAccount:
  4553. description: points to a service account that should be used for authentication
  4554. properties:
  4555. name:
  4556. description: The name of the ServiceAccount resource being referred to.
  4557. type: string
  4558. namespace:
  4559. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4560. type: string
  4561. required:
  4562. - name
  4563. type: object
  4564. token:
  4565. description: use static token to authenticate with
  4566. properties:
  4567. bearerToken:
  4568. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4569. properties:
  4570. key:
  4571. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4572. type: string
  4573. name:
  4574. description: The name of the Secret resource being referred to.
  4575. type: string
  4576. namespace:
  4577. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4578. type: string
  4579. type: object
  4580. type: object
  4581. type: object
  4582. remoteNamespace:
  4583. default: default
  4584. description: Remote namespace to fetch the secrets from
  4585. type: string
  4586. server:
  4587. description: configures the Kubernetes server Address.
  4588. properties:
  4589. caBundle:
  4590. description: CABundle is a base64-encoded CA certificate
  4591. format: byte
  4592. type: string
  4593. caProvider:
  4594. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  4595. properties:
  4596. key:
  4597. description: The key the value inside of the provider type to use, only used with "Secret" type
  4598. type: string
  4599. name:
  4600. description: The name of the object located at the provider type.
  4601. type: string
  4602. namespace:
  4603. description: The namespace the Provider type is in.
  4604. type: string
  4605. type:
  4606. description: The type of provider to use such as "Secret", or "ConfigMap".
  4607. enum:
  4608. - Secret
  4609. - ConfigMap
  4610. type: string
  4611. required:
  4612. - name
  4613. - type
  4614. type: object
  4615. url:
  4616. default: kubernetes.default
  4617. description: configures the Kubernetes server Address.
  4618. type: string
  4619. type: object
  4620. required:
  4621. - auth
  4622. type: object
  4623. onepassword:
  4624. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  4625. properties:
  4626. auth:
  4627. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  4628. properties:
  4629. secretRef:
  4630. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  4631. properties:
  4632. connectTokenSecretRef:
  4633. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  4634. properties:
  4635. key:
  4636. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4637. type: string
  4638. name:
  4639. description: The name of the Secret resource being referred to.
  4640. type: string
  4641. namespace:
  4642. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4643. type: string
  4644. type: object
  4645. required:
  4646. - connectTokenSecretRef
  4647. type: object
  4648. required:
  4649. - secretRef
  4650. type: object
  4651. connectHost:
  4652. description: ConnectHost defines the OnePassword Connect Server to connect to
  4653. type: string
  4654. vaults:
  4655. additionalProperties:
  4656. type: integer
  4657. description: Vaults defines which OnePassword vaults to search in which order
  4658. type: object
  4659. required:
  4660. - auth
  4661. - connectHost
  4662. - vaults
  4663. type: object
  4664. oracle:
  4665. description: Oracle configures this store to sync secrets using Oracle Vault provider
  4666. properties:
  4667. auth:
  4668. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  4669. properties:
  4670. secretRef:
  4671. description: SecretRef to pass through sensitive information.
  4672. properties:
  4673. fingerprint:
  4674. description: Fingerprint is the fingerprint of the API private key.
  4675. properties:
  4676. key:
  4677. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4678. type: string
  4679. name:
  4680. description: The name of the Secret resource being referred to.
  4681. type: string
  4682. namespace:
  4683. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4684. type: string
  4685. type: object
  4686. privatekey:
  4687. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  4688. properties:
  4689. key:
  4690. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4691. type: string
  4692. name:
  4693. description: The name of the Secret resource being referred to.
  4694. type: string
  4695. namespace:
  4696. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4697. type: string
  4698. type: object
  4699. required:
  4700. - fingerprint
  4701. - privatekey
  4702. type: object
  4703. tenancy:
  4704. description: Tenancy is the tenancy OCID where user is located.
  4705. type: string
  4706. user:
  4707. description: User is an access OCID specific to the account.
  4708. type: string
  4709. required:
  4710. - secretRef
  4711. - tenancy
  4712. - user
  4713. type: object
  4714. region:
  4715. description: Region is the region where vault is located.
  4716. type: string
  4717. vault:
  4718. description: Vault is the vault's OCID of the specific vault where secret is located.
  4719. type: string
  4720. required:
  4721. - region
  4722. - vault
  4723. type: object
  4724. senhasegura:
  4725. description: Senhasegura configures this store to sync secrets using senhasegura provider
  4726. properties:
  4727. auth:
  4728. description: Auth defines parameters to authenticate in senhasegura
  4729. properties:
  4730. clientId:
  4731. type: string
  4732. clientSecretSecretRef:
  4733. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4734. properties:
  4735. key:
  4736. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4737. type: string
  4738. name:
  4739. description: The name of the Secret resource being referred to.
  4740. type: string
  4741. namespace:
  4742. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4743. type: string
  4744. type: object
  4745. required:
  4746. - clientId
  4747. - clientSecretSecretRef
  4748. type: object
  4749. ignoreSslCertificate:
  4750. default: false
  4751. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  4752. type: boolean
  4753. module:
  4754. description: Module defines which senhasegura module should be used to get secrets
  4755. type: string
  4756. url:
  4757. description: URL of senhasegura
  4758. type: string
  4759. required:
  4760. - auth
  4761. - module
  4762. - url
  4763. type: object
  4764. vault:
  4765. description: Vault configures this store to sync secrets using Hashi provider
  4766. properties:
  4767. auth:
  4768. description: Auth configures how secret-manager authenticates with the Vault server.
  4769. properties:
  4770. appRole:
  4771. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  4772. properties:
  4773. path:
  4774. default: approle
  4775. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  4776. type: string
  4777. roleId:
  4778. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  4779. type: string
  4780. secretRef:
  4781. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  4782. properties:
  4783. key:
  4784. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4785. type: string
  4786. name:
  4787. description: The name of the Secret resource being referred to.
  4788. type: string
  4789. namespace:
  4790. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4791. type: string
  4792. type: object
  4793. required:
  4794. - path
  4795. - roleId
  4796. - secretRef
  4797. type: object
  4798. cert:
  4799. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  4800. properties:
  4801. clientCert:
  4802. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  4803. properties:
  4804. key:
  4805. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4806. type: string
  4807. name:
  4808. description: The name of the Secret resource being referred to.
  4809. type: string
  4810. namespace:
  4811. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4812. type: string
  4813. type: object
  4814. secretRef:
  4815. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  4816. properties:
  4817. key:
  4818. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4819. type: string
  4820. name:
  4821. description: The name of the Secret resource being referred to.
  4822. type: string
  4823. namespace:
  4824. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4825. type: string
  4826. type: object
  4827. type: object
  4828. jwt:
  4829. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  4830. properties:
  4831. kubernetesServiceAccountToken:
  4832. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  4833. properties:
  4834. audiences:
  4835. description: Optional audiences field that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to a single audience `vault` it not specified.
  4836. items:
  4837. type: string
  4838. type: array
  4839. expirationSeconds:
  4840. description: Optional expiration time in seconds that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to 10 minutes.
  4841. format: int64
  4842. type: integer
  4843. serviceAccountRef:
  4844. description: Service account field containing the name of a kubernetes ServiceAccount.
  4845. properties:
  4846. name:
  4847. description: The name of the ServiceAccount resource being referred to.
  4848. type: string
  4849. namespace:
  4850. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4851. type: string
  4852. required:
  4853. - name
  4854. type: object
  4855. required:
  4856. - serviceAccountRef
  4857. type: object
  4858. path:
  4859. default: jwt
  4860. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  4861. type: string
  4862. role:
  4863. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  4864. type: string
  4865. secretRef:
  4866. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
  4867. properties:
  4868. key:
  4869. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4870. type: string
  4871. name:
  4872. description: The name of the Secret resource being referred to.
  4873. type: string
  4874. namespace:
  4875. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4876. type: string
  4877. type: object
  4878. required:
  4879. - path
  4880. type: object
  4881. kubernetes:
  4882. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  4883. properties:
  4884. mountPath:
  4885. default: kubernetes
  4886. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  4887. type: string
  4888. role:
  4889. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  4890. type: string
  4891. secretRef:
  4892. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  4893. properties:
  4894. key:
  4895. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4896. type: string
  4897. name:
  4898. description: The name of the Secret resource being referred to.
  4899. type: string
  4900. namespace:
  4901. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4902. type: string
  4903. type: object
  4904. serviceAccountRef:
  4905. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  4906. properties:
  4907. name:
  4908. description: The name of the ServiceAccount resource being referred to.
  4909. type: string
  4910. namespace:
  4911. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4912. type: string
  4913. required:
  4914. - name
  4915. type: object
  4916. required:
  4917. - mountPath
  4918. - role
  4919. type: object
  4920. ldap:
  4921. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  4922. properties:
  4923. path:
  4924. default: ldap
  4925. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  4926. type: string
  4927. secretRef:
  4928. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  4929. properties:
  4930. key:
  4931. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4932. type: string
  4933. name:
  4934. description: The name of the Secret resource being referred to.
  4935. type: string
  4936. namespace:
  4937. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4938. type: string
  4939. type: object
  4940. username:
  4941. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  4942. type: string
  4943. required:
  4944. - path
  4945. - username
  4946. type: object
  4947. tokenSecretRef:
  4948. description: TokenSecretRef authenticates with Vault by presenting a token.
  4949. properties:
  4950. key:
  4951. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4952. type: string
  4953. name:
  4954. description: The name of the Secret resource being referred to.
  4955. type: string
  4956. namespace:
  4957. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4958. type: string
  4959. type: object
  4960. type: object
  4961. caBundle:
  4962. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  4963. format: byte
  4964. type: string
  4965. caProvider:
  4966. description: The provider for the CA bundle to use to validate Vault server certificate.
  4967. properties:
  4968. key:
  4969. description: The key the value inside of the provider type to use, only used with "Secret" type
  4970. type: string
  4971. name:
  4972. description: The name of the object located at the provider type.
  4973. type: string
  4974. namespace:
  4975. description: The namespace the Provider type is in.
  4976. type: string
  4977. type:
  4978. description: The type of provider to use such as "Secret", or "ConfigMap".
  4979. enum:
  4980. - Secret
  4981. - ConfigMap
  4982. type: string
  4983. required:
  4984. - name
  4985. - type
  4986. type: object
  4987. forwardInconsistent:
  4988. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  4989. type: boolean
  4990. namespace:
  4991. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  4992. type: string
  4993. path:
  4994. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  4995. type: string
  4996. readYourWrites:
  4997. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  4998. type: boolean
  4999. server:
  5000. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  5001. type: string
  5002. version:
  5003. default: v2
  5004. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  5005. enum:
  5006. - v1
  5007. - v2
  5008. type: string
  5009. required:
  5010. - auth
  5011. - server
  5012. type: object
  5013. webhook:
  5014. description: Webhook configures this store to sync secrets using a generic templated webhook
  5015. properties:
  5016. body:
  5017. description: Body
  5018. type: string
  5019. caBundle:
  5020. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  5021. format: byte
  5022. type: string
  5023. caProvider:
  5024. description: The provider for the CA bundle to use to validate webhook server certificate.
  5025. properties:
  5026. key:
  5027. description: The key the value inside of the provider type to use, only used with "Secret" type
  5028. type: string
  5029. name:
  5030. description: The name of the object located at the provider type.
  5031. type: string
  5032. namespace:
  5033. description: The namespace the Provider type is in.
  5034. type: string
  5035. type:
  5036. description: The type of provider to use such as "Secret", or "ConfigMap".
  5037. enum:
  5038. - Secret
  5039. - ConfigMap
  5040. type: string
  5041. required:
  5042. - name
  5043. - type
  5044. type: object
  5045. headers:
  5046. additionalProperties:
  5047. type: string
  5048. description: Headers
  5049. type: object
  5050. method:
  5051. description: Webhook Method
  5052. type: string
  5053. result:
  5054. description: Result formatting
  5055. properties:
  5056. jsonPath:
  5057. description: Json path of return value
  5058. type: string
  5059. type: object
  5060. secrets:
  5061. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  5062. items:
  5063. properties:
  5064. name:
  5065. description: Name of this secret in templates
  5066. type: string
  5067. secretRef:
  5068. description: Secret ref to fill in credentials
  5069. properties:
  5070. key:
  5071. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5072. type: string
  5073. name:
  5074. description: The name of the Secret resource being referred to.
  5075. type: string
  5076. namespace:
  5077. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5078. type: string
  5079. type: object
  5080. required:
  5081. - name
  5082. - secretRef
  5083. type: object
  5084. type: array
  5085. timeout:
  5086. description: Timeout
  5087. type: string
  5088. url:
  5089. description: Webhook url to call
  5090. type: string
  5091. required:
  5092. - result
  5093. - url
  5094. type: object
  5095. yandexcertificatemanager:
  5096. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  5097. properties:
  5098. apiEndpoint:
  5099. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  5100. type: string
  5101. auth:
  5102. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  5103. properties:
  5104. authorizedKeySecretRef:
  5105. description: The authorized key used for authentication
  5106. properties:
  5107. key:
  5108. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5109. type: string
  5110. name:
  5111. description: The name of the Secret resource being referred to.
  5112. type: string
  5113. namespace:
  5114. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5115. type: string
  5116. type: object
  5117. type: object
  5118. caProvider:
  5119. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  5120. properties:
  5121. certSecretRef:
  5122. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  5123. properties:
  5124. key:
  5125. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5126. type: string
  5127. name:
  5128. description: The name of the Secret resource being referred to.
  5129. type: string
  5130. namespace:
  5131. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5132. type: string
  5133. type: object
  5134. type: object
  5135. required:
  5136. - auth
  5137. type: object
  5138. yandexlockbox:
  5139. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  5140. properties:
  5141. apiEndpoint:
  5142. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  5143. type: string
  5144. auth:
  5145. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  5146. properties:
  5147. authorizedKeySecretRef:
  5148. description: The authorized key used for authentication
  5149. properties:
  5150. key:
  5151. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5152. type: string
  5153. name:
  5154. description: The name of the Secret resource being referred to.
  5155. type: string
  5156. namespace:
  5157. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5158. type: string
  5159. type: object
  5160. type: object
  5161. caProvider:
  5162. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  5163. properties:
  5164. certSecretRef:
  5165. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  5166. properties:
  5167. key:
  5168. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5169. type: string
  5170. name:
  5171. description: The name of the Secret resource being referred to.
  5172. type: string
  5173. namespace:
  5174. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5175. type: string
  5176. type: object
  5177. type: object
  5178. required:
  5179. - auth
  5180. type: object
  5181. type: object
  5182. refreshInterval:
  5183. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  5184. type: integer
  5185. retrySettings:
  5186. description: Used to configure http retries if failed
  5187. properties:
  5188. maxRetries:
  5189. format: int32
  5190. type: integer
  5191. retryInterval:
  5192. type: string
  5193. type: object
  5194. required:
  5195. - provider
  5196. type: object
  5197. status:
  5198. description: SecretStoreStatus defines the observed state of the SecretStore.
  5199. properties:
  5200. conditions:
  5201. items:
  5202. properties:
  5203. lastTransitionTime:
  5204. format: date-time
  5205. type: string
  5206. message:
  5207. type: string
  5208. reason:
  5209. type: string
  5210. status:
  5211. type: string
  5212. type:
  5213. type: string
  5214. required:
  5215. - status
  5216. - type
  5217. type: object
  5218. type: array
  5219. type: object
  5220. type: object
  5221. served: true
  5222. storage: true
  5223. subresources:
  5224. status: {}
  5225. conversion:
  5226. strategy: Webhook
  5227. webhook:
  5228. conversionReviewVersions:
  5229. - v1
  5230. clientConfig:
  5231. service:
  5232. name: kubernetes
  5233. namespace: default
  5234. path: /convert