bundle.yaml 319 KB

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