bundle.yaml 322 KB

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