bundle.yaml 318 KB

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