crds_test.yaml.snap 289 KB

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