external-secrets.io_clustersecretstores.yaml 272 KB

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