crds_test.yaml.snap 291 KB

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