bundle.yaml 326 KB

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