bundle.yaml 314 KB

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