bundle.yaml 322 KB

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