bundle.yaml 324 KB

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