external-secrets.io_secretstores.yaml 183 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372
  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. kubernetes:
  2367. description: Kubernetes configures this store to sync secrets
  2368. using a Kubernetes cluster provider
  2369. properties:
  2370. auth:
  2371. description: Auth configures how secret-manager authenticates
  2372. with a Kubernetes instance.
  2373. maxProperties: 1
  2374. minProperties: 1
  2375. properties:
  2376. cert:
  2377. description: has both clientCert and clientKey as secretKeySelector
  2378. properties:
  2379. clientCert:
  2380. description: A reference to a specific 'key' within
  2381. a Secret resource, In some instances, `key` is a
  2382. required field.
  2383. properties:
  2384. key:
  2385. description: The key of the entry in the Secret
  2386. resource's `data` field to be used. Some instances
  2387. of this field may be defaulted, in others it
  2388. may be required.
  2389. type: string
  2390. name:
  2391. description: The name of the Secret resource being
  2392. referred to.
  2393. type: string
  2394. namespace:
  2395. description: Namespace of the resource being referred
  2396. to. Ignored if referent is not cluster-scoped.
  2397. cluster-scoped defaults to the namespace of
  2398. the referent.
  2399. type: string
  2400. type: object
  2401. clientKey:
  2402. description: A reference to a specific 'key' within
  2403. a Secret resource, In some instances, `key` is a
  2404. required field.
  2405. properties:
  2406. key:
  2407. description: The key of the entry in the Secret
  2408. resource's `data` field to be used. Some instances
  2409. of this field may be defaulted, in others it
  2410. may be required.
  2411. type: string
  2412. name:
  2413. description: The name of the Secret resource being
  2414. referred to.
  2415. type: string
  2416. namespace:
  2417. description: Namespace of the resource being referred
  2418. to. Ignored if referent is not cluster-scoped.
  2419. cluster-scoped defaults to the namespace of
  2420. the referent.
  2421. type: string
  2422. type: object
  2423. type: object
  2424. serviceAccount:
  2425. description: points to a service account that should be
  2426. used for authentication
  2427. properties:
  2428. audiences:
  2429. description: Audience specifies the `aud` claim for
  2430. the service account token If the service account
  2431. uses a well-known annotation for e.g. IRSA or GCP
  2432. Workload Identity then this audiences will be appended
  2433. to the list
  2434. items:
  2435. type: string
  2436. type: array
  2437. name:
  2438. description: The name of the ServiceAccount resource
  2439. being referred to.
  2440. type: string
  2441. namespace:
  2442. description: Namespace of the resource being referred
  2443. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2444. defaults to the namespace of the referent.
  2445. type: string
  2446. required:
  2447. - name
  2448. type: object
  2449. token:
  2450. description: use static token to authenticate with
  2451. properties:
  2452. bearerToken:
  2453. description: A reference to a specific 'key' within
  2454. a Secret resource, In some instances, `key` is a
  2455. required field.
  2456. properties:
  2457. key:
  2458. description: The key of the entry in the Secret
  2459. resource's `data` field to be used. Some instances
  2460. of this field may be defaulted, in others it
  2461. may be required.
  2462. type: string
  2463. name:
  2464. description: The name of the Secret resource being
  2465. referred to.
  2466. type: string
  2467. namespace:
  2468. description: Namespace of the resource being referred
  2469. to. Ignored if referent is not cluster-scoped.
  2470. cluster-scoped defaults to the namespace of
  2471. the referent.
  2472. type: string
  2473. type: object
  2474. type: object
  2475. type: object
  2476. remoteNamespace:
  2477. default: default
  2478. description: Remote namespace to fetch the secrets from
  2479. type: string
  2480. server:
  2481. description: configures the Kubernetes server Address.
  2482. properties:
  2483. caBundle:
  2484. description: CABundle is a base64-encoded CA certificate
  2485. format: byte
  2486. type: string
  2487. caProvider:
  2488. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2489. properties:
  2490. key:
  2491. description: The key where the CA certificate can
  2492. be found in the Secret or ConfigMap.
  2493. type: string
  2494. name:
  2495. description: The name of the object located at the
  2496. provider type.
  2497. type: string
  2498. namespace:
  2499. description: The namespace the Provider type is in.
  2500. Can only be defined when used in a ClusterSecretStore.
  2501. type: string
  2502. type:
  2503. description: The type of provider to use such as "Secret",
  2504. or "ConfigMap".
  2505. enum:
  2506. - Secret
  2507. - ConfigMap
  2508. type: string
  2509. required:
  2510. - name
  2511. - type
  2512. type: object
  2513. url:
  2514. default: kubernetes.default
  2515. description: configures the Kubernetes server Address.
  2516. type: string
  2517. type: object
  2518. required:
  2519. - auth
  2520. type: object
  2521. onepassword:
  2522. description: OnePassword configures this store to sync secrets
  2523. using the 1Password Cloud provider
  2524. properties:
  2525. auth:
  2526. description: Auth defines the information necessary to authenticate
  2527. against OnePassword Connect Server
  2528. properties:
  2529. secretRef:
  2530. description: OnePasswordAuthSecretRef holds secret references
  2531. for 1Password credentials.
  2532. properties:
  2533. connectTokenSecretRef:
  2534. description: The ConnectToken is used for authentication
  2535. to a 1Password Connect Server.
  2536. properties:
  2537. key:
  2538. description: The key of the entry in the Secret
  2539. resource's `data` field to be used. Some instances
  2540. of this field may be defaulted, in others it
  2541. may be required.
  2542. type: string
  2543. name:
  2544. description: The name of the Secret resource being
  2545. referred to.
  2546. type: string
  2547. namespace:
  2548. description: Namespace of the resource being referred
  2549. to. Ignored if referent is not cluster-scoped.
  2550. cluster-scoped defaults to the namespace of
  2551. the referent.
  2552. type: string
  2553. type: object
  2554. required:
  2555. - connectTokenSecretRef
  2556. type: object
  2557. required:
  2558. - secretRef
  2559. type: object
  2560. connectHost:
  2561. description: ConnectHost defines the OnePassword Connect Server
  2562. to connect to
  2563. type: string
  2564. vaults:
  2565. additionalProperties:
  2566. type: integer
  2567. description: Vaults defines which OnePassword vaults to search
  2568. in which order
  2569. type: object
  2570. required:
  2571. - auth
  2572. - connectHost
  2573. - vaults
  2574. type: object
  2575. oracle:
  2576. description: Oracle configures this store to sync secrets using
  2577. Oracle Vault provider
  2578. properties:
  2579. auth:
  2580. description: Auth configures how secret-manager authenticates
  2581. with the Oracle Vault. If empty, use the instance principal,
  2582. otherwise the user credentials specified in Auth.
  2583. properties:
  2584. secretRef:
  2585. description: SecretRef to pass through sensitive information.
  2586. properties:
  2587. fingerprint:
  2588. description: Fingerprint is the fingerprint of the
  2589. API private key.
  2590. properties:
  2591. key:
  2592. description: The key of the entry in the Secret
  2593. resource's `data` field to be used. Some instances
  2594. of this field may be defaulted, in others it
  2595. may be required.
  2596. type: string
  2597. name:
  2598. description: The name of the Secret resource being
  2599. referred to.
  2600. type: string
  2601. namespace:
  2602. description: Namespace of the resource being referred
  2603. to. Ignored if referent is not cluster-scoped.
  2604. cluster-scoped defaults to the namespace of
  2605. the referent.
  2606. type: string
  2607. type: object
  2608. privatekey:
  2609. description: PrivateKey is the user's API Signing
  2610. Key in PEM format, used for authentication.
  2611. properties:
  2612. key:
  2613. description: The key of the entry in the Secret
  2614. resource's `data` field to be used. Some instances
  2615. of this field may be defaulted, in others it
  2616. may be required.
  2617. type: string
  2618. name:
  2619. description: The name of the Secret resource being
  2620. referred to.
  2621. type: string
  2622. namespace:
  2623. description: Namespace of the resource being referred
  2624. to. Ignored if referent is not cluster-scoped.
  2625. cluster-scoped defaults to the namespace of
  2626. the referent.
  2627. type: string
  2628. type: object
  2629. required:
  2630. - fingerprint
  2631. - privatekey
  2632. type: object
  2633. tenancy:
  2634. description: Tenancy is the tenancy OCID where user is
  2635. located.
  2636. type: string
  2637. user:
  2638. description: User is an access OCID specific to the account.
  2639. type: string
  2640. required:
  2641. - secretRef
  2642. - tenancy
  2643. - user
  2644. type: object
  2645. region:
  2646. description: Region is the region where vault is located.
  2647. type: string
  2648. vault:
  2649. description: Vault is the vault's OCID of the specific vault
  2650. where secret is located.
  2651. type: string
  2652. required:
  2653. - region
  2654. - vault
  2655. type: object
  2656. senhasegura:
  2657. description: Senhasegura configures this store to sync secrets
  2658. using senhasegura provider
  2659. properties:
  2660. auth:
  2661. description: Auth defines parameters to authenticate in senhasegura
  2662. properties:
  2663. clientId:
  2664. type: string
  2665. clientSecretSecretRef:
  2666. description: A reference to a specific 'key' within a
  2667. Secret resource, In some instances, `key` is a required
  2668. field.
  2669. properties:
  2670. key:
  2671. description: The key of the entry in the Secret resource's
  2672. `data` field to be used. Some instances of this
  2673. field may be defaulted, in others it may be required.
  2674. type: string
  2675. name:
  2676. description: The name of the Secret resource being
  2677. referred to.
  2678. type: string
  2679. namespace:
  2680. description: Namespace of the resource being referred
  2681. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2682. defaults to the namespace of the referent.
  2683. type: string
  2684. type: object
  2685. required:
  2686. - clientId
  2687. - clientSecretSecretRef
  2688. type: object
  2689. ignoreSslCertificate:
  2690. default: false
  2691. description: IgnoreSslCertificate defines if SSL certificate
  2692. must be ignored
  2693. type: boolean
  2694. module:
  2695. description: Module defines which senhasegura module should
  2696. be used to get secrets
  2697. type: string
  2698. url:
  2699. description: URL of senhasegura
  2700. type: string
  2701. required:
  2702. - auth
  2703. - module
  2704. - url
  2705. type: object
  2706. vault:
  2707. description: Vault configures this store to sync secrets using
  2708. Hashi provider
  2709. properties:
  2710. auth:
  2711. description: Auth configures how secret-manager authenticates
  2712. with the Vault server.
  2713. properties:
  2714. appRole:
  2715. description: AppRole authenticates with Vault using the
  2716. App Role auth mechanism, with the role and secret stored
  2717. in a Kubernetes Secret resource.
  2718. properties:
  2719. path:
  2720. default: approle
  2721. description: 'Path where the App Role authentication
  2722. backend is mounted in Vault, e.g: "approle"'
  2723. type: string
  2724. roleId:
  2725. description: RoleID configured in the App Role authentication
  2726. backend when setting up the authentication backend
  2727. in Vault.
  2728. type: string
  2729. secretRef:
  2730. description: Reference to a key in a Secret that contains
  2731. the App Role secret used to authenticate with Vault.
  2732. The `key` field must be specified and denotes which
  2733. entry within the Secret resource is used as the
  2734. app role secret.
  2735. properties:
  2736. key:
  2737. description: The key of the entry in the Secret
  2738. resource's `data` field to be used. Some instances
  2739. of this field may be defaulted, in others it
  2740. may be required.
  2741. type: string
  2742. name:
  2743. description: The name of the Secret resource being
  2744. referred to.
  2745. type: string
  2746. namespace:
  2747. description: Namespace of the resource being referred
  2748. to. Ignored if referent is not cluster-scoped.
  2749. cluster-scoped defaults to the namespace of
  2750. the referent.
  2751. type: string
  2752. type: object
  2753. required:
  2754. - path
  2755. - roleId
  2756. - secretRef
  2757. type: object
  2758. cert:
  2759. description: Cert authenticates with TLS Certificates
  2760. by passing client certificate, private key and ca certificate
  2761. Cert authentication method
  2762. properties:
  2763. clientCert:
  2764. description: ClientCert is a certificate to authenticate
  2765. using the Cert Vault authentication method
  2766. properties:
  2767. key:
  2768. description: The key of the entry in the Secret
  2769. resource's `data` field to be used. Some instances
  2770. of this field may be defaulted, in others it
  2771. may be required.
  2772. type: string
  2773. name:
  2774. description: The name of the Secret resource being
  2775. referred to.
  2776. type: string
  2777. namespace:
  2778. description: Namespace of the resource being referred
  2779. to. Ignored if referent is not cluster-scoped.
  2780. cluster-scoped defaults to the namespace of
  2781. the referent.
  2782. type: string
  2783. type: object
  2784. secretRef:
  2785. description: SecretRef to a key in a Secret resource
  2786. containing client private key to authenticate with
  2787. Vault using the Cert authentication method
  2788. properties:
  2789. key:
  2790. description: The key of the entry in the Secret
  2791. resource's `data` field to be used. Some instances
  2792. of this field may be defaulted, in others it
  2793. may be required.
  2794. type: string
  2795. name:
  2796. description: The name of the Secret resource being
  2797. referred to.
  2798. type: string
  2799. namespace:
  2800. description: Namespace of the resource being referred
  2801. to. Ignored if referent is not cluster-scoped.
  2802. cluster-scoped defaults to the namespace of
  2803. the referent.
  2804. type: string
  2805. type: object
  2806. type: object
  2807. jwt:
  2808. description: Jwt authenticates with Vault by passing role
  2809. and JWT token using the JWT/OIDC authentication method
  2810. properties:
  2811. kubernetesServiceAccountToken:
  2812. description: Optional ServiceAccountToken specifies
  2813. the Kubernetes service account for which to request
  2814. a token for with the `TokenRequest` API.
  2815. properties:
  2816. audiences:
  2817. description: 'Optional audiences field that will
  2818. be used to request a temporary Kubernetes service
  2819. account token for the service account referenced
  2820. by `serviceAccountRef`. Defaults to a single
  2821. audience `vault` it not specified. Deprecated:
  2822. use serviceAccountRef.Audiences instead'
  2823. items:
  2824. type: string
  2825. type: array
  2826. expirationSeconds:
  2827. description: 'Optional expiration time in seconds
  2828. that will be used to request a temporary Kubernetes
  2829. service account token for the service account
  2830. referenced by `serviceAccountRef`. Deprecated:
  2831. this will be removed in the future. Defaults
  2832. to 10 minutes.'
  2833. format: int64
  2834. type: integer
  2835. serviceAccountRef:
  2836. description: Service account field containing
  2837. the name of a kubernetes ServiceAccount.
  2838. properties:
  2839. audiences:
  2840. description: Audience specifies the `aud`
  2841. claim for the service account token If the
  2842. service account uses a well-known annotation
  2843. for e.g. IRSA or GCP Workload Identity then
  2844. this audiences will be appended to the list
  2845. items:
  2846. type: string
  2847. type: array
  2848. name:
  2849. description: The name of the ServiceAccount
  2850. resource being referred to.
  2851. type: string
  2852. namespace:
  2853. description: Namespace of the resource being
  2854. referred to. Ignored if referent is not
  2855. cluster-scoped. cluster-scoped defaults
  2856. to the namespace of the referent.
  2857. type: string
  2858. required:
  2859. - name
  2860. type: object
  2861. required:
  2862. - serviceAccountRef
  2863. type: object
  2864. path:
  2865. default: jwt
  2866. description: 'Path where the JWT authentication backend
  2867. is mounted in Vault, e.g: "jwt"'
  2868. type: string
  2869. role:
  2870. description: Role is a JWT role to authenticate using
  2871. the JWT/OIDC Vault authentication method
  2872. type: string
  2873. secretRef:
  2874. description: Optional SecretRef that refers to a key
  2875. in a Secret resource containing JWT token to authenticate
  2876. with Vault using the JWT/OIDC authentication method.
  2877. properties:
  2878. key:
  2879. description: The key of the entry in the Secret
  2880. resource's `data` field to be used. Some instances
  2881. of this field may be defaulted, in others it
  2882. may be required.
  2883. type: string
  2884. name:
  2885. description: The name of the Secret resource being
  2886. referred to.
  2887. type: string
  2888. namespace:
  2889. description: Namespace of the resource being referred
  2890. to. Ignored if referent is not cluster-scoped.
  2891. cluster-scoped defaults to the namespace of
  2892. the referent.
  2893. type: string
  2894. type: object
  2895. required:
  2896. - path
  2897. type: object
  2898. kubernetes:
  2899. description: Kubernetes authenticates with Vault by passing
  2900. the ServiceAccount token stored in the named Secret
  2901. resource to the Vault server.
  2902. properties:
  2903. mountPath:
  2904. default: kubernetes
  2905. description: 'Path where the Kubernetes authentication
  2906. backend is mounted in Vault, e.g: "kubernetes"'
  2907. type: string
  2908. role:
  2909. description: A required field containing the Vault
  2910. Role to assume. A Role binds a Kubernetes ServiceAccount
  2911. with a set of Vault policies.
  2912. type: string
  2913. secretRef:
  2914. description: Optional secret field containing a Kubernetes
  2915. ServiceAccount JWT used for authenticating with
  2916. Vault. If a name is specified without a key, `token`
  2917. is the default. If one is not specified, the one
  2918. bound to the controller will be used.
  2919. properties:
  2920. key:
  2921. description: The key of the entry in the Secret
  2922. resource's `data` field to be used. Some instances
  2923. of this field may be defaulted, in others it
  2924. may be required.
  2925. type: string
  2926. name:
  2927. description: The name of the Secret resource being
  2928. referred to.
  2929. type: string
  2930. namespace:
  2931. description: Namespace of the resource being referred
  2932. to. Ignored if referent is not cluster-scoped.
  2933. cluster-scoped defaults to the namespace of
  2934. the referent.
  2935. type: string
  2936. type: object
  2937. serviceAccountRef:
  2938. description: Optional service account field containing
  2939. the name of a kubernetes ServiceAccount. If the
  2940. service account is specified, the service account
  2941. secret token JWT will be used for authenticating
  2942. with Vault. If the service account selector is not
  2943. supplied, the secretRef will be used instead.
  2944. properties:
  2945. audiences:
  2946. description: Audience specifies the `aud` claim
  2947. for the service account token If the service
  2948. account uses a well-known annotation for e.g.
  2949. IRSA or GCP Workload Identity then this audiences
  2950. will be appended to the list
  2951. items:
  2952. type: string
  2953. type: array
  2954. name:
  2955. description: The name of the ServiceAccount resource
  2956. being referred to.
  2957. type: string
  2958. namespace:
  2959. description: Namespace of the resource being referred
  2960. to. Ignored if referent is not cluster-scoped.
  2961. cluster-scoped defaults to the namespace of
  2962. the referent.
  2963. type: string
  2964. required:
  2965. - name
  2966. type: object
  2967. required:
  2968. - mountPath
  2969. - role
  2970. type: object
  2971. ldap:
  2972. description: Ldap authenticates with Vault by passing
  2973. username/password pair using the LDAP authentication
  2974. method
  2975. properties:
  2976. path:
  2977. default: ldap
  2978. description: 'Path where the LDAP authentication backend
  2979. is mounted in Vault, e.g: "ldap"'
  2980. type: string
  2981. secretRef:
  2982. description: SecretRef to a key in a Secret resource
  2983. containing password for the LDAP user used to authenticate
  2984. with Vault using the LDAP authentication method
  2985. properties:
  2986. key:
  2987. description: The key of the entry in the Secret
  2988. resource's `data` field to be used. Some instances
  2989. of this field may be defaulted, in others it
  2990. may be required.
  2991. type: string
  2992. name:
  2993. description: The name of the Secret resource being
  2994. referred to.
  2995. type: string
  2996. namespace:
  2997. description: Namespace of the resource being referred
  2998. to. Ignored if referent is not cluster-scoped.
  2999. cluster-scoped defaults to the namespace of
  3000. the referent.
  3001. type: string
  3002. type: object
  3003. username:
  3004. description: Username is a LDAP user name used to
  3005. authenticate using the LDAP Vault authentication
  3006. method
  3007. type: string
  3008. required:
  3009. - path
  3010. - username
  3011. type: object
  3012. tokenSecretRef:
  3013. description: TokenSecretRef authenticates with Vault by
  3014. presenting a token.
  3015. properties:
  3016. key:
  3017. description: The key of the entry in the Secret resource's
  3018. `data` field to be used. Some instances of this
  3019. field may be defaulted, in others it may be required.
  3020. type: string
  3021. name:
  3022. description: The name of the Secret resource being
  3023. referred to.
  3024. type: string
  3025. namespace:
  3026. description: Namespace of the resource being referred
  3027. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3028. defaults to the namespace of the referent.
  3029. type: string
  3030. type: object
  3031. type: object
  3032. caBundle:
  3033. description: PEM encoded CA bundle used to validate Vault
  3034. server certificate. Only used if the Server URL is using
  3035. HTTPS protocol. This parameter is ignored for plain HTTP
  3036. protocol connection. If not set the system root certificates
  3037. are used to validate the TLS connection.
  3038. format: byte
  3039. type: string
  3040. caProvider:
  3041. description: The provider for the CA bundle to use to validate
  3042. Vault server certificate.
  3043. properties:
  3044. key:
  3045. description: The key where the CA certificate can be found
  3046. in the Secret or ConfigMap.
  3047. type: string
  3048. name:
  3049. description: The name of the object located at the provider
  3050. type.
  3051. type: string
  3052. namespace:
  3053. description: The namespace the Provider type is in. Can
  3054. only be defined when used in a ClusterSecretStore.
  3055. type: string
  3056. type:
  3057. description: The type of provider to use such as "Secret",
  3058. or "ConfigMap".
  3059. enum:
  3060. - Secret
  3061. - ConfigMap
  3062. type: string
  3063. required:
  3064. - name
  3065. - type
  3066. type: object
  3067. forwardInconsistent:
  3068. description: ForwardInconsistent tells Vault to forward read-after-write
  3069. requests to the Vault leader instead of simply retrying
  3070. within a loop. This can increase performance if the option
  3071. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  3072. type: boolean
  3073. namespace:
  3074. description: 'Name of the vault namespace. Namespaces is a
  3075. set of features within Vault Enterprise that allows Vault
  3076. environments to support Secure Multi-tenancy. e.g: "ns1".
  3077. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  3078. type: string
  3079. path:
  3080. description: 'Path is the mount path of the Vault KV backend
  3081. endpoint, e.g: "secret". The v2 KV secret engine version
  3082. specific "/data" path suffix for fetching secrets from Vault
  3083. is optional and will be appended if not present in specified
  3084. path.'
  3085. type: string
  3086. readYourWrites:
  3087. description: ReadYourWrites ensures isolated read-after-write
  3088. semantics by providing discovered cluster replication states
  3089. in each request. More information about eventual consistency
  3090. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  3091. type: boolean
  3092. server:
  3093. description: 'Server is the connection address for the Vault
  3094. server, e.g: "https://vault.example.com:8200".'
  3095. type: string
  3096. version:
  3097. default: v2
  3098. description: Version is the Vault KV secret engine version.
  3099. This can be either "v1" or "v2". Version defaults to "v2".
  3100. enum:
  3101. - v1
  3102. - v2
  3103. type: string
  3104. required:
  3105. - auth
  3106. - server
  3107. type: object
  3108. webhook:
  3109. description: Webhook configures this store to sync secrets using
  3110. a generic templated webhook
  3111. properties:
  3112. body:
  3113. description: Body
  3114. type: string
  3115. caBundle:
  3116. description: PEM encoded CA bundle used to validate webhook
  3117. server certificate. Only used if the Server URL is using
  3118. HTTPS protocol. This parameter is ignored for plain HTTP
  3119. protocol connection. If not set the system root certificates
  3120. are used to validate the TLS connection.
  3121. format: byte
  3122. type: string
  3123. caProvider:
  3124. description: The provider for the CA bundle to use to validate
  3125. webhook server certificate.
  3126. properties:
  3127. key:
  3128. description: The key the value inside of the provider
  3129. type to use, only used with "Secret" type
  3130. type: string
  3131. name:
  3132. description: The name of the object located at the provider
  3133. type.
  3134. type: string
  3135. namespace:
  3136. description: The namespace the Provider type is in.
  3137. type: string
  3138. type:
  3139. description: The type of provider to use such as "Secret",
  3140. or "ConfigMap".
  3141. enum:
  3142. - Secret
  3143. - ConfigMap
  3144. type: string
  3145. required:
  3146. - name
  3147. - type
  3148. type: object
  3149. headers:
  3150. additionalProperties:
  3151. type: string
  3152. description: Headers
  3153. type: object
  3154. method:
  3155. description: Webhook Method
  3156. type: string
  3157. result:
  3158. description: Result formatting
  3159. properties:
  3160. jsonPath:
  3161. description: Json path of return value
  3162. type: string
  3163. type: object
  3164. secrets:
  3165. description: Secrets to fill in templates These secrets will
  3166. be passed to the templating function as key value pairs
  3167. under the given name
  3168. items:
  3169. properties:
  3170. name:
  3171. description: Name of this secret in templates
  3172. type: string
  3173. secretRef:
  3174. description: Secret ref to fill in credentials
  3175. properties:
  3176. key:
  3177. description: The key of the entry in the Secret
  3178. resource's `data` field to be used. Some instances
  3179. of this field may be defaulted, in others it may
  3180. be required.
  3181. type: string
  3182. name:
  3183. description: The name of the Secret resource being
  3184. referred to.
  3185. type: string
  3186. namespace:
  3187. description: Namespace of the resource being referred
  3188. to. Ignored if referent is not cluster-scoped.
  3189. cluster-scoped defaults to the namespace of the
  3190. referent.
  3191. type: string
  3192. type: object
  3193. required:
  3194. - name
  3195. - secretRef
  3196. type: object
  3197. type: array
  3198. timeout:
  3199. description: Timeout
  3200. type: string
  3201. url:
  3202. description: Webhook url to call
  3203. type: string
  3204. required:
  3205. - result
  3206. - url
  3207. type: object
  3208. yandexcertificatemanager:
  3209. description: YandexCertificateManager configures this store to
  3210. sync secrets using Yandex Certificate Manager provider
  3211. properties:
  3212. apiEndpoint:
  3213. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3214. type: string
  3215. auth:
  3216. description: Auth defines the information necessary to authenticate
  3217. against Yandex Certificate Manager
  3218. properties:
  3219. authorizedKeySecretRef:
  3220. description: The authorized key used for authentication
  3221. properties:
  3222. key:
  3223. description: The key of the entry in the Secret resource's
  3224. `data` field to be used. Some instances of this
  3225. field may be defaulted, in others it may be required.
  3226. type: string
  3227. name:
  3228. description: The name of the Secret resource being
  3229. referred to.
  3230. type: string
  3231. namespace:
  3232. description: Namespace of the resource being referred
  3233. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3234. defaults to the namespace of the referent.
  3235. type: string
  3236. type: object
  3237. type: object
  3238. caProvider:
  3239. description: The provider for the CA bundle to use to validate
  3240. Yandex.Cloud server certificate.
  3241. properties:
  3242. certSecretRef:
  3243. description: A reference to a specific 'key' within a
  3244. Secret resource, In some instances, `key` is a required
  3245. field.
  3246. properties:
  3247. key:
  3248. description: The key of the entry in the Secret resource's
  3249. `data` field to be used. Some instances of this
  3250. field may be defaulted, in others it may be required.
  3251. type: string
  3252. name:
  3253. description: The name of the Secret resource being
  3254. referred to.
  3255. type: string
  3256. namespace:
  3257. description: Namespace of the resource being referred
  3258. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3259. defaults to the namespace of the referent.
  3260. type: string
  3261. type: object
  3262. type: object
  3263. required:
  3264. - auth
  3265. type: object
  3266. yandexlockbox:
  3267. description: YandexLockbox configures this store to sync secrets
  3268. using Yandex Lockbox provider
  3269. properties:
  3270. apiEndpoint:
  3271. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3272. type: string
  3273. auth:
  3274. description: Auth defines the information necessary to authenticate
  3275. against Yandex Lockbox
  3276. properties:
  3277. authorizedKeySecretRef:
  3278. description: The authorized key used for authentication
  3279. properties:
  3280. key:
  3281. description: The key of the entry in the Secret resource's
  3282. `data` field to be used. Some instances of this
  3283. field may be defaulted, in others it may be required.
  3284. type: string
  3285. name:
  3286. description: The name of the Secret resource being
  3287. referred to.
  3288. type: string
  3289. namespace:
  3290. description: Namespace of the resource being referred
  3291. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3292. defaults to the namespace of the referent.
  3293. type: string
  3294. type: object
  3295. type: object
  3296. caProvider:
  3297. description: The provider for the CA bundle to use to validate
  3298. Yandex.Cloud server certificate.
  3299. properties:
  3300. certSecretRef:
  3301. description: A reference to a specific 'key' within a
  3302. Secret resource, In some instances, `key` is a required
  3303. field.
  3304. properties:
  3305. key:
  3306. description: The key of the entry in the Secret resource's
  3307. `data` field to be used. Some instances of this
  3308. field may be defaulted, in others it may be required.
  3309. type: string
  3310. name:
  3311. description: The name of the Secret resource being
  3312. referred to.
  3313. type: string
  3314. namespace:
  3315. description: Namespace of the resource being referred
  3316. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3317. defaults to the namespace of the referent.
  3318. type: string
  3319. type: object
  3320. type: object
  3321. required:
  3322. - auth
  3323. type: object
  3324. type: object
  3325. refreshInterval:
  3326. description: Used to configure store refresh interval in seconds.
  3327. Empty or 0 will default to the controller config.
  3328. type: integer
  3329. retrySettings:
  3330. description: Used to configure http retries if failed
  3331. properties:
  3332. maxRetries:
  3333. format: int32
  3334. type: integer
  3335. retryInterval:
  3336. type: string
  3337. type: object
  3338. required:
  3339. - provider
  3340. type: object
  3341. status:
  3342. description: SecretStoreStatus defines the observed state of the SecretStore.
  3343. properties:
  3344. capabilities:
  3345. description: SecretStoreCapabilities defines the possible operations
  3346. a SecretStore can do.
  3347. type: string
  3348. conditions:
  3349. items:
  3350. properties:
  3351. lastTransitionTime:
  3352. format: date-time
  3353. type: string
  3354. message:
  3355. type: string
  3356. reason:
  3357. type: string
  3358. status:
  3359. type: string
  3360. type:
  3361. type: string
  3362. required:
  3363. - status
  3364. - type
  3365. type: object
  3366. type: array
  3367. type: object
  3368. type: object
  3369. served: true
  3370. storage: true
  3371. subresources:
  3372. status: {}