bundle.yaml 320 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293
  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. environmentType:
  1658. default: PublicCloud
  1659. description: 'EnvironmentType specifies the Azure cloud environment endpoints to use for connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152 PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  1660. enum:
  1661. - PublicCloud
  1662. - USGovernmentCloud
  1663. - ChinaCloud
  1664. - GermanCloud
  1665. type: string
  1666. identityId:
  1667. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  1668. type: string
  1669. serviceAccountRef:
  1670. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  1671. properties:
  1672. name:
  1673. description: The name of the ServiceAccount resource being referred to.
  1674. type: string
  1675. namespace:
  1676. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1677. type: string
  1678. required:
  1679. - name
  1680. type: object
  1681. tenantId:
  1682. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  1683. type: string
  1684. vaultUrl:
  1685. description: Vault Url from which the secrets to be fetched from.
  1686. type: string
  1687. required:
  1688. - vaultUrl
  1689. type: object
  1690. fake:
  1691. description: Fake configures a store with static key/value pairs
  1692. properties:
  1693. data:
  1694. items:
  1695. properties:
  1696. key:
  1697. type: string
  1698. value:
  1699. type: string
  1700. valueMap:
  1701. additionalProperties:
  1702. type: string
  1703. type: object
  1704. version:
  1705. type: string
  1706. required:
  1707. - key
  1708. type: object
  1709. type: array
  1710. required:
  1711. - data
  1712. type: object
  1713. gcpsm:
  1714. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1715. properties:
  1716. auth:
  1717. description: Auth defines the information necessary to authenticate against GCP
  1718. properties:
  1719. secretRef:
  1720. properties:
  1721. secretAccessKeySecretRef:
  1722. description: The SecretAccessKey is used for authentication
  1723. properties:
  1724. key:
  1725. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1726. type: string
  1727. name:
  1728. description: The name of the Secret resource being referred to.
  1729. type: string
  1730. namespace:
  1731. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1732. type: string
  1733. type: object
  1734. type: object
  1735. workloadIdentity:
  1736. properties:
  1737. clusterLocation:
  1738. type: string
  1739. clusterName:
  1740. type: string
  1741. clusterProjectID:
  1742. type: string
  1743. serviceAccountRef:
  1744. description: A reference to a ServiceAccount resource.
  1745. properties:
  1746. name:
  1747. description: The name of the ServiceAccount resource being referred to.
  1748. type: string
  1749. namespace:
  1750. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1751. type: string
  1752. required:
  1753. - name
  1754. type: object
  1755. required:
  1756. - clusterLocation
  1757. - clusterName
  1758. - serviceAccountRef
  1759. type: object
  1760. type: object
  1761. projectID:
  1762. description: ProjectID project where secret is located
  1763. type: string
  1764. type: object
  1765. gitlab:
  1766. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  1767. properties:
  1768. auth:
  1769. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1770. properties:
  1771. SecretRef:
  1772. properties:
  1773. accessToken:
  1774. description: AccessToken is used for authentication.
  1775. properties:
  1776. key:
  1777. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1778. type: string
  1779. name:
  1780. description: The name of the Secret resource being referred to.
  1781. type: string
  1782. namespace:
  1783. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1784. type: string
  1785. type: object
  1786. type: object
  1787. required:
  1788. - SecretRef
  1789. type: object
  1790. projectID:
  1791. description: ProjectID specifies a project where secrets are located.
  1792. type: string
  1793. url:
  1794. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1795. type: string
  1796. required:
  1797. - auth
  1798. type: object
  1799. ibm:
  1800. description: IBM configures this store to sync secrets using IBM Cloud provider
  1801. properties:
  1802. auth:
  1803. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1804. maxProperties: 1
  1805. minProperties: 1
  1806. properties:
  1807. containerAuth:
  1808. description: IBM Container-based auth with IAM Trusted Profile.
  1809. properties:
  1810. iamEndpoint:
  1811. type: string
  1812. profile:
  1813. description: the IBM Trusted Profile
  1814. type: string
  1815. tokenLocation:
  1816. description: Location the token is mounted on the pod
  1817. type: string
  1818. required:
  1819. - profile
  1820. type: object
  1821. secretRef:
  1822. properties:
  1823. secretApiKeySecretRef:
  1824. description: The SecretAccessKey is used for authentication
  1825. properties:
  1826. key:
  1827. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1828. type: string
  1829. name:
  1830. description: The name of the Secret resource being referred to.
  1831. type: string
  1832. namespace:
  1833. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1834. type: string
  1835. type: object
  1836. type: object
  1837. type: object
  1838. serviceUrl:
  1839. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1840. type: string
  1841. required:
  1842. - auth
  1843. type: object
  1844. kubernetes:
  1845. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  1846. properties:
  1847. auth:
  1848. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  1849. maxProperties: 1
  1850. minProperties: 1
  1851. properties:
  1852. cert:
  1853. description: has both clientCert and clientKey as secretKeySelector
  1854. properties:
  1855. clientCert:
  1856. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1857. properties:
  1858. key:
  1859. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1860. type: string
  1861. name:
  1862. description: The name of the Secret resource being referred to.
  1863. type: string
  1864. namespace:
  1865. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1866. type: string
  1867. type: object
  1868. clientKey:
  1869. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1870. properties:
  1871. key:
  1872. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1873. type: string
  1874. name:
  1875. description: The name of the Secret resource being referred to.
  1876. type: string
  1877. namespace:
  1878. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1879. type: string
  1880. type: object
  1881. type: object
  1882. serviceAccount:
  1883. description: points to a service account that should be used for authentication
  1884. properties:
  1885. name:
  1886. description: The name of the ServiceAccount resource being referred to.
  1887. type: string
  1888. namespace:
  1889. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1890. type: string
  1891. required:
  1892. - name
  1893. type: object
  1894. token:
  1895. description: use static token to authenticate with
  1896. properties:
  1897. bearerToken:
  1898. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1899. properties:
  1900. key:
  1901. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1902. type: string
  1903. name:
  1904. description: The name of the Secret resource being referred to.
  1905. type: string
  1906. namespace:
  1907. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1908. type: string
  1909. type: object
  1910. type: object
  1911. type: object
  1912. remoteNamespace:
  1913. default: default
  1914. description: Remote namespace to fetch the secrets from
  1915. type: string
  1916. server:
  1917. description: configures the Kubernetes server Address.
  1918. properties:
  1919. caBundle:
  1920. description: CABundle is a base64-encoded CA certificate
  1921. format: byte
  1922. type: string
  1923. caProvider:
  1924. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  1925. properties:
  1926. key:
  1927. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  1928. type: string
  1929. name:
  1930. description: The name of the object located at the provider type.
  1931. type: string
  1932. namespace:
  1933. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  1934. type: string
  1935. type:
  1936. description: The type of provider to use such as "Secret", or "ConfigMap".
  1937. enum:
  1938. - Secret
  1939. - ConfigMap
  1940. type: string
  1941. required:
  1942. - name
  1943. - type
  1944. type: object
  1945. url:
  1946. default: kubernetes.default
  1947. description: configures the Kubernetes server Address.
  1948. type: string
  1949. type: object
  1950. required:
  1951. - auth
  1952. type: object
  1953. onepassword:
  1954. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  1955. properties:
  1956. auth:
  1957. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  1958. properties:
  1959. secretRef:
  1960. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  1961. properties:
  1962. connectTokenSecretRef:
  1963. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  1964. properties:
  1965. key:
  1966. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1967. type: string
  1968. name:
  1969. description: The name of the Secret resource being referred to.
  1970. type: string
  1971. namespace:
  1972. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1973. type: string
  1974. type: object
  1975. required:
  1976. - connectTokenSecretRef
  1977. type: object
  1978. required:
  1979. - secretRef
  1980. type: object
  1981. connectHost:
  1982. description: ConnectHost defines the OnePassword Connect Server to connect to
  1983. type: string
  1984. vaults:
  1985. additionalProperties:
  1986. type: integer
  1987. description: Vaults defines which OnePassword vaults to search in which order
  1988. type: object
  1989. required:
  1990. - auth
  1991. - connectHost
  1992. - vaults
  1993. type: object
  1994. oracle:
  1995. description: Oracle configures this store to sync secrets using Oracle Vault provider
  1996. properties:
  1997. auth:
  1998. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  1999. properties:
  2000. secretRef:
  2001. description: SecretRef to pass through sensitive information.
  2002. properties:
  2003. fingerprint:
  2004. description: Fingerprint is the fingerprint of the API private key.
  2005. properties:
  2006. key:
  2007. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2008. type: string
  2009. name:
  2010. description: The name of the Secret resource being referred to.
  2011. type: string
  2012. namespace:
  2013. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2014. type: string
  2015. type: object
  2016. privatekey:
  2017. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  2018. properties:
  2019. key:
  2020. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2021. type: string
  2022. name:
  2023. description: The name of the Secret resource being referred to.
  2024. type: string
  2025. namespace:
  2026. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2027. type: string
  2028. type: object
  2029. required:
  2030. - fingerprint
  2031. - privatekey
  2032. type: object
  2033. tenancy:
  2034. description: Tenancy is the tenancy OCID where user is located.
  2035. type: string
  2036. user:
  2037. description: User is an access OCID specific to the account.
  2038. type: string
  2039. required:
  2040. - secretRef
  2041. - tenancy
  2042. - user
  2043. type: object
  2044. region:
  2045. description: Region is the region where vault is located.
  2046. type: string
  2047. vault:
  2048. description: Vault is the vault's OCID of the specific vault where secret is located.
  2049. type: string
  2050. required:
  2051. - region
  2052. - vault
  2053. type: object
  2054. senhasegura:
  2055. description: Senhasegura configures this store to sync secrets using senhasegura provider
  2056. properties:
  2057. auth:
  2058. description: Auth defines parameters to authenticate in senhasegura
  2059. properties:
  2060. clientId:
  2061. type: string
  2062. clientSecretSecretRef:
  2063. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2064. properties:
  2065. key:
  2066. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2067. type: string
  2068. name:
  2069. description: The name of the Secret resource being referred to.
  2070. type: string
  2071. namespace:
  2072. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2073. type: string
  2074. type: object
  2075. required:
  2076. - clientId
  2077. - clientSecretSecretRef
  2078. type: object
  2079. ignoreSslCertificate:
  2080. default: false
  2081. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  2082. type: boolean
  2083. module:
  2084. description: Module defines which senhasegura module should be used to get secrets
  2085. type: string
  2086. url:
  2087. description: URL of senhasegura
  2088. type: string
  2089. required:
  2090. - auth
  2091. - module
  2092. - url
  2093. type: object
  2094. vault:
  2095. description: Vault configures this store to sync secrets using Hashi provider
  2096. properties:
  2097. auth:
  2098. description: Auth configures how secret-manager authenticates with the Vault server.
  2099. properties:
  2100. appRole:
  2101. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  2102. properties:
  2103. path:
  2104. default: approle
  2105. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  2106. type: string
  2107. roleId:
  2108. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  2109. type: string
  2110. secretRef:
  2111. 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.
  2112. properties:
  2113. key:
  2114. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2115. type: string
  2116. name:
  2117. description: The name of the Secret resource being referred to.
  2118. type: string
  2119. namespace:
  2120. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2121. type: string
  2122. type: object
  2123. required:
  2124. - path
  2125. - roleId
  2126. - secretRef
  2127. type: object
  2128. cert:
  2129. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  2130. properties:
  2131. clientCert:
  2132. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  2133. properties:
  2134. key:
  2135. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2136. type: string
  2137. name:
  2138. description: The name of the Secret resource being referred to.
  2139. type: string
  2140. namespace:
  2141. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2142. type: string
  2143. type: object
  2144. secretRef:
  2145. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  2146. properties:
  2147. key:
  2148. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2149. type: string
  2150. name:
  2151. description: The name of the Secret resource being referred to.
  2152. type: string
  2153. namespace:
  2154. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2155. type: string
  2156. type: object
  2157. type: object
  2158. jwt:
  2159. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  2160. properties:
  2161. kubernetesServiceAccountToken:
  2162. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  2163. properties:
  2164. audiences:
  2165. 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.
  2166. items:
  2167. type: string
  2168. type: array
  2169. expirationSeconds:
  2170. 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.
  2171. format: int64
  2172. type: integer
  2173. serviceAccountRef:
  2174. description: Service account field containing the name of a kubernetes ServiceAccount.
  2175. properties:
  2176. name:
  2177. description: The name of the ServiceAccount resource being referred to.
  2178. type: string
  2179. namespace:
  2180. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2181. type: string
  2182. required:
  2183. - name
  2184. type: object
  2185. required:
  2186. - serviceAccountRef
  2187. type: object
  2188. path:
  2189. default: jwt
  2190. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  2191. type: string
  2192. role:
  2193. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  2194. type: string
  2195. secretRef:
  2196. 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.
  2197. properties:
  2198. key:
  2199. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2200. type: string
  2201. name:
  2202. description: The name of the Secret resource being referred to.
  2203. type: string
  2204. namespace:
  2205. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2206. type: string
  2207. type: object
  2208. required:
  2209. - path
  2210. type: object
  2211. kubernetes:
  2212. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  2213. properties:
  2214. mountPath:
  2215. default: kubernetes
  2216. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  2217. type: string
  2218. role:
  2219. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  2220. type: string
  2221. secretRef:
  2222. 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.
  2223. properties:
  2224. key:
  2225. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2226. type: string
  2227. name:
  2228. description: The name of the Secret resource being referred to.
  2229. type: string
  2230. namespace:
  2231. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2232. type: string
  2233. type: object
  2234. serviceAccountRef:
  2235. 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.
  2236. properties:
  2237. name:
  2238. description: The name of the ServiceAccount resource being referred to.
  2239. type: string
  2240. namespace:
  2241. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2242. type: string
  2243. required:
  2244. - name
  2245. type: object
  2246. required:
  2247. - mountPath
  2248. - role
  2249. type: object
  2250. ldap:
  2251. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  2252. properties:
  2253. path:
  2254. default: ldap
  2255. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  2256. type: string
  2257. secretRef:
  2258. 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
  2259. properties:
  2260. key:
  2261. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2262. type: string
  2263. name:
  2264. description: The name of the Secret resource being referred to.
  2265. type: string
  2266. namespace:
  2267. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2268. type: string
  2269. type: object
  2270. username:
  2271. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  2272. type: string
  2273. required:
  2274. - path
  2275. - username
  2276. type: object
  2277. tokenSecretRef:
  2278. description: TokenSecretRef authenticates with Vault by presenting a token.
  2279. properties:
  2280. key:
  2281. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2282. type: string
  2283. name:
  2284. description: The name of the Secret resource being referred to.
  2285. type: string
  2286. namespace:
  2287. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2288. type: string
  2289. type: object
  2290. type: object
  2291. caBundle:
  2292. 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.
  2293. format: byte
  2294. type: string
  2295. caProvider:
  2296. description: The provider for the CA bundle to use to validate Vault server certificate.
  2297. properties:
  2298. key:
  2299. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2300. type: string
  2301. name:
  2302. description: The name of the object located at the provider type.
  2303. type: string
  2304. namespace:
  2305. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  2306. type: string
  2307. type:
  2308. description: The type of provider to use such as "Secret", or "ConfigMap".
  2309. enum:
  2310. - Secret
  2311. - ConfigMap
  2312. type: string
  2313. required:
  2314. - name
  2315. - type
  2316. type: object
  2317. forwardInconsistent:
  2318. 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
  2319. type: boolean
  2320. namespace:
  2321. 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'
  2322. type: string
  2323. path:
  2324. 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.'
  2325. type: string
  2326. readYourWrites:
  2327. 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
  2328. type: boolean
  2329. server:
  2330. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  2331. type: string
  2332. version:
  2333. default: v2
  2334. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  2335. enum:
  2336. - v1
  2337. - v2
  2338. type: string
  2339. required:
  2340. - auth
  2341. - server
  2342. type: object
  2343. webhook:
  2344. description: Webhook configures this store to sync secrets using a generic templated webhook
  2345. properties:
  2346. body:
  2347. description: Body
  2348. type: string
  2349. caBundle:
  2350. 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.
  2351. format: byte
  2352. type: string
  2353. caProvider:
  2354. description: The provider for the CA bundle to use to validate webhook server certificate.
  2355. properties:
  2356. key:
  2357. description: The key the value inside of the provider type to use, only used with "Secret" type
  2358. type: string
  2359. name:
  2360. description: The name of the object located at the provider type.
  2361. type: string
  2362. namespace:
  2363. description: The namespace the Provider type is in.
  2364. type: string
  2365. type:
  2366. description: The type of provider to use such as "Secret", or "ConfigMap".
  2367. enum:
  2368. - Secret
  2369. - ConfigMap
  2370. type: string
  2371. required:
  2372. - name
  2373. - type
  2374. type: object
  2375. headers:
  2376. additionalProperties:
  2377. type: string
  2378. description: Headers
  2379. type: object
  2380. method:
  2381. description: Webhook Method
  2382. type: string
  2383. result:
  2384. description: Result formatting
  2385. properties:
  2386. jsonPath:
  2387. description: Json path of return value
  2388. type: string
  2389. type: object
  2390. secrets:
  2391. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  2392. items:
  2393. properties:
  2394. name:
  2395. description: Name of this secret in templates
  2396. type: string
  2397. secretRef:
  2398. description: Secret ref to fill in credentials
  2399. properties:
  2400. key:
  2401. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2402. type: string
  2403. name:
  2404. description: The name of the Secret resource being referred to.
  2405. type: string
  2406. namespace:
  2407. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2408. type: string
  2409. type: object
  2410. required:
  2411. - name
  2412. - secretRef
  2413. type: object
  2414. type: array
  2415. timeout:
  2416. description: Timeout
  2417. type: string
  2418. url:
  2419. description: Webhook url to call
  2420. type: string
  2421. required:
  2422. - result
  2423. - url
  2424. type: object
  2425. yandexcertificatemanager:
  2426. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  2427. properties:
  2428. apiEndpoint:
  2429. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2430. type: string
  2431. auth:
  2432. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  2433. properties:
  2434. authorizedKeySecretRef:
  2435. description: The authorized key used for authentication
  2436. properties:
  2437. key:
  2438. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2439. type: string
  2440. name:
  2441. description: The name of the Secret resource being referred to.
  2442. type: string
  2443. namespace:
  2444. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2445. type: string
  2446. type: object
  2447. type: object
  2448. caProvider:
  2449. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2450. properties:
  2451. certSecretRef:
  2452. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2453. properties:
  2454. key:
  2455. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2456. type: string
  2457. name:
  2458. description: The name of the Secret resource being referred to.
  2459. type: string
  2460. namespace:
  2461. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2462. type: string
  2463. type: object
  2464. type: object
  2465. required:
  2466. - auth
  2467. type: object
  2468. yandexlockbox:
  2469. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  2470. properties:
  2471. apiEndpoint:
  2472. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2473. type: string
  2474. auth:
  2475. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  2476. properties:
  2477. authorizedKeySecretRef:
  2478. description: The authorized key used for authentication
  2479. properties:
  2480. key:
  2481. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2482. type: string
  2483. name:
  2484. description: The name of the Secret resource being referred to.
  2485. type: string
  2486. namespace:
  2487. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2488. type: string
  2489. type: object
  2490. type: object
  2491. caProvider:
  2492. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2493. properties:
  2494. certSecretRef:
  2495. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2496. properties:
  2497. key:
  2498. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2499. type: string
  2500. name:
  2501. description: The name of the Secret resource being referred to.
  2502. type: string
  2503. namespace:
  2504. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2505. type: string
  2506. type: object
  2507. type: object
  2508. required:
  2509. - auth
  2510. type: object
  2511. type: object
  2512. refreshInterval:
  2513. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  2514. type: integer
  2515. retrySettings:
  2516. description: Used to configure http retries if failed
  2517. properties:
  2518. maxRetries:
  2519. format: int32
  2520. type: integer
  2521. retryInterval:
  2522. type: string
  2523. type: object
  2524. required:
  2525. - provider
  2526. type: object
  2527. status:
  2528. description: SecretStoreStatus defines the observed state of the SecretStore.
  2529. properties:
  2530. conditions:
  2531. items:
  2532. properties:
  2533. lastTransitionTime:
  2534. format: date-time
  2535. type: string
  2536. message:
  2537. type: string
  2538. reason:
  2539. type: string
  2540. status:
  2541. type: string
  2542. type:
  2543. type: string
  2544. required:
  2545. - status
  2546. - type
  2547. type: object
  2548. type: array
  2549. type: object
  2550. type: object
  2551. served: true
  2552. storage: true
  2553. subresources:
  2554. status: {}
  2555. conversion:
  2556. strategy: Webhook
  2557. webhook:
  2558. conversionReviewVersions:
  2559. - v1
  2560. clientConfig:
  2561. service:
  2562. name: kubernetes
  2563. namespace: default
  2564. path: /convert
  2565. ---
  2566. apiVersion: apiextensions.k8s.io/v1
  2567. kind: CustomResourceDefinition
  2568. metadata:
  2569. annotations:
  2570. controller-gen.kubebuilder.io/version: v0.9.2
  2571. creationTimestamp: null
  2572. name: externalsecrets.external-secrets.io
  2573. spec:
  2574. group: external-secrets.io
  2575. names:
  2576. categories:
  2577. - externalsecrets
  2578. kind: ExternalSecret
  2579. listKind: ExternalSecretList
  2580. plural: externalsecrets
  2581. shortNames:
  2582. - es
  2583. singular: externalsecret
  2584. scope: Namespaced
  2585. versions:
  2586. - additionalPrinterColumns:
  2587. - jsonPath: .spec.secretStoreRef.name
  2588. name: Store
  2589. type: string
  2590. - jsonPath: .spec.refreshInterval
  2591. name: Refresh Interval
  2592. type: string
  2593. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2594. name: Status
  2595. type: string
  2596. deprecated: true
  2597. name: v1alpha1
  2598. schema:
  2599. openAPIV3Schema:
  2600. description: ExternalSecret is the Schema for the external-secrets API.
  2601. properties:
  2602. apiVersion:
  2603. 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'
  2604. type: string
  2605. kind:
  2606. 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'
  2607. type: string
  2608. metadata:
  2609. type: object
  2610. spec:
  2611. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  2612. properties:
  2613. data:
  2614. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  2615. items:
  2616. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  2617. properties:
  2618. remoteRef:
  2619. description: ExternalSecretDataRemoteRef defines Provider data location.
  2620. properties:
  2621. conversionStrategy:
  2622. default: Default
  2623. description: Used to define a conversion Strategy
  2624. type: string
  2625. key:
  2626. description: Key is the key used in the Provider, mandatory
  2627. type: string
  2628. property:
  2629. description: Used to select a specific property of the Provider value (if a map), if supported
  2630. type: string
  2631. version:
  2632. description: Used to select a specific version of the Provider value, if supported
  2633. type: string
  2634. required:
  2635. - key
  2636. type: object
  2637. secretKey:
  2638. type: string
  2639. required:
  2640. - remoteRef
  2641. - secretKey
  2642. type: object
  2643. type: array
  2644. dataFrom:
  2645. 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
  2646. items:
  2647. description: ExternalSecretDataRemoteRef defines Provider data location.
  2648. properties:
  2649. conversionStrategy:
  2650. default: Default
  2651. description: Used to define a conversion Strategy
  2652. type: string
  2653. key:
  2654. description: Key is the key used in the Provider, mandatory
  2655. type: string
  2656. property:
  2657. description: Used to select a specific property of the Provider value (if a map), if supported
  2658. type: string
  2659. version:
  2660. description: Used to select a specific version of the Provider value, if supported
  2661. type: string
  2662. required:
  2663. - key
  2664. type: object
  2665. type: array
  2666. refreshInterval:
  2667. default: 1h
  2668. 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.
  2669. type: string
  2670. secretStoreRef:
  2671. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  2672. properties:
  2673. kind:
  2674. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  2675. type: string
  2676. name:
  2677. description: Name of the SecretStore resource
  2678. type: string
  2679. required:
  2680. - name
  2681. type: object
  2682. target:
  2683. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  2684. properties:
  2685. creationPolicy:
  2686. default: Owner
  2687. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  2688. type: string
  2689. immutable:
  2690. description: Immutable defines if the final secret will be immutable
  2691. type: boolean
  2692. name:
  2693. 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
  2694. type: string
  2695. template:
  2696. description: Template defines a blueprint for the created Secret resource.
  2697. properties:
  2698. data:
  2699. additionalProperties:
  2700. type: string
  2701. type: object
  2702. engineVersion:
  2703. default: v1
  2704. description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[].
  2705. type: string
  2706. metadata:
  2707. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2708. properties:
  2709. annotations:
  2710. additionalProperties:
  2711. type: string
  2712. type: object
  2713. labels:
  2714. additionalProperties:
  2715. type: string
  2716. type: object
  2717. type: object
  2718. templateFrom:
  2719. items:
  2720. maxProperties: 1
  2721. minProperties: 1
  2722. properties:
  2723. configMap:
  2724. properties:
  2725. items:
  2726. items:
  2727. properties:
  2728. key:
  2729. type: string
  2730. required:
  2731. - key
  2732. type: object
  2733. type: array
  2734. name:
  2735. type: string
  2736. required:
  2737. - items
  2738. - name
  2739. type: object
  2740. secret:
  2741. properties:
  2742. items:
  2743. items:
  2744. properties:
  2745. key:
  2746. type: string
  2747. required:
  2748. - key
  2749. type: object
  2750. type: array
  2751. name:
  2752. type: string
  2753. required:
  2754. - items
  2755. - name
  2756. type: object
  2757. type: object
  2758. type: array
  2759. type:
  2760. type: string
  2761. type: object
  2762. type: object
  2763. required:
  2764. - secretStoreRef
  2765. - target
  2766. type: object
  2767. status:
  2768. properties:
  2769. conditions:
  2770. items:
  2771. properties:
  2772. lastTransitionTime:
  2773. format: date-time
  2774. type: string
  2775. message:
  2776. type: string
  2777. reason:
  2778. type: string
  2779. status:
  2780. type: string
  2781. type:
  2782. type: string
  2783. required:
  2784. - status
  2785. - type
  2786. type: object
  2787. type: array
  2788. refreshTime:
  2789. description: refreshTime is the time and date the external secret was fetched and the target secret updated
  2790. format: date-time
  2791. nullable: true
  2792. type: string
  2793. syncedResourceVersion:
  2794. description: SyncedResourceVersion keeps track of the last synced version
  2795. type: string
  2796. type: object
  2797. type: object
  2798. served: true
  2799. storage: false
  2800. subresources:
  2801. status: {}
  2802. - additionalPrinterColumns:
  2803. - jsonPath: .spec.secretStoreRef.name
  2804. name: Store
  2805. type: string
  2806. - jsonPath: .spec.refreshInterval
  2807. name: Refresh Interval
  2808. type: string
  2809. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2810. name: Status
  2811. type: string
  2812. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2813. name: Ready
  2814. type: string
  2815. name: v1beta1
  2816. schema:
  2817. openAPIV3Schema:
  2818. description: ExternalSecret is the Schema for the external-secrets API.
  2819. properties:
  2820. apiVersion:
  2821. 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'
  2822. type: string
  2823. kind:
  2824. 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'
  2825. type: string
  2826. metadata:
  2827. type: object
  2828. spec:
  2829. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  2830. properties:
  2831. data:
  2832. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  2833. items:
  2834. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  2835. properties:
  2836. remoteRef:
  2837. description: ExternalSecretDataRemoteRef defines Provider data location.
  2838. properties:
  2839. conversionStrategy:
  2840. default: Default
  2841. description: Used to define a conversion Strategy
  2842. type: string
  2843. decodingStrategy:
  2844. default: None
  2845. description: Used to define a decoding Strategy
  2846. type: string
  2847. key:
  2848. description: Key is the key used in the Provider, mandatory
  2849. type: string
  2850. metadataPolicy:
  2851. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  2852. type: string
  2853. property:
  2854. description: Used to select a specific property of the Provider value (if a map), if supported
  2855. type: string
  2856. version:
  2857. description: Used to select a specific version of the Provider value, if supported
  2858. type: string
  2859. required:
  2860. - key
  2861. type: object
  2862. secretKey:
  2863. type: string
  2864. required:
  2865. - remoteRef
  2866. - secretKey
  2867. type: object
  2868. type: array
  2869. dataFrom:
  2870. 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
  2871. items:
  2872. properties:
  2873. extract:
  2874. description: Used to extract multiple key/value pairs from one secret
  2875. properties:
  2876. conversionStrategy:
  2877. default: Default
  2878. description: Used to define a conversion Strategy
  2879. type: string
  2880. decodingStrategy:
  2881. default: None
  2882. description: Used to define a decoding Strategy
  2883. type: string
  2884. key:
  2885. description: Key is the key used in the Provider, mandatory
  2886. type: string
  2887. metadataPolicy:
  2888. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  2889. type: string
  2890. property:
  2891. description: Used to select a specific property of the Provider value (if a map), if supported
  2892. type: string
  2893. version:
  2894. description: Used to select a specific version of the Provider value, if supported
  2895. type: string
  2896. required:
  2897. - key
  2898. type: object
  2899. find:
  2900. description: Used to find secrets based on tags or regular expressions
  2901. properties:
  2902. conversionStrategy:
  2903. default: Default
  2904. description: Used to define a conversion Strategy
  2905. type: string
  2906. decodingStrategy:
  2907. default: None
  2908. description: Used to define a decoding Strategy
  2909. type: string
  2910. name:
  2911. description: Finds secrets based on the name.
  2912. properties:
  2913. regexp:
  2914. description: Finds secrets base
  2915. type: string
  2916. type: object
  2917. path:
  2918. description: A root path to start the find operations.
  2919. type: string
  2920. tags:
  2921. additionalProperties:
  2922. type: string
  2923. description: Find secrets based on tags.
  2924. type: object
  2925. type: object
  2926. rewrite:
  2927. 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)
  2928. items:
  2929. properties:
  2930. regexp:
  2931. description: Used to rewrite with regular expressions. The resulting key will be the output of a regexp.ReplaceAll operation.
  2932. properties:
  2933. source:
  2934. description: Used to define the regular expression of a re.Compiler.
  2935. type: string
  2936. target:
  2937. description: Used to define the target pattern of a ReplaceAll operation.
  2938. type: string
  2939. required:
  2940. - source
  2941. - target
  2942. type: object
  2943. type: object
  2944. type: array
  2945. type: object
  2946. type: array
  2947. refreshInterval:
  2948. default: 1h
  2949. 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.
  2950. type: string
  2951. secretStoreRef:
  2952. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  2953. properties:
  2954. kind:
  2955. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  2956. type: string
  2957. name:
  2958. description: Name of the SecretStore resource
  2959. type: string
  2960. required:
  2961. - name
  2962. type: object
  2963. target:
  2964. default:
  2965. creationPolicy: Owner
  2966. deletionPolicy: Retain
  2967. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  2968. properties:
  2969. creationPolicy:
  2970. default: Owner
  2971. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  2972. enum:
  2973. - Owner
  2974. - Orphan
  2975. - Merge
  2976. - None
  2977. type: string
  2978. deletionPolicy:
  2979. default: Retain
  2980. description: DeletionPolicy defines rules on how to delete the resulting Secret Defaults to 'Retain'
  2981. enum:
  2982. - Delete
  2983. - Merge
  2984. - Retain
  2985. type: string
  2986. immutable:
  2987. description: Immutable defines if the final secret will be immutable
  2988. type: boolean
  2989. name:
  2990. 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
  2991. type: string
  2992. template:
  2993. description: Template defines a blueprint for the created Secret resource.
  2994. properties:
  2995. data:
  2996. additionalProperties:
  2997. type: string
  2998. type: object
  2999. engineVersion:
  3000. default: v2
  3001. type: string
  3002. metadata:
  3003. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  3004. properties:
  3005. annotations:
  3006. additionalProperties:
  3007. type: string
  3008. type: object
  3009. labels:
  3010. additionalProperties:
  3011. type: string
  3012. type: object
  3013. type: object
  3014. templateFrom:
  3015. items:
  3016. maxProperties: 1
  3017. minProperties: 1
  3018. properties:
  3019. configMap:
  3020. properties:
  3021. items:
  3022. items:
  3023. properties:
  3024. key:
  3025. type: string
  3026. required:
  3027. - key
  3028. type: object
  3029. type: array
  3030. name:
  3031. type: string
  3032. required:
  3033. - items
  3034. - name
  3035. type: object
  3036. secret:
  3037. properties:
  3038. items:
  3039. items:
  3040. properties:
  3041. key:
  3042. type: string
  3043. required:
  3044. - key
  3045. type: object
  3046. type: array
  3047. name:
  3048. type: string
  3049. required:
  3050. - items
  3051. - name
  3052. type: object
  3053. type: object
  3054. type: array
  3055. type:
  3056. type: string
  3057. type: object
  3058. type: object
  3059. required:
  3060. - secretStoreRef
  3061. type: object
  3062. status:
  3063. properties:
  3064. conditions:
  3065. items:
  3066. properties:
  3067. lastTransitionTime:
  3068. format: date-time
  3069. type: string
  3070. message:
  3071. type: string
  3072. reason:
  3073. type: string
  3074. status:
  3075. type: string
  3076. type:
  3077. type: string
  3078. required:
  3079. - status
  3080. - type
  3081. type: object
  3082. type: array
  3083. refreshTime:
  3084. description: refreshTime is the time and date the external secret was fetched and the target secret updated
  3085. format: date-time
  3086. nullable: true
  3087. type: string
  3088. syncedResourceVersion:
  3089. description: SyncedResourceVersion keeps track of the last synced version
  3090. type: string
  3091. type: object
  3092. type: object
  3093. served: true
  3094. storage: true
  3095. subresources:
  3096. status: {}
  3097. conversion:
  3098. strategy: Webhook
  3099. webhook:
  3100. conversionReviewVersions:
  3101. - v1
  3102. clientConfig:
  3103. service:
  3104. name: kubernetes
  3105. namespace: default
  3106. path: /convert
  3107. ---
  3108. apiVersion: apiextensions.k8s.io/v1
  3109. kind: CustomResourceDefinition
  3110. metadata:
  3111. annotations:
  3112. controller-gen.kubebuilder.io/version: v0.9.2
  3113. creationTimestamp: null
  3114. name: secretstores.external-secrets.io
  3115. spec:
  3116. group: external-secrets.io
  3117. names:
  3118. categories:
  3119. - externalsecrets
  3120. kind: SecretStore
  3121. listKind: SecretStoreList
  3122. plural: secretstores
  3123. shortNames:
  3124. - ss
  3125. singular: secretstore
  3126. scope: Namespaced
  3127. versions:
  3128. - additionalPrinterColumns:
  3129. - jsonPath: .metadata.creationTimestamp
  3130. name: AGE
  3131. type: date
  3132. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  3133. name: Status
  3134. type: string
  3135. deprecated: true
  3136. name: v1alpha1
  3137. schema:
  3138. openAPIV3Schema:
  3139. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  3140. properties:
  3141. apiVersion:
  3142. 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'
  3143. type: string
  3144. kind:
  3145. 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'
  3146. type: string
  3147. metadata:
  3148. type: object
  3149. spec:
  3150. description: SecretStoreSpec defines the desired state of SecretStore.
  3151. properties:
  3152. controller:
  3153. 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'
  3154. type: string
  3155. provider:
  3156. description: Used to configure the provider. Only one provider may be set
  3157. maxProperties: 1
  3158. minProperties: 1
  3159. properties:
  3160. akeyless:
  3161. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  3162. properties:
  3163. akeylessGWApiURL:
  3164. description: Akeyless GW API Url from which the secrets to be fetched from.
  3165. type: string
  3166. authSecretRef:
  3167. description: Auth configures how the operator authenticates with Akeyless.
  3168. properties:
  3169. secretRef:
  3170. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  3171. properties:
  3172. accessID:
  3173. description: The SecretAccessID is used for authentication
  3174. properties:
  3175. key:
  3176. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3177. type: string
  3178. name:
  3179. description: The name of the Secret resource being referred to.
  3180. type: string
  3181. namespace:
  3182. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3183. type: string
  3184. type: object
  3185. accessType:
  3186. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3187. properties:
  3188. key:
  3189. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3190. type: string
  3191. name:
  3192. description: The name of the Secret resource being referred to.
  3193. type: string
  3194. namespace:
  3195. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3196. type: string
  3197. type: object
  3198. accessTypeParam:
  3199. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3200. properties:
  3201. key:
  3202. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3203. type: string
  3204. name:
  3205. description: The name of the Secret resource being referred to.
  3206. type: string
  3207. namespace:
  3208. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3209. type: string
  3210. type: object
  3211. type: object
  3212. required:
  3213. - secretRef
  3214. type: object
  3215. required:
  3216. - akeylessGWApiURL
  3217. - authSecretRef
  3218. type: object
  3219. alibaba:
  3220. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  3221. properties:
  3222. auth:
  3223. description: AlibabaAuth contains a secretRef for credentials.
  3224. properties:
  3225. secretRef:
  3226. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  3227. properties:
  3228. accessKeyIDSecretRef:
  3229. description: The AccessKeyID is used for authentication
  3230. properties:
  3231. key:
  3232. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3233. type: string
  3234. name:
  3235. description: The name of the Secret resource being referred to.
  3236. type: string
  3237. namespace:
  3238. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3239. type: string
  3240. type: object
  3241. accessKeySecretSecretRef:
  3242. description: The AccessKeySecret is used for authentication
  3243. properties:
  3244. key:
  3245. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3246. type: string
  3247. name:
  3248. description: The name of the Secret resource being referred to.
  3249. type: string
  3250. namespace:
  3251. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3252. type: string
  3253. type: object
  3254. required:
  3255. - accessKeyIDSecretRef
  3256. - accessKeySecretSecretRef
  3257. type: object
  3258. required:
  3259. - secretRef
  3260. type: object
  3261. endpoint:
  3262. type: string
  3263. regionID:
  3264. description: Alibaba Region to be used for the provider
  3265. type: string
  3266. required:
  3267. - auth
  3268. - regionID
  3269. type: object
  3270. aws:
  3271. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  3272. properties:
  3273. auth:
  3274. 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'
  3275. properties:
  3276. jwt:
  3277. description: Authenticate against AWS using service account tokens.
  3278. properties:
  3279. serviceAccountRef:
  3280. description: A reference to a ServiceAccount resource.
  3281. properties:
  3282. name:
  3283. description: The name of the ServiceAccount resource being referred to.
  3284. type: string
  3285. namespace:
  3286. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3287. type: string
  3288. required:
  3289. - name
  3290. type: object
  3291. type: object
  3292. secretRef:
  3293. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  3294. properties:
  3295. accessKeyIDSecretRef:
  3296. description: The AccessKeyID is used for authentication
  3297. properties:
  3298. key:
  3299. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3300. type: string
  3301. name:
  3302. description: The name of the Secret resource being referred to.
  3303. type: string
  3304. namespace:
  3305. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3306. type: string
  3307. type: object
  3308. secretAccessKeySecretRef:
  3309. description: The SecretAccessKey is used for authentication
  3310. properties:
  3311. key:
  3312. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3313. type: string
  3314. name:
  3315. description: The name of the Secret resource being referred to.
  3316. type: string
  3317. namespace:
  3318. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3319. type: string
  3320. type: object
  3321. type: object
  3322. type: object
  3323. region:
  3324. description: AWS Region to be used for the provider
  3325. type: string
  3326. role:
  3327. description: Role is a Role ARN which the SecretManager provider will assume
  3328. type: string
  3329. service:
  3330. description: Service defines which service should be used to fetch the secrets
  3331. enum:
  3332. - SecretsManager
  3333. - ParameterStore
  3334. type: string
  3335. required:
  3336. - region
  3337. - service
  3338. type: object
  3339. azurekv:
  3340. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  3341. properties:
  3342. authSecretRef:
  3343. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  3344. properties:
  3345. clientId:
  3346. description: The Azure clientId of the service principle used for authentication.
  3347. properties:
  3348. key:
  3349. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3350. type: string
  3351. name:
  3352. description: The name of the Secret resource being referred to.
  3353. type: string
  3354. namespace:
  3355. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3356. type: string
  3357. type: object
  3358. clientSecret:
  3359. description: The Azure ClientSecret of the service principle used for authentication.
  3360. properties:
  3361. key:
  3362. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3363. type: string
  3364. name:
  3365. description: The name of the Secret resource being referred to.
  3366. type: string
  3367. namespace:
  3368. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3369. type: string
  3370. type: object
  3371. type: object
  3372. authType:
  3373. default: ServicePrincipal
  3374. 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)'
  3375. enum:
  3376. - ServicePrincipal
  3377. - ManagedIdentity
  3378. - WorkloadIdentity
  3379. type: string
  3380. identityId:
  3381. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3382. type: string
  3383. serviceAccountRef:
  3384. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  3385. properties:
  3386. name:
  3387. description: The name of the ServiceAccount resource being referred to.
  3388. type: string
  3389. namespace:
  3390. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3391. type: string
  3392. required:
  3393. - name
  3394. type: object
  3395. tenantId:
  3396. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  3397. type: string
  3398. vaultUrl:
  3399. description: Vault Url from which the secrets to be fetched from.
  3400. type: string
  3401. required:
  3402. - vaultUrl
  3403. type: object
  3404. fake:
  3405. description: Fake configures a store with static key/value pairs
  3406. properties:
  3407. data:
  3408. items:
  3409. properties:
  3410. key:
  3411. type: string
  3412. value:
  3413. type: string
  3414. valueMap:
  3415. additionalProperties:
  3416. type: string
  3417. type: object
  3418. version:
  3419. type: string
  3420. required:
  3421. - key
  3422. type: object
  3423. type: array
  3424. required:
  3425. - data
  3426. type: object
  3427. gcpsm:
  3428. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  3429. properties:
  3430. auth:
  3431. description: Auth defines the information necessary to authenticate against GCP
  3432. properties:
  3433. secretRef:
  3434. properties:
  3435. secretAccessKeySecretRef:
  3436. description: The SecretAccessKey is used for authentication
  3437. properties:
  3438. key:
  3439. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3440. type: string
  3441. name:
  3442. description: The name of the Secret resource being referred to.
  3443. type: string
  3444. namespace:
  3445. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3446. type: string
  3447. type: object
  3448. type: object
  3449. workloadIdentity:
  3450. properties:
  3451. clusterLocation:
  3452. type: string
  3453. clusterName:
  3454. type: string
  3455. clusterProjectID:
  3456. type: string
  3457. serviceAccountRef:
  3458. description: A reference to a ServiceAccount resource.
  3459. properties:
  3460. name:
  3461. description: The name of the ServiceAccount resource being referred to.
  3462. type: string
  3463. namespace:
  3464. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3465. type: string
  3466. required:
  3467. - name
  3468. type: object
  3469. required:
  3470. - clusterLocation
  3471. - clusterName
  3472. - serviceAccountRef
  3473. type: object
  3474. type: object
  3475. projectID:
  3476. description: ProjectID project where secret is located
  3477. type: string
  3478. type: object
  3479. gitlab:
  3480. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  3481. properties:
  3482. auth:
  3483. description: Auth configures how secret-manager authenticates with a GitLab instance.
  3484. properties:
  3485. SecretRef:
  3486. properties:
  3487. accessToken:
  3488. description: AccessToken is used for authentication.
  3489. properties:
  3490. key:
  3491. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3492. type: string
  3493. name:
  3494. description: The name of the Secret resource being referred to.
  3495. type: string
  3496. namespace:
  3497. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3498. type: string
  3499. type: object
  3500. type: object
  3501. required:
  3502. - SecretRef
  3503. type: object
  3504. projectID:
  3505. description: ProjectID specifies a project where secrets are located.
  3506. type: string
  3507. url:
  3508. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  3509. type: string
  3510. required:
  3511. - auth
  3512. type: object
  3513. ibm:
  3514. description: IBM configures this store to sync secrets using IBM Cloud provider
  3515. properties:
  3516. auth:
  3517. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  3518. properties:
  3519. secretRef:
  3520. properties:
  3521. secretApiKeySecretRef:
  3522. description: The SecretAccessKey is used for authentication
  3523. properties:
  3524. key:
  3525. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3526. type: string
  3527. name:
  3528. description: The name of the Secret resource being referred to.
  3529. type: string
  3530. namespace:
  3531. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3532. type: string
  3533. type: object
  3534. type: object
  3535. required:
  3536. - secretRef
  3537. type: object
  3538. serviceUrl:
  3539. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  3540. type: string
  3541. required:
  3542. - auth
  3543. type: object
  3544. kubernetes:
  3545. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  3546. properties:
  3547. auth:
  3548. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  3549. maxProperties: 1
  3550. minProperties: 1
  3551. properties:
  3552. cert:
  3553. description: has both clientCert and clientKey as secretKeySelector
  3554. properties:
  3555. clientCert:
  3556. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3557. properties:
  3558. key:
  3559. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3560. type: string
  3561. name:
  3562. description: The name of the Secret resource being referred to.
  3563. type: string
  3564. namespace:
  3565. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3566. type: string
  3567. type: object
  3568. clientKey:
  3569. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3570. properties:
  3571. key:
  3572. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3573. type: string
  3574. name:
  3575. description: The name of the Secret resource being referred to.
  3576. type: string
  3577. namespace:
  3578. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3579. type: string
  3580. type: object
  3581. type: object
  3582. serviceAccount:
  3583. description: points to a service account that should be used for authentication
  3584. properties:
  3585. serviceAccount:
  3586. description: A reference to a ServiceAccount resource.
  3587. properties:
  3588. name:
  3589. description: The name of the ServiceAccount resource being referred to.
  3590. type: string
  3591. namespace:
  3592. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3593. type: string
  3594. required:
  3595. - name
  3596. type: object
  3597. type: object
  3598. token:
  3599. description: use static token to authenticate with
  3600. properties:
  3601. bearerToken:
  3602. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3603. properties:
  3604. key:
  3605. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3606. type: string
  3607. name:
  3608. description: The name of the Secret resource being referred to.
  3609. type: string
  3610. namespace:
  3611. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3612. type: string
  3613. type: object
  3614. type: object
  3615. type: object
  3616. remoteNamespace:
  3617. default: default
  3618. description: Remote namespace to fetch the secrets from
  3619. type: string
  3620. server:
  3621. description: configures the Kubernetes server Address.
  3622. properties:
  3623. caBundle:
  3624. description: CABundle is a base64-encoded CA certificate
  3625. format: byte
  3626. type: string
  3627. caProvider:
  3628. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  3629. properties:
  3630. key:
  3631. description: The key the value inside of the provider type to use, only used with "Secret" type
  3632. type: string
  3633. name:
  3634. description: The name of the object located at the provider type.
  3635. type: string
  3636. namespace:
  3637. description: The namespace the Provider type is in.
  3638. type: string
  3639. type:
  3640. description: The type of provider to use such as "Secret", or "ConfigMap".
  3641. enum:
  3642. - Secret
  3643. - ConfigMap
  3644. type: string
  3645. required:
  3646. - name
  3647. - type
  3648. type: object
  3649. url:
  3650. default: kubernetes.default
  3651. description: configures the Kubernetes server Address.
  3652. type: string
  3653. type: object
  3654. required:
  3655. - auth
  3656. type: object
  3657. oracle:
  3658. description: Oracle configures this store to sync secrets using Oracle Vault provider
  3659. properties:
  3660. auth:
  3661. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  3662. properties:
  3663. secretRef:
  3664. description: SecretRef to pass through sensitive information.
  3665. properties:
  3666. fingerprint:
  3667. description: Fingerprint is the fingerprint of the API private key.
  3668. properties:
  3669. key:
  3670. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3671. type: string
  3672. name:
  3673. description: The name of the Secret resource being referred to.
  3674. type: string
  3675. namespace:
  3676. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3677. type: string
  3678. type: object
  3679. privatekey:
  3680. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  3681. properties:
  3682. key:
  3683. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3684. type: string
  3685. name:
  3686. description: The name of the Secret resource being referred to.
  3687. type: string
  3688. namespace:
  3689. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3690. type: string
  3691. type: object
  3692. required:
  3693. - fingerprint
  3694. - privatekey
  3695. type: object
  3696. tenancy:
  3697. description: Tenancy is the tenancy OCID where user is located.
  3698. type: string
  3699. user:
  3700. description: User is an access OCID specific to the account.
  3701. type: string
  3702. required:
  3703. - secretRef
  3704. - tenancy
  3705. - user
  3706. type: object
  3707. region:
  3708. description: Region is the region where vault is located.
  3709. type: string
  3710. vault:
  3711. description: Vault is the vault's OCID of the specific vault where secret is located.
  3712. type: string
  3713. required:
  3714. - region
  3715. - vault
  3716. type: object
  3717. vault:
  3718. description: Vault configures this store to sync secrets using Hashi provider
  3719. properties:
  3720. auth:
  3721. description: Auth configures how secret-manager authenticates with the Vault server.
  3722. properties:
  3723. appRole:
  3724. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  3725. properties:
  3726. path:
  3727. default: approle
  3728. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  3729. type: string
  3730. roleId:
  3731. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  3732. type: string
  3733. secretRef:
  3734. 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.
  3735. properties:
  3736. key:
  3737. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3738. type: string
  3739. name:
  3740. description: The name of the Secret resource being referred to.
  3741. type: string
  3742. namespace:
  3743. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3744. type: string
  3745. type: object
  3746. required:
  3747. - path
  3748. - roleId
  3749. - secretRef
  3750. type: object
  3751. cert:
  3752. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  3753. properties:
  3754. clientCert:
  3755. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  3756. properties:
  3757. key:
  3758. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3759. type: string
  3760. name:
  3761. description: The name of the Secret resource being referred to.
  3762. type: string
  3763. namespace:
  3764. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3765. type: string
  3766. type: object
  3767. secretRef:
  3768. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  3769. properties:
  3770. key:
  3771. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3772. type: string
  3773. name:
  3774. description: The name of the Secret resource being referred to.
  3775. type: string
  3776. namespace:
  3777. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3778. type: string
  3779. type: object
  3780. type: object
  3781. jwt:
  3782. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  3783. properties:
  3784. kubernetesServiceAccountToken:
  3785. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  3786. properties:
  3787. audiences:
  3788. 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.
  3789. items:
  3790. type: string
  3791. type: array
  3792. expirationSeconds:
  3793. 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.
  3794. format: int64
  3795. type: integer
  3796. serviceAccountRef:
  3797. description: Service account field containing the name of a kubernetes ServiceAccount.
  3798. properties:
  3799. name:
  3800. description: The name of the ServiceAccount resource being referred to.
  3801. type: string
  3802. namespace:
  3803. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3804. type: string
  3805. required:
  3806. - name
  3807. type: object
  3808. required:
  3809. - serviceAccountRef
  3810. type: object
  3811. path:
  3812. default: jwt
  3813. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  3814. type: string
  3815. role:
  3816. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  3817. type: string
  3818. secretRef:
  3819. 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.
  3820. properties:
  3821. key:
  3822. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3823. type: string
  3824. name:
  3825. description: The name of the Secret resource being referred to.
  3826. type: string
  3827. namespace:
  3828. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3829. type: string
  3830. type: object
  3831. required:
  3832. - path
  3833. type: object
  3834. kubernetes:
  3835. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  3836. properties:
  3837. mountPath:
  3838. default: kubernetes
  3839. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  3840. type: string
  3841. role:
  3842. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  3843. type: string
  3844. secretRef:
  3845. 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.
  3846. properties:
  3847. key:
  3848. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3849. type: string
  3850. name:
  3851. description: The name of the Secret resource being referred to.
  3852. type: string
  3853. namespace:
  3854. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3855. type: string
  3856. type: object
  3857. serviceAccountRef:
  3858. 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.
  3859. properties:
  3860. name:
  3861. description: The name of the ServiceAccount resource being referred to.
  3862. type: string
  3863. namespace:
  3864. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3865. type: string
  3866. required:
  3867. - name
  3868. type: object
  3869. required:
  3870. - mountPath
  3871. - role
  3872. type: object
  3873. ldap:
  3874. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  3875. properties:
  3876. path:
  3877. default: ldap
  3878. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  3879. type: string
  3880. secretRef:
  3881. 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
  3882. properties:
  3883. key:
  3884. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3885. type: string
  3886. name:
  3887. description: The name of the Secret resource being referred to.
  3888. type: string
  3889. namespace:
  3890. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3891. type: string
  3892. type: object
  3893. username:
  3894. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  3895. type: string
  3896. required:
  3897. - path
  3898. - username
  3899. type: object
  3900. tokenSecretRef:
  3901. description: TokenSecretRef authenticates with Vault by presenting a token.
  3902. properties:
  3903. key:
  3904. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3905. type: string
  3906. name:
  3907. description: The name of the Secret resource being referred to.
  3908. type: string
  3909. namespace:
  3910. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3911. type: string
  3912. type: object
  3913. type: object
  3914. caBundle:
  3915. 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.
  3916. format: byte
  3917. type: string
  3918. caProvider:
  3919. description: The provider for the CA bundle to use to validate Vault server certificate.
  3920. properties:
  3921. key:
  3922. description: The key the value inside of the provider type to use, only used with "Secret" type
  3923. type: string
  3924. name:
  3925. description: The name of the object located at the provider type.
  3926. type: string
  3927. namespace:
  3928. description: The namespace the Provider type is in.
  3929. type: string
  3930. type:
  3931. description: The type of provider to use such as "Secret", or "ConfigMap".
  3932. enum:
  3933. - Secret
  3934. - ConfigMap
  3935. type: string
  3936. required:
  3937. - name
  3938. - type
  3939. type: object
  3940. forwardInconsistent:
  3941. 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
  3942. type: boolean
  3943. namespace:
  3944. 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'
  3945. type: string
  3946. path:
  3947. 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.'
  3948. type: string
  3949. readYourWrites:
  3950. 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
  3951. type: boolean
  3952. server:
  3953. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  3954. type: string
  3955. version:
  3956. default: v2
  3957. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  3958. enum:
  3959. - v1
  3960. - v2
  3961. type: string
  3962. required:
  3963. - auth
  3964. - server
  3965. type: object
  3966. webhook:
  3967. description: Webhook configures this store to sync secrets using a generic templated webhook
  3968. properties:
  3969. body:
  3970. description: Body
  3971. type: string
  3972. caBundle:
  3973. 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.
  3974. format: byte
  3975. type: string
  3976. caProvider:
  3977. description: The provider for the CA bundle to use to validate webhook server certificate.
  3978. properties:
  3979. key:
  3980. description: The key the value inside of the provider type to use, only used with "Secret" type
  3981. type: string
  3982. name:
  3983. description: The name of the object located at the provider type.
  3984. type: string
  3985. namespace:
  3986. description: The namespace the Provider type is in.
  3987. type: string
  3988. type:
  3989. description: The type of provider to use such as "Secret", or "ConfigMap".
  3990. enum:
  3991. - Secret
  3992. - ConfigMap
  3993. type: string
  3994. required:
  3995. - name
  3996. - type
  3997. type: object
  3998. headers:
  3999. additionalProperties:
  4000. type: string
  4001. description: Headers
  4002. type: object
  4003. method:
  4004. description: Webhook Method
  4005. type: string
  4006. result:
  4007. description: Result formatting
  4008. properties:
  4009. jsonPath:
  4010. description: Json path of return value
  4011. type: string
  4012. type: object
  4013. secrets:
  4014. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  4015. items:
  4016. properties:
  4017. name:
  4018. description: Name of this secret in templates
  4019. type: string
  4020. secretRef:
  4021. description: Secret ref to fill in credentials
  4022. properties:
  4023. key:
  4024. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4025. type: string
  4026. name:
  4027. description: The name of the Secret resource being referred to.
  4028. type: string
  4029. namespace:
  4030. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4031. type: string
  4032. type: object
  4033. required:
  4034. - name
  4035. - secretRef
  4036. type: object
  4037. type: array
  4038. timeout:
  4039. description: Timeout
  4040. type: string
  4041. url:
  4042. description: Webhook url to call
  4043. type: string
  4044. required:
  4045. - result
  4046. - url
  4047. type: object
  4048. yandexlockbox:
  4049. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  4050. properties:
  4051. apiEndpoint:
  4052. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4053. type: string
  4054. auth:
  4055. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  4056. properties:
  4057. authorizedKeySecretRef:
  4058. description: The authorized key used for authentication
  4059. properties:
  4060. key:
  4061. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4062. type: string
  4063. name:
  4064. description: The name of the Secret resource being referred to.
  4065. type: string
  4066. namespace:
  4067. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4068. type: string
  4069. type: object
  4070. type: object
  4071. caProvider:
  4072. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4073. properties:
  4074. certSecretRef:
  4075. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4076. properties:
  4077. key:
  4078. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4079. type: string
  4080. name:
  4081. description: The name of the Secret resource being referred to.
  4082. type: string
  4083. namespace:
  4084. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4085. type: string
  4086. type: object
  4087. type: object
  4088. required:
  4089. - auth
  4090. type: object
  4091. type: object
  4092. retrySettings:
  4093. description: Used to configure http retries if failed
  4094. properties:
  4095. maxRetries:
  4096. format: int32
  4097. type: integer
  4098. retryInterval:
  4099. type: string
  4100. type: object
  4101. required:
  4102. - provider
  4103. type: object
  4104. status:
  4105. description: SecretStoreStatus defines the observed state of the SecretStore.
  4106. properties:
  4107. conditions:
  4108. items:
  4109. properties:
  4110. lastTransitionTime:
  4111. format: date-time
  4112. type: string
  4113. message:
  4114. type: string
  4115. reason:
  4116. type: string
  4117. status:
  4118. type: string
  4119. type:
  4120. type: string
  4121. required:
  4122. - status
  4123. - type
  4124. type: object
  4125. type: array
  4126. type: object
  4127. type: object
  4128. served: true
  4129. storage: false
  4130. subresources:
  4131. status: {}
  4132. - additionalPrinterColumns:
  4133. - jsonPath: .metadata.creationTimestamp
  4134. name: AGE
  4135. type: date
  4136. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4137. name: Status
  4138. type: string
  4139. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  4140. name: Ready
  4141. type: string
  4142. name: v1beta1
  4143. schema:
  4144. openAPIV3Schema:
  4145. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  4146. properties:
  4147. apiVersion:
  4148. 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'
  4149. type: string
  4150. kind:
  4151. 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'
  4152. type: string
  4153. metadata:
  4154. type: object
  4155. spec:
  4156. description: SecretStoreSpec defines the desired state of SecretStore.
  4157. properties:
  4158. controller:
  4159. 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'
  4160. type: string
  4161. provider:
  4162. description: Used to configure the provider. Only one provider may be set
  4163. maxProperties: 1
  4164. minProperties: 1
  4165. properties:
  4166. akeyless:
  4167. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  4168. properties:
  4169. akeylessGWApiURL:
  4170. description: Akeyless GW API Url from which the secrets to be fetched from.
  4171. type: string
  4172. authSecretRef:
  4173. description: Auth configures how the operator authenticates with Akeyless.
  4174. properties:
  4175. secretRef:
  4176. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  4177. properties:
  4178. accessID:
  4179. description: The SecretAccessID is used for authentication
  4180. properties:
  4181. key:
  4182. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4183. type: string
  4184. name:
  4185. description: The name of the Secret resource being referred to.
  4186. type: string
  4187. namespace:
  4188. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4189. type: string
  4190. type: object
  4191. accessType:
  4192. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4193. properties:
  4194. key:
  4195. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4196. type: string
  4197. name:
  4198. description: The name of the Secret resource being referred to.
  4199. type: string
  4200. namespace:
  4201. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4202. type: string
  4203. type: object
  4204. accessTypeParam:
  4205. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4206. properties:
  4207. key:
  4208. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4209. type: string
  4210. name:
  4211. description: The name of the Secret resource being referred to.
  4212. type: string
  4213. namespace:
  4214. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4215. type: string
  4216. type: object
  4217. type: object
  4218. required:
  4219. - secretRef
  4220. type: object
  4221. required:
  4222. - akeylessGWApiURL
  4223. - authSecretRef
  4224. type: object
  4225. alibaba:
  4226. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  4227. properties:
  4228. auth:
  4229. description: AlibabaAuth contains a secretRef for credentials.
  4230. properties:
  4231. secretRef:
  4232. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  4233. properties:
  4234. accessKeyIDSecretRef:
  4235. description: The AccessKeyID is used for authentication
  4236. properties:
  4237. key:
  4238. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4239. type: string
  4240. name:
  4241. description: The name of the Secret resource being referred to.
  4242. type: string
  4243. namespace:
  4244. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4245. type: string
  4246. type: object
  4247. accessKeySecretSecretRef:
  4248. description: The AccessKeySecret is used for authentication
  4249. properties:
  4250. key:
  4251. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4252. type: string
  4253. name:
  4254. description: The name of the Secret resource being referred to.
  4255. type: string
  4256. namespace:
  4257. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4258. type: string
  4259. type: object
  4260. required:
  4261. - accessKeyIDSecretRef
  4262. - accessKeySecretSecretRef
  4263. type: object
  4264. required:
  4265. - secretRef
  4266. type: object
  4267. endpoint:
  4268. type: string
  4269. regionID:
  4270. description: Alibaba Region to be used for the provider
  4271. type: string
  4272. required:
  4273. - auth
  4274. - regionID
  4275. type: object
  4276. aws:
  4277. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  4278. properties:
  4279. auth:
  4280. 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'
  4281. properties:
  4282. jwt:
  4283. description: Authenticate against AWS using service account tokens.
  4284. properties:
  4285. serviceAccountRef:
  4286. description: A reference to a ServiceAccount resource.
  4287. properties:
  4288. name:
  4289. description: The name of the ServiceAccount resource being referred to.
  4290. type: string
  4291. namespace:
  4292. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4293. type: string
  4294. required:
  4295. - name
  4296. type: object
  4297. type: object
  4298. secretRef:
  4299. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  4300. properties:
  4301. accessKeyIDSecretRef:
  4302. description: The AccessKeyID is used for authentication
  4303. properties:
  4304. key:
  4305. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4306. type: string
  4307. name:
  4308. description: The name of the Secret resource being referred to.
  4309. type: string
  4310. namespace:
  4311. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4312. type: string
  4313. type: object
  4314. secretAccessKeySecretRef:
  4315. description: The SecretAccessKey is used for authentication
  4316. properties:
  4317. key:
  4318. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4319. type: string
  4320. name:
  4321. description: The name of the Secret resource being referred to.
  4322. type: string
  4323. namespace:
  4324. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4325. type: string
  4326. type: object
  4327. type: object
  4328. type: object
  4329. region:
  4330. description: AWS Region to be used for the provider
  4331. type: string
  4332. role:
  4333. description: Role is a Role ARN which the SecretManager provider will assume
  4334. type: string
  4335. service:
  4336. description: Service defines which service should be used to fetch the secrets
  4337. enum:
  4338. - SecretsManager
  4339. - ParameterStore
  4340. type: string
  4341. required:
  4342. - region
  4343. - service
  4344. type: object
  4345. azurekv:
  4346. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  4347. properties:
  4348. authSecretRef:
  4349. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  4350. properties:
  4351. clientId:
  4352. description: The Azure clientId of the service principle used for authentication.
  4353. properties:
  4354. key:
  4355. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4356. type: string
  4357. name:
  4358. description: The name of the Secret resource being referred to.
  4359. type: string
  4360. namespace:
  4361. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4362. type: string
  4363. type: object
  4364. clientSecret:
  4365. description: The Azure ClientSecret of the service principle used for authentication.
  4366. properties:
  4367. key:
  4368. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4369. type: string
  4370. name:
  4371. description: The name of the Secret resource being referred to.
  4372. type: string
  4373. namespace:
  4374. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4375. type: string
  4376. type: object
  4377. type: object
  4378. authType:
  4379. default: ServicePrincipal
  4380. 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)'
  4381. enum:
  4382. - ServicePrincipal
  4383. - ManagedIdentity
  4384. - WorkloadIdentity
  4385. type: string
  4386. environmentType:
  4387. default: PublicCloud
  4388. description: 'EnvironmentType specifies the Azure cloud environment endpoints to use for connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152 PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  4389. enum:
  4390. - PublicCloud
  4391. - USGovernmentCloud
  4392. - ChinaCloud
  4393. - GermanCloud
  4394. type: string
  4395. identityId:
  4396. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  4397. type: string
  4398. serviceAccountRef:
  4399. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  4400. properties:
  4401. name:
  4402. description: The name of the ServiceAccount resource being referred to.
  4403. type: string
  4404. namespace:
  4405. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4406. type: string
  4407. required:
  4408. - name
  4409. type: object
  4410. tenantId:
  4411. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  4412. type: string
  4413. vaultUrl:
  4414. description: Vault Url from which the secrets to be fetched from.
  4415. type: string
  4416. required:
  4417. - vaultUrl
  4418. type: object
  4419. fake:
  4420. description: Fake configures a store with static key/value pairs
  4421. properties:
  4422. data:
  4423. items:
  4424. properties:
  4425. key:
  4426. type: string
  4427. value:
  4428. type: string
  4429. valueMap:
  4430. additionalProperties:
  4431. type: string
  4432. type: object
  4433. version:
  4434. type: string
  4435. required:
  4436. - key
  4437. type: object
  4438. type: array
  4439. required:
  4440. - data
  4441. type: object
  4442. gcpsm:
  4443. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4444. properties:
  4445. auth:
  4446. description: Auth defines the information necessary to authenticate against GCP
  4447. properties:
  4448. secretRef:
  4449. properties:
  4450. secretAccessKeySecretRef:
  4451. description: The SecretAccessKey is used for authentication
  4452. properties:
  4453. key:
  4454. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4455. type: string
  4456. name:
  4457. description: The name of the Secret resource being referred to.
  4458. type: string
  4459. namespace:
  4460. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4461. type: string
  4462. type: object
  4463. type: object
  4464. workloadIdentity:
  4465. properties:
  4466. clusterLocation:
  4467. type: string
  4468. clusterName:
  4469. type: string
  4470. clusterProjectID:
  4471. type: string
  4472. serviceAccountRef:
  4473. description: A reference to a ServiceAccount resource.
  4474. properties:
  4475. name:
  4476. description: The name of the ServiceAccount resource being referred to.
  4477. type: string
  4478. namespace:
  4479. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4480. type: string
  4481. required:
  4482. - name
  4483. type: object
  4484. required:
  4485. - clusterLocation
  4486. - clusterName
  4487. - serviceAccountRef
  4488. type: object
  4489. type: object
  4490. projectID:
  4491. description: ProjectID project where secret is located
  4492. type: string
  4493. type: object
  4494. gitlab:
  4495. description: Gitlab configures this store to sync secrets using Gitlab Variables provider
  4496. properties:
  4497. auth:
  4498. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4499. properties:
  4500. SecretRef:
  4501. properties:
  4502. accessToken:
  4503. description: AccessToken is used for authentication.
  4504. properties:
  4505. key:
  4506. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4507. type: string
  4508. name:
  4509. description: The name of the Secret resource being referred to.
  4510. type: string
  4511. namespace:
  4512. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4513. type: string
  4514. type: object
  4515. type: object
  4516. required:
  4517. - SecretRef
  4518. type: object
  4519. projectID:
  4520. description: ProjectID specifies a project where secrets are located.
  4521. type: string
  4522. url:
  4523. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4524. type: string
  4525. required:
  4526. - auth
  4527. type: object
  4528. ibm:
  4529. description: IBM configures this store to sync secrets using IBM Cloud provider
  4530. properties:
  4531. auth:
  4532. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4533. maxProperties: 1
  4534. minProperties: 1
  4535. properties:
  4536. containerAuth:
  4537. description: IBM Container-based auth with IAM Trusted Profile.
  4538. properties:
  4539. iamEndpoint:
  4540. type: string
  4541. profile:
  4542. description: the IBM Trusted Profile
  4543. type: string
  4544. tokenLocation:
  4545. description: Location the token is mounted on the pod
  4546. type: string
  4547. required:
  4548. - profile
  4549. type: object
  4550. secretRef:
  4551. properties:
  4552. secretApiKeySecretRef:
  4553. description: The SecretAccessKey is used for authentication
  4554. properties:
  4555. key:
  4556. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4557. type: string
  4558. name:
  4559. description: The name of the Secret resource being referred to.
  4560. type: string
  4561. namespace:
  4562. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4563. type: string
  4564. type: object
  4565. type: object
  4566. type: object
  4567. serviceUrl:
  4568. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4569. type: string
  4570. required:
  4571. - auth
  4572. type: object
  4573. kubernetes:
  4574. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  4575. properties:
  4576. auth:
  4577. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  4578. maxProperties: 1
  4579. minProperties: 1
  4580. properties:
  4581. cert:
  4582. description: has both clientCert and clientKey as secretKeySelector
  4583. properties:
  4584. clientCert:
  4585. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4586. properties:
  4587. key:
  4588. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4589. type: string
  4590. name:
  4591. description: The name of the Secret resource being referred to.
  4592. type: string
  4593. namespace:
  4594. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4595. type: string
  4596. type: object
  4597. clientKey:
  4598. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4599. properties:
  4600. key:
  4601. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4602. type: string
  4603. name:
  4604. description: The name of the Secret resource being referred to.
  4605. type: string
  4606. namespace:
  4607. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4608. type: string
  4609. type: object
  4610. type: object
  4611. serviceAccount:
  4612. description: points to a service account that should be used for authentication
  4613. properties:
  4614. name:
  4615. description: The name of the ServiceAccount 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. required:
  4621. - name
  4622. type: object
  4623. token:
  4624. description: use static token to authenticate with
  4625. properties:
  4626. bearerToken:
  4627. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4628. properties:
  4629. key:
  4630. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4631. type: string
  4632. name:
  4633. description: The name of the Secret resource being referred to.
  4634. type: string
  4635. namespace:
  4636. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4637. type: string
  4638. type: object
  4639. type: object
  4640. type: object
  4641. remoteNamespace:
  4642. default: default
  4643. description: Remote namespace to fetch the secrets from
  4644. type: string
  4645. server:
  4646. description: configures the Kubernetes server Address.
  4647. properties:
  4648. caBundle:
  4649. description: CABundle is a base64-encoded CA certificate
  4650. format: byte
  4651. type: string
  4652. caProvider:
  4653. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  4654. properties:
  4655. key:
  4656. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4657. type: string
  4658. name:
  4659. description: The name of the object located at the provider type.
  4660. type: string
  4661. namespace:
  4662. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  4663. type: string
  4664. type:
  4665. description: The type of provider to use such as "Secret", or "ConfigMap".
  4666. enum:
  4667. - Secret
  4668. - ConfigMap
  4669. type: string
  4670. required:
  4671. - name
  4672. - type
  4673. type: object
  4674. url:
  4675. default: kubernetes.default
  4676. description: configures the Kubernetes server Address.
  4677. type: string
  4678. type: object
  4679. required:
  4680. - auth
  4681. type: object
  4682. onepassword:
  4683. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  4684. properties:
  4685. auth:
  4686. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  4687. properties:
  4688. secretRef:
  4689. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  4690. properties:
  4691. connectTokenSecretRef:
  4692. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  4693. properties:
  4694. key:
  4695. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4696. type: string
  4697. name:
  4698. description: The name of the Secret resource being referred to.
  4699. type: string
  4700. namespace:
  4701. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4702. type: string
  4703. type: object
  4704. required:
  4705. - connectTokenSecretRef
  4706. type: object
  4707. required:
  4708. - secretRef
  4709. type: object
  4710. connectHost:
  4711. description: ConnectHost defines the OnePassword Connect Server to connect to
  4712. type: string
  4713. vaults:
  4714. additionalProperties:
  4715. type: integer
  4716. description: Vaults defines which OnePassword vaults to search in which order
  4717. type: object
  4718. required:
  4719. - auth
  4720. - connectHost
  4721. - vaults
  4722. type: object
  4723. oracle:
  4724. description: Oracle configures this store to sync secrets using Oracle Vault provider
  4725. properties:
  4726. auth:
  4727. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  4728. properties:
  4729. secretRef:
  4730. description: SecretRef to pass through sensitive information.
  4731. properties:
  4732. fingerprint:
  4733. description: Fingerprint is the fingerprint of the API private key.
  4734. properties:
  4735. key:
  4736. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4737. type: string
  4738. name:
  4739. description: The name of the Secret resource being referred to.
  4740. type: string
  4741. namespace:
  4742. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4743. type: string
  4744. type: object
  4745. privatekey:
  4746. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  4747. properties:
  4748. key:
  4749. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4750. type: string
  4751. name:
  4752. description: The name of the Secret resource being referred to.
  4753. type: string
  4754. namespace:
  4755. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4756. type: string
  4757. type: object
  4758. required:
  4759. - fingerprint
  4760. - privatekey
  4761. type: object
  4762. tenancy:
  4763. description: Tenancy is the tenancy OCID where user is located.
  4764. type: string
  4765. user:
  4766. description: User is an access OCID specific to the account.
  4767. type: string
  4768. required:
  4769. - secretRef
  4770. - tenancy
  4771. - user
  4772. type: object
  4773. region:
  4774. description: Region is the region where vault is located.
  4775. type: string
  4776. vault:
  4777. description: Vault is the vault's OCID of the specific vault where secret is located.
  4778. type: string
  4779. required:
  4780. - region
  4781. - vault
  4782. type: object
  4783. senhasegura:
  4784. description: Senhasegura configures this store to sync secrets using senhasegura provider
  4785. properties:
  4786. auth:
  4787. description: Auth defines parameters to authenticate in senhasegura
  4788. properties:
  4789. clientId:
  4790. type: string
  4791. clientSecretSecretRef:
  4792. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  4793. properties:
  4794. key:
  4795. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4796. type: string
  4797. name:
  4798. description: The name of the Secret resource being referred to.
  4799. type: string
  4800. namespace:
  4801. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4802. type: string
  4803. type: object
  4804. required:
  4805. - clientId
  4806. - clientSecretSecretRef
  4807. type: object
  4808. ignoreSslCertificate:
  4809. default: false
  4810. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  4811. type: boolean
  4812. module:
  4813. description: Module defines which senhasegura module should be used to get secrets
  4814. type: string
  4815. url:
  4816. description: URL of senhasegura
  4817. type: string
  4818. required:
  4819. - auth
  4820. - module
  4821. - url
  4822. type: object
  4823. vault:
  4824. description: Vault configures this store to sync secrets using Hashi provider
  4825. properties:
  4826. auth:
  4827. description: Auth configures how secret-manager authenticates with the Vault server.
  4828. properties:
  4829. appRole:
  4830. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  4831. properties:
  4832. path:
  4833. default: approle
  4834. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  4835. type: string
  4836. roleId:
  4837. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  4838. type: string
  4839. secretRef:
  4840. 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.
  4841. properties:
  4842. key:
  4843. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4844. type: string
  4845. name:
  4846. description: The name of the Secret resource being referred to.
  4847. type: string
  4848. namespace:
  4849. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4850. type: string
  4851. type: object
  4852. required:
  4853. - path
  4854. - roleId
  4855. - secretRef
  4856. type: object
  4857. cert:
  4858. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  4859. properties:
  4860. clientCert:
  4861. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  4862. properties:
  4863. key:
  4864. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4865. type: string
  4866. name:
  4867. description: The name of the Secret resource being referred to.
  4868. type: string
  4869. namespace:
  4870. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4871. type: string
  4872. type: object
  4873. secretRef:
  4874. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  4875. properties:
  4876. key:
  4877. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4878. type: string
  4879. name:
  4880. description: The name of the Secret resource being referred to.
  4881. type: string
  4882. namespace:
  4883. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4884. type: string
  4885. type: object
  4886. type: object
  4887. jwt:
  4888. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  4889. properties:
  4890. kubernetesServiceAccountToken:
  4891. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  4892. properties:
  4893. audiences:
  4894. 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.
  4895. items:
  4896. type: string
  4897. type: array
  4898. expirationSeconds:
  4899. 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.
  4900. format: int64
  4901. type: integer
  4902. serviceAccountRef:
  4903. description: Service account field containing the name of a kubernetes ServiceAccount.
  4904. properties:
  4905. name:
  4906. description: The name of the ServiceAccount resource being referred to.
  4907. type: string
  4908. namespace:
  4909. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4910. type: string
  4911. required:
  4912. - name
  4913. type: object
  4914. required:
  4915. - serviceAccountRef
  4916. type: object
  4917. path:
  4918. default: jwt
  4919. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  4920. type: string
  4921. role:
  4922. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  4923. type: string
  4924. secretRef:
  4925. 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.
  4926. properties:
  4927. key:
  4928. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4929. type: string
  4930. name:
  4931. description: The name of the Secret resource being referred to.
  4932. type: string
  4933. namespace:
  4934. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4935. type: string
  4936. type: object
  4937. required:
  4938. - path
  4939. type: object
  4940. kubernetes:
  4941. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  4942. properties:
  4943. mountPath:
  4944. default: kubernetes
  4945. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  4946. type: string
  4947. role:
  4948. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  4949. type: string
  4950. secretRef:
  4951. 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.
  4952. properties:
  4953. key:
  4954. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4955. type: string
  4956. name:
  4957. description: The name of the Secret resource being referred to.
  4958. type: string
  4959. namespace:
  4960. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4961. type: string
  4962. type: object
  4963. serviceAccountRef:
  4964. 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.
  4965. properties:
  4966. name:
  4967. description: The name of the ServiceAccount resource being referred to.
  4968. type: string
  4969. namespace:
  4970. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4971. type: string
  4972. required:
  4973. - name
  4974. type: object
  4975. required:
  4976. - mountPath
  4977. - role
  4978. type: object
  4979. ldap:
  4980. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  4981. properties:
  4982. path:
  4983. default: ldap
  4984. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  4985. type: string
  4986. secretRef:
  4987. 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
  4988. properties:
  4989. key:
  4990. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  4991. type: string
  4992. name:
  4993. description: The name of the Secret resource being referred to.
  4994. type: string
  4995. namespace:
  4996. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  4997. type: string
  4998. type: object
  4999. username:
  5000. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  5001. type: string
  5002. required:
  5003. - path
  5004. - username
  5005. type: object
  5006. tokenSecretRef:
  5007. description: TokenSecretRef authenticates with Vault by presenting a token.
  5008. properties:
  5009. key:
  5010. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5011. type: string
  5012. name:
  5013. description: The name of the Secret resource being referred to.
  5014. type: string
  5015. namespace:
  5016. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5017. type: string
  5018. type: object
  5019. type: object
  5020. caBundle:
  5021. 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.
  5022. format: byte
  5023. type: string
  5024. caProvider:
  5025. description: The provider for the CA bundle to use to validate Vault server certificate.
  5026. properties:
  5027. key:
  5028. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5029. type: string
  5030. name:
  5031. description: The name of the object located at the provider type.
  5032. type: string
  5033. namespace:
  5034. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  5035. type: string
  5036. type:
  5037. description: The type of provider to use such as "Secret", or "ConfigMap".
  5038. enum:
  5039. - Secret
  5040. - ConfigMap
  5041. type: string
  5042. required:
  5043. - name
  5044. - type
  5045. type: object
  5046. forwardInconsistent:
  5047. 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
  5048. type: boolean
  5049. namespace:
  5050. 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'
  5051. type: string
  5052. path:
  5053. 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.'
  5054. type: string
  5055. readYourWrites:
  5056. 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
  5057. type: boolean
  5058. server:
  5059. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  5060. type: string
  5061. version:
  5062. default: v2
  5063. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  5064. enum:
  5065. - v1
  5066. - v2
  5067. type: string
  5068. required:
  5069. - auth
  5070. - server
  5071. type: object
  5072. webhook:
  5073. description: Webhook configures this store to sync secrets using a generic templated webhook
  5074. properties:
  5075. body:
  5076. description: Body
  5077. type: string
  5078. caBundle:
  5079. 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.
  5080. format: byte
  5081. type: string
  5082. caProvider:
  5083. description: The provider for the CA bundle to use to validate webhook server certificate.
  5084. properties:
  5085. key:
  5086. description: The key the value inside of the provider type to use, only used with "Secret" type
  5087. type: string
  5088. name:
  5089. description: The name of the object located at the provider type.
  5090. type: string
  5091. namespace:
  5092. description: The namespace the Provider type is in.
  5093. type: string
  5094. type:
  5095. description: The type of provider to use such as "Secret", or "ConfigMap".
  5096. enum:
  5097. - Secret
  5098. - ConfigMap
  5099. type: string
  5100. required:
  5101. - name
  5102. - type
  5103. type: object
  5104. headers:
  5105. additionalProperties:
  5106. type: string
  5107. description: Headers
  5108. type: object
  5109. method:
  5110. description: Webhook Method
  5111. type: string
  5112. result:
  5113. description: Result formatting
  5114. properties:
  5115. jsonPath:
  5116. description: Json path of return value
  5117. type: string
  5118. type: object
  5119. secrets:
  5120. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  5121. items:
  5122. properties:
  5123. name:
  5124. description: Name of this secret in templates
  5125. type: string
  5126. secretRef:
  5127. description: Secret ref to fill in credentials
  5128. properties:
  5129. key:
  5130. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5131. type: string
  5132. name:
  5133. description: The name of the Secret resource being referred to.
  5134. type: string
  5135. namespace:
  5136. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5137. type: string
  5138. type: object
  5139. required:
  5140. - name
  5141. - secretRef
  5142. type: object
  5143. type: array
  5144. timeout:
  5145. description: Timeout
  5146. type: string
  5147. url:
  5148. description: Webhook url to call
  5149. type: string
  5150. required:
  5151. - result
  5152. - url
  5153. type: object
  5154. yandexcertificatemanager:
  5155. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  5156. properties:
  5157. apiEndpoint:
  5158. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  5159. type: string
  5160. auth:
  5161. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  5162. properties:
  5163. authorizedKeySecretRef:
  5164. description: The authorized key used for authentication
  5165. properties:
  5166. key:
  5167. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5168. type: string
  5169. name:
  5170. description: The name of the Secret resource being referred to.
  5171. type: string
  5172. namespace:
  5173. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5174. type: string
  5175. type: object
  5176. type: object
  5177. caProvider:
  5178. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  5179. properties:
  5180. certSecretRef:
  5181. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  5182. properties:
  5183. key:
  5184. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5185. type: string
  5186. name:
  5187. description: The name of the Secret resource being referred to.
  5188. type: string
  5189. namespace:
  5190. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5191. type: string
  5192. type: object
  5193. type: object
  5194. required:
  5195. - auth
  5196. type: object
  5197. yandexlockbox:
  5198. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  5199. properties:
  5200. apiEndpoint:
  5201. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  5202. type: string
  5203. auth:
  5204. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  5205. properties:
  5206. authorizedKeySecretRef:
  5207. description: The authorized key used for authentication
  5208. properties:
  5209. key:
  5210. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5211. type: string
  5212. name:
  5213. description: The name of the Secret resource being referred to.
  5214. type: string
  5215. namespace:
  5216. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5217. type: string
  5218. type: object
  5219. type: object
  5220. caProvider:
  5221. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  5222. properties:
  5223. certSecretRef:
  5224. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  5225. properties:
  5226. key:
  5227. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  5228. type: string
  5229. name:
  5230. description: The name of the Secret resource being referred to.
  5231. type: string
  5232. namespace:
  5233. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  5234. type: string
  5235. type: object
  5236. type: object
  5237. required:
  5238. - auth
  5239. type: object
  5240. type: object
  5241. refreshInterval:
  5242. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  5243. type: integer
  5244. retrySettings:
  5245. description: Used to configure http retries if failed
  5246. properties:
  5247. maxRetries:
  5248. format: int32
  5249. type: integer
  5250. retryInterval:
  5251. type: string
  5252. type: object
  5253. required:
  5254. - provider
  5255. type: object
  5256. status:
  5257. description: SecretStoreStatus defines the observed state of the SecretStore.
  5258. properties:
  5259. conditions:
  5260. items:
  5261. properties:
  5262. lastTransitionTime:
  5263. format: date-time
  5264. type: string
  5265. message:
  5266. type: string
  5267. reason:
  5268. type: string
  5269. status:
  5270. type: string
  5271. type:
  5272. type: string
  5273. required:
  5274. - status
  5275. - type
  5276. type: object
  5277. type: array
  5278. type: object
  5279. type: object
  5280. served: true
  5281. storage: true
  5282. subresources:
  5283. status: {}
  5284. conversion:
  5285. strategy: Webhook
  5286. webhook:
  5287. conversionReviewVersions:
  5288. - v1
  5289. clientConfig:
  5290. service:
  5291. name: kubernetes
  5292. namespace: default
  5293. path: /convert