crds_test.yaml.snap 275 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371
  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.15.0
  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. - externalsecrets
  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. region:
  1971. description: AWS Region to be used for the provider
  1972. type: string
  1973. role:
  1974. description: Role is a Role ARN which the provider will assume
  1975. type: string
  1976. secretsManager:
  1977. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  1978. properties:
  1979. forceDeleteWithoutRecovery:
  1980. description: |-
  1981. Specifies whether to delete the secret without any recovery window. You
  1982. can't use both this parameter and RecoveryWindowInDays in the same call.
  1983. If you don't use either, then by default Secrets Manager uses a 30 day
  1984. recovery window.
  1985. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  1986. type: boolean
  1987. recoveryWindowInDays:
  1988. description: |-
  1989. The number of days from 7 to 30 that Secrets Manager waits before
  1990. permanently deleting the secret. You can't use both this parameter and
  1991. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  1992. then by default Secrets Manager uses a 30 day recovery window.
  1993. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  1994. format: int64
  1995. type: integer
  1996. type: object
  1997. service:
  1998. description: Service defines which service should be used to fetch the secrets
  1999. enum:
  2000. - SecretsManager
  2001. - ParameterStore
  2002. type: string
  2003. sessionTags:
  2004. description: AWS STS assume role session tags
  2005. items:
  2006. properties:
  2007. key:
  2008. type: string
  2009. value:
  2010. type: string
  2011. required:
  2012. - key
  2013. - value
  2014. type: object
  2015. type: array
  2016. transitiveTagKeys:
  2017. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2018. items:
  2019. type: string
  2020. type: array
  2021. required:
  2022. - region
  2023. - service
  2024. type: object
  2025. azurekv:
  2026. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2027. properties:
  2028. authSecretRef:
  2029. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2030. properties:
  2031. clientCertificate:
  2032. description: The Azure ClientCertificate of the service principle used for authentication.
  2033. properties:
  2034. key:
  2035. description: |-
  2036. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2037. defaulted, in others it may be required.
  2038. type: string
  2039. name:
  2040. description: The name of the Secret resource being referred to.
  2041. type: string
  2042. namespace:
  2043. description: |-
  2044. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2045. to the namespace of the referent.
  2046. type: string
  2047. type: object
  2048. clientId:
  2049. description: The Azure clientId of the service principle or managed identity used for authentication.
  2050. properties:
  2051. key:
  2052. description: |-
  2053. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2054. defaulted, in others it may be required.
  2055. type: string
  2056. name:
  2057. description: The name of the Secret resource being referred to.
  2058. type: string
  2059. namespace:
  2060. description: |-
  2061. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2062. to the namespace of the referent.
  2063. type: string
  2064. type: object
  2065. clientSecret:
  2066. description: The Azure ClientSecret of the service principle used for authentication.
  2067. properties:
  2068. key:
  2069. description: |-
  2070. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2071. defaulted, in others it may be required.
  2072. type: string
  2073. name:
  2074. description: The name of the Secret resource being referred to.
  2075. type: string
  2076. namespace:
  2077. description: |-
  2078. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2079. to the namespace of the referent.
  2080. type: string
  2081. type: object
  2082. tenantId:
  2083. description: The Azure tenantId of the managed identity used for authentication.
  2084. properties:
  2085. key:
  2086. description: |-
  2087. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2088. defaulted, in others it may be required.
  2089. type: string
  2090. name:
  2091. description: The name of the Secret resource being referred to.
  2092. type: string
  2093. namespace:
  2094. description: |-
  2095. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2096. to the namespace of the referent.
  2097. type: string
  2098. type: object
  2099. type: object
  2100. authType:
  2101. default: ServicePrincipal
  2102. description: |-
  2103. Auth type defines how to authenticate to the keyvault service.
  2104. Valid values are:
  2105. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2106. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2107. enum:
  2108. - ServicePrincipal
  2109. - ManagedIdentity
  2110. - WorkloadIdentity
  2111. type: string
  2112. environmentType:
  2113. default: PublicCloud
  2114. description: |-
  2115. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2116. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2117. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2118. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  2119. enum:
  2120. - PublicCloud
  2121. - USGovernmentCloud
  2122. - ChinaCloud
  2123. - GermanCloud
  2124. type: string
  2125. identityId:
  2126. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2127. type: string
  2128. serviceAccountRef:
  2129. description: |-
  2130. ServiceAccountRef specified the service account
  2131. that should be used when authenticating with WorkloadIdentity.
  2132. properties:
  2133. audiences:
  2134. description: |-
  2135. Audience specifies the `aud` claim for the service account token
  2136. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2137. then this audiences will be appended to the list
  2138. items:
  2139. type: string
  2140. type: array
  2141. name:
  2142. description: The name of the ServiceAccount resource being referred to.
  2143. type: string
  2144. namespace:
  2145. description: |-
  2146. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2147. to the namespace of the referent.
  2148. type: string
  2149. required:
  2150. - name
  2151. type: object
  2152. tenantId:
  2153. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2154. type: string
  2155. vaultUrl:
  2156. description: Vault Url from which the secrets to be fetched from.
  2157. type: string
  2158. required:
  2159. - vaultUrl
  2160. type: object
  2161. bitwardensecretsmanager:
  2162. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  2163. properties:
  2164. apiURL:
  2165. type: string
  2166. auth:
  2167. description: |-
  2168. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  2169. Make sure that the token being used has permissions on the given secret.
  2170. properties:
  2171. secretRef:
  2172. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  2173. properties:
  2174. credentials:
  2175. description: AccessToken used for the bitwarden instance.
  2176. properties:
  2177. key:
  2178. description: |-
  2179. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2180. defaulted, in others it may be required.
  2181. type: string
  2182. name:
  2183. description: The name of the Secret resource being referred to.
  2184. type: string
  2185. namespace:
  2186. description: |-
  2187. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2188. to the namespace of the referent.
  2189. type: string
  2190. type: object
  2191. required:
  2192. - credentials
  2193. type: object
  2194. required:
  2195. - secretRef
  2196. type: object
  2197. bitwardenServerSDKURL:
  2198. type: string
  2199. caBundle:
  2200. description: |-
  2201. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  2202. can be performed.
  2203. type: string
  2204. identityURL:
  2205. type: string
  2206. organizationID:
  2207. description: OrganizationID determines which organization this secret store manages.
  2208. type: string
  2209. projectID:
  2210. description: ProjectID determines which project this secret store manages.
  2211. type: string
  2212. required:
  2213. - auth
  2214. - caBundle
  2215. - organizationID
  2216. - projectID
  2217. type: object
  2218. chef:
  2219. description: Chef configures this store to sync secrets with chef server
  2220. properties:
  2221. auth:
  2222. description: Auth defines the information necessary to authenticate against chef Server
  2223. properties:
  2224. secretRef:
  2225. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  2226. properties:
  2227. privateKeySecretRef:
  2228. description: SecretKey is the Signing Key in PEM format, used for authentication.
  2229. properties:
  2230. key:
  2231. description: |-
  2232. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2233. defaulted, in others it may be required.
  2234. type: string
  2235. name:
  2236. description: The name of the Secret resource being referred to.
  2237. type: string
  2238. namespace:
  2239. description: |-
  2240. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2241. to the namespace of the referent.
  2242. type: string
  2243. type: object
  2244. required:
  2245. - privateKeySecretRef
  2246. type: object
  2247. required:
  2248. - secretRef
  2249. type: object
  2250. serverUrl:
  2251. 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 "/"
  2252. type: string
  2253. username:
  2254. description: UserName should be the user ID on the chef server
  2255. type: string
  2256. required:
  2257. - auth
  2258. - serverUrl
  2259. - username
  2260. type: object
  2261. conjur:
  2262. description: Conjur configures this store to sync secrets using conjur provider
  2263. properties:
  2264. auth:
  2265. properties:
  2266. apikey:
  2267. properties:
  2268. account:
  2269. type: string
  2270. apiKeyRef:
  2271. description: |-
  2272. A reference to a specific 'key' within a Secret resource,
  2273. In some instances, `key` is a required field.
  2274. properties:
  2275. key:
  2276. description: |-
  2277. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2278. defaulted, in others it may be required.
  2279. type: string
  2280. name:
  2281. description: The name of the Secret resource being referred to.
  2282. type: string
  2283. namespace:
  2284. description: |-
  2285. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2286. to the namespace of the referent.
  2287. type: string
  2288. type: object
  2289. userRef:
  2290. description: |-
  2291. A reference to a specific 'key' within a Secret resource,
  2292. In some instances, `key` is a required field.
  2293. properties:
  2294. key:
  2295. description: |-
  2296. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2297. defaulted, in others it may be required.
  2298. type: string
  2299. name:
  2300. description: The name of the Secret resource being referred to.
  2301. type: string
  2302. namespace:
  2303. description: |-
  2304. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2305. to the namespace of the referent.
  2306. type: string
  2307. type: object
  2308. required:
  2309. - account
  2310. - apiKeyRef
  2311. - userRef
  2312. type: object
  2313. jwt:
  2314. properties:
  2315. account:
  2316. type: string
  2317. hostId:
  2318. description: |-
  2319. Optional HostID for JWT authentication. This may be used depending
  2320. on how the Conjur JWT authenticator policy is configured.
  2321. type: string
  2322. secretRef:
  2323. description: |-
  2324. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  2325. authenticate with Conjur using the JWT authentication method.
  2326. properties:
  2327. key:
  2328. description: |-
  2329. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2330. defaulted, in others it may be required.
  2331. type: string
  2332. name:
  2333. description: The name of the Secret resource being referred to.
  2334. type: string
  2335. namespace:
  2336. description: |-
  2337. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2338. to the namespace of the referent.
  2339. type: string
  2340. type: object
  2341. serviceAccountRef:
  2342. description: |-
  2343. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  2344. a token for with the `TokenRequest` API.
  2345. properties:
  2346. audiences:
  2347. description: |-
  2348. Audience specifies the `aud` claim for the service account token
  2349. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2350. then this audiences will be appended to the list
  2351. items:
  2352. type: string
  2353. type: array
  2354. name:
  2355. description: The name of the ServiceAccount resource being referred to.
  2356. type: string
  2357. namespace:
  2358. description: |-
  2359. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2360. to the namespace of the referent.
  2361. type: string
  2362. required:
  2363. - name
  2364. type: object
  2365. serviceID:
  2366. description: The conjur authn jwt webservice id
  2367. type: string
  2368. required:
  2369. - account
  2370. - serviceID
  2371. type: object
  2372. type: object
  2373. caBundle:
  2374. type: string
  2375. caProvider:
  2376. description: |-
  2377. Used to provide custom certificate authority (CA) certificates
  2378. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  2379. that contains a PEM-encoded certificate.
  2380. properties:
  2381. key:
  2382. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2383. type: string
  2384. name:
  2385. description: The name of the object located at the provider type.
  2386. type: string
  2387. namespace:
  2388. description: |-
  2389. The namespace the Provider type is in.
  2390. Can only be defined when used in a ClusterSecretStore.
  2391. type: string
  2392. type:
  2393. description: The type of provider to use such as "Secret", or "ConfigMap".
  2394. enum:
  2395. - Secret
  2396. - ConfigMap
  2397. type: string
  2398. required:
  2399. - name
  2400. - type
  2401. type: object
  2402. url:
  2403. type: string
  2404. required:
  2405. - auth
  2406. - url
  2407. type: object
  2408. delinea:
  2409. description: |-
  2410. Delinea DevOps Secrets Vault
  2411. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  2412. properties:
  2413. clientId:
  2414. description: ClientID is the non-secret part of the credential.
  2415. properties:
  2416. secretRef:
  2417. description: SecretRef references a key in a secret that will be used as value.
  2418. properties:
  2419. key:
  2420. description: |-
  2421. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2422. defaulted, in others it may be required.
  2423. type: string
  2424. name:
  2425. description: The name of the Secret resource being referred to.
  2426. type: string
  2427. namespace:
  2428. description: |-
  2429. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2430. to the namespace of the referent.
  2431. type: string
  2432. type: object
  2433. value:
  2434. description: Value can be specified directly to set a value without using a secret.
  2435. type: string
  2436. type: object
  2437. clientSecret:
  2438. description: ClientSecret is the secret part of the credential.
  2439. properties:
  2440. secretRef:
  2441. description: SecretRef references a key in a secret that will be used as value.
  2442. properties:
  2443. key:
  2444. description: |-
  2445. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2446. defaulted, in others it may be required.
  2447. type: string
  2448. name:
  2449. description: The name of the Secret resource being referred to.
  2450. type: string
  2451. namespace:
  2452. description: |-
  2453. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2454. to the namespace of the referent.
  2455. type: string
  2456. type: object
  2457. value:
  2458. description: Value can be specified directly to set a value without using a secret.
  2459. type: string
  2460. type: object
  2461. tenant:
  2462. description: Tenant is the chosen hostname / site name.
  2463. type: string
  2464. tld:
  2465. description: |-
  2466. TLD is based on the server location that was chosen during provisioning.
  2467. If unset, defaults to "com".
  2468. type: string
  2469. urlTemplate:
  2470. description: |-
  2471. URLTemplate
  2472. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  2473. type: string
  2474. required:
  2475. - clientId
  2476. - clientSecret
  2477. - tenant
  2478. type: object
  2479. device42:
  2480. description: Device42 configures this store to sync secrets using the Device42 provider
  2481. properties:
  2482. auth:
  2483. description: Auth configures how secret-manager authenticates with a Device42 instance.
  2484. properties:
  2485. secretRef:
  2486. properties:
  2487. credentials:
  2488. description: Username / Password is used for authentication.
  2489. properties:
  2490. key:
  2491. description: |-
  2492. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2493. defaulted, in others it may be required.
  2494. type: string
  2495. name:
  2496. description: The name of the Secret resource being referred to.
  2497. type: string
  2498. namespace:
  2499. description: |-
  2500. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2501. to the namespace of the referent.
  2502. type: string
  2503. type: object
  2504. type: object
  2505. required:
  2506. - secretRef
  2507. type: object
  2508. host:
  2509. description: URL configures the Device42 instance URL.
  2510. type: string
  2511. required:
  2512. - auth
  2513. - host
  2514. type: object
  2515. doppler:
  2516. description: Doppler configures this store to sync secrets using the Doppler provider
  2517. properties:
  2518. auth:
  2519. description: Auth configures how the Operator authenticates with the Doppler API
  2520. properties:
  2521. secretRef:
  2522. properties:
  2523. dopplerToken:
  2524. description: |-
  2525. The DopplerToken is used for authentication.
  2526. See https://docs.doppler.com/reference/api#authentication for auth token types.
  2527. The Key attribute defaults to dopplerToken if not specified.
  2528. properties:
  2529. key:
  2530. description: |-
  2531. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2532. defaulted, in others it may be required.
  2533. type: string
  2534. name:
  2535. description: The name of the Secret resource being referred to.
  2536. type: string
  2537. namespace:
  2538. description: |-
  2539. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2540. to the namespace of the referent.
  2541. type: string
  2542. type: object
  2543. required:
  2544. - dopplerToken
  2545. type: object
  2546. required:
  2547. - secretRef
  2548. type: object
  2549. config:
  2550. description: Doppler config (required if not using a Service Token)
  2551. type: string
  2552. format:
  2553. description: Format enables the downloading of secrets as a file (string)
  2554. enum:
  2555. - json
  2556. - dotnet-json
  2557. - env
  2558. - yaml
  2559. - docker
  2560. type: string
  2561. nameTransformer:
  2562. description: Environment variable compatible name transforms that change secret names to a different format
  2563. enum:
  2564. - upper-camel
  2565. - camel
  2566. - lower-snake
  2567. - tf-var
  2568. - dotnet-env
  2569. - lower-kebab
  2570. type: string
  2571. project:
  2572. description: Doppler project (required if not using a Service Token)
  2573. type: string
  2574. required:
  2575. - auth
  2576. type: object
  2577. fake:
  2578. description: Fake configures a store with static key/value pairs
  2579. properties:
  2580. data:
  2581. items:
  2582. properties:
  2583. key:
  2584. type: string
  2585. value:
  2586. type: string
  2587. valueMap:
  2588. additionalProperties:
  2589. type: string
  2590. description: 'Deprecated: ValueMap is deprecated and is intended to be removed in the future, use the `value` field instead.'
  2591. type: object
  2592. version:
  2593. type: string
  2594. required:
  2595. - key
  2596. type: object
  2597. type: array
  2598. required:
  2599. - data
  2600. type: object
  2601. fortanix:
  2602. description: Fortanix configures this store to sync secrets using the Fortanix provider
  2603. properties:
  2604. apiKey:
  2605. description: APIKey is the API token to access SDKMS Applications.
  2606. properties:
  2607. secretRef:
  2608. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  2609. properties:
  2610. key:
  2611. description: |-
  2612. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2613. defaulted, in others it may be required.
  2614. type: string
  2615. name:
  2616. description: The name of the Secret resource being referred to.
  2617. type: string
  2618. namespace:
  2619. description: |-
  2620. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2621. to the namespace of the referent.
  2622. type: string
  2623. type: object
  2624. type: object
  2625. apiUrl:
  2626. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  2627. type: string
  2628. type: object
  2629. gcpsm:
  2630. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  2631. properties:
  2632. auth:
  2633. description: Auth defines the information necessary to authenticate against GCP
  2634. properties:
  2635. secretRef:
  2636. properties:
  2637. secretAccessKeySecretRef:
  2638. description: The SecretAccessKey is used for authentication
  2639. properties:
  2640. key:
  2641. description: |-
  2642. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2643. defaulted, in others it may be required.
  2644. type: string
  2645. name:
  2646. description: The name of the Secret resource being referred to.
  2647. type: string
  2648. namespace:
  2649. description: |-
  2650. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2651. to the namespace of the referent.
  2652. type: string
  2653. type: object
  2654. type: object
  2655. workloadIdentity:
  2656. properties:
  2657. clusterLocation:
  2658. type: string
  2659. clusterName:
  2660. type: string
  2661. clusterProjectID:
  2662. type: string
  2663. serviceAccountRef:
  2664. description: A reference to a ServiceAccount resource.
  2665. properties:
  2666. audiences:
  2667. description: |-
  2668. Audience specifies the `aud` claim for the service account token
  2669. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2670. then this audiences will be appended to the list
  2671. items:
  2672. type: string
  2673. type: array
  2674. name:
  2675. description: The name of the ServiceAccount resource being referred to.
  2676. type: string
  2677. namespace:
  2678. description: |-
  2679. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2680. to the namespace of the referent.
  2681. type: string
  2682. required:
  2683. - name
  2684. type: object
  2685. required:
  2686. - clusterLocation
  2687. - clusterName
  2688. - serviceAccountRef
  2689. type: object
  2690. type: object
  2691. location:
  2692. description: Location optionally defines a location for a secret
  2693. type: string
  2694. projectID:
  2695. description: ProjectID project where secret is located
  2696. type: string
  2697. type: object
  2698. gitlab:
  2699. description: GitLab configures this store to sync secrets using GitLab Variables provider
  2700. properties:
  2701. auth:
  2702. description: Auth configures how secret-manager authenticates with a GitLab instance.
  2703. properties:
  2704. SecretRef:
  2705. properties:
  2706. accessToken:
  2707. description: AccessToken is used for authentication.
  2708. properties:
  2709. key:
  2710. description: |-
  2711. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2712. defaulted, in others it may be required.
  2713. type: string
  2714. name:
  2715. description: The name of the Secret resource being referred to.
  2716. type: string
  2717. namespace:
  2718. description: |-
  2719. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2720. to the namespace of the referent.
  2721. type: string
  2722. type: object
  2723. type: object
  2724. required:
  2725. - SecretRef
  2726. type: object
  2727. environment:
  2728. 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)
  2729. type: string
  2730. groupIDs:
  2731. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  2732. items:
  2733. type: string
  2734. type: array
  2735. inheritFromGroups:
  2736. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  2737. type: boolean
  2738. projectID:
  2739. description: ProjectID specifies a project where secrets are located.
  2740. type: string
  2741. url:
  2742. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  2743. type: string
  2744. required:
  2745. - auth
  2746. type: object
  2747. ibm:
  2748. description: IBM configures this store to sync secrets using IBM Cloud provider
  2749. properties:
  2750. auth:
  2751. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  2752. maxProperties: 1
  2753. minProperties: 1
  2754. properties:
  2755. containerAuth:
  2756. description: IBM Container-based auth with IAM Trusted Profile.
  2757. properties:
  2758. iamEndpoint:
  2759. type: string
  2760. profile:
  2761. description: the IBM Trusted Profile
  2762. type: string
  2763. tokenLocation:
  2764. description: Location the token is mounted on the pod
  2765. type: string
  2766. required:
  2767. - profile
  2768. type: object
  2769. secretRef:
  2770. properties:
  2771. secretApiKeySecretRef:
  2772. description: The SecretAccessKey is used for authentication
  2773. properties:
  2774. key:
  2775. description: |-
  2776. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2777. defaulted, in others it may be required.
  2778. type: string
  2779. name:
  2780. description: The name of the Secret resource being referred to.
  2781. type: string
  2782. namespace:
  2783. description: |-
  2784. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2785. to the namespace of the referent.
  2786. type: string
  2787. type: object
  2788. type: object
  2789. type: object
  2790. serviceUrl:
  2791. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  2792. type: string
  2793. required:
  2794. - auth
  2795. type: object
  2796. infisical:
  2797. description: Infisical configures this store to sync secrets using the Infisical provider
  2798. properties:
  2799. auth:
  2800. description: Auth configures how the Operator authenticates with the Infisical API
  2801. properties:
  2802. universalAuthCredentials:
  2803. properties:
  2804. clientId:
  2805. description: |-
  2806. A reference to a specific 'key' within a Secret resource,
  2807. In some instances, `key` is a required field.
  2808. properties:
  2809. key:
  2810. description: |-
  2811. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2812. defaulted, in others it may be required.
  2813. type: string
  2814. name:
  2815. description: The name of the Secret resource being referred to.
  2816. type: string
  2817. namespace:
  2818. description: |-
  2819. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2820. to the namespace of the referent.
  2821. type: string
  2822. type: object
  2823. clientSecret:
  2824. description: |-
  2825. A reference to a specific 'key' within a Secret resource,
  2826. In some instances, `key` is a required field.
  2827. properties:
  2828. key:
  2829. description: |-
  2830. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2831. defaulted, in others it may be required.
  2832. type: string
  2833. name:
  2834. description: The name of the Secret resource being referred to.
  2835. type: string
  2836. namespace:
  2837. description: |-
  2838. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2839. to the namespace of the referent.
  2840. type: string
  2841. type: object
  2842. required:
  2843. - clientId
  2844. - clientSecret
  2845. type: object
  2846. type: object
  2847. hostAPI:
  2848. default: https://app.infisical.com/api
  2849. type: string
  2850. secretsScope:
  2851. properties:
  2852. environmentSlug:
  2853. type: string
  2854. projectSlug:
  2855. type: string
  2856. secretsPath:
  2857. default: /
  2858. type: string
  2859. required:
  2860. - environmentSlug
  2861. - projectSlug
  2862. type: object
  2863. required:
  2864. - auth
  2865. - secretsScope
  2866. type: object
  2867. keepersecurity:
  2868. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  2869. properties:
  2870. authRef:
  2871. description: |-
  2872. A reference to a specific 'key' within a Secret resource,
  2873. In some instances, `key` is a required field.
  2874. properties:
  2875. key:
  2876. description: |-
  2877. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2878. defaulted, in others it may be required.
  2879. type: string
  2880. name:
  2881. description: The name of the Secret resource being referred to.
  2882. type: string
  2883. namespace:
  2884. description: |-
  2885. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2886. to the namespace of the referent.
  2887. type: string
  2888. type: object
  2889. folderID:
  2890. type: string
  2891. required:
  2892. - authRef
  2893. - folderID
  2894. type: object
  2895. kubernetes:
  2896. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  2897. properties:
  2898. auth:
  2899. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  2900. maxProperties: 1
  2901. minProperties: 1
  2902. properties:
  2903. cert:
  2904. description: has both clientCert and clientKey as secretKeySelector
  2905. properties:
  2906. clientCert:
  2907. description: |-
  2908. A reference to a specific 'key' within a Secret resource,
  2909. In some instances, `key` is a required field.
  2910. properties:
  2911. key:
  2912. description: |-
  2913. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2914. defaulted, in others it may be required.
  2915. type: string
  2916. name:
  2917. description: The name of the Secret resource being referred to.
  2918. type: string
  2919. namespace:
  2920. description: |-
  2921. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2922. to the namespace of the referent.
  2923. type: string
  2924. type: object
  2925. clientKey:
  2926. description: |-
  2927. A reference to a specific 'key' within a Secret resource,
  2928. In some instances, `key` is a required field.
  2929. properties:
  2930. key:
  2931. description: |-
  2932. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2933. defaulted, in others it may be required.
  2934. type: string
  2935. name:
  2936. description: The name of the Secret resource being referred to.
  2937. type: string
  2938. namespace:
  2939. description: |-
  2940. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2941. to the namespace of the referent.
  2942. type: string
  2943. type: object
  2944. type: object
  2945. serviceAccount:
  2946. description: points to a service account that should be used for authentication
  2947. properties:
  2948. audiences:
  2949. description: |-
  2950. Audience specifies the `aud` claim for the service account token
  2951. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2952. then this audiences will be appended to the list
  2953. items:
  2954. type: string
  2955. type: array
  2956. name:
  2957. description: The name of the ServiceAccount resource being referred to.
  2958. type: string
  2959. namespace:
  2960. description: |-
  2961. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2962. to the namespace of the referent.
  2963. type: string
  2964. required:
  2965. - name
  2966. type: object
  2967. token:
  2968. description: use static token to authenticate with
  2969. properties:
  2970. bearerToken:
  2971. description: |-
  2972. A reference to a specific 'key' within a Secret resource,
  2973. In some instances, `key` is a required field.
  2974. properties:
  2975. key:
  2976. description: |-
  2977. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2978. defaulted, in others it may be required.
  2979. type: string
  2980. name:
  2981. description: The name of the Secret resource being referred to.
  2982. type: string
  2983. namespace:
  2984. description: |-
  2985. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2986. to the namespace of the referent.
  2987. type: string
  2988. type: object
  2989. type: object
  2990. type: object
  2991. authRef:
  2992. description: A reference to a secret that contains the auth information.
  2993. properties:
  2994. key:
  2995. description: |-
  2996. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2997. defaulted, in others it may be required.
  2998. type: string
  2999. name:
  3000. description: The name of the Secret resource being referred to.
  3001. type: string
  3002. namespace:
  3003. description: |-
  3004. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3005. to the namespace of the referent.
  3006. type: string
  3007. type: object
  3008. remoteNamespace:
  3009. default: default
  3010. description: Remote namespace to fetch the secrets from
  3011. type: string
  3012. server:
  3013. description: configures the Kubernetes server Address.
  3014. properties:
  3015. caBundle:
  3016. description: CABundle is a base64-encoded CA certificate
  3017. format: byte
  3018. type: string
  3019. caProvider:
  3020. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  3021. properties:
  3022. key:
  3023. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3024. type: string
  3025. name:
  3026. description: The name of the object located at the provider type.
  3027. type: string
  3028. namespace:
  3029. description: |-
  3030. The namespace the Provider type is in.
  3031. Can only be defined when used in a ClusterSecretStore.
  3032. type: string
  3033. type:
  3034. description: The type of provider to use such as "Secret", or "ConfigMap".
  3035. enum:
  3036. - Secret
  3037. - ConfigMap
  3038. type: string
  3039. required:
  3040. - name
  3041. - type
  3042. type: object
  3043. url:
  3044. default: kubernetes.default
  3045. description: configures the Kubernetes server Address.
  3046. type: string
  3047. type: object
  3048. type: object
  3049. onboardbase:
  3050. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  3051. properties:
  3052. apiHost:
  3053. default: https://public.onboardbase.com/api/v1/
  3054. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  3055. type: string
  3056. auth:
  3057. description: Auth configures how the Operator authenticates with the Onboardbase API
  3058. properties:
  3059. apiKeyRef:
  3060. description: |-
  3061. OnboardbaseAPIKey is the APIKey generated by an admin account.
  3062. It is used to recognize and authorize access to a project and environment within onboardbase
  3063. properties:
  3064. key:
  3065. description: |-
  3066. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3067. defaulted, in others it may be required.
  3068. type: string
  3069. name:
  3070. description: The name of the Secret resource being referred to.
  3071. type: string
  3072. namespace:
  3073. description: |-
  3074. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3075. to the namespace of the referent.
  3076. type: string
  3077. type: object
  3078. passcodeRef:
  3079. description: OnboardbasePasscode is the passcode attached to the API Key
  3080. properties:
  3081. key:
  3082. description: |-
  3083. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3084. defaulted, in others it may be required.
  3085. type: string
  3086. name:
  3087. description: The name of the Secret resource being referred to.
  3088. type: string
  3089. namespace:
  3090. description: |-
  3091. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3092. to the namespace of the referent.
  3093. type: string
  3094. type: object
  3095. required:
  3096. - apiKeyRef
  3097. - passcodeRef
  3098. type: object
  3099. environment:
  3100. default: development
  3101. description: Environment is the name of an environmnent within a project to pull the secrets from
  3102. type: string
  3103. project:
  3104. default: development
  3105. description: Project is an onboardbase project that the secrets should be pulled from
  3106. type: string
  3107. required:
  3108. - apiHost
  3109. - auth
  3110. - environment
  3111. - project
  3112. type: object
  3113. onepassword:
  3114. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  3115. properties:
  3116. auth:
  3117. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  3118. properties:
  3119. secretRef:
  3120. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  3121. properties:
  3122. connectTokenSecretRef:
  3123. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  3124. properties:
  3125. key:
  3126. description: |-
  3127. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3128. defaulted, in others it may be required.
  3129. type: string
  3130. name:
  3131. description: The name of the Secret resource being referred to.
  3132. type: string
  3133. namespace:
  3134. description: |-
  3135. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3136. to the namespace of the referent.
  3137. type: string
  3138. type: object
  3139. required:
  3140. - connectTokenSecretRef
  3141. type: object
  3142. required:
  3143. - secretRef
  3144. type: object
  3145. connectHost:
  3146. description: ConnectHost defines the OnePassword Connect Server to connect to
  3147. type: string
  3148. vaults:
  3149. additionalProperties:
  3150. type: integer
  3151. description: Vaults defines which OnePassword vaults to search in which order
  3152. type: object
  3153. required:
  3154. - auth
  3155. - connectHost
  3156. - vaults
  3157. type: object
  3158. oracle:
  3159. description: Oracle configures this store to sync secrets using Oracle Vault provider
  3160. properties:
  3161. auth:
  3162. description: |-
  3163. Auth configures how secret-manager authenticates with the Oracle Vault.
  3164. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  3165. properties:
  3166. secretRef:
  3167. description: SecretRef to pass through sensitive information.
  3168. properties:
  3169. fingerprint:
  3170. description: Fingerprint is the fingerprint of the API private key.
  3171. properties:
  3172. key:
  3173. description: |-
  3174. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3175. defaulted, in others it may be required.
  3176. type: string
  3177. name:
  3178. description: The name of the Secret resource being referred to.
  3179. type: string
  3180. namespace:
  3181. description: |-
  3182. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3183. to the namespace of the referent.
  3184. type: string
  3185. type: object
  3186. privatekey:
  3187. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  3188. properties:
  3189. key:
  3190. description: |-
  3191. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3192. defaulted, in others it may be required.
  3193. type: string
  3194. name:
  3195. description: The name of the Secret resource being referred to.
  3196. type: string
  3197. namespace:
  3198. description: |-
  3199. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3200. to the namespace of the referent.
  3201. type: string
  3202. type: object
  3203. required:
  3204. - fingerprint
  3205. - privatekey
  3206. type: object
  3207. tenancy:
  3208. description: Tenancy is the tenancy OCID where user is located.
  3209. type: string
  3210. user:
  3211. description: User is an access OCID specific to the account.
  3212. type: string
  3213. required:
  3214. - secretRef
  3215. - tenancy
  3216. - user
  3217. type: object
  3218. compartment:
  3219. description: |-
  3220. Compartment is the vault compartment OCID.
  3221. Required for PushSecret
  3222. type: string
  3223. encryptionKey:
  3224. description: |-
  3225. EncryptionKey is the OCID of the encryption key within the vault.
  3226. Required for PushSecret
  3227. type: string
  3228. principalType:
  3229. description: |-
  3230. The type of principal to use for authentication. If left blank, the Auth struct will
  3231. determine the principal type. This optional field must be specified if using
  3232. workload identity.
  3233. enum:
  3234. - ""
  3235. - UserPrincipal
  3236. - InstancePrincipal
  3237. - Workload
  3238. type: string
  3239. region:
  3240. description: Region is the region where vault is located.
  3241. type: string
  3242. serviceAccountRef:
  3243. description: |-
  3244. ServiceAccountRef specified the service account
  3245. that should be used when authenticating with WorkloadIdentity.
  3246. properties:
  3247. audiences:
  3248. description: |-
  3249. Audience specifies the `aud` claim for the service account token
  3250. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3251. then this audiences will be appended to the list
  3252. items:
  3253. type: string
  3254. type: array
  3255. name:
  3256. description: The name of the ServiceAccount resource being referred to.
  3257. type: string
  3258. namespace:
  3259. description: |-
  3260. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3261. to the namespace of the referent.
  3262. type: string
  3263. required:
  3264. - name
  3265. type: object
  3266. vault:
  3267. description: Vault is the vault's OCID of the specific vault where secret is located.
  3268. type: string
  3269. required:
  3270. - region
  3271. - vault
  3272. type: object
  3273. passbolt:
  3274. properties:
  3275. auth:
  3276. description: Auth defines the information necessary to authenticate against Passbolt Server
  3277. properties:
  3278. passwordSecretRef:
  3279. description: |-
  3280. A reference to a specific 'key' within a Secret resource,
  3281. In some instances, `key` is a required field.
  3282. properties:
  3283. key:
  3284. description: |-
  3285. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3286. defaulted, in others it may be required.
  3287. type: string
  3288. name:
  3289. description: The name of the Secret resource being referred to.
  3290. type: string
  3291. namespace:
  3292. description: |-
  3293. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3294. to the namespace of the referent.
  3295. type: string
  3296. type: object
  3297. privateKeySecretRef:
  3298. description: |-
  3299. A reference to a specific 'key' within a Secret resource,
  3300. In some instances, `key` is a required field.
  3301. properties:
  3302. key:
  3303. description: |-
  3304. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3305. defaulted, in others it may be required.
  3306. type: string
  3307. name:
  3308. description: The name of the Secret resource being referred to.
  3309. type: string
  3310. namespace:
  3311. description: |-
  3312. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3313. to the namespace of the referent.
  3314. type: string
  3315. type: object
  3316. required:
  3317. - passwordSecretRef
  3318. - privateKeySecretRef
  3319. type: object
  3320. host:
  3321. description: Host defines the Passbolt Server to connect to
  3322. type: string
  3323. required:
  3324. - auth
  3325. - host
  3326. type: object
  3327. passworddepot:
  3328. description: Configures a store to sync secrets with a Password Depot instance.
  3329. properties:
  3330. auth:
  3331. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  3332. properties:
  3333. secretRef:
  3334. properties:
  3335. credentials:
  3336. description: Username / Password is used for authentication.
  3337. properties:
  3338. key:
  3339. description: |-
  3340. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3341. defaulted, in others it may be required.
  3342. type: string
  3343. name:
  3344. description: The name of the Secret resource being referred to.
  3345. type: string
  3346. namespace:
  3347. description: |-
  3348. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3349. to the namespace of the referent.
  3350. type: string
  3351. type: object
  3352. type: object
  3353. required:
  3354. - secretRef
  3355. type: object
  3356. database:
  3357. description: Database to use as source
  3358. type: string
  3359. host:
  3360. description: URL configures the Password Depot instance URL.
  3361. type: string
  3362. required:
  3363. - auth
  3364. - database
  3365. - host
  3366. type: object
  3367. pulumi:
  3368. description: Pulumi configures this store to sync secrets using the Pulumi provider
  3369. properties:
  3370. accessToken:
  3371. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  3372. properties:
  3373. secretRef:
  3374. description: SecretRef is a reference to a secret containing the Pulumi API token.
  3375. properties:
  3376. key:
  3377. description: |-
  3378. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3379. defaulted, in others it may be required.
  3380. type: string
  3381. name:
  3382. description: The name of the Secret resource being referred to.
  3383. type: string
  3384. namespace:
  3385. description: |-
  3386. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3387. to the namespace of the referent.
  3388. type: string
  3389. type: object
  3390. type: object
  3391. apiUrl:
  3392. default: https://api.pulumi.com
  3393. description: APIURL is the URL of the Pulumi API.
  3394. type: string
  3395. environment:
  3396. description: |-
  3397. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  3398. dynamically retrieved values from supported providers including all major clouds,
  3399. and other Pulumi ESC environments.
  3400. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  3401. type: string
  3402. organization:
  3403. description: |-
  3404. Organization are a space to collaborate on shared projects and stacks.
  3405. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  3406. type: string
  3407. required:
  3408. - accessToken
  3409. - environment
  3410. - organization
  3411. type: object
  3412. scaleway:
  3413. description: Scaleway
  3414. properties:
  3415. accessKey:
  3416. description: AccessKey is the non-secret part of the api key.
  3417. properties:
  3418. secretRef:
  3419. description: SecretRef references a key in a secret that will be used as value.
  3420. properties:
  3421. key:
  3422. description: |-
  3423. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3424. defaulted, in others it may be required.
  3425. type: string
  3426. name:
  3427. description: The name of the Secret resource being referred to.
  3428. type: string
  3429. namespace:
  3430. description: |-
  3431. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3432. to the namespace of the referent.
  3433. type: string
  3434. type: object
  3435. value:
  3436. description: Value can be specified directly to set a value without using a secret.
  3437. type: string
  3438. type: object
  3439. apiUrl:
  3440. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  3441. type: string
  3442. projectId:
  3443. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  3444. type: string
  3445. region:
  3446. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  3447. type: string
  3448. secretKey:
  3449. description: SecretKey is the non-secret part of the api key.
  3450. properties:
  3451. secretRef:
  3452. description: SecretRef references a key in a secret that will be used as value.
  3453. properties:
  3454. key:
  3455. description: |-
  3456. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3457. defaulted, in others it may be required.
  3458. type: string
  3459. name:
  3460. description: The name of the Secret resource being referred to.
  3461. type: string
  3462. namespace:
  3463. description: |-
  3464. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3465. to the namespace of the referent.
  3466. type: string
  3467. type: object
  3468. value:
  3469. description: Value can be specified directly to set a value without using a secret.
  3470. type: string
  3471. type: object
  3472. required:
  3473. - accessKey
  3474. - projectId
  3475. - region
  3476. - secretKey
  3477. type: object
  3478. senhasegura:
  3479. description: Senhasegura configures this store to sync secrets using senhasegura provider
  3480. properties:
  3481. auth:
  3482. description: Auth defines parameters to authenticate in senhasegura
  3483. properties:
  3484. clientId:
  3485. type: string
  3486. clientSecretSecretRef:
  3487. description: |-
  3488. A reference to a specific 'key' within a Secret resource,
  3489. In some instances, `key` is a required field.
  3490. properties:
  3491. key:
  3492. description: |-
  3493. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3494. defaulted, in others it may be required.
  3495. type: string
  3496. name:
  3497. description: The name of the Secret resource being referred to.
  3498. type: string
  3499. namespace:
  3500. description: |-
  3501. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3502. to the namespace of the referent.
  3503. type: string
  3504. type: object
  3505. required:
  3506. - clientId
  3507. - clientSecretSecretRef
  3508. type: object
  3509. ignoreSslCertificate:
  3510. default: false
  3511. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  3512. type: boolean
  3513. module:
  3514. description: Module defines which senhasegura module should be used to get secrets
  3515. type: string
  3516. url:
  3517. description: URL of senhasegura
  3518. type: string
  3519. required:
  3520. - auth
  3521. - module
  3522. - url
  3523. type: object
  3524. vault:
  3525. description: Vault configures this store to sync secrets using Hashi provider
  3526. properties:
  3527. auth:
  3528. description: Auth configures how secret-manager authenticates with the Vault server.
  3529. properties:
  3530. appRole:
  3531. description: |-
  3532. AppRole authenticates with Vault using the App Role auth mechanism,
  3533. with the role and secret stored in a Kubernetes Secret resource.
  3534. properties:
  3535. path:
  3536. default: approle
  3537. description: |-
  3538. Path where the App Role authentication backend is mounted
  3539. in Vault, e.g: "approle"
  3540. type: string
  3541. roleId:
  3542. description: |-
  3543. RoleID configured in the App Role authentication backend when setting
  3544. up the authentication backend in Vault.
  3545. type: string
  3546. roleRef:
  3547. description: |-
  3548. Reference to a key in a Secret that contains the App Role ID used
  3549. to authenticate with Vault.
  3550. The `key` field must be specified and denotes which entry within the Secret
  3551. resource is used as the app role id.
  3552. properties:
  3553. key:
  3554. description: |-
  3555. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3556. defaulted, in others it may be required.
  3557. type: string
  3558. name:
  3559. description: The name of the Secret resource being referred to.
  3560. type: string
  3561. namespace:
  3562. description: |-
  3563. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3564. to the namespace of the referent.
  3565. type: string
  3566. type: object
  3567. secretRef:
  3568. description: |-
  3569. Reference to a key in a Secret that contains the App Role secret used
  3570. to authenticate with Vault.
  3571. The `key` field must be specified and denotes which entry within the Secret
  3572. resource is used as the app role secret.
  3573. properties:
  3574. key:
  3575. description: |-
  3576. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3577. defaulted, in others it may be required.
  3578. type: string
  3579. name:
  3580. description: The name of the Secret resource being referred to.
  3581. type: string
  3582. namespace:
  3583. description: |-
  3584. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3585. to the namespace of the referent.
  3586. type: string
  3587. type: object
  3588. required:
  3589. - path
  3590. - secretRef
  3591. type: object
  3592. cert:
  3593. description: |-
  3594. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  3595. Cert authentication method
  3596. properties:
  3597. clientCert:
  3598. description: |-
  3599. ClientCert is a certificate to authenticate using the Cert Vault
  3600. authentication method
  3601. properties:
  3602. key:
  3603. description: |-
  3604. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3605. defaulted, in others it may be required.
  3606. type: string
  3607. name:
  3608. description: The name of the Secret resource being referred to.
  3609. type: string
  3610. namespace:
  3611. description: |-
  3612. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3613. to the namespace of the referent.
  3614. type: string
  3615. type: object
  3616. secretRef:
  3617. description: |-
  3618. SecretRef to a key in a Secret resource containing client private key to
  3619. authenticate with Vault using the Cert authentication method
  3620. properties:
  3621. key:
  3622. description: |-
  3623. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3624. defaulted, in others it may be required.
  3625. type: string
  3626. name:
  3627. description: The name of the Secret resource being referred to.
  3628. type: string
  3629. namespace:
  3630. description: |-
  3631. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3632. to the namespace of the referent.
  3633. type: string
  3634. type: object
  3635. type: object
  3636. iam:
  3637. description: |-
  3638. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  3639. AWS IAM authentication method
  3640. properties:
  3641. externalID:
  3642. description: AWS External ID set on assumed IAM roles
  3643. type: string
  3644. jwt:
  3645. description: Specify a service account with IRSA enabled
  3646. properties:
  3647. serviceAccountRef:
  3648. description: A reference to a ServiceAccount resource.
  3649. properties:
  3650. audiences:
  3651. description: |-
  3652. Audience specifies the `aud` claim for the service account token
  3653. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3654. then this audiences will be appended to the list
  3655. items:
  3656. type: string
  3657. type: array
  3658. name:
  3659. description: The name of the ServiceAccount resource being referred to.
  3660. type: string
  3661. namespace:
  3662. description: |-
  3663. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3664. to the namespace of the referent.
  3665. type: string
  3666. required:
  3667. - name
  3668. type: object
  3669. type: object
  3670. path:
  3671. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  3672. type: string
  3673. region:
  3674. description: AWS region
  3675. type: string
  3676. role:
  3677. description: This is the AWS role to be assumed before talking to vault
  3678. type: string
  3679. secretRef:
  3680. description: Specify credentials in a Secret object
  3681. properties:
  3682. accessKeyIDSecretRef:
  3683. description: The AccessKeyID is used for authentication
  3684. properties:
  3685. key:
  3686. description: |-
  3687. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3688. defaulted, in others it may be required.
  3689. type: string
  3690. name:
  3691. description: The name of the Secret resource being referred to.
  3692. type: string
  3693. namespace:
  3694. description: |-
  3695. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3696. to the namespace of the referent.
  3697. type: string
  3698. type: object
  3699. secretAccessKeySecretRef:
  3700. description: The SecretAccessKey is used for authentication
  3701. properties:
  3702. key:
  3703. description: |-
  3704. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3705. defaulted, in others it may be required.
  3706. type: string
  3707. name:
  3708. description: The name of the Secret resource being referred to.
  3709. type: string
  3710. namespace:
  3711. description: |-
  3712. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3713. to the namespace of the referent.
  3714. type: string
  3715. type: object
  3716. sessionTokenSecretRef:
  3717. description: |-
  3718. The SessionToken used for authentication
  3719. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  3720. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  3721. properties:
  3722. key:
  3723. description: |-
  3724. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3725. defaulted, in others it may be required.
  3726. type: string
  3727. name:
  3728. description: The name of the Secret resource being referred to.
  3729. type: string
  3730. namespace:
  3731. description: |-
  3732. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3733. to the namespace of the referent.
  3734. type: string
  3735. type: object
  3736. type: object
  3737. vaultAwsIamServerID:
  3738. 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'
  3739. type: string
  3740. vaultRole:
  3741. 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
  3742. type: string
  3743. required:
  3744. - vaultRole
  3745. type: object
  3746. jwt:
  3747. description: |-
  3748. Jwt authenticates with Vault by passing role and JWT token using the
  3749. JWT/OIDC authentication method
  3750. properties:
  3751. kubernetesServiceAccountToken:
  3752. description: |-
  3753. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  3754. a token for with the `TokenRequest` API.
  3755. properties:
  3756. audiences:
  3757. description: |-
  3758. Optional audiences field that will be used to request a temporary Kubernetes service
  3759. account token for the service account referenced by `serviceAccountRef`.
  3760. Defaults to a single audience `vault` it not specified.
  3761. Deprecated: use serviceAccountRef.Audiences instead
  3762. items:
  3763. type: string
  3764. type: array
  3765. expirationSeconds:
  3766. description: |-
  3767. Optional expiration time in seconds that will be used to request a temporary
  3768. Kubernetes service account token for the service account referenced by
  3769. `serviceAccountRef`.
  3770. Deprecated: this will be removed in the future.
  3771. Defaults to 10 minutes.
  3772. format: int64
  3773. type: integer
  3774. serviceAccountRef:
  3775. description: Service account field containing the name of a kubernetes ServiceAccount.
  3776. properties:
  3777. audiences:
  3778. description: |-
  3779. Audience specifies the `aud` claim for the service account token
  3780. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3781. then this audiences will be appended to the list
  3782. items:
  3783. type: string
  3784. type: array
  3785. name:
  3786. description: The name of the ServiceAccount resource being referred to.
  3787. type: string
  3788. namespace:
  3789. description: |-
  3790. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3791. to the namespace of the referent.
  3792. type: string
  3793. required:
  3794. - name
  3795. type: object
  3796. required:
  3797. - serviceAccountRef
  3798. type: object
  3799. path:
  3800. default: jwt
  3801. description: |-
  3802. Path where the JWT authentication backend is mounted
  3803. in Vault, e.g: "jwt"
  3804. type: string
  3805. role:
  3806. description: |-
  3807. Role is a JWT role to authenticate using the JWT/OIDC Vault
  3808. authentication method
  3809. type: string
  3810. secretRef:
  3811. description: |-
  3812. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3813. authenticate with Vault using the JWT/OIDC authentication method.
  3814. properties:
  3815. key:
  3816. description: |-
  3817. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3818. defaulted, in others it may be required.
  3819. type: string
  3820. name:
  3821. description: The name of the Secret resource being referred to.
  3822. type: string
  3823. namespace:
  3824. description: |-
  3825. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3826. to the namespace of the referent.
  3827. type: string
  3828. type: object
  3829. required:
  3830. - path
  3831. type: object
  3832. kubernetes:
  3833. description: |-
  3834. Kubernetes authenticates with Vault by passing the ServiceAccount
  3835. token stored in the named Secret resource to the Vault server.
  3836. properties:
  3837. mountPath:
  3838. default: kubernetes
  3839. description: |-
  3840. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  3841. "kubernetes"
  3842. type: string
  3843. role:
  3844. description: |-
  3845. A required field containing the Vault Role to assume. A Role binds a
  3846. Kubernetes ServiceAccount with a set of Vault policies.
  3847. type: string
  3848. secretRef:
  3849. description: |-
  3850. Optional secret field containing a Kubernetes ServiceAccount JWT used
  3851. for authenticating with Vault. If a name is specified without a key,
  3852. `token` is the default. If one is not specified, the one bound to
  3853. the controller will be used.
  3854. properties:
  3855. key:
  3856. description: |-
  3857. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3858. defaulted, in others it may be required.
  3859. type: string
  3860. name:
  3861. description: The name of the Secret resource being referred to.
  3862. type: string
  3863. namespace:
  3864. description: |-
  3865. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3866. to the namespace of the referent.
  3867. type: string
  3868. type: object
  3869. serviceAccountRef:
  3870. description: |-
  3871. Optional service account field containing the name of a kubernetes ServiceAccount.
  3872. If the service account is specified, the service account secret token JWT will be used
  3873. for authenticating with Vault. If the service account selector is not supplied,
  3874. the secretRef will be used instead.
  3875. properties:
  3876. audiences:
  3877. description: |-
  3878. Audience specifies the `aud` claim for the service account token
  3879. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3880. then this audiences will be appended to the list
  3881. items:
  3882. type: string
  3883. type: array
  3884. name:
  3885. description: The name of the ServiceAccount resource being referred to.
  3886. type: string
  3887. namespace:
  3888. description: |-
  3889. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3890. to the namespace of the referent.
  3891. type: string
  3892. required:
  3893. - name
  3894. type: object
  3895. required:
  3896. - mountPath
  3897. - role
  3898. type: object
  3899. ldap:
  3900. description: |-
  3901. Ldap authenticates with Vault by passing username/password pair using
  3902. the LDAP authentication method
  3903. properties:
  3904. path:
  3905. default: ldap
  3906. description: |-
  3907. Path where the LDAP authentication backend is mounted
  3908. in Vault, e.g: "ldap"
  3909. type: string
  3910. secretRef:
  3911. description: |-
  3912. SecretRef to a key in a Secret resource containing password for the LDAP
  3913. user used to authenticate with Vault using the LDAP authentication
  3914. method
  3915. properties:
  3916. key:
  3917. description: |-
  3918. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3919. defaulted, in others it may be required.
  3920. type: string
  3921. name:
  3922. description: The name of the Secret resource being referred to.
  3923. type: string
  3924. namespace:
  3925. description: |-
  3926. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3927. to the namespace of the referent.
  3928. type: string
  3929. type: object
  3930. username:
  3931. description: |-
  3932. Username is a LDAP user name used to authenticate using the LDAP Vault
  3933. authentication method
  3934. type: string
  3935. required:
  3936. - path
  3937. - username
  3938. type: object
  3939. namespace:
  3940. description: |-
  3941. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  3942. Namespaces is a set of features within Vault Enterprise that allows
  3943. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  3944. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  3945. This will default to Vault.Namespace field if set, or empty otherwise
  3946. type: string
  3947. tokenSecretRef:
  3948. description: TokenSecretRef authenticates with Vault by presenting a token.
  3949. properties:
  3950. key:
  3951. description: |-
  3952. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3953. defaulted, in others it may be required.
  3954. type: string
  3955. name:
  3956. description: The name of the Secret resource being referred to.
  3957. type: string
  3958. namespace:
  3959. description: |-
  3960. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3961. to the namespace of the referent.
  3962. type: string
  3963. type: object
  3964. userPass:
  3965. description: UserPass authenticates with Vault by passing username/password pair
  3966. properties:
  3967. path:
  3968. default: user
  3969. description: |-
  3970. Path where the UserPassword authentication backend is mounted
  3971. in Vault, e.g: "user"
  3972. type: string
  3973. secretRef:
  3974. description: |-
  3975. SecretRef to a key in a Secret resource containing password for the
  3976. user used to authenticate with Vault using the UserPass authentication
  3977. method
  3978. properties:
  3979. key:
  3980. description: |-
  3981. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3982. defaulted, in others it may be required.
  3983. type: string
  3984. name:
  3985. description: The name of the Secret resource being referred to.
  3986. type: string
  3987. namespace:
  3988. description: |-
  3989. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3990. to the namespace of the referent.
  3991. type: string
  3992. type: object
  3993. username:
  3994. description: |-
  3995. Username is a user name used to authenticate using the UserPass Vault
  3996. authentication method
  3997. type: string
  3998. required:
  3999. - path
  4000. - username
  4001. type: object
  4002. type: object
  4003. caBundle:
  4004. description: |-
  4005. PEM encoded CA bundle used to validate Vault server certificate. Only used
  4006. if the Server URL is using HTTPS protocol. This parameter is ignored for
  4007. plain HTTP protocol connection. If not set the system root certificates
  4008. are used to validate the TLS connection.
  4009. format: byte
  4010. type: string
  4011. caProvider:
  4012. description: The provider for the CA bundle to use to validate Vault server certificate.
  4013. properties:
  4014. key:
  4015. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4016. type: string
  4017. name:
  4018. description: The name of the object located at the provider type.
  4019. type: string
  4020. namespace:
  4021. description: |-
  4022. The namespace the Provider type is in.
  4023. Can only be defined when used in a ClusterSecretStore.
  4024. type: string
  4025. type:
  4026. description: The type of provider to use such as "Secret", or "ConfigMap".
  4027. enum:
  4028. - Secret
  4029. - ConfigMap
  4030. type: string
  4031. required:
  4032. - name
  4033. - type
  4034. type: object
  4035. forwardInconsistent:
  4036. description: |-
  4037. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  4038. leader instead of simply retrying within a loop. This can increase performance if
  4039. the option is enabled serverside.
  4040. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  4041. type: boolean
  4042. namespace:
  4043. description: |-
  4044. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  4045. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  4046. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  4047. type: string
  4048. path:
  4049. description: |-
  4050. Path is the mount path of the Vault KV backend endpoint, e.g:
  4051. "secret". The v2 KV secret engine version specific "/data" path suffix
  4052. for fetching secrets from Vault is optional and will be appended
  4053. if not present in specified path.
  4054. type: string
  4055. readYourWrites:
  4056. description: |-
  4057. ReadYourWrites ensures isolated read-after-write semantics by
  4058. providing discovered cluster replication states in each request.
  4059. More information about eventual consistency in Vault can be found here
  4060. https://www.vaultproject.io/docs/enterprise/consistency
  4061. type: boolean
  4062. server:
  4063. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  4064. type: string
  4065. tls:
  4066. description: |-
  4067. The configuration used for client side related TLS communication, when the Vault server
  4068. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  4069. This parameter is ignored for plain HTTP protocol connection.
  4070. It's worth noting this configuration is different from the "TLS certificates auth method",
  4071. which is available under the `auth.cert` section.
  4072. properties:
  4073. certSecretRef:
  4074. description: |-
  4075. CertSecretRef is a certificate added to the transport layer
  4076. when communicating with the Vault server.
  4077. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  4078. properties:
  4079. key:
  4080. description: |-
  4081. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4082. defaulted, in others it may be required.
  4083. type: string
  4084. name:
  4085. description: The name of the Secret resource being referred to.
  4086. type: string
  4087. namespace:
  4088. description: |-
  4089. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4090. to the namespace of the referent.
  4091. type: string
  4092. type: object
  4093. keySecretRef:
  4094. description: |-
  4095. KeySecretRef to a key in a Secret resource containing client private key
  4096. added to the transport layer when communicating with the Vault server.
  4097. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  4098. properties:
  4099. key:
  4100. description: |-
  4101. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4102. defaulted, in others it may be required.
  4103. type: string
  4104. name:
  4105. description: The name of the Secret resource being referred to.
  4106. type: string
  4107. namespace:
  4108. description: |-
  4109. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4110. to the namespace of the referent.
  4111. type: string
  4112. type: object
  4113. type: object
  4114. version:
  4115. default: v2
  4116. description: |-
  4117. Version is the Vault KV secret engine version. This can be either "v1" or
  4118. "v2". Version defaults to "v2".
  4119. enum:
  4120. - v1
  4121. - v2
  4122. type: string
  4123. required:
  4124. - auth
  4125. - server
  4126. type: object
  4127. webhook:
  4128. description: Webhook configures this store to sync secrets using a generic templated webhook
  4129. properties:
  4130. body:
  4131. description: Body
  4132. type: string
  4133. caBundle:
  4134. description: |-
  4135. PEM encoded CA bundle used to validate webhook server certificate. Only used
  4136. if the Server URL is using HTTPS protocol. This parameter is ignored for
  4137. plain HTTP protocol connection. If not set the system root certificates
  4138. are used to validate the TLS connection.
  4139. format: byte
  4140. type: string
  4141. caProvider:
  4142. description: The provider for the CA bundle to use to validate webhook server certificate.
  4143. properties:
  4144. key:
  4145. description: The key the value inside of the provider type to use, only used with "Secret" type
  4146. type: string
  4147. name:
  4148. description: The name of the object located at the provider type.
  4149. type: string
  4150. namespace:
  4151. description: The namespace the Provider type is in.
  4152. type: string
  4153. type:
  4154. description: The type of provider to use such as "Secret", or "ConfigMap".
  4155. enum:
  4156. - Secret
  4157. - ConfigMap
  4158. type: string
  4159. required:
  4160. - name
  4161. - type
  4162. type: object
  4163. headers:
  4164. additionalProperties:
  4165. type: string
  4166. description: Headers
  4167. type: object
  4168. method:
  4169. description: Webhook Method
  4170. type: string
  4171. result:
  4172. description: Result formatting
  4173. properties:
  4174. jsonPath:
  4175. description: Json path of return value
  4176. type: string
  4177. type: object
  4178. secrets:
  4179. description: |-
  4180. Secrets to fill in templates
  4181. These secrets will be passed to the templating function as key value pairs under the given name
  4182. items:
  4183. properties:
  4184. name:
  4185. description: Name of this secret in templates
  4186. type: string
  4187. secretRef:
  4188. description: Secret ref to fill in credentials
  4189. properties:
  4190. key:
  4191. description: |-
  4192. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4193. defaulted, in others it may be required.
  4194. type: string
  4195. name:
  4196. description: The name of the Secret resource being referred to.
  4197. type: string
  4198. namespace:
  4199. description: |-
  4200. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4201. to the namespace of the referent.
  4202. type: string
  4203. type: object
  4204. required:
  4205. - name
  4206. - secretRef
  4207. type: object
  4208. type: array
  4209. timeout:
  4210. description: Timeout
  4211. type: string
  4212. url:
  4213. description: Webhook url to call
  4214. type: string
  4215. required:
  4216. - result
  4217. - url
  4218. type: object
  4219. yandexcertificatemanager:
  4220. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  4221. properties:
  4222. apiEndpoint:
  4223. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4224. type: string
  4225. auth:
  4226. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  4227. properties:
  4228. authorizedKeySecretRef:
  4229. description: The authorized key used for authentication
  4230. properties:
  4231. key:
  4232. description: |-
  4233. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4234. defaulted, in others it may be required.
  4235. type: string
  4236. name:
  4237. description: The name of the Secret resource being referred to.
  4238. type: string
  4239. namespace:
  4240. description: |-
  4241. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4242. to the namespace of the referent.
  4243. type: string
  4244. type: object
  4245. type: object
  4246. caProvider:
  4247. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4248. properties:
  4249. certSecretRef:
  4250. description: |-
  4251. A reference to a specific 'key' within a Secret resource,
  4252. In some instances, `key` is a required field.
  4253. properties:
  4254. key:
  4255. description: |-
  4256. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4257. defaulted, in others it may be required.
  4258. type: string
  4259. name:
  4260. description: The name of the Secret resource being referred to.
  4261. type: string
  4262. namespace:
  4263. description: |-
  4264. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4265. to the namespace of the referent.
  4266. type: string
  4267. type: object
  4268. type: object
  4269. required:
  4270. - auth
  4271. type: object
  4272. yandexlockbox:
  4273. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  4274. properties:
  4275. apiEndpoint:
  4276. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4277. type: string
  4278. auth:
  4279. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  4280. properties:
  4281. authorizedKeySecretRef:
  4282. description: The authorized key used for authentication
  4283. properties:
  4284. key:
  4285. description: |-
  4286. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4287. defaulted, in others it may be required.
  4288. type: string
  4289. name:
  4290. description: The name of the Secret resource being referred to.
  4291. type: string
  4292. namespace:
  4293. description: |-
  4294. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4295. to the namespace of the referent.
  4296. type: string
  4297. type: object
  4298. type: object
  4299. caProvider:
  4300. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4301. properties:
  4302. certSecretRef:
  4303. description: |-
  4304. A reference to a specific 'key' within a Secret resource,
  4305. In some instances, `key` is a required field.
  4306. properties:
  4307. key:
  4308. description: |-
  4309. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4310. defaulted, in others it may be required.
  4311. type: string
  4312. name:
  4313. description: The name of the Secret resource being referred to.
  4314. type: string
  4315. namespace:
  4316. description: |-
  4317. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4318. to the namespace of the referent.
  4319. type: string
  4320. type: object
  4321. type: object
  4322. required:
  4323. - auth
  4324. type: object
  4325. type: object
  4326. refreshInterval:
  4327. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  4328. type: integer
  4329. retrySettings:
  4330. description: Used to configure http retries if failed
  4331. properties:
  4332. maxRetries:
  4333. format: int32
  4334. type: integer
  4335. retryInterval:
  4336. type: string
  4337. type: object
  4338. required:
  4339. - provider
  4340. type: object
  4341. status:
  4342. description: SecretStoreStatus defines the observed state of the SecretStore.
  4343. properties:
  4344. capabilities:
  4345. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  4346. type: string
  4347. conditions:
  4348. items:
  4349. properties:
  4350. lastTransitionTime:
  4351. format: date-time
  4352. type: string
  4353. message:
  4354. type: string
  4355. reason:
  4356. type: string
  4357. status:
  4358. type: string
  4359. type:
  4360. type: string
  4361. required:
  4362. - status
  4363. - type
  4364. type: object
  4365. type: array
  4366. type: object
  4367. type: object
  4368. served: true
  4369. storage: true
  4370. subresources:
  4371. status: {}