external-secrets.io_secretstores.yaml 190 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.11.1
  6. creationTimestamp: null
  7. name: secretstores.external-secrets.io
  8. spec:
  9. group: external-secrets.io
  10. names:
  11. categories:
  12. - externalsecrets
  13. kind: SecretStore
  14. listKind: SecretStoreList
  15. plural: secretstores
  16. shortNames:
  17. - ss
  18. singular: secretstore
  19. scope: Namespaced
  20. versions:
  21. - additionalPrinterColumns:
  22. - jsonPath: .metadata.creationTimestamp
  23. name: AGE
  24. type: date
  25. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  26. name: Status
  27. type: string
  28. deprecated: true
  29. name: v1alpha1
  30. schema:
  31. openAPIV3Schema:
  32. description: SecretStore represents a secure external location for storing
  33. secrets, which can be referenced as part of `storeRef` fields.
  34. properties:
  35. apiVersion:
  36. description: 'APIVersion defines the versioned schema of this representation
  37. of an object. Servers should convert recognized schemas to the latest
  38. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  39. type: string
  40. kind:
  41. description: 'Kind is a string value representing the REST resource this
  42. object represents. Servers may infer this from the endpoint the client
  43. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  44. type: string
  45. metadata:
  46. type: object
  47. spec:
  48. description: SecretStoreSpec defines the desired state of SecretStore.
  49. properties:
  50. controller:
  51. description: 'Used to select the correct KES controller (think: ingress.ingressClassName)
  52. The KES controller is instantiated with a specific controller name
  53. and filters ES based on this property'
  54. type: string
  55. provider:
  56. description: Used to configure the provider. Only one provider may
  57. be set
  58. maxProperties: 1
  59. minProperties: 1
  60. properties:
  61. akeyless:
  62. description: Akeyless configures this store to sync secrets using
  63. Akeyless Vault provider
  64. properties:
  65. akeylessGWApiURL:
  66. description: Akeyless GW API Url from which the secrets to
  67. be fetched from.
  68. type: string
  69. authSecretRef:
  70. description: Auth configures how the operator authenticates
  71. with Akeyless.
  72. properties:
  73. kubernetesAuth:
  74. description: Kubernetes authenticates with Akeyless by
  75. passing the ServiceAccount token stored in the named
  76. Secret resource.
  77. properties:
  78. accessID:
  79. description: the Akeyless Kubernetes auth-method access-id
  80. type: string
  81. k8sConfName:
  82. description: Kubernetes-auth configuration name in
  83. Akeyless-Gateway
  84. type: string
  85. secretRef:
  86. description: Optional secret field containing a Kubernetes
  87. ServiceAccount JWT used for authenticating with
  88. Akeyless. If a name is specified without a key,
  89. `token` is the default. If one is not specified,
  90. the one bound to the controller will be used.
  91. properties:
  92. key:
  93. description: The key of the entry in the Secret
  94. resource's `data` field to be used. Some instances
  95. of this field may be defaulted, in others it
  96. may be required.
  97. type: string
  98. name:
  99. description: The name of the Secret resource being
  100. referred to.
  101. type: string
  102. namespace:
  103. description: Namespace of the resource being referred
  104. to. Ignored if referent is not cluster-scoped.
  105. cluster-scoped defaults to the namespace of
  106. the referent.
  107. type: string
  108. type: object
  109. serviceAccountRef:
  110. description: Optional service account field containing
  111. the name of a kubernetes ServiceAccount. If the
  112. service account is specified, the service account
  113. secret token JWT will be used for authenticating
  114. with Akeyless. If the service account selector is
  115. not supplied, the secretRef will be used instead.
  116. properties:
  117. audiences:
  118. description: Audience specifies the `aud` claim
  119. for the service account token If the service
  120. account uses a well-known annotation for e.g.
  121. IRSA or GCP Workload Identity then this audiences
  122. will be appended to the list
  123. items:
  124. type: string
  125. type: array
  126. name:
  127. description: The name of the ServiceAccount resource
  128. being referred to.
  129. type: string
  130. namespace:
  131. description: Namespace of the resource being referred
  132. to. Ignored if referent is not cluster-scoped.
  133. cluster-scoped defaults to the namespace of
  134. the referent.
  135. type: string
  136. required:
  137. - name
  138. type: object
  139. required:
  140. - accessID
  141. - k8sConfName
  142. type: object
  143. secretRef:
  144. description: Reference to a Secret that contains the details
  145. to authenticate with Akeyless.
  146. properties:
  147. accessID:
  148. description: The SecretAccessID is used for authentication
  149. properties:
  150. key:
  151. description: The key of the entry in the Secret
  152. resource's `data` field to be used. Some instances
  153. of this field may be defaulted, in others it
  154. may be required.
  155. type: string
  156. name:
  157. description: The name of the Secret resource being
  158. referred to.
  159. type: string
  160. namespace:
  161. description: Namespace of the resource being referred
  162. to. Ignored if referent is not cluster-scoped.
  163. cluster-scoped defaults to the namespace of
  164. the referent.
  165. type: string
  166. type: object
  167. accessType:
  168. description: A reference to a specific 'key' within
  169. a Secret resource, In some instances, `key` is a
  170. required field.
  171. properties:
  172. key:
  173. description: The key of the entry in the Secret
  174. resource's `data` field to be used. Some instances
  175. of this field may be defaulted, in others it
  176. may be required.
  177. type: string
  178. name:
  179. description: The name of the Secret resource being
  180. referred to.
  181. type: string
  182. namespace:
  183. description: Namespace of the resource being referred
  184. to. Ignored if referent is not cluster-scoped.
  185. cluster-scoped defaults to the namespace of
  186. the referent.
  187. type: string
  188. type: object
  189. accessTypeParam:
  190. description: A reference to a specific 'key' within
  191. a Secret resource, In some instances, `key` is a
  192. required field.
  193. properties:
  194. key:
  195. description: The key of the entry in the Secret
  196. resource's `data` field to be used. Some instances
  197. of this field may be defaulted, in others it
  198. may be required.
  199. type: string
  200. name:
  201. description: The name of the Secret resource being
  202. referred to.
  203. type: string
  204. namespace:
  205. description: Namespace of the resource being referred
  206. to. Ignored if referent is not cluster-scoped.
  207. cluster-scoped defaults to the namespace of
  208. the referent.
  209. type: string
  210. type: object
  211. type: object
  212. type: object
  213. required:
  214. - akeylessGWApiURL
  215. - authSecretRef
  216. type: object
  217. alibaba:
  218. description: Alibaba configures this store to sync secrets using
  219. Alibaba Cloud provider
  220. properties:
  221. auth:
  222. description: AlibabaAuth contains a secretRef for credentials.
  223. properties:
  224. secretRef:
  225. description: AlibabaAuthSecretRef holds secret references
  226. for Alibaba credentials.
  227. properties:
  228. accessKeyIDSecretRef:
  229. description: The AccessKeyID is used for authentication
  230. properties:
  231. key:
  232. description: The key of the entry in the Secret
  233. resource's `data` field to be used. Some instances
  234. of this field may be defaulted, in others it
  235. may be required.
  236. type: string
  237. name:
  238. description: The name of the Secret resource being
  239. referred to.
  240. type: string
  241. namespace:
  242. description: Namespace of the resource being referred
  243. to. Ignored if referent is not cluster-scoped.
  244. cluster-scoped defaults to the namespace of
  245. the referent.
  246. type: string
  247. type: object
  248. accessKeySecretSecretRef:
  249. description: The AccessKeySecret is used for authentication
  250. properties:
  251. key:
  252. description: The key of the entry in the Secret
  253. resource's `data` field to be used. Some instances
  254. of this field may be defaulted, in others it
  255. may be required.
  256. type: string
  257. name:
  258. description: The name of the Secret resource being
  259. referred to.
  260. type: string
  261. namespace:
  262. description: Namespace of the resource being referred
  263. to. Ignored if referent is not cluster-scoped.
  264. cluster-scoped defaults to the namespace of
  265. the referent.
  266. type: string
  267. type: object
  268. required:
  269. - accessKeyIDSecretRef
  270. - accessKeySecretSecretRef
  271. type: object
  272. required:
  273. - secretRef
  274. type: object
  275. endpoint:
  276. type: string
  277. regionID:
  278. description: Alibaba Region to be used for the provider
  279. type: string
  280. required:
  281. - auth
  282. - regionID
  283. type: object
  284. aws:
  285. description: AWS configures this store to sync secrets using AWS
  286. Secret Manager provider
  287. properties:
  288. auth:
  289. description: 'Auth defines the information necessary to authenticate
  290. against AWS if not set aws sdk will infer credentials from
  291. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  292. properties:
  293. jwt:
  294. description: Authenticate against AWS using service account
  295. tokens.
  296. properties:
  297. serviceAccountRef:
  298. description: A reference to a ServiceAccount resource.
  299. properties:
  300. audiences:
  301. description: Audience specifies the `aud` claim
  302. for the service account token If the service
  303. account uses a well-known annotation for e.g.
  304. IRSA or GCP Workload Identity then this audiences
  305. will be appended to the list
  306. items:
  307. type: string
  308. type: array
  309. name:
  310. description: The name of the ServiceAccount resource
  311. being referred to.
  312. type: string
  313. namespace:
  314. description: Namespace of the resource being referred
  315. to. Ignored if referent is not cluster-scoped.
  316. cluster-scoped defaults to the namespace of
  317. the referent.
  318. type: string
  319. required:
  320. - name
  321. type: object
  322. type: object
  323. secretRef:
  324. description: AWSAuthSecretRef holds secret references
  325. for AWS credentials both AccessKeyID and SecretAccessKey
  326. must be defined in order to properly authenticate.
  327. properties:
  328. accessKeyIDSecretRef:
  329. description: The AccessKeyID is used for authentication
  330. properties:
  331. key:
  332. description: The key of the entry in the Secret
  333. resource's `data` field to be used. Some instances
  334. of this field may be defaulted, in others it
  335. may be required.
  336. type: string
  337. name:
  338. description: The name of the Secret resource being
  339. referred to.
  340. type: string
  341. namespace:
  342. description: Namespace of the resource being referred
  343. to. Ignored if referent is not cluster-scoped.
  344. cluster-scoped defaults to the namespace of
  345. the referent.
  346. type: string
  347. type: object
  348. secretAccessKeySecretRef:
  349. description: The SecretAccessKey is used for authentication
  350. properties:
  351. key:
  352. description: The key of the entry in the Secret
  353. resource's `data` field to be used. Some instances
  354. of this field may be defaulted, in others it
  355. may be required.
  356. type: string
  357. name:
  358. description: The name of the Secret resource being
  359. referred to.
  360. type: string
  361. namespace:
  362. description: Namespace of the resource being referred
  363. to. Ignored if referent is not cluster-scoped.
  364. cluster-scoped defaults to the namespace of
  365. the referent.
  366. type: string
  367. type: object
  368. type: object
  369. type: object
  370. region:
  371. description: AWS Region to be used for the provider
  372. type: string
  373. role:
  374. description: Role is a Role ARN which the SecretManager provider
  375. will assume
  376. type: string
  377. service:
  378. description: Service defines which service should be used
  379. to fetch the secrets
  380. enum:
  381. - SecretsManager
  382. - ParameterStore
  383. type: string
  384. required:
  385. - region
  386. - service
  387. type: object
  388. azurekv:
  389. description: AzureKV configures this store to sync secrets using
  390. Azure Key Vault provider
  391. properties:
  392. authSecretRef:
  393. description: Auth configures how the operator authenticates
  394. with Azure. Required for ServicePrincipal auth type.
  395. properties:
  396. clientId:
  397. description: The Azure clientId of the service principle
  398. used for authentication.
  399. properties:
  400. key:
  401. description: The key of the entry in the Secret resource's
  402. `data` field to be used. Some instances of this
  403. field may be defaulted, in others it may be required.
  404. type: string
  405. name:
  406. description: The name of the Secret resource being
  407. referred to.
  408. type: string
  409. namespace:
  410. description: Namespace of the resource being referred
  411. to. Ignored if referent is not cluster-scoped. cluster-scoped
  412. defaults to the namespace of the referent.
  413. type: string
  414. type: object
  415. clientSecret:
  416. description: The Azure ClientSecret of the service principle
  417. used for authentication.
  418. properties:
  419. key:
  420. description: The key of the entry in the Secret resource's
  421. `data` field to be used. Some instances of this
  422. field may be defaulted, in others it may be required.
  423. type: string
  424. name:
  425. description: The name of the Secret resource being
  426. referred to.
  427. type: string
  428. namespace:
  429. description: Namespace of the resource being referred
  430. to. Ignored if referent is not cluster-scoped. cluster-scoped
  431. defaults to the namespace of the referent.
  432. type: string
  433. type: object
  434. type: object
  435. authType:
  436. default: ServicePrincipal
  437. description: 'Auth type defines how to authenticate to the
  438. keyvault service. Valid values are: - "ServicePrincipal"
  439. (default): Using a service principal (tenantId, clientId,
  440. clientSecret) - "ManagedIdentity": Using Managed Identity
  441. assigned to the pod (see aad-pod-identity)'
  442. enum:
  443. - ServicePrincipal
  444. - ManagedIdentity
  445. - WorkloadIdentity
  446. type: string
  447. identityId:
  448. description: If multiple Managed Identity is assigned to the
  449. pod, you can select the one to be used
  450. type: string
  451. serviceAccountRef:
  452. description: ServiceAccountRef specified the service account
  453. that should be used when authenticating with WorkloadIdentity.
  454. properties:
  455. audiences:
  456. description: Audience specifies the `aud` claim for the
  457. service account token If the service account uses a
  458. well-known annotation for e.g. IRSA or GCP Workload
  459. Identity then this audiences will be appended to the
  460. list
  461. items:
  462. type: string
  463. type: array
  464. name:
  465. description: The name of the ServiceAccount resource being
  466. referred to.
  467. type: string
  468. namespace:
  469. description: Namespace of the resource being referred
  470. to. Ignored if referent is not cluster-scoped. cluster-scoped
  471. defaults to the namespace of the referent.
  472. type: string
  473. required:
  474. - name
  475. type: object
  476. tenantId:
  477. description: TenantID configures the Azure Tenant to send
  478. requests to. Required for ServicePrincipal auth type.
  479. type: string
  480. vaultUrl:
  481. description: Vault Url from which the secrets to be fetched
  482. from.
  483. type: string
  484. required:
  485. - vaultUrl
  486. type: object
  487. fake:
  488. description: Fake configures a store with static key/value pairs
  489. properties:
  490. data:
  491. items:
  492. properties:
  493. key:
  494. type: string
  495. value:
  496. type: string
  497. valueMap:
  498. additionalProperties:
  499. type: string
  500. type: object
  501. version:
  502. type: string
  503. required:
  504. - key
  505. type: object
  506. type: array
  507. required:
  508. - data
  509. type: object
  510. gcpsm:
  511. description: GCPSM configures this store to sync secrets using
  512. Google Cloud Platform Secret Manager provider
  513. properties:
  514. auth:
  515. description: Auth defines the information necessary to authenticate
  516. against GCP
  517. properties:
  518. secretRef:
  519. properties:
  520. secretAccessKeySecretRef:
  521. description: The SecretAccessKey is used for authentication
  522. properties:
  523. key:
  524. description: The key of the entry in the Secret
  525. resource's `data` field to be used. Some instances
  526. of this field may be defaulted, in others it
  527. may be required.
  528. type: string
  529. name:
  530. description: The name of the Secret resource being
  531. referred to.
  532. type: string
  533. namespace:
  534. description: Namespace of the resource being referred
  535. to. Ignored if referent is not cluster-scoped.
  536. cluster-scoped defaults to the namespace of
  537. the referent.
  538. type: string
  539. type: object
  540. type: object
  541. workloadIdentity:
  542. properties:
  543. clusterLocation:
  544. type: string
  545. clusterName:
  546. type: string
  547. clusterProjectID:
  548. type: string
  549. serviceAccountRef:
  550. description: A reference to a ServiceAccount resource.
  551. properties:
  552. audiences:
  553. description: Audience specifies the `aud` claim
  554. for the service account token If the service
  555. account uses a well-known annotation for e.g.
  556. IRSA or GCP Workload Identity then this audiences
  557. will be appended to the list
  558. items:
  559. type: string
  560. type: array
  561. name:
  562. description: The name of the ServiceAccount resource
  563. being referred to.
  564. type: string
  565. namespace:
  566. description: Namespace of the resource being referred
  567. to. Ignored if referent is not cluster-scoped.
  568. cluster-scoped defaults to the namespace of
  569. the referent.
  570. type: string
  571. required:
  572. - name
  573. type: object
  574. required:
  575. - clusterLocation
  576. - clusterName
  577. - serviceAccountRef
  578. type: object
  579. type: object
  580. projectID:
  581. description: ProjectID project where secret is located
  582. type: string
  583. type: object
  584. gitlab:
  585. description: Gitlab configures this store to sync secrets using
  586. Gitlab Variables provider
  587. properties:
  588. auth:
  589. description: Auth configures how secret-manager authenticates
  590. with a GitLab instance.
  591. properties:
  592. SecretRef:
  593. properties:
  594. accessToken:
  595. description: AccessToken is used for authentication.
  596. properties:
  597. key:
  598. description: The key of the entry in the Secret
  599. resource's `data` field to be used. Some instances
  600. of this field may be defaulted, in others it
  601. may be required.
  602. type: string
  603. name:
  604. description: The name of the Secret resource being
  605. referred to.
  606. type: string
  607. namespace:
  608. description: Namespace of the resource being referred
  609. to. Ignored if referent is not cluster-scoped.
  610. cluster-scoped defaults to the namespace of
  611. the referent.
  612. type: string
  613. type: object
  614. type: object
  615. required:
  616. - SecretRef
  617. type: object
  618. projectID:
  619. description: ProjectID specifies a project where secrets are
  620. located.
  621. type: string
  622. url:
  623. description: URL configures the GitLab instance URL. Defaults
  624. to https://gitlab.com/.
  625. type: string
  626. required:
  627. - auth
  628. type: object
  629. ibm:
  630. description: IBM configures this store to sync secrets using IBM
  631. Cloud provider
  632. properties:
  633. auth:
  634. description: Auth configures how secret-manager authenticates
  635. with the IBM secrets manager.
  636. properties:
  637. secretRef:
  638. properties:
  639. secretApiKeySecretRef:
  640. description: The SecretAccessKey is used for authentication
  641. properties:
  642. key:
  643. description: The key of the entry in the Secret
  644. resource's `data` field to be used. Some instances
  645. of this field may be defaulted, in others it
  646. may be required.
  647. type: string
  648. name:
  649. description: The name of the Secret resource being
  650. referred to.
  651. type: string
  652. namespace:
  653. description: Namespace of the resource being referred
  654. to. Ignored if referent is not cluster-scoped.
  655. cluster-scoped defaults to the namespace of
  656. the referent.
  657. type: string
  658. type: object
  659. type: object
  660. required:
  661. - secretRef
  662. type: object
  663. serviceUrl:
  664. description: ServiceURL is the Endpoint URL that is specific
  665. to the Secrets Manager service instance
  666. type: string
  667. required:
  668. - auth
  669. type: object
  670. kubernetes:
  671. description: Kubernetes configures this store to sync secrets
  672. using a Kubernetes cluster provider
  673. properties:
  674. auth:
  675. description: Auth configures how secret-manager authenticates
  676. with a Kubernetes instance.
  677. maxProperties: 1
  678. minProperties: 1
  679. properties:
  680. cert:
  681. description: has both clientCert and clientKey as secretKeySelector
  682. properties:
  683. clientCert:
  684. description: A reference to a specific 'key' within
  685. a Secret resource, In some instances, `key` is a
  686. required field.
  687. properties:
  688. key:
  689. description: The key of the entry in the Secret
  690. resource's `data` field to be used. Some instances
  691. of this field may be defaulted, in others it
  692. may be required.
  693. type: string
  694. name:
  695. description: The name of the Secret resource being
  696. referred to.
  697. type: string
  698. namespace:
  699. description: Namespace of the resource being referred
  700. to. Ignored if referent is not cluster-scoped.
  701. cluster-scoped defaults to the namespace of
  702. the referent.
  703. type: string
  704. type: object
  705. clientKey:
  706. description: A reference to a specific 'key' within
  707. a Secret resource, In some instances, `key` is a
  708. required field.
  709. properties:
  710. key:
  711. description: The key of the entry in the Secret
  712. resource's `data` field to be used. Some instances
  713. of this field may be defaulted, in others it
  714. may be required.
  715. type: string
  716. name:
  717. description: The name of the Secret resource being
  718. referred to.
  719. type: string
  720. namespace:
  721. description: Namespace of the resource being referred
  722. to. Ignored if referent is not cluster-scoped.
  723. cluster-scoped defaults to the namespace of
  724. the referent.
  725. type: string
  726. type: object
  727. type: object
  728. serviceAccount:
  729. description: points to a service account that should be
  730. used for authentication
  731. properties:
  732. serviceAccount:
  733. description: A reference to a ServiceAccount resource.
  734. properties:
  735. audiences:
  736. description: Audience specifies the `aud` claim
  737. for the service account token If the service
  738. account uses a well-known annotation for e.g.
  739. IRSA or GCP Workload Identity then this audiences
  740. will be appended to the list
  741. items:
  742. type: string
  743. type: array
  744. name:
  745. description: The name of the ServiceAccount resource
  746. being referred to.
  747. type: string
  748. namespace:
  749. description: Namespace of the resource being referred
  750. to. Ignored if referent is not cluster-scoped.
  751. cluster-scoped defaults to the namespace of
  752. the referent.
  753. type: string
  754. required:
  755. - name
  756. type: object
  757. type: object
  758. token:
  759. description: use static token to authenticate with
  760. properties:
  761. bearerToken:
  762. description: A reference to a specific 'key' within
  763. a Secret resource, In some instances, `key` is a
  764. required field.
  765. properties:
  766. key:
  767. description: The key of the entry in the Secret
  768. resource's `data` field to be used. Some instances
  769. of this field may be defaulted, in others it
  770. may be required.
  771. type: string
  772. name:
  773. description: The name of the Secret resource being
  774. referred to.
  775. type: string
  776. namespace:
  777. description: Namespace of the resource being referred
  778. to. Ignored if referent is not cluster-scoped.
  779. cluster-scoped defaults to the namespace of
  780. the referent.
  781. type: string
  782. type: object
  783. type: object
  784. type: object
  785. remoteNamespace:
  786. default: default
  787. description: Remote namespace to fetch the secrets from
  788. type: string
  789. server:
  790. description: configures the Kubernetes server Address.
  791. properties:
  792. caBundle:
  793. description: CABundle is a base64-encoded CA certificate
  794. format: byte
  795. type: string
  796. caProvider:
  797. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  798. properties:
  799. key:
  800. description: The key the value inside of the provider
  801. type to use, only used with "Secret" type
  802. type: string
  803. name:
  804. description: The name of the object located at the
  805. provider type.
  806. type: string
  807. namespace:
  808. description: The namespace the Provider type is in.
  809. type: string
  810. type:
  811. description: The type of provider to use such as "Secret",
  812. or "ConfigMap".
  813. enum:
  814. - Secret
  815. - ConfigMap
  816. type: string
  817. required:
  818. - name
  819. - type
  820. type: object
  821. url:
  822. default: kubernetes.default
  823. description: configures the Kubernetes server Address.
  824. type: string
  825. type: object
  826. required:
  827. - auth
  828. type: object
  829. oracle:
  830. description: Oracle configures this store to sync secrets using
  831. Oracle Vault provider
  832. properties:
  833. auth:
  834. description: Auth configures how secret-manager authenticates
  835. with the Oracle Vault. If empty, use the instance principal,
  836. otherwise the user credentials specified in Auth.
  837. properties:
  838. secretRef:
  839. description: SecretRef to pass through sensitive information.
  840. properties:
  841. fingerprint:
  842. description: Fingerprint is the fingerprint of the
  843. API private key.
  844. properties:
  845. key:
  846. description: The key of the entry in the Secret
  847. resource's `data` field to be used. Some instances
  848. of this field may be defaulted, in others it
  849. may be required.
  850. type: string
  851. name:
  852. description: The name of the Secret resource being
  853. referred to.
  854. type: string
  855. namespace:
  856. description: Namespace of the resource being referred
  857. to. Ignored if referent is not cluster-scoped.
  858. cluster-scoped defaults to the namespace of
  859. the referent.
  860. type: string
  861. type: object
  862. privatekey:
  863. description: PrivateKey is the user's API Signing
  864. Key in PEM format, used for authentication.
  865. properties:
  866. key:
  867. description: The key of the entry in the Secret
  868. resource's `data` field to be used. Some instances
  869. of this field may be defaulted, in others it
  870. may be required.
  871. type: string
  872. name:
  873. description: The name of the Secret resource being
  874. referred to.
  875. type: string
  876. namespace:
  877. description: Namespace of the resource being referred
  878. to. Ignored if referent is not cluster-scoped.
  879. cluster-scoped defaults to the namespace of
  880. the referent.
  881. type: string
  882. type: object
  883. required:
  884. - fingerprint
  885. - privatekey
  886. type: object
  887. tenancy:
  888. description: Tenancy is the tenancy OCID where user is
  889. located.
  890. type: string
  891. user:
  892. description: User is an access OCID specific to the account.
  893. type: string
  894. required:
  895. - secretRef
  896. - tenancy
  897. - user
  898. type: object
  899. region:
  900. description: Region is the region where vault is located.
  901. type: string
  902. vault:
  903. description: Vault is the vault's OCID of the specific vault
  904. where secret is located.
  905. type: string
  906. required:
  907. - region
  908. - vault
  909. type: object
  910. vault:
  911. description: Vault configures this store to sync secrets using
  912. Hashi provider
  913. properties:
  914. auth:
  915. description: Auth configures how secret-manager authenticates
  916. with the Vault server.
  917. properties:
  918. appRole:
  919. description: AppRole authenticates with Vault using the
  920. App Role auth mechanism, with the role and secret stored
  921. in a Kubernetes Secret resource.
  922. properties:
  923. path:
  924. default: approle
  925. description: 'Path where the App Role authentication
  926. backend is mounted in Vault, e.g: "approle"'
  927. type: string
  928. roleId:
  929. description: RoleID configured in the App Role authentication
  930. backend when setting up the authentication backend
  931. in Vault.
  932. type: string
  933. secretRef:
  934. description: Reference to a key in a Secret that contains
  935. the App Role secret used to authenticate with Vault.
  936. The `key` field must be specified and denotes which
  937. entry within the Secret resource is used as the
  938. app role secret.
  939. properties:
  940. key:
  941. description: The key of the entry in the Secret
  942. resource's `data` field to be used. Some instances
  943. of this field may be defaulted, in others it
  944. may be required.
  945. type: string
  946. name:
  947. description: The name of the Secret resource being
  948. referred to.
  949. type: string
  950. namespace:
  951. description: Namespace of the resource being referred
  952. to. Ignored if referent is not cluster-scoped.
  953. cluster-scoped defaults to the namespace of
  954. the referent.
  955. type: string
  956. type: object
  957. required:
  958. - path
  959. - roleId
  960. - secretRef
  961. type: object
  962. cert:
  963. description: Cert authenticates with TLS Certificates
  964. by passing client certificate, private key and ca certificate
  965. Cert authentication method
  966. properties:
  967. clientCert:
  968. description: ClientCert is a certificate to authenticate
  969. using the Cert Vault authentication method
  970. properties:
  971. key:
  972. description: The key of the entry in the Secret
  973. resource's `data` field to be used. Some instances
  974. of this field may be defaulted, in others it
  975. may be required.
  976. type: string
  977. name:
  978. description: The name of the Secret resource being
  979. referred to.
  980. type: string
  981. namespace:
  982. description: Namespace of the resource being referred
  983. to. Ignored if referent is not cluster-scoped.
  984. cluster-scoped defaults to the namespace of
  985. the referent.
  986. type: string
  987. type: object
  988. secretRef:
  989. description: SecretRef to a key in a Secret resource
  990. containing client private key to authenticate with
  991. Vault using the Cert authentication method
  992. properties:
  993. key:
  994. description: The key of the entry in the Secret
  995. resource's `data` field to be used. Some instances
  996. of this field may be defaulted, in others it
  997. may be required.
  998. type: string
  999. name:
  1000. description: The name of the Secret resource being
  1001. referred to.
  1002. type: string
  1003. namespace:
  1004. description: Namespace of the resource being referred
  1005. to. Ignored if referent is not cluster-scoped.
  1006. cluster-scoped defaults to the namespace of
  1007. the referent.
  1008. type: string
  1009. type: object
  1010. type: object
  1011. jwt:
  1012. description: Jwt authenticates with Vault by passing role
  1013. and JWT token using the JWT/OIDC authentication method
  1014. properties:
  1015. kubernetesServiceAccountToken:
  1016. description: Optional ServiceAccountToken specifies
  1017. the Kubernetes service account for which to request
  1018. a token for with the `TokenRequest` API.
  1019. properties:
  1020. audiences:
  1021. description: Optional audiences field that will
  1022. be used to request a temporary Kubernetes service
  1023. account token for the service account referenced
  1024. by `serviceAccountRef`. Defaults to a single
  1025. audience `vault` it not specified.
  1026. items:
  1027. type: string
  1028. type: array
  1029. expirationSeconds:
  1030. description: Optional expiration time in seconds
  1031. that will be used to request a temporary Kubernetes
  1032. service account token for the service account
  1033. referenced by `serviceAccountRef`. Defaults
  1034. to 10 minutes.
  1035. format: int64
  1036. type: integer
  1037. serviceAccountRef:
  1038. description: Service account field containing
  1039. the name of a kubernetes ServiceAccount.
  1040. properties:
  1041. audiences:
  1042. description: Audience specifies the `aud`
  1043. claim for the service account token If the
  1044. service account uses a well-known annotation
  1045. for e.g. IRSA or GCP Workload Identity then
  1046. this audiences will be appended to the list
  1047. items:
  1048. type: string
  1049. type: array
  1050. name:
  1051. description: The name of the ServiceAccount
  1052. resource being referred to.
  1053. type: string
  1054. namespace:
  1055. description: Namespace of the resource being
  1056. referred to. Ignored if referent is not
  1057. cluster-scoped. cluster-scoped defaults
  1058. to the namespace of the referent.
  1059. type: string
  1060. required:
  1061. - name
  1062. type: object
  1063. required:
  1064. - serviceAccountRef
  1065. type: object
  1066. path:
  1067. default: jwt
  1068. description: 'Path where the JWT authentication backend
  1069. is mounted in Vault, e.g: "jwt"'
  1070. type: string
  1071. role:
  1072. description: Role is a JWT role to authenticate using
  1073. the JWT/OIDC Vault authentication method
  1074. type: string
  1075. secretRef:
  1076. description: Optional SecretRef that refers to a key
  1077. in a Secret resource containing JWT token to authenticate
  1078. with Vault using the JWT/OIDC authentication method.
  1079. properties:
  1080. key:
  1081. description: The key of the entry in the Secret
  1082. resource's `data` field to be used. Some instances
  1083. of this field may be defaulted, in others it
  1084. may be required.
  1085. type: string
  1086. name:
  1087. description: The name of the Secret resource being
  1088. referred to.
  1089. type: string
  1090. namespace:
  1091. description: Namespace of the resource being referred
  1092. to. Ignored if referent is not cluster-scoped.
  1093. cluster-scoped defaults to the namespace of
  1094. the referent.
  1095. type: string
  1096. type: object
  1097. required:
  1098. - path
  1099. type: object
  1100. kubernetes:
  1101. description: Kubernetes authenticates with Vault by passing
  1102. the ServiceAccount token stored in the named Secret
  1103. resource to the Vault server.
  1104. properties:
  1105. mountPath:
  1106. default: kubernetes
  1107. description: 'Path where the Kubernetes authentication
  1108. backend is mounted in Vault, e.g: "kubernetes"'
  1109. type: string
  1110. role:
  1111. description: A required field containing the Vault
  1112. Role to assume. A Role binds a Kubernetes ServiceAccount
  1113. with a set of Vault policies.
  1114. type: string
  1115. secretRef:
  1116. description: Optional secret field containing a Kubernetes
  1117. ServiceAccount JWT used for authenticating with
  1118. Vault. If a name is specified without a key, `token`
  1119. is the default. If one is not specified, the one
  1120. bound to the controller will be used.
  1121. properties:
  1122. key:
  1123. description: The key of the entry in the Secret
  1124. resource's `data` field to be used. Some instances
  1125. of this field may be defaulted, in others it
  1126. may be required.
  1127. type: string
  1128. name:
  1129. description: The name of the Secret resource being
  1130. referred to.
  1131. type: string
  1132. namespace:
  1133. description: Namespace of the resource being referred
  1134. to. Ignored if referent is not cluster-scoped.
  1135. cluster-scoped defaults to the namespace of
  1136. the referent.
  1137. type: string
  1138. type: object
  1139. serviceAccountRef:
  1140. description: Optional service account field containing
  1141. the name of a kubernetes ServiceAccount. If the
  1142. service account is specified, the service account
  1143. secret token JWT will be used for authenticating
  1144. with Vault. If the service account selector is not
  1145. supplied, the secretRef will be used instead.
  1146. properties:
  1147. audiences:
  1148. description: Audience specifies the `aud` claim
  1149. for the service account token If the service
  1150. account uses a well-known annotation for e.g.
  1151. IRSA or GCP Workload Identity then this audiences
  1152. will be appended to the list
  1153. items:
  1154. type: string
  1155. type: array
  1156. name:
  1157. description: The name of the ServiceAccount resource
  1158. being referred to.
  1159. type: string
  1160. namespace:
  1161. description: Namespace of the resource being referred
  1162. to. Ignored if referent is not cluster-scoped.
  1163. cluster-scoped defaults to the namespace of
  1164. the referent.
  1165. type: string
  1166. required:
  1167. - name
  1168. type: object
  1169. required:
  1170. - mountPath
  1171. - role
  1172. type: object
  1173. ldap:
  1174. description: Ldap authenticates with Vault by passing
  1175. username/password pair using the LDAP authentication
  1176. method
  1177. properties:
  1178. path:
  1179. default: ldap
  1180. description: 'Path where the LDAP authentication backend
  1181. is mounted in Vault, e.g: "ldap"'
  1182. type: string
  1183. secretRef:
  1184. description: SecretRef to a key in a Secret resource
  1185. containing password for the LDAP user used to authenticate
  1186. with Vault using the LDAP authentication method
  1187. properties:
  1188. key:
  1189. description: The key of the entry in the Secret
  1190. resource's `data` field to be used. Some instances
  1191. of this field may be defaulted, in others it
  1192. may be required.
  1193. type: string
  1194. name:
  1195. description: The name of the Secret resource being
  1196. referred to.
  1197. type: string
  1198. namespace:
  1199. description: Namespace of the resource being referred
  1200. to. Ignored if referent is not cluster-scoped.
  1201. cluster-scoped defaults to the namespace of
  1202. the referent.
  1203. type: string
  1204. type: object
  1205. username:
  1206. description: Username is a LDAP user name used to
  1207. authenticate using the LDAP Vault authentication
  1208. method
  1209. type: string
  1210. required:
  1211. - path
  1212. - username
  1213. type: object
  1214. tokenSecretRef:
  1215. description: TokenSecretRef authenticates with Vault by
  1216. presenting a token.
  1217. properties:
  1218. key:
  1219. description: The key of the entry in the Secret resource's
  1220. `data` field to be used. Some instances of this
  1221. field may be defaulted, in others it may be required.
  1222. type: string
  1223. name:
  1224. description: The name of the Secret resource being
  1225. referred to.
  1226. type: string
  1227. namespace:
  1228. description: Namespace of the resource being referred
  1229. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1230. defaults to the namespace of the referent.
  1231. type: string
  1232. type: object
  1233. type: object
  1234. caBundle:
  1235. description: PEM encoded CA bundle used to validate Vault
  1236. server certificate. Only used if the Server URL is using
  1237. HTTPS protocol. This parameter is ignored for plain HTTP
  1238. protocol connection. If not set the system root certificates
  1239. are used to validate the TLS connection.
  1240. format: byte
  1241. type: string
  1242. caProvider:
  1243. description: The provider for the CA bundle to use to validate
  1244. Vault server certificate.
  1245. properties:
  1246. key:
  1247. description: The key the value inside of the provider
  1248. type to use, only used with "Secret" type
  1249. type: string
  1250. name:
  1251. description: The name of the object located at the provider
  1252. type.
  1253. type: string
  1254. namespace:
  1255. description: The namespace the Provider type is in.
  1256. type: string
  1257. type:
  1258. description: The type of provider to use such as "Secret",
  1259. or "ConfigMap".
  1260. enum:
  1261. - Secret
  1262. - ConfigMap
  1263. type: string
  1264. required:
  1265. - name
  1266. - type
  1267. type: object
  1268. forwardInconsistent:
  1269. description: ForwardInconsistent tells Vault to forward read-after-write
  1270. requests to the Vault leader instead of simply retrying
  1271. within a loop. This can increase performance if the option
  1272. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1273. type: boolean
  1274. namespace:
  1275. description: 'Name of the vault namespace. Namespaces is a
  1276. set of features within Vault Enterprise that allows Vault
  1277. environments to support Secure Multi-tenancy. e.g: "ns1".
  1278. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  1279. type: string
  1280. path:
  1281. description: 'Path is the mount path of the Vault KV backend
  1282. endpoint, e.g: "secret". The v2 KV secret engine version
  1283. specific "/data" path suffix for fetching secrets from Vault
  1284. is optional and will be appended if not present in specified
  1285. path.'
  1286. type: string
  1287. readYourWrites:
  1288. description: ReadYourWrites ensures isolated read-after-write
  1289. semantics by providing discovered cluster replication states
  1290. in each request. More information about eventual consistency
  1291. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  1292. type: boolean
  1293. server:
  1294. description: 'Server is the connection address for the Vault
  1295. server, e.g: "https://vault.example.com:8200".'
  1296. type: string
  1297. version:
  1298. default: v2
  1299. description: Version is the Vault KV secret engine version.
  1300. This can be either "v1" or "v2". Version defaults to "v2".
  1301. enum:
  1302. - v1
  1303. - v2
  1304. type: string
  1305. required:
  1306. - auth
  1307. - server
  1308. type: object
  1309. webhook:
  1310. description: Webhook configures this store to sync secrets using
  1311. a generic templated webhook
  1312. properties:
  1313. body:
  1314. description: Body
  1315. type: string
  1316. caBundle:
  1317. description: PEM encoded CA bundle used to validate webhook
  1318. server certificate. Only used if the Server URL is using
  1319. HTTPS protocol. This parameter is ignored for plain HTTP
  1320. protocol connection. If not set the system root certificates
  1321. are used to validate the TLS connection.
  1322. format: byte
  1323. type: string
  1324. caProvider:
  1325. description: The provider for the CA bundle to use to validate
  1326. webhook server certificate.
  1327. properties:
  1328. key:
  1329. description: The key the value inside of the provider
  1330. type to use, only used with "Secret" type
  1331. type: string
  1332. name:
  1333. description: The name of the object located at the provider
  1334. type.
  1335. type: string
  1336. namespace:
  1337. description: The namespace the Provider type is in.
  1338. type: string
  1339. type:
  1340. description: The type of provider to use such as "Secret",
  1341. or "ConfigMap".
  1342. enum:
  1343. - Secret
  1344. - ConfigMap
  1345. type: string
  1346. required:
  1347. - name
  1348. - type
  1349. type: object
  1350. headers:
  1351. additionalProperties:
  1352. type: string
  1353. description: Headers
  1354. type: object
  1355. method:
  1356. description: Webhook Method
  1357. type: string
  1358. result:
  1359. description: Result formatting
  1360. properties:
  1361. jsonPath:
  1362. description: Json path of return value
  1363. type: string
  1364. type: object
  1365. secrets:
  1366. description: Secrets to fill in templates These secrets will
  1367. be passed to the templating function as key value pairs
  1368. under the given name
  1369. items:
  1370. properties:
  1371. name:
  1372. description: Name of this secret in templates
  1373. type: string
  1374. secretRef:
  1375. description: Secret ref to fill in credentials
  1376. properties:
  1377. key:
  1378. description: The key of the entry in the Secret
  1379. resource's `data` field to be used. Some instances
  1380. of this field may be defaulted, in others it may
  1381. be required.
  1382. type: string
  1383. name:
  1384. description: The name of the Secret resource being
  1385. referred to.
  1386. type: string
  1387. namespace:
  1388. description: Namespace of the resource being referred
  1389. to. Ignored if referent is not cluster-scoped.
  1390. cluster-scoped defaults to the namespace of the
  1391. referent.
  1392. type: string
  1393. type: object
  1394. required:
  1395. - name
  1396. - secretRef
  1397. type: object
  1398. type: array
  1399. timeout:
  1400. description: Timeout
  1401. type: string
  1402. url:
  1403. description: Webhook url to call
  1404. type: string
  1405. required:
  1406. - result
  1407. - url
  1408. type: object
  1409. yandexlockbox:
  1410. description: YandexLockbox configures this store to sync secrets
  1411. using Yandex Lockbox provider
  1412. properties:
  1413. apiEndpoint:
  1414. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1415. type: string
  1416. auth:
  1417. description: Auth defines the information necessary to authenticate
  1418. against Yandex Lockbox
  1419. properties:
  1420. authorizedKeySecretRef:
  1421. description: The authorized key used for authentication
  1422. properties:
  1423. key:
  1424. description: The key of the entry in the Secret resource's
  1425. `data` field to be used. Some instances of this
  1426. field may be defaulted, in others it may be required.
  1427. type: string
  1428. name:
  1429. description: The name of the Secret resource being
  1430. referred to.
  1431. type: string
  1432. namespace:
  1433. description: Namespace of the resource being referred
  1434. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1435. defaults to the namespace of the referent.
  1436. type: string
  1437. type: object
  1438. type: object
  1439. caProvider:
  1440. description: The provider for the CA bundle to use to validate
  1441. Yandex.Cloud server certificate.
  1442. properties:
  1443. certSecretRef:
  1444. description: A reference to a specific 'key' within a
  1445. Secret resource, In some instances, `key` is a required
  1446. field.
  1447. properties:
  1448. key:
  1449. description: The key of the entry in the Secret resource's
  1450. `data` field to be used. Some instances of this
  1451. field may be defaulted, in others it may be required.
  1452. type: string
  1453. name:
  1454. description: The name of the Secret resource being
  1455. referred to.
  1456. type: string
  1457. namespace:
  1458. description: Namespace of the resource being referred
  1459. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1460. defaults to the namespace of the referent.
  1461. type: string
  1462. type: object
  1463. type: object
  1464. required:
  1465. - auth
  1466. type: object
  1467. type: object
  1468. retrySettings:
  1469. description: Used to configure http retries if failed
  1470. properties:
  1471. maxRetries:
  1472. format: int32
  1473. type: integer
  1474. retryInterval:
  1475. type: string
  1476. type: object
  1477. required:
  1478. - provider
  1479. type: object
  1480. status:
  1481. description: SecretStoreStatus defines the observed state of the SecretStore.
  1482. properties:
  1483. conditions:
  1484. items:
  1485. properties:
  1486. lastTransitionTime:
  1487. format: date-time
  1488. type: string
  1489. message:
  1490. type: string
  1491. reason:
  1492. type: string
  1493. status:
  1494. type: string
  1495. type:
  1496. type: string
  1497. required:
  1498. - status
  1499. - type
  1500. type: object
  1501. type: array
  1502. type: object
  1503. type: object
  1504. served: true
  1505. storage: false
  1506. subresources:
  1507. status: {}
  1508. - additionalPrinterColumns:
  1509. - jsonPath: .metadata.creationTimestamp
  1510. name: AGE
  1511. type: date
  1512. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1513. name: Status
  1514. type: string
  1515. - jsonPath: .status.capabilities
  1516. name: Capabilities
  1517. type: string
  1518. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1519. name: Ready
  1520. type: string
  1521. name: v1beta1
  1522. schema:
  1523. openAPIV3Schema:
  1524. description: SecretStore represents a secure external location for storing
  1525. secrets, which can be referenced as part of `storeRef` fields.
  1526. properties:
  1527. apiVersion:
  1528. description: 'APIVersion defines the versioned schema of this representation
  1529. of an object. Servers should convert recognized schemas to the latest
  1530. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1531. type: string
  1532. kind:
  1533. description: 'Kind is a string value representing the REST resource this
  1534. object represents. Servers may infer this from the endpoint the client
  1535. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1536. type: string
  1537. metadata:
  1538. type: object
  1539. spec:
  1540. description: SecretStoreSpec defines the desired state of SecretStore.
  1541. properties:
  1542. conditions:
  1543. description: Used to constraint a ClusterSecretStore to specific namespaces.
  1544. Relevant only to ClusterSecretStore
  1545. items:
  1546. description: ClusterSecretStoreCondition describes a condition by
  1547. which to choose namespaces to process ExternalSecrets in for a
  1548. ClusterSecretStore instance.
  1549. properties:
  1550. namespaceSelector:
  1551. description: Choose namespace using a labelSelector
  1552. properties:
  1553. matchExpressions:
  1554. description: matchExpressions is a list of label selector
  1555. requirements. The requirements are ANDed.
  1556. items:
  1557. description: A label selector requirement is a selector
  1558. that contains values, a key, and an operator that relates
  1559. the key and values.
  1560. properties:
  1561. key:
  1562. description: key is the label key that the selector
  1563. applies to.
  1564. type: string
  1565. operator:
  1566. description: operator represents a key's relationship
  1567. to a set of values. Valid operators are In, NotIn,
  1568. Exists and DoesNotExist.
  1569. type: string
  1570. values:
  1571. description: values is an array of string values.
  1572. If the operator is In or NotIn, the values array
  1573. must be non-empty. If the operator is Exists or
  1574. DoesNotExist, the values array must be empty. This
  1575. array is replaced during a strategic merge patch.
  1576. items:
  1577. type: string
  1578. type: array
  1579. required:
  1580. - key
  1581. - operator
  1582. type: object
  1583. type: array
  1584. matchLabels:
  1585. additionalProperties:
  1586. type: string
  1587. description: matchLabels is a map of {key,value} pairs.
  1588. A single {key,value} in the matchLabels map is equivalent
  1589. to an element of matchExpressions, whose key field is
  1590. "key", the operator is "In", and the values array contains
  1591. only "value". The requirements are ANDed.
  1592. type: object
  1593. type: object
  1594. x-kubernetes-map-type: atomic
  1595. namespaces:
  1596. description: Choose namespaces by name
  1597. items:
  1598. type: string
  1599. type: array
  1600. type: object
  1601. type: array
  1602. controller:
  1603. description: 'Used to select the correct KES controller (think: ingress.ingressClassName)
  1604. The KES controller is instantiated with a specific controller name
  1605. and filters ES based on this property'
  1606. type: string
  1607. provider:
  1608. description: Used to configure the provider. Only one provider may
  1609. be set
  1610. maxProperties: 1
  1611. minProperties: 1
  1612. properties:
  1613. akeyless:
  1614. description: Akeyless configures this store to sync secrets using
  1615. Akeyless Vault provider
  1616. properties:
  1617. akeylessGWApiURL:
  1618. description: Akeyless GW API Url from which the secrets to
  1619. be fetched from.
  1620. type: string
  1621. authSecretRef:
  1622. description: Auth configures how the operator authenticates
  1623. with Akeyless.
  1624. properties:
  1625. kubernetesAuth:
  1626. description: Kubernetes authenticates with Akeyless by
  1627. passing the ServiceAccount token stored in the named
  1628. Secret resource.
  1629. properties:
  1630. accessID:
  1631. description: the Akeyless Kubernetes auth-method access-id
  1632. type: string
  1633. k8sConfName:
  1634. description: Kubernetes-auth configuration name in
  1635. Akeyless-Gateway
  1636. type: string
  1637. secretRef:
  1638. description: Optional secret field containing a Kubernetes
  1639. ServiceAccount JWT used for authenticating with
  1640. Akeyless. If a name is specified without a key,
  1641. `token` is the default. If one is not specified,
  1642. the one bound to the controller will be used.
  1643. properties:
  1644. key:
  1645. description: The key of the entry in the Secret
  1646. resource's `data` field to be used. Some instances
  1647. of this field may be defaulted, in others it
  1648. may be required.
  1649. type: string
  1650. name:
  1651. description: The name of the Secret resource being
  1652. referred to.
  1653. type: string
  1654. namespace:
  1655. description: Namespace of the resource being referred
  1656. to. Ignored if referent is not cluster-scoped.
  1657. cluster-scoped defaults to the namespace of
  1658. the referent.
  1659. type: string
  1660. type: object
  1661. serviceAccountRef:
  1662. description: Optional service account field containing
  1663. the name of a kubernetes ServiceAccount. If the
  1664. service account is specified, the service account
  1665. secret token JWT will be used for authenticating
  1666. with Akeyless. If the service account selector is
  1667. not supplied, the secretRef will be used instead.
  1668. properties:
  1669. audiences:
  1670. description: Audience specifies the `aud` claim
  1671. for the service account token If the service
  1672. account uses a well-known annotation for e.g.
  1673. IRSA or GCP Workload Identity then this audiences
  1674. will be appended to the list
  1675. items:
  1676. type: string
  1677. type: array
  1678. name:
  1679. description: The name of the ServiceAccount resource
  1680. being referred to.
  1681. type: string
  1682. namespace:
  1683. description: Namespace of the resource being referred
  1684. to. Ignored if referent is not cluster-scoped.
  1685. cluster-scoped defaults to the namespace of
  1686. the referent.
  1687. type: string
  1688. required:
  1689. - name
  1690. type: object
  1691. required:
  1692. - accessID
  1693. - k8sConfName
  1694. type: object
  1695. secretRef:
  1696. description: Reference to a Secret that contains the details
  1697. to authenticate with Akeyless.
  1698. properties:
  1699. accessID:
  1700. description: The SecretAccessID is used for authentication
  1701. properties:
  1702. key:
  1703. description: The key of the entry in the Secret
  1704. resource's `data` field to be used. Some instances
  1705. of this field may be defaulted, in others it
  1706. may be required.
  1707. type: string
  1708. name:
  1709. description: The name of the Secret resource being
  1710. referred to.
  1711. type: string
  1712. namespace:
  1713. description: Namespace of the resource being referred
  1714. to. Ignored if referent is not cluster-scoped.
  1715. cluster-scoped defaults to the namespace of
  1716. the referent.
  1717. type: string
  1718. type: object
  1719. accessType:
  1720. description: A reference to a specific 'key' within
  1721. a Secret resource, In some instances, `key` is a
  1722. required field.
  1723. properties:
  1724. key:
  1725. description: The key of the entry in the Secret
  1726. resource's `data` field to be used. Some instances
  1727. of this field may be defaulted, in others it
  1728. may be required.
  1729. type: string
  1730. name:
  1731. description: The name of the Secret resource being
  1732. referred to.
  1733. type: string
  1734. namespace:
  1735. description: Namespace of the resource being referred
  1736. to. Ignored if referent is not cluster-scoped.
  1737. cluster-scoped defaults to the namespace of
  1738. the referent.
  1739. type: string
  1740. type: object
  1741. accessTypeParam:
  1742. description: A reference to a specific 'key' within
  1743. a Secret resource, In some instances, `key` is a
  1744. required field.
  1745. properties:
  1746. key:
  1747. description: The key of the entry in the Secret
  1748. resource's `data` field to be used. Some instances
  1749. of this field may be defaulted, in others it
  1750. may be required.
  1751. type: string
  1752. name:
  1753. description: The name of the Secret resource being
  1754. referred to.
  1755. type: string
  1756. namespace:
  1757. description: Namespace of the resource being referred
  1758. to. Ignored if referent is not cluster-scoped.
  1759. cluster-scoped defaults to the namespace of
  1760. the referent.
  1761. type: string
  1762. type: object
  1763. type: object
  1764. type: object
  1765. required:
  1766. - akeylessGWApiURL
  1767. - authSecretRef
  1768. type: object
  1769. alibaba:
  1770. description: Alibaba configures this store to sync secrets using
  1771. Alibaba Cloud provider
  1772. properties:
  1773. auth:
  1774. description: AlibabaAuth contains a secretRef for credentials.
  1775. properties:
  1776. secretRef:
  1777. description: AlibabaAuthSecretRef holds secret references
  1778. for Alibaba credentials.
  1779. properties:
  1780. accessKeyIDSecretRef:
  1781. description: The AccessKeyID is used for authentication
  1782. properties:
  1783. key:
  1784. description: The key of the entry in the Secret
  1785. resource's `data` field to be used. Some instances
  1786. of this field may be defaulted, in others it
  1787. may be required.
  1788. type: string
  1789. name:
  1790. description: The name of the Secret resource being
  1791. referred to.
  1792. type: string
  1793. namespace:
  1794. description: Namespace of the resource being referred
  1795. to. Ignored if referent is not cluster-scoped.
  1796. cluster-scoped defaults to the namespace of
  1797. the referent.
  1798. type: string
  1799. type: object
  1800. accessKeySecretSecretRef:
  1801. description: The AccessKeySecret is used for authentication
  1802. properties:
  1803. key:
  1804. description: The key of the entry in the Secret
  1805. resource's `data` field to be used. Some instances
  1806. of this field may be defaulted, in others it
  1807. may be required.
  1808. type: string
  1809. name:
  1810. description: The name of the Secret resource being
  1811. referred to.
  1812. type: string
  1813. namespace:
  1814. description: Namespace of the resource being referred
  1815. to. Ignored if referent is not cluster-scoped.
  1816. cluster-scoped defaults to the namespace of
  1817. the referent.
  1818. type: string
  1819. type: object
  1820. required:
  1821. - accessKeyIDSecretRef
  1822. - accessKeySecretSecretRef
  1823. type: object
  1824. required:
  1825. - secretRef
  1826. type: object
  1827. endpoint:
  1828. type: string
  1829. regionID:
  1830. description: Alibaba Region to be used for the provider
  1831. type: string
  1832. required:
  1833. - auth
  1834. - regionID
  1835. type: object
  1836. aws:
  1837. description: AWS configures this store to sync secrets using AWS
  1838. Secret Manager provider
  1839. properties:
  1840. additionalRoles:
  1841. description: AdditionalRoles is a chained list of Role ARNs
  1842. which the SecretManager provider will sequentially assume
  1843. before assuming Role
  1844. items:
  1845. type: string
  1846. type: array
  1847. auth:
  1848. description: 'Auth defines the information necessary to authenticate
  1849. against AWS if not set aws sdk will infer credentials from
  1850. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  1851. properties:
  1852. jwt:
  1853. description: Authenticate against AWS using service account
  1854. tokens.
  1855. properties:
  1856. serviceAccountRef:
  1857. description: A reference to a ServiceAccount resource.
  1858. properties:
  1859. audiences:
  1860. description: Audience specifies the `aud` claim
  1861. for the service account token If the service
  1862. account uses a well-known annotation for e.g.
  1863. IRSA or GCP Workload Identity then this audiences
  1864. will be appended to the list
  1865. items:
  1866. type: string
  1867. type: array
  1868. name:
  1869. description: The name of the ServiceAccount resource
  1870. being referred to.
  1871. type: string
  1872. namespace:
  1873. description: Namespace of the resource being referred
  1874. to. Ignored if referent is not cluster-scoped.
  1875. cluster-scoped defaults to the namespace of
  1876. the referent.
  1877. type: string
  1878. required:
  1879. - name
  1880. type: object
  1881. type: object
  1882. secretRef:
  1883. description: AWSAuthSecretRef holds secret references
  1884. for AWS credentials both AccessKeyID and SecretAccessKey
  1885. must be defined in order to properly authenticate.
  1886. properties:
  1887. accessKeyIDSecretRef:
  1888. description: The AccessKeyID is used for authentication
  1889. properties:
  1890. key:
  1891. description: The key of the entry in the Secret
  1892. resource's `data` field to be used. Some instances
  1893. of this field may be defaulted, in others it
  1894. may be required.
  1895. type: string
  1896. name:
  1897. description: The name of the Secret resource being
  1898. referred to.
  1899. type: string
  1900. namespace:
  1901. description: Namespace of the resource being referred
  1902. to. Ignored if referent is not cluster-scoped.
  1903. cluster-scoped defaults to the namespace of
  1904. the referent.
  1905. type: string
  1906. type: object
  1907. secretAccessKeySecretRef:
  1908. description: The SecretAccessKey is used for authentication
  1909. properties:
  1910. key:
  1911. description: The key of the entry in the Secret
  1912. resource's `data` field to be used. Some instances
  1913. of this field may be defaulted, in others it
  1914. may be required.
  1915. type: string
  1916. name:
  1917. description: The name of the Secret resource being
  1918. referred to.
  1919. type: string
  1920. namespace:
  1921. description: Namespace of the resource being referred
  1922. to. Ignored if referent is not cluster-scoped.
  1923. cluster-scoped defaults to the namespace of
  1924. the referent.
  1925. type: string
  1926. type: object
  1927. sessionTokenSecretRef:
  1928. description: 'The SessionToken used for authentication
  1929. This must be defined if AccessKeyID and SecretAccessKey
  1930. are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html'
  1931. properties:
  1932. key:
  1933. description: The key of the entry in the Secret
  1934. resource's `data` field to be used. Some instances
  1935. of this field may be defaulted, in others it
  1936. may be required.
  1937. type: string
  1938. name:
  1939. description: The name of the Secret resource being
  1940. referred to.
  1941. type: string
  1942. namespace:
  1943. description: Namespace of the resource being referred
  1944. to. Ignored if referent is not cluster-scoped.
  1945. cluster-scoped defaults to the namespace of
  1946. the referent.
  1947. type: string
  1948. type: object
  1949. type: object
  1950. type: object
  1951. region:
  1952. description: AWS Region to be used for the provider
  1953. type: string
  1954. role:
  1955. description: Role is a Role ARN which the SecretManager provider
  1956. will assume
  1957. type: string
  1958. service:
  1959. description: Service defines which service should be used
  1960. to fetch the secrets
  1961. enum:
  1962. - SecretsManager
  1963. - ParameterStore
  1964. type: string
  1965. required:
  1966. - region
  1967. - service
  1968. type: object
  1969. azurekv:
  1970. description: AzureKV configures this store to sync secrets using
  1971. Azure Key Vault provider
  1972. properties:
  1973. authSecretRef:
  1974. description: Auth configures how the operator authenticates
  1975. with Azure. Required for ServicePrincipal auth type.
  1976. properties:
  1977. clientId:
  1978. description: The Azure clientId of the service principle
  1979. used for authentication.
  1980. properties:
  1981. key:
  1982. description: The key of the entry in the Secret resource's
  1983. `data` field to be used. Some instances of this
  1984. field may be defaulted, in others it may be required.
  1985. type: string
  1986. name:
  1987. description: The name of the Secret resource being
  1988. referred to.
  1989. type: string
  1990. namespace:
  1991. description: Namespace of the resource being referred
  1992. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1993. defaults to the namespace of the referent.
  1994. type: string
  1995. type: object
  1996. clientSecret:
  1997. description: The Azure ClientSecret of the service principle
  1998. used for authentication.
  1999. properties:
  2000. key:
  2001. description: The key of the entry in the Secret resource's
  2002. `data` field to be used. Some instances of this
  2003. field may be defaulted, in others it may be required.
  2004. type: string
  2005. name:
  2006. description: The name of the Secret resource being
  2007. referred to.
  2008. type: string
  2009. namespace:
  2010. description: Namespace of the resource being referred
  2011. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2012. defaults to the namespace of the referent.
  2013. type: string
  2014. type: object
  2015. type: object
  2016. authType:
  2017. default: ServicePrincipal
  2018. description: 'Auth type defines how to authenticate to the
  2019. keyvault service. Valid values are: - "ServicePrincipal"
  2020. (default): Using a service principal (tenantId, clientId,
  2021. clientSecret) - "ManagedIdentity": Using Managed Identity
  2022. assigned to the pod (see aad-pod-identity)'
  2023. enum:
  2024. - ServicePrincipal
  2025. - ManagedIdentity
  2026. - WorkloadIdentity
  2027. type: string
  2028. environmentType:
  2029. default: PublicCloud
  2030. description: 'EnvironmentType specifies the Azure cloud environment
  2031. endpoints to use for connecting and authenticating with
  2032. Azure. By default it points to the public cloud AAD endpoint.
  2033. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2034. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  2035. enum:
  2036. - PublicCloud
  2037. - USGovernmentCloud
  2038. - ChinaCloud
  2039. - GermanCloud
  2040. type: string
  2041. identityId:
  2042. description: If multiple Managed Identity is assigned to the
  2043. pod, you can select the one to be used
  2044. type: string
  2045. serviceAccountRef:
  2046. description: ServiceAccountRef specified the service account
  2047. that should be used when authenticating with WorkloadIdentity.
  2048. properties:
  2049. audiences:
  2050. description: Audience specifies the `aud` claim for the
  2051. service account token If the service account uses a
  2052. well-known annotation for e.g. IRSA or GCP Workload
  2053. Identity then this audiences will be appended to the
  2054. list
  2055. items:
  2056. type: string
  2057. type: array
  2058. name:
  2059. description: The name of the ServiceAccount resource being
  2060. referred to.
  2061. type: string
  2062. namespace:
  2063. description: Namespace of the resource being referred
  2064. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2065. defaults to the namespace of the referent.
  2066. type: string
  2067. required:
  2068. - name
  2069. type: object
  2070. tenantId:
  2071. description: TenantID configures the Azure Tenant to send
  2072. requests to. Required for ServicePrincipal auth type.
  2073. type: string
  2074. vaultUrl:
  2075. description: Vault Url from which the secrets to be fetched
  2076. from.
  2077. type: string
  2078. required:
  2079. - vaultUrl
  2080. type: object
  2081. doppler:
  2082. description: Doppler configures this store to sync secrets using
  2083. the Doppler provider
  2084. properties:
  2085. auth:
  2086. description: Auth configures how the Operator authenticates
  2087. with the Doppler API
  2088. properties:
  2089. secretRef:
  2090. properties:
  2091. dopplerToken:
  2092. description: The DopplerToken is used for authentication.
  2093. See https://docs.doppler.com/reference/api#authentication
  2094. for auth token types. The Key attribute defaults
  2095. to dopplerToken if not specified.
  2096. properties:
  2097. key:
  2098. description: The key of the entry in the Secret
  2099. resource's `data` field to be used. Some instances
  2100. of this field may be defaulted, in others it
  2101. may be required.
  2102. type: string
  2103. name:
  2104. description: The name of the Secret resource being
  2105. referred to.
  2106. type: string
  2107. namespace:
  2108. description: Namespace of the resource being referred
  2109. to. Ignored if referent is not cluster-scoped.
  2110. cluster-scoped defaults to the namespace of
  2111. the referent.
  2112. type: string
  2113. type: object
  2114. required:
  2115. - dopplerToken
  2116. type: object
  2117. required:
  2118. - secretRef
  2119. type: object
  2120. config:
  2121. description: Doppler config (required if not using a Service
  2122. Token)
  2123. type: string
  2124. format:
  2125. description: Format enables the downloading of secrets as
  2126. a file (string)
  2127. enum:
  2128. - json
  2129. - dotnet-json
  2130. - env
  2131. - yaml
  2132. - docker
  2133. type: string
  2134. nameTransformer:
  2135. description: Environment variable compatible name transforms
  2136. that change secret names to a different format
  2137. enum:
  2138. - upper-camel
  2139. - camel
  2140. - lower-snake
  2141. - tf-var
  2142. - dotnet-env
  2143. type: string
  2144. project:
  2145. description: Doppler project (required if not using a Service
  2146. Token)
  2147. type: string
  2148. required:
  2149. - auth
  2150. type: object
  2151. fake:
  2152. description: Fake configures a store with static key/value pairs
  2153. properties:
  2154. data:
  2155. items:
  2156. properties:
  2157. key:
  2158. type: string
  2159. value:
  2160. type: string
  2161. valueMap:
  2162. additionalProperties:
  2163. type: string
  2164. type: object
  2165. version:
  2166. type: string
  2167. required:
  2168. - key
  2169. type: object
  2170. type: array
  2171. required:
  2172. - data
  2173. type: object
  2174. gcpsm:
  2175. description: GCPSM configures this store to sync secrets using
  2176. Google Cloud Platform Secret Manager provider
  2177. properties:
  2178. auth:
  2179. description: Auth defines the information necessary to authenticate
  2180. against GCP
  2181. properties:
  2182. secretRef:
  2183. properties:
  2184. secretAccessKeySecretRef:
  2185. description: The SecretAccessKey is used for authentication
  2186. properties:
  2187. key:
  2188. description: The key of the entry in the Secret
  2189. resource's `data` field to be used. Some instances
  2190. of this field may be defaulted, in others it
  2191. may be required.
  2192. type: string
  2193. name:
  2194. description: The name of the Secret resource being
  2195. referred to.
  2196. type: string
  2197. namespace:
  2198. description: Namespace of the resource being referred
  2199. to. Ignored if referent is not cluster-scoped.
  2200. cluster-scoped defaults to the namespace of
  2201. the referent.
  2202. type: string
  2203. type: object
  2204. type: object
  2205. workloadIdentity:
  2206. properties:
  2207. clusterLocation:
  2208. type: string
  2209. clusterName:
  2210. type: string
  2211. clusterProjectID:
  2212. type: string
  2213. serviceAccountRef:
  2214. description: A reference to a ServiceAccount resource.
  2215. properties:
  2216. audiences:
  2217. description: Audience specifies the `aud` claim
  2218. for the service account token If the service
  2219. account uses a well-known annotation for e.g.
  2220. IRSA or GCP Workload Identity then this audiences
  2221. will be appended to the list
  2222. items:
  2223. type: string
  2224. type: array
  2225. name:
  2226. description: The name of the ServiceAccount resource
  2227. being referred to.
  2228. type: string
  2229. namespace:
  2230. description: Namespace of the resource being referred
  2231. to. Ignored if referent is not cluster-scoped.
  2232. cluster-scoped defaults to the namespace of
  2233. the referent.
  2234. type: string
  2235. required:
  2236. - name
  2237. type: object
  2238. required:
  2239. - clusterLocation
  2240. - clusterName
  2241. - serviceAccountRef
  2242. type: object
  2243. type: object
  2244. projectID:
  2245. description: ProjectID project where secret is located
  2246. type: string
  2247. type: object
  2248. gitlab:
  2249. description: Gitlab configures this store to sync secrets using
  2250. Gitlab Variables provider
  2251. properties:
  2252. auth:
  2253. description: Auth configures how secret-manager authenticates
  2254. with a GitLab instance.
  2255. properties:
  2256. SecretRef:
  2257. properties:
  2258. accessToken:
  2259. description: AccessToken is used for authentication.
  2260. properties:
  2261. key:
  2262. description: The key of the entry in the Secret
  2263. resource's `data` field to be used. Some instances
  2264. of this field may be defaulted, in others it
  2265. may be required.
  2266. type: string
  2267. name:
  2268. description: The name of the Secret resource being
  2269. referred to.
  2270. type: string
  2271. namespace:
  2272. description: Namespace of the resource being referred
  2273. to. Ignored if referent is not cluster-scoped.
  2274. cluster-scoped defaults to the namespace of
  2275. the referent.
  2276. type: string
  2277. type: object
  2278. type: object
  2279. required:
  2280. - SecretRef
  2281. type: object
  2282. environment:
  2283. description: Environment environment_scope of gitlab CI/CD
  2284. variables (Please see https://docs.gitlab.com/ee/ci/environments/#create-a-static-environment
  2285. on how to create environments)
  2286. type: string
  2287. groupIDs:
  2288. description: GroupIDs specify, which gitlab groups to pull
  2289. secrets from. Group secrets are read from left to right
  2290. followed by the project variables.
  2291. items:
  2292. type: string
  2293. type: array
  2294. inheritFromGroups:
  2295. description: InheritFromGroups specifies whether parent groups
  2296. should be discovered and checked for secrets.
  2297. type: boolean
  2298. projectID:
  2299. description: ProjectID specifies a project where secrets are
  2300. located.
  2301. type: string
  2302. url:
  2303. description: URL configures the GitLab instance URL. Defaults
  2304. to https://gitlab.com/.
  2305. type: string
  2306. required:
  2307. - auth
  2308. type: object
  2309. ibm:
  2310. description: IBM configures this store to sync secrets using IBM
  2311. Cloud provider
  2312. properties:
  2313. auth:
  2314. description: Auth configures how secret-manager authenticates
  2315. with the IBM secrets manager.
  2316. maxProperties: 1
  2317. minProperties: 1
  2318. properties:
  2319. containerAuth:
  2320. description: IBM Container-based auth with IAM Trusted
  2321. Profile.
  2322. properties:
  2323. iamEndpoint:
  2324. type: string
  2325. profile:
  2326. description: the IBM Trusted Profile
  2327. type: string
  2328. tokenLocation:
  2329. description: Location the token is mounted on the
  2330. pod
  2331. type: string
  2332. required:
  2333. - profile
  2334. type: object
  2335. secretRef:
  2336. properties:
  2337. secretApiKeySecretRef:
  2338. description: The SecretAccessKey is used for authentication
  2339. properties:
  2340. key:
  2341. description: The key of the entry in the Secret
  2342. resource's `data` field to be used. Some instances
  2343. of this field may be defaulted, in others it
  2344. may be required.
  2345. type: string
  2346. name:
  2347. description: The name of the Secret resource being
  2348. referred to.
  2349. type: string
  2350. namespace:
  2351. description: Namespace of the resource being referred
  2352. to. Ignored if referent is not cluster-scoped.
  2353. cluster-scoped defaults to the namespace of
  2354. the referent.
  2355. type: string
  2356. type: object
  2357. type: object
  2358. type: object
  2359. serviceUrl:
  2360. description: ServiceURL is the Endpoint URL that is specific
  2361. to the Secrets Manager service instance
  2362. type: string
  2363. required:
  2364. - auth
  2365. type: object
  2366. keepersecurity:
  2367. description: KeeperSecurity configures this store to sync secrets
  2368. using the KeeperSecurity provider
  2369. properties:
  2370. auth:
  2371. description: KeeperSecurityAuth Configuration used to authenticate
  2372. with KeeperSecurity.
  2373. properties:
  2374. appKeySecretRef:
  2375. description: A reference to a specific 'key' within a
  2376. Secret resource, In some instances, `key` is a required
  2377. field.
  2378. properties:
  2379. key:
  2380. description: The key of the entry in the Secret resource's
  2381. `data` field to be used. Some instances of this
  2382. field may be defaulted, in others it may be required.
  2383. type: string
  2384. name:
  2385. description: The name of the Secret resource being
  2386. referred to.
  2387. type: string
  2388. namespace:
  2389. description: Namespace of the resource being referred
  2390. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2391. defaults to the namespace of the referent.
  2392. type: string
  2393. type: object
  2394. appOwnerPublicKeySecretRef:
  2395. description: A reference to a specific 'key' within a
  2396. Secret resource, In some instances, `key` is a required
  2397. field.
  2398. properties:
  2399. key:
  2400. description: The key of the entry in the Secret resource's
  2401. `data` field to be used. Some instances of this
  2402. field may be defaulted, in others it may be required.
  2403. type: string
  2404. name:
  2405. description: The name of the Secret resource being
  2406. referred to.
  2407. type: string
  2408. namespace:
  2409. description: Namespace of the resource being referred
  2410. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2411. defaults to the namespace of the referent.
  2412. type: string
  2413. type: object
  2414. clientIdSecretRef:
  2415. description: A reference to a specific 'key' within a
  2416. Secret resource, In some instances, `key` is a required
  2417. field.
  2418. properties:
  2419. key:
  2420. description: The key of the entry in the Secret resource's
  2421. `data` field to be used. Some instances of this
  2422. field may be defaulted, in others it may be required.
  2423. type: string
  2424. name:
  2425. description: The name of the Secret resource being
  2426. referred to.
  2427. type: string
  2428. namespace:
  2429. description: Namespace of the resource being referred
  2430. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2431. defaults to the namespace of the referent.
  2432. type: string
  2433. type: object
  2434. privateKeySecretRef:
  2435. description: A reference to a specific 'key' within a
  2436. Secret resource, In some instances, `key` is a required
  2437. field.
  2438. properties:
  2439. key:
  2440. description: The key of the entry in the Secret resource's
  2441. `data` field to be used. Some instances of this
  2442. field may be defaulted, in others it may be required.
  2443. type: string
  2444. name:
  2445. description: The name of the Secret resource being
  2446. referred to.
  2447. type: string
  2448. namespace:
  2449. description: Namespace of the resource being referred
  2450. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2451. defaults to the namespace of the referent.
  2452. type: string
  2453. type: object
  2454. serverPublicKeyIdSecretRef:
  2455. description: A reference to a specific 'key' within a
  2456. Secret resource, In some instances, `key` is a required
  2457. field.
  2458. properties:
  2459. key:
  2460. description: The key of the entry in the Secret resource's
  2461. `data` field to be used. Some instances of this
  2462. field may be defaulted, in others it may be required.
  2463. type: string
  2464. name:
  2465. description: The name of the Secret resource being
  2466. referred to.
  2467. type: string
  2468. namespace:
  2469. description: Namespace of the resource being referred
  2470. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2471. defaults to the namespace of the referent.
  2472. type: string
  2473. type: object
  2474. required:
  2475. - appKeySecretRef
  2476. - appOwnerPublicKeySecretRef
  2477. - clientIdSecretRef
  2478. - privateKeySecretRef
  2479. - serverPublicKeyIdSecretRef
  2480. type: object
  2481. folderID:
  2482. type: string
  2483. hostname:
  2484. description: Keeper Url from which the secrets to be fetched
  2485. from.
  2486. type: string
  2487. required:
  2488. - auth
  2489. - folderID
  2490. - hostname
  2491. type: object
  2492. kubernetes:
  2493. description: Kubernetes configures this store to sync secrets
  2494. using a Kubernetes cluster provider
  2495. properties:
  2496. auth:
  2497. description: Auth configures how secret-manager authenticates
  2498. with a Kubernetes instance.
  2499. maxProperties: 1
  2500. minProperties: 1
  2501. properties:
  2502. cert:
  2503. description: has both clientCert and clientKey as secretKeySelector
  2504. properties:
  2505. clientCert:
  2506. description: A reference to a specific 'key' within
  2507. a Secret resource, In some instances, `key` is a
  2508. required field.
  2509. properties:
  2510. key:
  2511. description: The key of the entry in the Secret
  2512. resource's `data` field to be used. Some instances
  2513. of this field may be defaulted, in others it
  2514. may be required.
  2515. type: string
  2516. name:
  2517. description: The name of the Secret resource being
  2518. referred to.
  2519. type: string
  2520. namespace:
  2521. description: Namespace of the resource being referred
  2522. to. Ignored if referent is not cluster-scoped.
  2523. cluster-scoped defaults to the namespace of
  2524. the referent.
  2525. type: string
  2526. type: object
  2527. clientKey:
  2528. description: A reference to a specific 'key' within
  2529. a Secret resource, In some instances, `key` is a
  2530. required field.
  2531. properties:
  2532. key:
  2533. description: The key of the entry in the Secret
  2534. resource's `data` field to be used. Some instances
  2535. of this field may be defaulted, in others it
  2536. may be required.
  2537. type: string
  2538. name:
  2539. description: The name of the Secret resource being
  2540. referred to.
  2541. type: string
  2542. namespace:
  2543. description: Namespace of the resource being referred
  2544. to. Ignored if referent is not cluster-scoped.
  2545. cluster-scoped defaults to the namespace of
  2546. the referent.
  2547. type: string
  2548. type: object
  2549. type: object
  2550. serviceAccount:
  2551. description: points to a service account that should be
  2552. used for authentication
  2553. properties:
  2554. audiences:
  2555. description: Audience specifies the `aud` claim for
  2556. the service account token If the service account
  2557. uses a well-known annotation for e.g. IRSA or GCP
  2558. Workload Identity then this audiences will be appended
  2559. to the list
  2560. items:
  2561. type: string
  2562. type: array
  2563. name:
  2564. description: The name of the ServiceAccount resource
  2565. being referred to.
  2566. type: string
  2567. namespace:
  2568. description: Namespace of the resource being referred
  2569. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2570. defaults to the namespace of the referent.
  2571. type: string
  2572. required:
  2573. - name
  2574. type: object
  2575. token:
  2576. description: use static token to authenticate with
  2577. properties:
  2578. bearerToken:
  2579. description: A reference to a specific 'key' within
  2580. a Secret resource, In some instances, `key` is a
  2581. required field.
  2582. properties:
  2583. key:
  2584. description: The key of the entry in the Secret
  2585. resource's `data` field to be used. Some instances
  2586. of this field may be defaulted, in others it
  2587. may be required.
  2588. type: string
  2589. name:
  2590. description: The name of the Secret resource being
  2591. referred to.
  2592. type: string
  2593. namespace:
  2594. description: Namespace of the resource being referred
  2595. to. Ignored if referent is not cluster-scoped.
  2596. cluster-scoped defaults to the namespace of
  2597. the referent.
  2598. type: string
  2599. type: object
  2600. type: object
  2601. type: object
  2602. remoteNamespace:
  2603. default: default
  2604. description: Remote namespace to fetch the secrets from
  2605. type: string
  2606. server:
  2607. description: configures the Kubernetes server Address.
  2608. properties:
  2609. caBundle:
  2610. description: CABundle is a base64-encoded CA certificate
  2611. format: byte
  2612. type: string
  2613. caProvider:
  2614. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2615. properties:
  2616. key:
  2617. description: The key where the CA certificate can
  2618. be found in the Secret or ConfigMap.
  2619. type: string
  2620. name:
  2621. description: The name of the object located at the
  2622. provider type.
  2623. type: string
  2624. namespace:
  2625. description: The namespace the Provider type is in.
  2626. Can only be defined when used in a ClusterSecretStore.
  2627. type: string
  2628. type:
  2629. description: The type of provider to use such as "Secret",
  2630. or "ConfigMap".
  2631. enum:
  2632. - Secret
  2633. - ConfigMap
  2634. type: string
  2635. required:
  2636. - name
  2637. - type
  2638. type: object
  2639. url:
  2640. default: kubernetes.default
  2641. description: configures the Kubernetes server Address.
  2642. type: string
  2643. type: object
  2644. required:
  2645. - auth
  2646. type: object
  2647. onepassword:
  2648. description: OnePassword configures this store to sync secrets
  2649. using the 1Password Cloud provider
  2650. properties:
  2651. auth:
  2652. description: Auth defines the information necessary to authenticate
  2653. against OnePassword Connect Server
  2654. properties:
  2655. secretRef:
  2656. description: OnePasswordAuthSecretRef holds secret references
  2657. for 1Password credentials.
  2658. properties:
  2659. connectTokenSecretRef:
  2660. description: The ConnectToken is used for authentication
  2661. to a 1Password Connect Server.
  2662. properties:
  2663. key:
  2664. description: The key of the entry in the Secret
  2665. resource's `data` field to be used. Some instances
  2666. of this field may be defaulted, in others it
  2667. may be required.
  2668. type: string
  2669. name:
  2670. description: The name of the Secret resource being
  2671. referred to.
  2672. type: string
  2673. namespace:
  2674. description: Namespace of the resource being referred
  2675. to. Ignored if referent is not cluster-scoped.
  2676. cluster-scoped defaults to the namespace of
  2677. the referent.
  2678. type: string
  2679. type: object
  2680. required:
  2681. - connectTokenSecretRef
  2682. type: object
  2683. required:
  2684. - secretRef
  2685. type: object
  2686. connectHost:
  2687. description: ConnectHost defines the OnePassword Connect Server
  2688. to connect to
  2689. type: string
  2690. vaults:
  2691. additionalProperties:
  2692. type: integer
  2693. description: Vaults defines which OnePassword vaults to search
  2694. in which order
  2695. type: object
  2696. required:
  2697. - auth
  2698. - connectHost
  2699. - vaults
  2700. type: object
  2701. oracle:
  2702. description: Oracle configures this store to sync secrets using
  2703. Oracle Vault provider
  2704. properties:
  2705. auth:
  2706. description: Auth configures how secret-manager authenticates
  2707. with the Oracle Vault. If empty, use the instance principal,
  2708. otherwise the user credentials specified in Auth.
  2709. properties:
  2710. secretRef:
  2711. description: SecretRef to pass through sensitive information.
  2712. properties:
  2713. fingerprint:
  2714. description: Fingerprint is the fingerprint of the
  2715. API private key.
  2716. properties:
  2717. key:
  2718. description: The key of the entry in the Secret
  2719. resource's `data` field to be used. Some instances
  2720. of this field may be defaulted, in others it
  2721. may be required.
  2722. type: string
  2723. name:
  2724. description: The name of the Secret resource being
  2725. referred to.
  2726. type: string
  2727. namespace:
  2728. description: Namespace of the resource being referred
  2729. to. Ignored if referent is not cluster-scoped.
  2730. cluster-scoped defaults to the namespace of
  2731. the referent.
  2732. type: string
  2733. type: object
  2734. privatekey:
  2735. description: PrivateKey is the user's API Signing
  2736. Key in PEM format, used for authentication.
  2737. properties:
  2738. key:
  2739. description: The key of the entry in the Secret
  2740. resource's `data` field to be used. Some instances
  2741. of this field may be defaulted, in others it
  2742. may be required.
  2743. type: string
  2744. name:
  2745. description: The name of the Secret resource being
  2746. referred to.
  2747. type: string
  2748. namespace:
  2749. description: Namespace of the resource being referred
  2750. to. Ignored if referent is not cluster-scoped.
  2751. cluster-scoped defaults to the namespace of
  2752. the referent.
  2753. type: string
  2754. type: object
  2755. required:
  2756. - fingerprint
  2757. - privatekey
  2758. type: object
  2759. tenancy:
  2760. description: Tenancy is the tenancy OCID where user is
  2761. located.
  2762. type: string
  2763. user:
  2764. description: User is an access OCID specific to the account.
  2765. type: string
  2766. required:
  2767. - secretRef
  2768. - tenancy
  2769. - user
  2770. type: object
  2771. region:
  2772. description: Region is the region where vault is located.
  2773. type: string
  2774. vault:
  2775. description: Vault is the vault's OCID of the specific vault
  2776. where secret is located.
  2777. type: string
  2778. required:
  2779. - region
  2780. - vault
  2781. type: object
  2782. senhasegura:
  2783. description: Senhasegura configures this store to sync secrets
  2784. using senhasegura provider
  2785. properties:
  2786. auth:
  2787. description: Auth defines parameters to authenticate in senhasegura
  2788. properties:
  2789. clientId:
  2790. type: string
  2791. clientSecretSecretRef:
  2792. description: A reference to a specific 'key' within a
  2793. Secret resource, In some instances, `key` is a required
  2794. field.
  2795. properties:
  2796. key:
  2797. description: The key of the entry in the Secret resource's
  2798. `data` field to be used. Some instances of this
  2799. field may be defaulted, in others it may be required.
  2800. type: string
  2801. name:
  2802. description: The name of the Secret resource being
  2803. referred to.
  2804. type: string
  2805. namespace:
  2806. description: Namespace of the resource being referred
  2807. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2808. defaults to the namespace of the referent.
  2809. type: string
  2810. type: object
  2811. required:
  2812. - clientId
  2813. - clientSecretSecretRef
  2814. type: object
  2815. ignoreSslCertificate:
  2816. default: false
  2817. description: IgnoreSslCertificate defines if SSL certificate
  2818. must be ignored
  2819. type: boolean
  2820. module:
  2821. description: Module defines which senhasegura module should
  2822. be used to get secrets
  2823. type: string
  2824. url:
  2825. description: URL of senhasegura
  2826. type: string
  2827. required:
  2828. - auth
  2829. - module
  2830. - url
  2831. type: object
  2832. vault:
  2833. description: Vault configures this store to sync secrets using
  2834. Hashi provider
  2835. properties:
  2836. auth:
  2837. description: Auth configures how secret-manager authenticates
  2838. with the Vault server.
  2839. properties:
  2840. appRole:
  2841. description: AppRole authenticates with Vault using the
  2842. App Role auth mechanism, with the role and secret stored
  2843. in a Kubernetes Secret resource.
  2844. properties:
  2845. path:
  2846. default: approle
  2847. description: 'Path where the App Role authentication
  2848. backend is mounted in Vault, e.g: "approle"'
  2849. type: string
  2850. roleId:
  2851. description: RoleID configured in the App Role authentication
  2852. backend when setting up the authentication backend
  2853. in Vault.
  2854. type: string
  2855. secretRef:
  2856. description: Reference to a key in a Secret that contains
  2857. the App Role secret used to authenticate with Vault.
  2858. The `key` field must be specified and denotes which
  2859. entry within the Secret resource is used as the
  2860. app role secret.
  2861. properties:
  2862. key:
  2863. description: The key of the entry in the Secret
  2864. resource's `data` field to be used. Some instances
  2865. of this field may be defaulted, in others it
  2866. may be required.
  2867. type: string
  2868. name:
  2869. description: The name of the Secret resource being
  2870. referred to.
  2871. type: string
  2872. namespace:
  2873. description: Namespace of the resource being referred
  2874. to. Ignored if referent is not cluster-scoped.
  2875. cluster-scoped defaults to the namespace of
  2876. the referent.
  2877. type: string
  2878. type: object
  2879. required:
  2880. - path
  2881. - roleId
  2882. - secretRef
  2883. type: object
  2884. cert:
  2885. description: Cert authenticates with TLS Certificates
  2886. by passing client certificate, private key and ca certificate
  2887. Cert authentication method
  2888. properties:
  2889. clientCert:
  2890. description: ClientCert is a certificate to authenticate
  2891. using the Cert Vault authentication method
  2892. properties:
  2893. key:
  2894. description: The key of the entry in the Secret
  2895. resource's `data` field to be used. Some instances
  2896. of this field may be defaulted, in others it
  2897. may be required.
  2898. type: string
  2899. name:
  2900. description: The name of the Secret resource being
  2901. referred to.
  2902. type: string
  2903. namespace:
  2904. description: Namespace of the resource being referred
  2905. to. Ignored if referent is not cluster-scoped.
  2906. cluster-scoped defaults to the namespace of
  2907. the referent.
  2908. type: string
  2909. type: object
  2910. secretRef:
  2911. description: SecretRef to a key in a Secret resource
  2912. containing client private key to authenticate with
  2913. Vault using the Cert authentication method
  2914. properties:
  2915. key:
  2916. description: The key of the entry in the Secret
  2917. resource's `data` field to be used. Some instances
  2918. of this field may be defaulted, in others it
  2919. may be required.
  2920. type: string
  2921. name:
  2922. description: The name of the Secret resource being
  2923. referred to.
  2924. type: string
  2925. namespace:
  2926. description: Namespace of the resource being referred
  2927. to. Ignored if referent is not cluster-scoped.
  2928. cluster-scoped defaults to the namespace of
  2929. the referent.
  2930. type: string
  2931. type: object
  2932. type: object
  2933. jwt:
  2934. description: Jwt authenticates with Vault by passing role
  2935. and JWT token using the JWT/OIDC authentication method
  2936. properties:
  2937. kubernetesServiceAccountToken:
  2938. description: Optional ServiceAccountToken specifies
  2939. the Kubernetes service account for which to request
  2940. a token for with the `TokenRequest` API.
  2941. properties:
  2942. audiences:
  2943. description: 'Optional audiences field that will
  2944. be used to request a temporary Kubernetes service
  2945. account token for the service account referenced
  2946. by `serviceAccountRef`. Defaults to a single
  2947. audience `vault` it not specified. Deprecated:
  2948. use serviceAccountRef.Audiences instead'
  2949. items:
  2950. type: string
  2951. type: array
  2952. expirationSeconds:
  2953. description: 'Optional expiration time in seconds
  2954. that will be used to request a temporary Kubernetes
  2955. service account token for the service account
  2956. referenced by `serviceAccountRef`. Deprecated:
  2957. this will be removed in the future. Defaults
  2958. to 10 minutes.'
  2959. format: int64
  2960. type: integer
  2961. serviceAccountRef:
  2962. description: Service account field containing
  2963. the name of a kubernetes ServiceAccount.
  2964. properties:
  2965. audiences:
  2966. description: Audience specifies the `aud`
  2967. claim for the service account token If the
  2968. service account uses a well-known annotation
  2969. for e.g. IRSA or GCP Workload Identity then
  2970. this audiences will be appended to the list
  2971. items:
  2972. type: string
  2973. type: array
  2974. name:
  2975. description: The name of the ServiceAccount
  2976. resource being referred to.
  2977. type: string
  2978. namespace:
  2979. description: Namespace of the resource being
  2980. referred to. Ignored if referent is not
  2981. cluster-scoped. cluster-scoped defaults
  2982. to the namespace of the referent.
  2983. type: string
  2984. required:
  2985. - name
  2986. type: object
  2987. required:
  2988. - serviceAccountRef
  2989. type: object
  2990. path:
  2991. default: jwt
  2992. description: 'Path where the JWT authentication backend
  2993. is mounted in Vault, e.g: "jwt"'
  2994. type: string
  2995. role:
  2996. description: Role is a JWT role to authenticate using
  2997. the JWT/OIDC Vault authentication method
  2998. type: string
  2999. secretRef:
  3000. description: Optional SecretRef that refers to a key
  3001. in a Secret resource containing JWT token to authenticate
  3002. with Vault using the JWT/OIDC authentication method.
  3003. properties:
  3004. key:
  3005. description: The key of the entry in the Secret
  3006. resource's `data` field to be used. Some instances
  3007. of this field may be defaulted, in others it
  3008. may be required.
  3009. type: string
  3010. name:
  3011. description: The name of the Secret resource being
  3012. referred to.
  3013. type: string
  3014. namespace:
  3015. description: Namespace of the resource being referred
  3016. to. Ignored if referent is not cluster-scoped.
  3017. cluster-scoped defaults to the namespace of
  3018. the referent.
  3019. type: string
  3020. type: object
  3021. required:
  3022. - path
  3023. type: object
  3024. kubernetes:
  3025. description: Kubernetes authenticates with Vault by passing
  3026. the ServiceAccount token stored in the named Secret
  3027. resource to the Vault server.
  3028. properties:
  3029. mountPath:
  3030. default: kubernetes
  3031. description: 'Path where the Kubernetes authentication
  3032. backend is mounted in Vault, e.g: "kubernetes"'
  3033. type: string
  3034. role:
  3035. description: A required field containing the Vault
  3036. Role to assume. A Role binds a Kubernetes ServiceAccount
  3037. with a set of Vault policies.
  3038. type: string
  3039. secretRef:
  3040. description: Optional secret field containing a Kubernetes
  3041. ServiceAccount JWT used for authenticating with
  3042. Vault. If a name is specified without a key, `token`
  3043. is the default. If one is not specified, the one
  3044. bound to the controller will be used.
  3045. properties:
  3046. key:
  3047. description: The key of the entry in the Secret
  3048. resource's `data` field to be used. Some instances
  3049. of this field may be defaulted, in others it
  3050. may be required.
  3051. type: string
  3052. name:
  3053. description: The name of the Secret resource being
  3054. referred to.
  3055. type: string
  3056. namespace:
  3057. description: Namespace of the resource being referred
  3058. to. Ignored if referent is not cluster-scoped.
  3059. cluster-scoped defaults to the namespace of
  3060. the referent.
  3061. type: string
  3062. type: object
  3063. serviceAccountRef:
  3064. description: Optional service account field containing
  3065. the name of a kubernetes ServiceAccount. If the
  3066. service account is specified, the service account
  3067. secret token JWT will be used for authenticating
  3068. with Vault. If the service account selector is not
  3069. supplied, the secretRef will be used instead.
  3070. properties:
  3071. audiences:
  3072. description: Audience specifies the `aud` claim
  3073. for the service account token If the service
  3074. account uses a well-known annotation for e.g.
  3075. IRSA or GCP Workload Identity then this audiences
  3076. will be appended to the list
  3077. items:
  3078. type: string
  3079. type: array
  3080. name:
  3081. description: The name of the ServiceAccount resource
  3082. being referred to.
  3083. type: string
  3084. namespace:
  3085. description: Namespace of the resource being referred
  3086. to. Ignored if referent is not cluster-scoped.
  3087. cluster-scoped defaults to the namespace of
  3088. the referent.
  3089. type: string
  3090. required:
  3091. - name
  3092. type: object
  3093. required:
  3094. - mountPath
  3095. - role
  3096. type: object
  3097. ldap:
  3098. description: Ldap authenticates with Vault by passing
  3099. username/password pair using the LDAP authentication
  3100. method
  3101. properties:
  3102. path:
  3103. default: ldap
  3104. description: 'Path where the LDAP authentication backend
  3105. is mounted in Vault, e.g: "ldap"'
  3106. type: string
  3107. secretRef:
  3108. description: SecretRef to a key in a Secret resource
  3109. containing password for the LDAP user used to authenticate
  3110. with Vault using the LDAP authentication method
  3111. properties:
  3112. key:
  3113. description: The key of the entry in the Secret
  3114. resource's `data` field to be used. Some instances
  3115. of this field may be defaulted, in others it
  3116. may be required.
  3117. type: string
  3118. name:
  3119. description: The name of the Secret resource being
  3120. referred to.
  3121. type: string
  3122. namespace:
  3123. description: Namespace of the resource being referred
  3124. to. Ignored if referent is not cluster-scoped.
  3125. cluster-scoped defaults to the namespace of
  3126. the referent.
  3127. type: string
  3128. type: object
  3129. username:
  3130. description: Username is a LDAP user name used to
  3131. authenticate using the LDAP Vault authentication
  3132. method
  3133. type: string
  3134. required:
  3135. - path
  3136. - username
  3137. type: object
  3138. tokenSecretRef:
  3139. description: TokenSecretRef authenticates with Vault by
  3140. presenting a token.
  3141. properties:
  3142. key:
  3143. description: The key of the entry in the Secret resource's
  3144. `data` field to be used. Some instances of this
  3145. field may be defaulted, in others it may be required.
  3146. type: string
  3147. name:
  3148. description: The name of the Secret resource being
  3149. referred to.
  3150. type: string
  3151. namespace:
  3152. description: Namespace of the resource being referred
  3153. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3154. defaults to the namespace of the referent.
  3155. type: string
  3156. type: object
  3157. type: object
  3158. caBundle:
  3159. description: PEM encoded CA bundle used to validate Vault
  3160. server certificate. Only used if the Server URL is using
  3161. HTTPS protocol. This parameter is ignored for plain HTTP
  3162. protocol connection. If not set the system root certificates
  3163. are used to validate the TLS connection.
  3164. format: byte
  3165. type: string
  3166. caProvider:
  3167. description: The provider for the CA bundle to use to validate
  3168. Vault server certificate.
  3169. properties:
  3170. key:
  3171. description: The key where the CA certificate can be found
  3172. in the Secret or ConfigMap.
  3173. type: string
  3174. name:
  3175. description: The name of the object located at the provider
  3176. type.
  3177. type: string
  3178. namespace:
  3179. description: The namespace the Provider type is in. Can
  3180. only be defined when used in a ClusterSecretStore.
  3181. type: string
  3182. type:
  3183. description: The type of provider to use such as "Secret",
  3184. or "ConfigMap".
  3185. enum:
  3186. - Secret
  3187. - ConfigMap
  3188. type: string
  3189. required:
  3190. - name
  3191. - type
  3192. type: object
  3193. forwardInconsistent:
  3194. description: ForwardInconsistent tells Vault to forward read-after-write
  3195. requests to the Vault leader instead of simply retrying
  3196. within a loop. This can increase performance if the option
  3197. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  3198. type: boolean
  3199. namespace:
  3200. description: 'Name of the vault namespace. Namespaces is a
  3201. set of features within Vault Enterprise that allows Vault
  3202. environments to support Secure Multi-tenancy. e.g: "ns1".
  3203. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  3204. type: string
  3205. path:
  3206. description: 'Path is the mount path of the Vault KV backend
  3207. endpoint, e.g: "secret". The v2 KV secret engine version
  3208. specific "/data" path suffix for fetching secrets from Vault
  3209. is optional and will be appended if not present in specified
  3210. path.'
  3211. type: string
  3212. readYourWrites:
  3213. description: ReadYourWrites ensures isolated read-after-write
  3214. semantics by providing discovered cluster replication states
  3215. in each request. More information about eventual consistency
  3216. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  3217. type: boolean
  3218. server:
  3219. description: 'Server is the connection address for the Vault
  3220. server, e.g: "https://vault.example.com:8200".'
  3221. type: string
  3222. version:
  3223. default: v2
  3224. description: Version is the Vault KV secret engine version.
  3225. This can be either "v1" or "v2". Version defaults to "v2".
  3226. enum:
  3227. - v1
  3228. - v2
  3229. type: string
  3230. required:
  3231. - auth
  3232. - server
  3233. type: object
  3234. webhook:
  3235. description: Webhook configures this store to sync secrets using
  3236. a generic templated webhook
  3237. properties:
  3238. body:
  3239. description: Body
  3240. type: string
  3241. caBundle:
  3242. description: PEM encoded CA bundle used to validate webhook
  3243. server certificate. Only used if the Server URL is using
  3244. HTTPS protocol. This parameter is ignored for plain HTTP
  3245. protocol connection. If not set the system root certificates
  3246. are used to validate the TLS connection.
  3247. format: byte
  3248. type: string
  3249. caProvider:
  3250. description: The provider for the CA bundle to use to validate
  3251. webhook server certificate.
  3252. properties:
  3253. key:
  3254. description: The key the value inside of the provider
  3255. type to use, only used with "Secret" type
  3256. type: string
  3257. name:
  3258. description: The name of the object located at the provider
  3259. type.
  3260. type: string
  3261. namespace:
  3262. description: The namespace the Provider type is in.
  3263. type: string
  3264. type:
  3265. description: The type of provider to use such as "Secret",
  3266. or "ConfigMap".
  3267. enum:
  3268. - Secret
  3269. - ConfigMap
  3270. type: string
  3271. required:
  3272. - name
  3273. - type
  3274. type: object
  3275. headers:
  3276. additionalProperties:
  3277. type: string
  3278. description: Headers
  3279. type: object
  3280. method:
  3281. description: Webhook Method
  3282. type: string
  3283. result:
  3284. description: Result formatting
  3285. properties:
  3286. jsonPath:
  3287. description: Json path of return value
  3288. type: string
  3289. type: object
  3290. secrets:
  3291. description: Secrets to fill in templates These secrets will
  3292. be passed to the templating function as key value pairs
  3293. under the given name
  3294. items:
  3295. properties:
  3296. name:
  3297. description: Name of this secret in templates
  3298. type: string
  3299. secretRef:
  3300. description: Secret ref to fill in credentials
  3301. properties:
  3302. key:
  3303. description: The key of the entry in the Secret
  3304. resource's `data` field to be used. Some instances
  3305. of this field may be defaulted, in others it may
  3306. be required.
  3307. type: string
  3308. name:
  3309. description: The name of the Secret resource being
  3310. referred to.
  3311. type: string
  3312. namespace:
  3313. description: Namespace of the resource being referred
  3314. to. Ignored if referent is not cluster-scoped.
  3315. cluster-scoped defaults to the namespace of the
  3316. referent.
  3317. type: string
  3318. type: object
  3319. required:
  3320. - name
  3321. - secretRef
  3322. type: object
  3323. type: array
  3324. timeout:
  3325. description: Timeout
  3326. type: string
  3327. url:
  3328. description: Webhook url to call
  3329. type: string
  3330. required:
  3331. - result
  3332. - url
  3333. type: object
  3334. yandexcertificatemanager:
  3335. description: YandexCertificateManager configures this store to
  3336. sync secrets using Yandex Certificate Manager provider
  3337. properties:
  3338. apiEndpoint:
  3339. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3340. type: string
  3341. auth:
  3342. description: Auth defines the information necessary to authenticate
  3343. against Yandex Certificate Manager
  3344. properties:
  3345. authorizedKeySecretRef:
  3346. description: The authorized key used for authentication
  3347. properties:
  3348. key:
  3349. description: The key of the entry in the Secret resource's
  3350. `data` field to be used. Some instances of this
  3351. field may be defaulted, in others it may be required.
  3352. type: string
  3353. name:
  3354. description: The name of the Secret resource being
  3355. referred to.
  3356. type: string
  3357. namespace:
  3358. description: Namespace of the resource being referred
  3359. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3360. defaults to the namespace of the referent.
  3361. type: string
  3362. type: object
  3363. type: object
  3364. caProvider:
  3365. description: The provider for the CA bundle to use to validate
  3366. Yandex.Cloud server certificate.
  3367. properties:
  3368. certSecretRef:
  3369. description: A reference to a specific 'key' within a
  3370. Secret resource, In some instances, `key` is a required
  3371. field.
  3372. properties:
  3373. key:
  3374. description: The key of the entry in the Secret resource's
  3375. `data` field to be used. Some instances of this
  3376. field may be defaulted, in others it may be required.
  3377. type: string
  3378. name:
  3379. description: The name of the Secret resource being
  3380. referred to.
  3381. type: string
  3382. namespace:
  3383. description: Namespace of the resource being referred
  3384. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3385. defaults to the namespace of the referent.
  3386. type: string
  3387. type: object
  3388. type: object
  3389. required:
  3390. - auth
  3391. type: object
  3392. yandexlockbox:
  3393. description: YandexLockbox configures this store to sync secrets
  3394. using Yandex Lockbox provider
  3395. properties:
  3396. apiEndpoint:
  3397. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3398. type: string
  3399. auth:
  3400. description: Auth defines the information necessary to authenticate
  3401. against Yandex Lockbox
  3402. properties:
  3403. authorizedKeySecretRef:
  3404. description: The authorized key used for authentication
  3405. properties:
  3406. key:
  3407. description: The key of the entry in the Secret resource's
  3408. `data` field to be used. Some instances of this
  3409. field may be defaulted, in others it may be required.
  3410. type: string
  3411. name:
  3412. description: The name of the Secret resource being
  3413. referred to.
  3414. type: string
  3415. namespace:
  3416. description: Namespace of the resource being referred
  3417. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3418. defaults to the namespace of the referent.
  3419. type: string
  3420. type: object
  3421. type: object
  3422. caProvider:
  3423. description: The provider for the CA bundle to use to validate
  3424. Yandex.Cloud server certificate.
  3425. properties:
  3426. certSecretRef:
  3427. description: A reference to a specific 'key' within a
  3428. Secret resource, In some instances, `key` is a required
  3429. field.
  3430. properties:
  3431. key:
  3432. description: The key of the entry in the Secret resource's
  3433. `data` field to be used. Some instances of this
  3434. field may be defaulted, in others it may be required.
  3435. type: string
  3436. name:
  3437. description: The name of the Secret resource being
  3438. referred to.
  3439. type: string
  3440. namespace:
  3441. description: Namespace of the resource being referred
  3442. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3443. defaults to the namespace of the referent.
  3444. type: string
  3445. type: object
  3446. type: object
  3447. required:
  3448. - auth
  3449. type: object
  3450. type: object
  3451. refreshInterval:
  3452. description: Used to configure store refresh interval in seconds.
  3453. Empty or 0 will default to the controller config.
  3454. type: integer
  3455. retrySettings:
  3456. description: Used to configure http retries if failed
  3457. properties:
  3458. maxRetries:
  3459. format: int32
  3460. type: integer
  3461. retryInterval:
  3462. type: string
  3463. type: object
  3464. required:
  3465. - provider
  3466. type: object
  3467. status:
  3468. description: SecretStoreStatus defines the observed state of the SecretStore.
  3469. properties:
  3470. capabilities:
  3471. description: SecretStoreCapabilities defines the possible operations
  3472. a SecretStore can do.
  3473. type: string
  3474. conditions:
  3475. items:
  3476. properties:
  3477. lastTransitionTime:
  3478. format: date-time
  3479. type: string
  3480. message:
  3481. type: string
  3482. reason:
  3483. type: string
  3484. status:
  3485. type: string
  3486. type:
  3487. type: string
  3488. required:
  3489. - status
  3490. - type
  3491. type: object
  3492. type: array
  3493. type: object
  3494. type: object
  3495. served: true
  3496. storage: true
  3497. subresources:
  3498. status: {}