external-secrets.io_secretstores.yaml 177 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.9.2
  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.conditions[?(@.type=="Ready")].status
  1516. name: Ready
  1517. type: string
  1518. name: v1beta1
  1519. schema:
  1520. openAPIV3Schema:
  1521. description: SecretStore represents a secure external location for storing
  1522. secrets, which can be referenced as part of `storeRef` fields.
  1523. properties:
  1524. apiVersion:
  1525. description: 'APIVersion defines the versioned schema of this representation
  1526. of an object. Servers should convert recognized schemas to the latest
  1527. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1528. type: string
  1529. kind:
  1530. description: 'Kind is a string value representing the REST resource this
  1531. object represents. Servers may infer this from the endpoint the client
  1532. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1533. type: string
  1534. metadata:
  1535. type: object
  1536. spec:
  1537. description: SecretStoreSpec defines the desired state of SecretStore.
  1538. properties:
  1539. controller:
  1540. description: 'Used to select the correct KES controller (think: ingress.ingressClassName)
  1541. The KES controller is instantiated with a specific controller name
  1542. and filters ES based on this property'
  1543. type: string
  1544. provider:
  1545. description: Used to configure the provider. Only one provider may
  1546. be set
  1547. maxProperties: 1
  1548. minProperties: 1
  1549. properties:
  1550. akeyless:
  1551. description: Akeyless configures this store to sync secrets using
  1552. Akeyless Vault provider
  1553. properties:
  1554. akeylessGWApiURL:
  1555. description: Akeyless GW API Url from which the secrets to
  1556. be fetched from.
  1557. type: string
  1558. authSecretRef:
  1559. description: Auth configures how the operator authenticates
  1560. with Akeyless.
  1561. properties:
  1562. kubernetesAuth:
  1563. description: Kubernetes authenticates with Akeyless by
  1564. passing the ServiceAccount token stored in the named
  1565. Secret resource.
  1566. properties:
  1567. accessID:
  1568. description: the Akeyless Kubernetes auth-method access-id
  1569. type: string
  1570. k8sConfName:
  1571. description: Kubernetes-auth configuration name in
  1572. Akeyless-Gateway
  1573. type: string
  1574. secretRef:
  1575. description: Optional secret field containing a Kubernetes
  1576. ServiceAccount JWT used for authenticating with
  1577. Akeyless. If a name is specified without a key,
  1578. `token` is the default. If one is not specified,
  1579. the one bound to the controller will be used.
  1580. properties:
  1581. key:
  1582. description: The key of the entry in the Secret
  1583. resource's `data` field to be used. Some instances
  1584. of this field may be defaulted, in others it
  1585. may be required.
  1586. type: string
  1587. name:
  1588. description: The name of the Secret resource being
  1589. referred to.
  1590. type: string
  1591. namespace:
  1592. description: Namespace of the resource being referred
  1593. to. Ignored if referent is not cluster-scoped.
  1594. cluster-scoped defaults to the namespace of
  1595. the referent.
  1596. type: string
  1597. type: object
  1598. serviceAccountRef:
  1599. description: Optional service account field containing
  1600. the name of a kubernetes ServiceAccount. If the
  1601. service account is specified, the service account
  1602. secret token JWT will be used for authenticating
  1603. with Akeyless. If the service account selector is
  1604. not supplied, the secretRef will be used instead.
  1605. properties:
  1606. audiences:
  1607. description: Audience specifies the `aud` claim
  1608. for the service account token If the service
  1609. account uses a well-known annotation for e.g.
  1610. IRSA or GCP Workload Identity then this audiences
  1611. will be appended to the list
  1612. items:
  1613. type: string
  1614. type: array
  1615. name:
  1616. description: The name of the ServiceAccount resource
  1617. being referred to.
  1618. type: string
  1619. namespace:
  1620. description: Namespace of the resource being referred
  1621. to. Ignored if referent is not cluster-scoped.
  1622. cluster-scoped defaults to the namespace of
  1623. the referent.
  1624. type: string
  1625. required:
  1626. - name
  1627. type: object
  1628. required:
  1629. - accessID
  1630. - k8sConfName
  1631. type: object
  1632. secretRef:
  1633. description: Reference to a Secret that contains the details
  1634. to authenticate with Akeyless.
  1635. properties:
  1636. accessID:
  1637. description: The SecretAccessID is used for authentication
  1638. properties:
  1639. key:
  1640. description: The key of the entry in the Secret
  1641. resource's `data` field to be used. Some instances
  1642. of this field may be defaulted, in others it
  1643. may be required.
  1644. type: string
  1645. name:
  1646. description: The name of the Secret resource being
  1647. referred to.
  1648. type: string
  1649. namespace:
  1650. description: Namespace of the resource being referred
  1651. to. Ignored if referent is not cluster-scoped.
  1652. cluster-scoped defaults to the namespace of
  1653. the referent.
  1654. type: string
  1655. type: object
  1656. accessType:
  1657. description: A reference to a specific 'key' within
  1658. a Secret resource, In some instances, `key` is a
  1659. required field.
  1660. properties:
  1661. key:
  1662. description: The key of the entry in the Secret
  1663. resource's `data` field to be used. Some instances
  1664. of this field may be defaulted, in others it
  1665. may be required.
  1666. type: string
  1667. name:
  1668. description: The name of the Secret resource being
  1669. referred to.
  1670. type: string
  1671. namespace:
  1672. description: Namespace of the resource being referred
  1673. to. Ignored if referent is not cluster-scoped.
  1674. cluster-scoped defaults to the namespace of
  1675. the referent.
  1676. type: string
  1677. type: object
  1678. accessTypeParam:
  1679. description: A reference to a specific 'key' within
  1680. a Secret resource, In some instances, `key` is a
  1681. required field.
  1682. properties:
  1683. key:
  1684. description: The key of the entry in the Secret
  1685. resource's `data` field to be used. Some instances
  1686. of this field may be defaulted, in others it
  1687. may be required.
  1688. type: string
  1689. name:
  1690. description: The name of the Secret resource being
  1691. referred to.
  1692. type: string
  1693. namespace:
  1694. description: Namespace of the resource being referred
  1695. to. Ignored if referent is not cluster-scoped.
  1696. cluster-scoped defaults to the namespace of
  1697. the referent.
  1698. type: string
  1699. type: object
  1700. type: object
  1701. type: object
  1702. required:
  1703. - akeylessGWApiURL
  1704. - authSecretRef
  1705. type: object
  1706. alibaba:
  1707. description: Alibaba configures this store to sync secrets using
  1708. Alibaba Cloud provider
  1709. properties:
  1710. auth:
  1711. description: AlibabaAuth contains a secretRef for credentials.
  1712. properties:
  1713. secretRef:
  1714. description: AlibabaAuthSecretRef holds secret references
  1715. for Alibaba credentials.
  1716. properties:
  1717. accessKeyIDSecretRef:
  1718. description: The AccessKeyID is used for authentication
  1719. properties:
  1720. key:
  1721. description: The key of the entry in the Secret
  1722. resource's `data` field to be used. Some instances
  1723. of this field may be defaulted, in others it
  1724. may be required.
  1725. type: string
  1726. name:
  1727. description: The name of the Secret resource being
  1728. referred to.
  1729. type: string
  1730. namespace:
  1731. description: Namespace of the resource being referred
  1732. to. Ignored if referent is not cluster-scoped.
  1733. cluster-scoped defaults to the namespace of
  1734. the referent.
  1735. type: string
  1736. type: object
  1737. accessKeySecretSecretRef:
  1738. description: The AccessKeySecret is used for authentication
  1739. properties:
  1740. key:
  1741. description: The key of the entry in the Secret
  1742. resource's `data` field to be used. Some instances
  1743. of this field may be defaulted, in others it
  1744. may be required.
  1745. type: string
  1746. name:
  1747. description: The name of the Secret resource being
  1748. referred to.
  1749. type: string
  1750. namespace:
  1751. description: Namespace of the resource being referred
  1752. to. Ignored if referent is not cluster-scoped.
  1753. cluster-scoped defaults to the namespace of
  1754. the referent.
  1755. type: string
  1756. type: object
  1757. required:
  1758. - accessKeyIDSecretRef
  1759. - accessKeySecretSecretRef
  1760. type: object
  1761. required:
  1762. - secretRef
  1763. type: object
  1764. endpoint:
  1765. type: string
  1766. regionID:
  1767. description: Alibaba Region to be used for the provider
  1768. type: string
  1769. required:
  1770. - auth
  1771. - regionID
  1772. type: object
  1773. aws:
  1774. description: AWS configures this store to sync secrets using AWS
  1775. Secret Manager provider
  1776. properties:
  1777. auth:
  1778. description: 'Auth defines the information necessary to authenticate
  1779. against AWS if not set aws sdk will infer credentials from
  1780. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  1781. properties:
  1782. jwt:
  1783. description: Authenticate against AWS using service account
  1784. tokens.
  1785. properties:
  1786. serviceAccountRef:
  1787. description: A reference to a ServiceAccount resource.
  1788. properties:
  1789. audiences:
  1790. description: Audience specifies the `aud` claim
  1791. for the service account token If the service
  1792. account uses a well-known annotation for e.g.
  1793. IRSA or GCP Workload Identity then this audiences
  1794. will be appended to the list
  1795. items:
  1796. type: string
  1797. type: array
  1798. name:
  1799. description: The name of the ServiceAccount resource
  1800. being referred to.
  1801. type: string
  1802. namespace:
  1803. description: Namespace of the resource being referred
  1804. to. Ignored if referent is not cluster-scoped.
  1805. cluster-scoped defaults to the namespace of
  1806. the referent.
  1807. type: string
  1808. required:
  1809. - name
  1810. type: object
  1811. type: object
  1812. secretRef:
  1813. description: AWSAuthSecretRef holds secret references
  1814. for AWS credentials both AccessKeyID and SecretAccessKey
  1815. must be defined in order to properly authenticate.
  1816. properties:
  1817. accessKeyIDSecretRef:
  1818. description: The AccessKeyID is used for authentication
  1819. properties:
  1820. key:
  1821. description: The key of the entry in the Secret
  1822. resource's `data` field to be used. Some instances
  1823. of this field may be defaulted, in others it
  1824. may be required.
  1825. type: string
  1826. name:
  1827. description: The name of the Secret resource being
  1828. referred to.
  1829. type: string
  1830. namespace:
  1831. description: Namespace of the resource being referred
  1832. to. Ignored if referent is not cluster-scoped.
  1833. cluster-scoped defaults to the namespace of
  1834. the referent.
  1835. type: string
  1836. type: object
  1837. secretAccessKeySecretRef:
  1838. description: The SecretAccessKey is used for authentication
  1839. properties:
  1840. key:
  1841. description: The key of the entry in the Secret
  1842. resource's `data` field to be used. Some instances
  1843. of this field may be defaulted, in others it
  1844. may be required.
  1845. type: string
  1846. name:
  1847. description: The name of the Secret resource being
  1848. referred to.
  1849. type: string
  1850. namespace:
  1851. description: Namespace of the resource being referred
  1852. to. Ignored if referent is not cluster-scoped.
  1853. cluster-scoped defaults to the namespace of
  1854. the referent.
  1855. type: string
  1856. type: object
  1857. type: object
  1858. type: object
  1859. region:
  1860. description: AWS Region to be used for the provider
  1861. type: string
  1862. role:
  1863. description: Role is a Role ARN which the SecretManager provider
  1864. will assume
  1865. type: string
  1866. service:
  1867. description: Service defines which service should be used
  1868. to fetch the secrets
  1869. enum:
  1870. - SecretsManager
  1871. - ParameterStore
  1872. type: string
  1873. required:
  1874. - region
  1875. - service
  1876. type: object
  1877. azurekv:
  1878. description: AzureKV configures this store to sync secrets using
  1879. Azure Key Vault provider
  1880. properties:
  1881. authSecretRef:
  1882. description: Auth configures how the operator authenticates
  1883. with Azure. Required for ServicePrincipal auth type.
  1884. properties:
  1885. clientId:
  1886. description: The Azure clientId of the service principle
  1887. used for authentication.
  1888. properties:
  1889. key:
  1890. description: The key of the entry in the Secret resource's
  1891. `data` field to be used. Some instances of this
  1892. field may be defaulted, in others it may be required.
  1893. type: string
  1894. name:
  1895. description: The name of the Secret resource being
  1896. referred to.
  1897. type: string
  1898. namespace:
  1899. description: Namespace of the resource being referred
  1900. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1901. defaults to the namespace of the referent.
  1902. type: string
  1903. type: object
  1904. clientSecret:
  1905. description: The Azure ClientSecret of the service principle
  1906. used for authentication.
  1907. properties:
  1908. key:
  1909. description: The key of the entry in the Secret resource's
  1910. `data` field to be used. Some instances of this
  1911. field may be defaulted, in others it may be required.
  1912. type: string
  1913. name:
  1914. description: The name of the Secret resource being
  1915. referred to.
  1916. type: string
  1917. namespace:
  1918. description: Namespace of the resource being referred
  1919. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1920. defaults to the namespace of the referent.
  1921. type: string
  1922. type: object
  1923. type: object
  1924. authType:
  1925. default: ServicePrincipal
  1926. description: 'Auth type defines how to authenticate to the
  1927. keyvault service. Valid values are: - "ServicePrincipal"
  1928. (default): Using a service principal (tenantId, clientId,
  1929. clientSecret) - "ManagedIdentity": Using Managed Identity
  1930. assigned to the pod (see aad-pod-identity)'
  1931. enum:
  1932. - ServicePrincipal
  1933. - ManagedIdentity
  1934. - WorkloadIdentity
  1935. type: string
  1936. environmentType:
  1937. default: PublicCloud
  1938. description: 'EnvironmentType specifies the Azure cloud environment
  1939. endpoints to use for connecting and authenticating with
  1940. Azure. By default it points to the public cloud AAD endpoint.
  1941. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  1942. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  1943. enum:
  1944. - PublicCloud
  1945. - USGovernmentCloud
  1946. - ChinaCloud
  1947. - GermanCloud
  1948. type: string
  1949. identityId:
  1950. description: If multiple Managed Identity is assigned to the
  1951. pod, you can select the one to be used
  1952. type: string
  1953. serviceAccountRef:
  1954. description: ServiceAccountRef specified the service account
  1955. that should be used when authenticating with WorkloadIdentity.
  1956. properties:
  1957. audiences:
  1958. description: Audience specifies the `aud` claim for the
  1959. service account token If the service account uses a
  1960. well-known annotation for e.g. IRSA or GCP Workload
  1961. Identity then this audiences will be appended to the
  1962. list
  1963. items:
  1964. type: string
  1965. type: array
  1966. name:
  1967. description: The name of the ServiceAccount resource being
  1968. referred to.
  1969. type: string
  1970. namespace:
  1971. description: Namespace of the resource being referred
  1972. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1973. defaults to the namespace of the referent.
  1974. type: string
  1975. required:
  1976. - name
  1977. type: object
  1978. tenantId:
  1979. description: TenantID configures the Azure Tenant to send
  1980. requests to. Required for ServicePrincipal auth type.
  1981. type: string
  1982. vaultUrl:
  1983. description: Vault Url from which the secrets to be fetched
  1984. from.
  1985. type: string
  1986. required:
  1987. - vaultUrl
  1988. type: object
  1989. doppler:
  1990. description: Doppler configures this store to sync secrets using
  1991. the Doppler provider
  1992. properties:
  1993. auth:
  1994. description: Auth configures how the Operator authenticates
  1995. with the Doppler API
  1996. properties:
  1997. secretRef:
  1998. properties:
  1999. dopplerToken:
  2000. description: The DopplerToken is used for authentication.
  2001. See https://docs.doppler.com/reference/api#authentication
  2002. for auth token types. The Key attribute defaults
  2003. to dopplerToken if not specified.
  2004. properties:
  2005. key:
  2006. description: The key of the entry in the Secret
  2007. resource's `data` field to be used. Some instances
  2008. of this field may be defaulted, in others it
  2009. may be required.
  2010. type: string
  2011. name:
  2012. description: The name of the Secret resource being
  2013. referred to.
  2014. type: string
  2015. namespace:
  2016. description: Namespace of the resource being referred
  2017. to. Ignored if referent is not cluster-scoped.
  2018. cluster-scoped defaults to the namespace of
  2019. the referent.
  2020. type: string
  2021. type: object
  2022. required:
  2023. - dopplerToken
  2024. type: object
  2025. required:
  2026. - secretRef
  2027. type: object
  2028. config:
  2029. description: Doppler config (required if not using a Service
  2030. Token)
  2031. type: string
  2032. format:
  2033. description: Format enables the downloading of secrets as
  2034. a file (string)
  2035. enum:
  2036. - json
  2037. - dotnet-json
  2038. - env
  2039. - yaml
  2040. - docker
  2041. type: string
  2042. nameTransformer:
  2043. description: Environment variable compatible name transforms
  2044. that change secret names to a different format
  2045. enum:
  2046. - upper-camel
  2047. - camel
  2048. - lower-snake
  2049. - tf-var
  2050. - dotnet-env
  2051. type: string
  2052. project:
  2053. description: Doppler project (required if not using a Service
  2054. Token)
  2055. type: string
  2056. required:
  2057. - auth
  2058. type: object
  2059. fake:
  2060. description: Fake configures a store with static key/value pairs
  2061. properties:
  2062. data:
  2063. items:
  2064. properties:
  2065. key:
  2066. type: string
  2067. value:
  2068. type: string
  2069. valueMap:
  2070. additionalProperties:
  2071. type: string
  2072. type: object
  2073. version:
  2074. type: string
  2075. required:
  2076. - key
  2077. type: object
  2078. type: array
  2079. required:
  2080. - data
  2081. type: object
  2082. gcpsm:
  2083. description: GCPSM configures this store to sync secrets using
  2084. Google Cloud Platform Secret Manager provider
  2085. properties:
  2086. auth:
  2087. description: Auth defines the information necessary to authenticate
  2088. against GCP
  2089. properties:
  2090. secretRef:
  2091. properties:
  2092. secretAccessKeySecretRef:
  2093. description: The SecretAccessKey is used for authentication
  2094. properties:
  2095. key:
  2096. description: The key of the entry in the Secret
  2097. resource's `data` field to be used. Some instances
  2098. of this field may be defaulted, in others it
  2099. may be required.
  2100. type: string
  2101. name:
  2102. description: The name of the Secret resource being
  2103. referred to.
  2104. type: string
  2105. namespace:
  2106. description: Namespace of the resource being referred
  2107. to. Ignored if referent is not cluster-scoped.
  2108. cluster-scoped defaults to the namespace of
  2109. the referent.
  2110. type: string
  2111. type: object
  2112. type: object
  2113. workloadIdentity:
  2114. properties:
  2115. clusterLocation:
  2116. type: string
  2117. clusterName:
  2118. type: string
  2119. clusterProjectID:
  2120. type: string
  2121. serviceAccountRef:
  2122. description: A reference to a ServiceAccount resource.
  2123. properties:
  2124. audiences:
  2125. description: Audience specifies the `aud` claim
  2126. for the service account token If the service
  2127. account uses a well-known annotation for e.g.
  2128. IRSA or GCP Workload Identity then this audiences
  2129. will be appended to the list
  2130. items:
  2131. type: string
  2132. type: array
  2133. name:
  2134. description: The name of the ServiceAccount resource
  2135. being referred to.
  2136. type: string
  2137. namespace:
  2138. description: Namespace of the resource being referred
  2139. to. Ignored if referent is not cluster-scoped.
  2140. cluster-scoped defaults to the namespace of
  2141. the referent.
  2142. type: string
  2143. required:
  2144. - name
  2145. type: object
  2146. required:
  2147. - clusterLocation
  2148. - clusterName
  2149. - serviceAccountRef
  2150. type: object
  2151. type: object
  2152. projectID:
  2153. description: ProjectID project where secret is located
  2154. type: string
  2155. type: object
  2156. gitlab:
  2157. description: Gitlab configures this store to sync secrets using
  2158. Gitlab Variables provider
  2159. properties:
  2160. auth:
  2161. description: Auth configures how secret-manager authenticates
  2162. with a GitLab instance.
  2163. properties:
  2164. SecretRef:
  2165. properties:
  2166. accessToken:
  2167. description: AccessToken is used for authentication.
  2168. properties:
  2169. key:
  2170. description: The key of the entry in the Secret
  2171. resource's `data` field to be used. Some instances
  2172. of this field may be defaulted, in others it
  2173. may be required.
  2174. type: string
  2175. name:
  2176. description: The name of the Secret resource being
  2177. referred to.
  2178. type: string
  2179. namespace:
  2180. description: Namespace of the resource being referred
  2181. to. Ignored if referent is not cluster-scoped.
  2182. cluster-scoped defaults to the namespace of
  2183. the referent.
  2184. type: string
  2185. type: object
  2186. type: object
  2187. required:
  2188. - SecretRef
  2189. type: object
  2190. projectID:
  2191. description: ProjectID specifies a project where secrets are
  2192. located.
  2193. type: string
  2194. url:
  2195. description: URL configures the GitLab instance URL. Defaults
  2196. to https://gitlab.com/.
  2197. type: string
  2198. required:
  2199. - auth
  2200. type: object
  2201. ibm:
  2202. description: IBM configures this store to sync secrets using IBM
  2203. Cloud provider
  2204. properties:
  2205. auth:
  2206. description: Auth configures how secret-manager authenticates
  2207. with the IBM secrets manager.
  2208. maxProperties: 1
  2209. minProperties: 1
  2210. properties:
  2211. containerAuth:
  2212. description: IBM Container-based auth with IAM Trusted
  2213. Profile.
  2214. properties:
  2215. iamEndpoint:
  2216. type: string
  2217. profile:
  2218. description: the IBM Trusted Profile
  2219. type: string
  2220. tokenLocation:
  2221. description: Location the token is mounted on the
  2222. pod
  2223. type: string
  2224. required:
  2225. - profile
  2226. type: object
  2227. secretRef:
  2228. properties:
  2229. secretApiKeySecretRef:
  2230. description: The SecretAccessKey is used for authentication
  2231. properties:
  2232. key:
  2233. description: The key of the entry in the Secret
  2234. resource's `data` field to be used. Some instances
  2235. of this field may be defaulted, in others it
  2236. may be required.
  2237. type: string
  2238. name:
  2239. description: The name of the Secret resource being
  2240. referred to.
  2241. type: string
  2242. namespace:
  2243. description: Namespace of the resource being referred
  2244. to. Ignored if referent is not cluster-scoped.
  2245. cluster-scoped defaults to the namespace of
  2246. the referent.
  2247. type: string
  2248. type: object
  2249. type: object
  2250. type: object
  2251. serviceUrl:
  2252. description: ServiceURL is the Endpoint URL that is specific
  2253. to the Secrets Manager service instance
  2254. type: string
  2255. required:
  2256. - auth
  2257. type: object
  2258. kubernetes:
  2259. description: Kubernetes configures this store to sync secrets
  2260. using a Kubernetes cluster provider
  2261. properties:
  2262. auth:
  2263. description: Auth configures how secret-manager authenticates
  2264. with a Kubernetes instance.
  2265. maxProperties: 1
  2266. minProperties: 1
  2267. properties:
  2268. cert:
  2269. description: has both clientCert and clientKey as secretKeySelector
  2270. properties:
  2271. clientCert:
  2272. description: A reference to a specific 'key' within
  2273. a Secret resource, In some instances, `key` is a
  2274. required field.
  2275. properties:
  2276. key:
  2277. description: The key of the entry in the Secret
  2278. resource's `data` field to be used. Some instances
  2279. of this field may be defaulted, in others it
  2280. may be required.
  2281. type: string
  2282. name:
  2283. description: The name of the Secret resource being
  2284. referred to.
  2285. type: string
  2286. namespace:
  2287. description: Namespace of the resource being referred
  2288. to. Ignored if referent is not cluster-scoped.
  2289. cluster-scoped defaults to the namespace of
  2290. the referent.
  2291. type: string
  2292. type: object
  2293. clientKey:
  2294. description: A reference to a specific 'key' within
  2295. a Secret resource, In some instances, `key` is a
  2296. required field.
  2297. properties:
  2298. key:
  2299. description: The key of the entry in the Secret
  2300. resource's `data` field to be used. Some instances
  2301. of this field may be defaulted, in others it
  2302. may be required.
  2303. type: string
  2304. name:
  2305. description: The name of the Secret resource being
  2306. referred to.
  2307. type: string
  2308. namespace:
  2309. description: Namespace of the resource being referred
  2310. to. Ignored if referent is not cluster-scoped.
  2311. cluster-scoped defaults to the namespace of
  2312. the referent.
  2313. type: string
  2314. type: object
  2315. type: object
  2316. serviceAccount:
  2317. description: points to a service account that should be
  2318. used for authentication
  2319. properties:
  2320. audiences:
  2321. description: Audience specifies the `aud` claim for
  2322. the service account token If the service account
  2323. uses a well-known annotation for e.g. IRSA or GCP
  2324. Workload Identity then this audiences will be appended
  2325. to the list
  2326. items:
  2327. type: string
  2328. type: array
  2329. name:
  2330. description: The name of the ServiceAccount resource
  2331. being referred to.
  2332. type: string
  2333. namespace:
  2334. description: Namespace of the resource being referred
  2335. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2336. defaults to the namespace of the referent.
  2337. type: string
  2338. required:
  2339. - name
  2340. type: object
  2341. token:
  2342. description: use static token to authenticate with
  2343. properties:
  2344. bearerToken:
  2345. description: A reference to a specific 'key' within
  2346. a Secret resource, In some instances, `key` is a
  2347. required field.
  2348. properties:
  2349. key:
  2350. description: The key of the entry in the Secret
  2351. resource's `data` field to be used. Some instances
  2352. of this field may be defaulted, in others it
  2353. may be required.
  2354. type: string
  2355. name:
  2356. description: The name of the Secret resource being
  2357. referred to.
  2358. type: string
  2359. namespace:
  2360. description: Namespace of the resource being referred
  2361. to. Ignored if referent is not cluster-scoped.
  2362. cluster-scoped defaults to the namespace of
  2363. the referent.
  2364. type: string
  2365. type: object
  2366. type: object
  2367. type: object
  2368. remoteNamespace:
  2369. default: default
  2370. description: Remote namespace to fetch the secrets from
  2371. type: string
  2372. server:
  2373. description: configures the Kubernetes server Address.
  2374. properties:
  2375. caBundle:
  2376. description: CABundle is a base64-encoded CA certificate
  2377. format: byte
  2378. type: string
  2379. caProvider:
  2380. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2381. properties:
  2382. key:
  2383. description: The key where the CA certificate can
  2384. be found in the Secret or ConfigMap.
  2385. type: string
  2386. name:
  2387. description: The name of the object located at the
  2388. provider type.
  2389. type: string
  2390. namespace:
  2391. description: The namespace the Provider type is in.
  2392. Can only be defined when used in a ClusterSecretStore.
  2393. type: string
  2394. type:
  2395. description: The type of provider to use such as "Secret",
  2396. or "ConfigMap".
  2397. enum:
  2398. - Secret
  2399. - ConfigMap
  2400. type: string
  2401. required:
  2402. - name
  2403. - type
  2404. type: object
  2405. url:
  2406. default: kubernetes.default
  2407. description: configures the Kubernetes server Address.
  2408. type: string
  2409. type: object
  2410. required:
  2411. - auth
  2412. type: object
  2413. onepassword:
  2414. description: OnePassword configures this store to sync secrets
  2415. using the 1Password Cloud provider
  2416. properties:
  2417. auth:
  2418. description: Auth defines the information necessary to authenticate
  2419. against OnePassword Connect Server
  2420. properties:
  2421. secretRef:
  2422. description: OnePasswordAuthSecretRef holds secret references
  2423. for 1Password credentials.
  2424. properties:
  2425. connectTokenSecretRef:
  2426. description: The ConnectToken is used for authentication
  2427. to a 1Password Connect Server.
  2428. properties:
  2429. key:
  2430. description: The key of the entry in the Secret
  2431. resource's `data` field to be used. Some instances
  2432. of this field may be defaulted, in others it
  2433. may be required.
  2434. type: string
  2435. name:
  2436. description: The name of the Secret resource being
  2437. referred to.
  2438. type: string
  2439. namespace:
  2440. description: Namespace of the resource being referred
  2441. to. Ignored if referent is not cluster-scoped.
  2442. cluster-scoped defaults to the namespace of
  2443. the referent.
  2444. type: string
  2445. type: object
  2446. required:
  2447. - connectTokenSecretRef
  2448. type: object
  2449. required:
  2450. - secretRef
  2451. type: object
  2452. connectHost:
  2453. description: ConnectHost defines the OnePassword Connect Server
  2454. to connect to
  2455. type: string
  2456. vaults:
  2457. additionalProperties:
  2458. type: integer
  2459. description: Vaults defines which OnePassword vaults to search
  2460. in which order
  2461. type: object
  2462. required:
  2463. - auth
  2464. - connectHost
  2465. - vaults
  2466. type: object
  2467. oracle:
  2468. description: Oracle configures this store to sync secrets using
  2469. Oracle Vault provider
  2470. properties:
  2471. auth:
  2472. description: Auth configures how secret-manager authenticates
  2473. with the Oracle Vault. If empty, use the instance principal,
  2474. otherwise the user credentials specified in Auth.
  2475. properties:
  2476. secretRef:
  2477. description: SecretRef to pass through sensitive information.
  2478. properties:
  2479. fingerprint:
  2480. description: Fingerprint is the fingerprint of the
  2481. API private key.
  2482. properties:
  2483. key:
  2484. description: The key of the entry in the Secret
  2485. resource's `data` field to be used. Some instances
  2486. of this field may be defaulted, in others it
  2487. may be required.
  2488. type: string
  2489. name:
  2490. description: The name of the Secret resource being
  2491. referred to.
  2492. type: string
  2493. namespace:
  2494. description: Namespace of the resource being referred
  2495. to. Ignored if referent is not cluster-scoped.
  2496. cluster-scoped defaults to the namespace of
  2497. the referent.
  2498. type: string
  2499. type: object
  2500. privatekey:
  2501. description: PrivateKey is the user's API Signing
  2502. Key in PEM format, used for authentication.
  2503. properties:
  2504. key:
  2505. description: The key of the entry in the Secret
  2506. resource's `data` field to be used. Some instances
  2507. of this field may be defaulted, in others it
  2508. may be required.
  2509. type: string
  2510. name:
  2511. description: The name of the Secret resource being
  2512. referred to.
  2513. type: string
  2514. namespace:
  2515. description: Namespace of the resource being referred
  2516. to. Ignored if referent is not cluster-scoped.
  2517. cluster-scoped defaults to the namespace of
  2518. the referent.
  2519. type: string
  2520. type: object
  2521. required:
  2522. - fingerprint
  2523. - privatekey
  2524. type: object
  2525. tenancy:
  2526. description: Tenancy is the tenancy OCID where user is
  2527. located.
  2528. type: string
  2529. user:
  2530. description: User is an access OCID specific to the account.
  2531. type: string
  2532. required:
  2533. - secretRef
  2534. - tenancy
  2535. - user
  2536. type: object
  2537. region:
  2538. description: Region is the region where vault is located.
  2539. type: string
  2540. vault:
  2541. description: Vault is the vault's OCID of the specific vault
  2542. where secret is located.
  2543. type: string
  2544. required:
  2545. - region
  2546. - vault
  2547. type: object
  2548. senhasegura:
  2549. description: Senhasegura configures this store to sync secrets
  2550. using senhasegura provider
  2551. properties:
  2552. auth:
  2553. description: Auth defines parameters to authenticate in senhasegura
  2554. properties:
  2555. clientId:
  2556. type: string
  2557. clientSecretSecretRef:
  2558. description: A reference to a specific 'key' within a
  2559. Secret resource, In some instances, `key` is a required
  2560. field.
  2561. properties:
  2562. key:
  2563. description: The key of the entry in the Secret resource's
  2564. `data` field to be used. Some instances of this
  2565. field may be defaulted, in others it may be required.
  2566. type: string
  2567. name:
  2568. description: The name of the Secret resource being
  2569. referred to.
  2570. type: string
  2571. namespace:
  2572. description: Namespace of the resource being referred
  2573. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2574. defaults to the namespace of the referent.
  2575. type: string
  2576. type: object
  2577. required:
  2578. - clientId
  2579. - clientSecretSecretRef
  2580. type: object
  2581. ignoreSslCertificate:
  2582. default: false
  2583. description: IgnoreSslCertificate defines if SSL certificate
  2584. must be ignored
  2585. type: boolean
  2586. module:
  2587. description: Module defines which senhasegura module should
  2588. be used to get secrets
  2589. type: string
  2590. url:
  2591. description: URL of senhasegura
  2592. type: string
  2593. required:
  2594. - auth
  2595. - module
  2596. - url
  2597. type: object
  2598. vault:
  2599. description: Vault configures this store to sync secrets using
  2600. Hashi provider
  2601. properties:
  2602. auth:
  2603. description: Auth configures how secret-manager authenticates
  2604. with the Vault server.
  2605. properties:
  2606. appRole:
  2607. description: AppRole authenticates with Vault using the
  2608. App Role auth mechanism, with the role and secret stored
  2609. in a Kubernetes Secret resource.
  2610. properties:
  2611. path:
  2612. default: approle
  2613. description: 'Path where the App Role authentication
  2614. backend is mounted in Vault, e.g: "approle"'
  2615. type: string
  2616. roleId:
  2617. description: RoleID configured in the App Role authentication
  2618. backend when setting up the authentication backend
  2619. in Vault.
  2620. type: string
  2621. secretRef:
  2622. description: Reference to a key in a Secret that contains
  2623. the App Role secret used to authenticate with Vault.
  2624. The `key` field must be specified and denotes which
  2625. entry within the Secret resource is used as the
  2626. app role secret.
  2627. properties:
  2628. key:
  2629. description: The key of the entry in the Secret
  2630. resource's `data` field to be used. Some instances
  2631. of this field may be defaulted, in others it
  2632. may be required.
  2633. type: string
  2634. name:
  2635. description: The name of the Secret resource being
  2636. referred to.
  2637. type: string
  2638. namespace:
  2639. description: Namespace of the resource being referred
  2640. to. Ignored if referent is not cluster-scoped.
  2641. cluster-scoped defaults to the namespace of
  2642. the referent.
  2643. type: string
  2644. type: object
  2645. required:
  2646. - path
  2647. - roleId
  2648. - secretRef
  2649. type: object
  2650. cert:
  2651. description: Cert authenticates with TLS Certificates
  2652. by passing client certificate, private key and ca certificate
  2653. Cert authentication method
  2654. properties:
  2655. clientCert:
  2656. description: ClientCert is a certificate to authenticate
  2657. using the Cert Vault authentication method
  2658. properties:
  2659. key:
  2660. description: The key of the entry in the Secret
  2661. resource's `data` field to be used. Some instances
  2662. of this field may be defaulted, in others it
  2663. may be required.
  2664. type: string
  2665. name:
  2666. description: The name of the Secret resource being
  2667. referred to.
  2668. type: string
  2669. namespace:
  2670. description: Namespace of the resource being referred
  2671. to. Ignored if referent is not cluster-scoped.
  2672. cluster-scoped defaults to the namespace of
  2673. the referent.
  2674. type: string
  2675. type: object
  2676. secretRef:
  2677. description: SecretRef to a key in a Secret resource
  2678. containing client private key to authenticate with
  2679. Vault using the Cert authentication method
  2680. properties:
  2681. key:
  2682. description: The key of the entry in the Secret
  2683. resource's `data` field to be used. Some instances
  2684. of this field may be defaulted, in others it
  2685. may be required.
  2686. type: string
  2687. name:
  2688. description: The name of the Secret resource being
  2689. referred to.
  2690. type: string
  2691. namespace:
  2692. description: Namespace of the resource being referred
  2693. to. Ignored if referent is not cluster-scoped.
  2694. cluster-scoped defaults to the namespace of
  2695. the referent.
  2696. type: string
  2697. type: object
  2698. type: object
  2699. jwt:
  2700. description: Jwt authenticates with Vault by passing role
  2701. and JWT token using the JWT/OIDC authentication method
  2702. properties:
  2703. kubernetesServiceAccountToken:
  2704. description: Optional ServiceAccountToken specifies
  2705. the Kubernetes service account for which to request
  2706. a token for with the `TokenRequest` API.
  2707. properties:
  2708. audiences:
  2709. description: 'Optional audiences field that will
  2710. be used to request a temporary Kubernetes service
  2711. account token for the service account referenced
  2712. by `serviceAccountRef`. Defaults to a single
  2713. audience `vault` it not specified. Deprecated:
  2714. use serviceAccountRef.Audiences instead'
  2715. items:
  2716. type: string
  2717. type: array
  2718. expirationSeconds:
  2719. description: 'Optional expiration time in seconds
  2720. that will be used to request a temporary Kubernetes
  2721. service account token for the service account
  2722. referenced by `serviceAccountRef`. Deprecated:
  2723. this will be removed in the future. Defaults
  2724. to 10 minutes.'
  2725. format: int64
  2726. type: integer
  2727. serviceAccountRef:
  2728. description: Service account field containing
  2729. the name of a kubernetes ServiceAccount.
  2730. properties:
  2731. audiences:
  2732. description: Audience specifies the `aud`
  2733. claim for the service account token If the
  2734. service account uses a well-known annotation
  2735. for e.g. IRSA or GCP Workload Identity then
  2736. this audiences will be appended to the list
  2737. items:
  2738. type: string
  2739. type: array
  2740. name:
  2741. description: The name of the ServiceAccount
  2742. resource being referred to.
  2743. type: string
  2744. namespace:
  2745. description: Namespace of the resource being
  2746. referred to. Ignored if referent is not
  2747. cluster-scoped. cluster-scoped defaults
  2748. to the namespace of the referent.
  2749. type: string
  2750. required:
  2751. - name
  2752. type: object
  2753. required:
  2754. - serviceAccountRef
  2755. type: object
  2756. path:
  2757. default: jwt
  2758. description: 'Path where the JWT authentication backend
  2759. is mounted in Vault, e.g: "jwt"'
  2760. type: string
  2761. role:
  2762. description: Role is a JWT role to authenticate using
  2763. the JWT/OIDC Vault authentication method
  2764. type: string
  2765. secretRef:
  2766. description: Optional SecretRef that refers to a key
  2767. in a Secret resource containing JWT token to authenticate
  2768. with Vault using the JWT/OIDC authentication method.
  2769. properties:
  2770. key:
  2771. description: The key of the entry in the Secret
  2772. resource's `data` field to be used. Some instances
  2773. of this field may be defaulted, in others it
  2774. may be required.
  2775. type: string
  2776. name:
  2777. description: The name of the Secret resource being
  2778. referred to.
  2779. type: string
  2780. namespace:
  2781. description: Namespace of the resource being referred
  2782. to. Ignored if referent is not cluster-scoped.
  2783. cluster-scoped defaults to the namespace of
  2784. the referent.
  2785. type: string
  2786. type: object
  2787. required:
  2788. - path
  2789. type: object
  2790. kubernetes:
  2791. description: Kubernetes authenticates with Vault by passing
  2792. the ServiceAccount token stored in the named Secret
  2793. resource to the Vault server.
  2794. properties:
  2795. mountPath:
  2796. default: kubernetes
  2797. description: 'Path where the Kubernetes authentication
  2798. backend is mounted in Vault, e.g: "kubernetes"'
  2799. type: string
  2800. role:
  2801. description: A required field containing the Vault
  2802. Role to assume. A Role binds a Kubernetes ServiceAccount
  2803. with a set of Vault policies.
  2804. type: string
  2805. secretRef:
  2806. description: Optional secret field containing a Kubernetes
  2807. ServiceAccount JWT used for authenticating with
  2808. Vault. If a name is specified without a key, `token`
  2809. is the default. If one is not specified, the one
  2810. bound to the controller will be used.
  2811. properties:
  2812. key:
  2813. description: The key of the entry in the Secret
  2814. resource's `data` field to be used. Some instances
  2815. of this field may be defaulted, in others it
  2816. may be required.
  2817. type: string
  2818. name:
  2819. description: The name of the Secret resource being
  2820. referred to.
  2821. type: string
  2822. namespace:
  2823. description: Namespace of the resource being referred
  2824. to. Ignored if referent is not cluster-scoped.
  2825. cluster-scoped defaults to the namespace of
  2826. the referent.
  2827. type: string
  2828. type: object
  2829. serviceAccountRef:
  2830. description: Optional service account field containing
  2831. the name of a kubernetes ServiceAccount. If the
  2832. service account is specified, the service account
  2833. secret token JWT will be used for authenticating
  2834. with Vault. If the service account selector is not
  2835. supplied, the secretRef will be used instead.
  2836. properties:
  2837. audiences:
  2838. description: Audience specifies the `aud` claim
  2839. for the service account token If the service
  2840. account uses a well-known annotation for e.g.
  2841. IRSA or GCP Workload Identity then this audiences
  2842. will be appended to the list
  2843. items:
  2844. type: string
  2845. type: array
  2846. name:
  2847. description: The name of the ServiceAccount resource
  2848. being referred to.
  2849. type: string
  2850. namespace:
  2851. description: Namespace of the resource being referred
  2852. to. Ignored if referent is not cluster-scoped.
  2853. cluster-scoped defaults to the namespace of
  2854. the referent.
  2855. type: string
  2856. required:
  2857. - name
  2858. type: object
  2859. required:
  2860. - mountPath
  2861. - role
  2862. type: object
  2863. ldap:
  2864. description: Ldap authenticates with Vault by passing
  2865. username/password pair using the LDAP authentication
  2866. method
  2867. properties:
  2868. path:
  2869. default: ldap
  2870. description: 'Path where the LDAP authentication backend
  2871. is mounted in Vault, e.g: "ldap"'
  2872. type: string
  2873. secretRef:
  2874. description: SecretRef to a key in a Secret resource
  2875. containing password for the LDAP user used to authenticate
  2876. with Vault using the LDAP 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. username:
  2896. description: Username is a LDAP user name used to
  2897. authenticate using the LDAP Vault authentication
  2898. method
  2899. type: string
  2900. required:
  2901. - path
  2902. - username
  2903. type: object
  2904. tokenSecretRef:
  2905. description: TokenSecretRef authenticates with Vault by
  2906. presenting a token.
  2907. properties:
  2908. key:
  2909. description: The key of the entry in the Secret resource's
  2910. `data` field to be used. Some instances of this
  2911. field may be defaulted, in others it may be required.
  2912. type: string
  2913. name:
  2914. description: The name of the Secret resource being
  2915. referred to.
  2916. type: string
  2917. namespace:
  2918. description: Namespace of the resource being referred
  2919. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2920. defaults to the namespace of the referent.
  2921. type: string
  2922. type: object
  2923. type: object
  2924. caBundle:
  2925. description: PEM encoded CA bundle used to validate Vault
  2926. server certificate. Only used if the Server URL is using
  2927. HTTPS protocol. This parameter is ignored for plain HTTP
  2928. protocol connection. If not set the system root certificates
  2929. are used to validate the TLS connection.
  2930. format: byte
  2931. type: string
  2932. caProvider:
  2933. description: The provider for the CA bundle to use to validate
  2934. Vault server certificate.
  2935. properties:
  2936. key:
  2937. description: The key where the CA certificate can be found
  2938. in the Secret or ConfigMap.
  2939. type: string
  2940. name:
  2941. description: The name of the object located at the provider
  2942. type.
  2943. type: string
  2944. namespace:
  2945. description: The namespace the Provider type is in. Can
  2946. only be defined when used in a ClusterSecretStore.
  2947. type: string
  2948. type:
  2949. description: The type of provider to use such as "Secret",
  2950. or "ConfigMap".
  2951. enum:
  2952. - Secret
  2953. - ConfigMap
  2954. type: string
  2955. required:
  2956. - name
  2957. - type
  2958. type: object
  2959. forwardInconsistent:
  2960. description: ForwardInconsistent tells Vault to forward read-after-write
  2961. requests to the Vault leader instead of simply retrying
  2962. within a loop. This can increase performance if the option
  2963. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  2964. type: boolean
  2965. namespace:
  2966. description: 'Name of the vault namespace. Namespaces is a
  2967. set of features within Vault Enterprise that allows Vault
  2968. environments to support Secure Multi-tenancy. e.g: "ns1".
  2969. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  2970. type: string
  2971. path:
  2972. description: 'Path is the mount path of the Vault KV backend
  2973. endpoint, e.g: "secret". The v2 KV secret engine version
  2974. specific "/data" path suffix for fetching secrets from Vault
  2975. is optional and will be appended if not present in specified
  2976. path.'
  2977. type: string
  2978. readYourWrites:
  2979. description: ReadYourWrites ensures isolated read-after-write
  2980. semantics by providing discovered cluster replication states
  2981. in each request. More information about eventual consistency
  2982. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  2983. type: boolean
  2984. server:
  2985. description: 'Server is the connection address for the Vault
  2986. server, e.g: "https://vault.example.com:8200".'
  2987. type: string
  2988. version:
  2989. default: v2
  2990. description: Version is the Vault KV secret engine version.
  2991. This can be either "v1" or "v2". Version defaults to "v2".
  2992. enum:
  2993. - v1
  2994. - v2
  2995. type: string
  2996. required:
  2997. - auth
  2998. - server
  2999. type: object
  3000. webhook:
  3001. description: Webhook configures this store to sync secrets using
  3002. a generic templated webhook
  3003. properties:
  3004. body:
  3005. description: Body
  3006. type: string
  3007. caBundle:
  3008. description: PEM encoded CA bundle used to validate webhook
  3009. server certificate. Only used if the Server URL is using
  3010. HTTPS protocol. This parameter is ignored for plain HTTP
  3011. protocol connection. If not set the system root certificates
  3012. are used to validate the TLS connection.
  3013. format: byte
  3014. type: string
  3015. caProvider:
  3016. description: The provider for the CA bundle to use to validate
  3017. webhook server certificate.
  3018. properties:
  3019. key:
  3020. description: The key the value inside of the provider
  3021. type to use, only used with "Secret" type
  3022. type: string
  3023. name:
  3024. description: The name of the object located at the provider
  3025. type.
  3026. type: string
  3027. namespace:
  3028. description: The namespace the Provider type is in.
  3029. type: string
  3030. type:
  3031. description: The type of provider to use such as "Secret",
  3032. or "ConfigMap".
  3033. enum:
  3034. - Secret
  3035. - ConfigMap
  3036. type: string
  3037. required:
  3038. - name
  3039. - type
  3040. type: object
  3041. headers:
  3042. additionalProperties:
  3043. type: string
  3044. description: Headers
  3045. type: object
  3046. method:
  3047. description: Webhook Method
  3048. type: string
  3049. result:
  3050. description: Result formatting
  3051. properties:
  3052. jsonPath:
  3053. description: Json path of return value
  3054. type: string
  3055. type: object
  3056. secrets:
  3057. description: Secrets to fill in templates These secrets will
  3058. be passed to the templating function as key value pairs
  3059. under the given name
  3060. items:
  3061. properties:
  3062. name:
  3063. description: Name of this secret in templates
  3064. type: string
  3065. secretRef:
  3066. description: Secret ref to fill in credentials
  3067. properties:
  3068. key:
  3069. description: The key of the entry in the Secret
  3070. resource's `data` field to be used. Some instances
  3071. of this field may be defaulted, in others it may
  3072. be required.
  3073. type: string
  3074. name:
  3075. description: The name of the Secret resource being
  3076. referred to.
  3077. type: string
  3078. namespace:
  3079. description: Namespace of the resource being referred
  3080. to. Ignored if referent is not cluster-scoped.
  3081. cluster-scoped defaults to the namespace of the
  3082. referent.
  3083. type: string
  3084. type: object
  3085. required:
  3086. - name
  3087. - secretRef
  3088. type: object
  3089. type: array
  3090. timeout:
  3091. description: Timeout
  3092. type: string
  3093. url:
  3094. description: Webhook url to call
  3095. type: string
  3096. required:
  3097. - result
  3098. - url
  3099. type: object
  3100. yandexcertificatemanager:
  3101. description: YandexCertificateManager configures this store to
  3102. sync secrets using Yandex Certificate Manager provider
  3103. properties:
  3104. apiEndpoint:
  3105. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3106. type: string
  3107. auth:
  3108. description: Auth defines the information necessary to authenticate
  3109. against Yandex Certificate Manager
  3110. properties:
  3111. authorizedKeySecretRef:
  3112. description: The authorized key used for authentication
  3113. properties:
  3114. key:
  3115. description: The key of the entry in the Secret resource's
  3116. `data` field to be used. Some instances of this
  3117. field may be defaulted, in others it may be required.
  3118. type: string
  3119. name:
  3120. description: The name of the Secret resource being
  3121. referred to.
  3122. type: string
  3123. namespace:
  3124. description: Namespace of the resource being referred
  3125. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3126. defaults to the namespace of the referent.
  3127. type: string
  3128. type: object
  3129. type: object
  3130. caProvider:
  3131. description: The provider for the CA bundle to use to validate
  3132. Yandex.Cloud server certificate.
  3133. properties:
  3134. certSecretRef:
  3135. description: A reference to a specific 'key' within a
  3136. Secret resource, In some instances, `key` is a required
  3137. field.
  3138. properties:
  3139. key:
  3140. description: The key of the entry in the Secret resource's
  3141. `data` field to be used. Some instances of this
  3142. field may be defaulted, in others it may be required.
  3143. type: string
  3144. name:
  3145. description: The name of the Secret resource being
  3146. referred to.
  3147. type: string
  3148. namespace:
  3149. description: Namespace of the resource being referred
  3150. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3151. defaults to the namespace of the referent.
  3152. type: string
  3153. type: object
  3154. type: object
  3155. required:
  3156. - auth
  3157. type: object
  3158. yandexlockbox:
  3159. description: YandexLockbox configures this store to sync secrets
  3160. using Yandex Lockbox provider
  3161. properties:
  3162. apiEndpoint:
  3163. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3164. type: string
  3165. auth:
  3166. description: Auth defines the information necessary to authenticate
  3167. against Yandex Lockbox
  3168. properties:
  3169. authorizedKeySecretRef:
  3170. description: The authorized key used for authentication
  3171. properties:
  3172. key:
  3173. description: The key of the entry in the Secret resource's
  3174. `data` field to be used. Some instances of this
  3175. field may be defaulted, in others it may be required.
  3176. type: string
  3177. name:
  3178. description: The name of the Secret resource being
  3179. referred to.
  3180. type: string
  3181. namespace:
  3182. description: Namespace of the resource being referred
  3183. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3184. defaults to the namespace of the referent.
  3185. type: string
  3186. type: object
  3187. type: object
  3188. caProvider:
  3189. description: The provider for the CA bundle to use to validate
  3190. Yandex.Cloud server certificate.
  3191. properties:
  3192. certSecretRef:
  3193. description: A reference to a specific 'key' within a
  3194. Secret resource, In some instances, `key` is a required
  3195. field.
  3196. properties:
  3197. key:
  3198. description: The key of the entry in the Secret resource's
  3199. `data` field to be used. Some instances of this
  3200. field may be defaulted, in others it may be required.
  3201. type: string
  3202. name:
  3203. description: The name of the Secret resource being
  3204. referred to.
  3205. type: string
  3206. namespace:
  3207. description: Namespace of the resource being referred
  3208. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3209. defaults to the namespace of the referent.
  3210. type: string
  3211. type: object
  3212. type: object
  3213. required:
  3214. - auth
  3215. type: object
  3216. type: object
  3217. refreshInterval:
  3218. description: Used to configure store refresh interval in seconds.
  3219. Empty or 0 will default to the controller config.
  3220. type: integer
  3221. retrySettings:
  3222. description: Used to configure http retries if failed
  3223. properties:
  3224. maxRetries:
  3225. format: int32
  3226. type: integer
  3227. retryInterval:
  3228. type: string
  3229. type: object
  3230. required:
  3231. - provider
  3232. type: object
  3233. status:
  3234. description: SecretStoreStatus defines the observed state of the SecretStore.
  3235. properties:
  3236. conditions:
  3237. items:
  3238. properties:
  3239. lastTransitionTime:
  3240. format: date-time
  3241. type: string
  3242. message:
  3243. type: string
  3244. reason:
  3245. type: string
  3246. status:
  3247. type: string
  3248. type:
  3249. type: string
  3250. required:
  3251. - status
  3252. - type
  3253. type: object
  3254. type: array
  3255. type: object
  3256. type: object
  3257. served: true
  3258. storage: true
  3259. subresources:
  3260. status: {}