external-secrets.io_secretstores.yaml 141 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.8.0
  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. name: v1alpha1
  29. schema:
  30. openAPIV3Schema:
  31. description: SecretStore represents a secure external location for storing
  32. secrets, which can be referenced as part of `storeRef` fields.
  33. properties:
  34. apiVersion:
  35. description: 'APIVersion defines the versioned schema of this representation
  36. of an object. Servers should convert recognized schemas to the latest
  37. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  38. type: string
  39. kind:
  40. description: 'Kind is a string value representing the REST resource this
  41. object represents. Servers may infer this from the endpoint the client
  42. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  43. type: string
  44. metadata:
  45. type: object
  46. spec:
  47. description: SecretStoreSpec defines the desired state of SecretStore.
  48. properties:
  49. controller:
  50. description: 'Used to select the correct KES controller (think: ingress.ingressClassName)
  51. The KES controller is instantiated with a specific controller name
  52. and filters ES based on this property'
  53. type: string
  54. provider:
  55. description: Used to configure the provider. Only one provider may
  56. be set
  57. maxProperties: 1
  58. minProperties: 1
  59. properties:
  60. akeyless:
  61. description: Akeyless configures this store to sync secrets using
  62. Akeyless Vault provider
  63. properties:
  64. akeylessGWApiURL:
  65. description: Akeyless GW API Url from which the secrets to
  66. be fetched from.
  67. type: string
  68. authSecretRef:
  69. description: Auth configures how the operator authenticates
  70. with Akeyless.
  71. properties:
  72. secretRef:
  73. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM:
  74. AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  75. properties:
  76. accessID:
  77. description: The SecretAccessID is used for authentication
  78. properties:
  79. key:
  80. description: The key of the entry in the Secret
  81. resource's `data` field to be used. Some instances
  82. of this field may be defaulted, in others it
  83. may be required.
  84. type: string
  85. name:
  86. description: The name of the Secret resource being
  87. referred to.
  88. type: string
  89. namespace:
  90. description: Namespace of the resource being referred
  91. to. Ignored if referent is not cluster-scoped.
  92. cluster-scoped defaults to the namespace of
  93. the referent.
  94. type: string
  95. type: object
  96. accessType:
  97. description: A reference to a specific 'key' within
  98. a Secret resource, In some instances, `key` is a
  99. required field.
  100. properties:
  101. key:
  102. description: The key of the entry in the Secret
  103. resource's `data` field to be used. Some instances
  104. of this field may be defaulted, in others it
  105. may be required.
  106. type: string
  107. name:
  108. description: The name of the Secret resource being
  109. referred to.
  110. type: string
  111. namespace:
  112. description: Namespace of the resource being referred
  113. to. Ignored if referent is not cluster-scoped.
  114. cluster-scoped defaults to the namespace of
  115. the referent.
  116. type: string
  117. type: object
  118. accessTypeParam:
  119. description: A reference to a specific 'key' within
  120. a Secret resource, In some instances, `key` is a
  121. required field.
  122. properties:
  123. key:
  124. description: The key of the entry in the Secret
  125. resource's `data` field to be used. Some instances
  126. of this field may be defaulted, in others it
  127. may be required.
  128. type: string
  129. name:
  130. description: The name of the Secret resource being
  131. referred to.
  132. type: string
  133. namespace:
  134. description: Namespace of the resource being referred
  135. to. Ignored if referent is not cluster-scoped.
  136. cluster-scoped defaults to the namespace of
  137. the referent.
  138. type: string
  139. type: object
  140. type: object
  141. required:
  142. - secretRef
  143. type: object
  144. required:
  145. - akeylessGWApiURL
  146. - authSecretRef
  147. type: object
  148. alibaba:
  149. description: Alibaba configures this store to sync secrets using
  150. Alibaba Cloud provider
  151. properties:
  152. auth:
  153. description: AlibabaAuth contains a secretRef for credentials.
  154. properties:
  155. secretRef:
  156. description: AlibabaAuthSecretRef holds secret references
  157. for Alibaba credentials.
  158. properties:
  159. accessKeyIDSecretRef:
  160. description: The AccessKeyID is used for authentication
  161. properties:
  162. key:
  163. description: The key of the entry in the Secret
  164. resource's `data` field to be used. Some instances
  165. of this field may be defaulted, in others it
  166. may be required.
  167. type: string
  168. name:
  169. description: The name of the Secret resource being
  170. referred to.
  171. type: string
  172. namespace:
  173. description: Namespace of the resource being referred
  174. to. Ignored if referent is not cluster-scoped.
  175. cluster-scoped defaults to the namespace of
  176. the referent.
  177. type: string
  178. type: object
  179. accessKeySecretSecretRef:
  180. description: The AccessKeySecret is used for authentication
  181. properties:
  182. key:
  183. description: The key of the entry in the Secret
  184. resource's `data` field to be used. Some instances
  185. of this field may be defaulted, in others it
  186. may be required.
  187. type: string
  188. name:
  189. description: The name of the Secret resource being
  190. referred to.
  191. type: string
  192. namespace:
  193. description: Namespace of the resource being referred
  194. to. Ignored if referent is not cluster-scoped.
  195. cluster-scoped defaults to the namespace of
  196. the referent.
  197. type: string
  198. type: object
  199. required:
  200. - accessKeyIDSecretRef
  201. - accessKeySecretSecretRef
  202. type: object
  203. required:
  204. - secretRef
  205. type: object
  206. endpoint:
  207. type: string
  208. regionID:
  209. description: Alibaba Region to be used for the provider
  210. type: string
  211. required:
  212. - auth
  213. - regionID
  214. type: object
  215. aws:
  216. description: AWS configures this store to sync secrets using AWS
  217. Secret Manager provider
  218. properties:
  219. auth:
  220. description: 'Auth defines the information necessary to authenticate
  221. against AWS if not set aws sdk will infer credentials from
  222. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  223. properties:
  224. jwt:
  225. description: Authenticate against AWS using service account
  226. tokens.
  227. properties:
  228. serviceAccountRef:
  229. description: A reference to a ServiceAccount resource.
  230. properties:
  231. name:
  232. description: The name of the ServiceAccount resource
  233. being referred to.
  234. type: string
  235. namespace:
  236. description: Namespace of the resource being referred
  237. to. Ignored if referent is not cluster-scoped.
  238. cluster-scoped defaults to the namespace of
  239. the referent.
  240. type: string
  241. required:
  242. - name
  243. type: object
  244. type: object
  245. secretRef:
  246. description: AWSAuthSecretRef holds secret references
  247. for AWS credentials both AccessKeyID and SecretAccessKey
  248. must be defined in order to properly authenticate.
  249. properties:
  250. accessKeyIDSecretRef:
  251. description: The AccessKeyID is used for authentication
  252. properties:
  253. key:
  254. description: The key of the entry in the Secret
  255. resource's `data` field to be used. Some instances
  256. of this field may be defaulted, in others it
  257. may be required.
  258. type: string
  259. name:
  260. description: The name of the Secret resource being
  261. referred to.
  262. type: string
  263. namespace:
  264. description: Namespace of the resource being referred
  265. to. Ignored if referent is not cluster-scoped.
  266. cluster-scoped defaults to the namespace of
  267. the referent.
  268. type: string
  269. type: object
  270. secretAccessKeySecretRef:
  271. description: The SecretAccessKey is used for authentication
  272. properties:
  273. key:
  274. description: The key of the entry in the Secret
  275. resource's `data` field to be used. Some instances
  276. of this field may be defaulted, in others it
  277. may be required.
  278. type: string
  279. name:
  280. description: The name of the Secret resource being
  281. referred to.
  282. type: string
  283. namespace:
  284. description: Namespace of the resource being referred
  285. to. Ignored if referent is not cluster-scoped.
  286. cluster-scoped defaults to the namespace of
  287. the referent.
  288. type: string
  289. type: object
  290. type: object
  291. type: object
  292. region:
  293. description: AWS Region to be used for the provider
  294. type: string
  295. role:
  296. description: Role is a Role ARN which the SecretManager provider
  297. will assume
  298. type: string
  299. service:
  300. description: Service defines which service should be used
  301. to fetch the secrets
  302. enum:
  303. - SecretsManager
  304. - ParameterStore
  305. type: string
  306. required:
  307. - region
  308. - service
  309. type: object
  310. azurekv:
  311. description: AzureKV configures this store to sync secrets using
  312. Azure Key Vault provider
  313. properties:
  314. authSecretRef:
  315. description: Auth configures how the operator authenticates
  316. with Azure. Required for ServicePrincipal auth type.
  317. properties:
  318. clientId:
  319. description: The Azure clientId of the service principle
  320. used for authentication.
  321. properties:
  322. key:
  323. description: The key of the entry in the Secret resource's
  324. `data` field to be used. Some instances of this
  325. field may be defaulted, in others it may be required.
  326. type: string
  327. name:
  328. description: The name of the Secret resource being
  329. referred to.
  330. type: string
  331. namespace:
  332. description: Namespace of the resource being referred
  333. to. Ignored if referent is not cluster-scoped. cluster-scoped
  334. defaults to the namespace of the referent.
  335. type: string
  336. type: object
  337. clientSecret:
  338. description: The Azure ClientSecret of the service principle
  339. used for authentication.
  340. properties:
  341. key:
  342. description: The key of the entry in the Secret resource's
  343. `data` field to be used. Some instances of this
  344. field may be defaulted, in others it may be required.
  345. type: string
  346. name:
  347. description: The name of the Secret resource being
  348. referred to.
  349. type: string
  350. namespace:
  351. description: Namespace of the resource being referred
  352. to. Ignored if referent is not cluster-scoped. cluster-scoped
  353. defaults to the namespace of the referent.
  354. type: string
  355. type: object
  356. required:
  357. - clientId
  358. - clientSecret
  359. type: object
  360. authType:
  361. default: ServicePrincipal
  362. description: 'Auth type defines how to authenticate to the
  363. keyvault service. Valid values are: - "ServicePrincipal"
  364. (default): Using a service principal (tenantId, clientId,
  365. clientSecret) - "ManagedIdentity": Using Managed Identity
  366. assigned to the pod (see aad-pod-identity)'
  367. enum:
  368. - ServicePrincipal
  369. - ManagedIdentity
  370. type: string
  371. identityId:
  372. description: If multiple Managed Identity is assigned to the
  373. pod, you can select the one to be used
  374. type: string
  375. tenantId:
  376. description: TenantID configures the Azure Tenant to send
  377. requests to. Required for ServicePrincipal auth type.
  378. type: string
  379. vaultUrl:
  380. description: Vault Url from which the secrets to be fetched
  381. from.
  382. type: string
  383. required:
  384. - vaultUrl
  385. type: object
  386. fake:
  387. description: Fake configures a store with static key/value pairs
  388. properties:
  389. data:
  390. items:
  391. properties:
  392. key:
  393. type: string
  394. value:
  395. type: string
  396. valueMap:
  397. additionalProperties:
  398. type: string
  399. type: object
  400. version:
  401. type: string
  402. required:
  403. - key
  404. type: object
  405. type: array
  406. required:
  407. - data
  408. type: object
  409. gcpsm:
  410. description: GCPSM configures this store to sync secrets using
  411. Google Cloud Platform Secret Manager provider
  412. properties:
  413. auth:
  414. description: Auth defines the information necessary to authenticate
  415. against GCP
  416. properties:
  417. secretRef:
  418. properties:
  419. secretAccessKeySecretRef:
  420. description: The SecretAccessKey is used for authentication
  421. properties:
  422. key:
  423. description: The key of the entry in the Secret
  424. resource's `data` field to be used. Some instances
  425. of this field may be defaulted, in others it
  426. may be required.
  427. type: string
  428. name:
  429. description: The name of the Secret resource being
  430. referred to.
  431. type: string
  432. namespace:
  433. description: Namespace of the resource being referred
  434. to. Ignored if referent is not cluster-scoped.
  435. cluster-scoped defaults to the namespace of
  436. the referent.
  437. type: string
  438. type: object
  439. type: object
  440. workloadIdentity:
  441. properties:
  442. clusterLocation:
  443. type: string
  444. clusterName:
  445. type: string
  446. clusterProjectID:
  447. type: string
  448. serviceAccountRef:
  449. description: A reference to a ServiceAccount resource.
  450. properties:
  451. name:
  452. description: The name of the ServiceAccount resource
  453. being referred to.
  454. type: string
  455. namespace:
  456. description: Namespace of the resource being referred
  457. to. Ignored if referent is not cluster-scoped.
  458. cluster-scoped defaults to the namespace of
  459. the referent.
  460. type: string
  461. required:
  462. - name
  463. type: object
  464. required:
  465. - clusterLocation
  466. - clusterName
  467. - serviceAccountRef
  468. type: object
  469. type: object
  470. projectID:
  471. description: ProjectID project where secret is located
  472. type: string
  473. type: object
  474. gitlab:
  475. description: GItlab configures this store to sync secrets using
  476. Gitlab Variables provider
  477. properties:
  478. auth:
  479. description: Auth configures how secret-manager authenticates
  480. with a GitLab instance.
  481. properties:
  482. SecretRef:
  483. properties:
  484. accessToken:
  485. description: AccessToken is used for authentication.
  486. properties:
  487. key:
  488. description: The key of the entry in the Secret
  489. resource's `data` field to be used. Some instances
  490. of this field may be defaulted, in others it
  491. may be required.
  492. type: string
  493. name:
  494. description: The name of the Secret resource being
  495. referred to.
  496. type: string
  497. namespace:
  498. description: Namespace of the resource being referred
  499. to. Ignored if referent is not cluster-scoped.
  500. cluster-scoped defaults to the namespace of
  501. the referent.
  502. type: string
  503. type: object
  504. type: object
  505. required:
  506. - SecretRef
  507. type: object
  508. projectID:
  509. description: ProjectID specifies a project where secrets are
  510. located.
  511. type: string
  512. url:
  513. description: URL configures the GitLab instance URL. Defaults
  514. to https://gitlab.com/.
  515. type: string
  516. required:
  517. - auth
  518. type: object
  519. ibm:
  520. description: IBM configures this store to sync secrets using IBM
  521. Cloud provider
  522. properties:
  523. auth:
  524. description: Auth configures how secret-manager authenticates
  525. with the IBM secrets manager.
  526. properties:
  527. secretRef:
  528. properties:
  529. secretApiKeySecretRef:
  530. description: The SecretAccessKey is used for authentication
  531. properties:
  532. key:
  533. description: The key of the entry in the Secret
  534. resource's `data` field to be used. Some instances
  535. of this field may be defaulted, in others it
  536. may be required.
  537. type: string
  538. name:
  539. description: The name of the Secret resource being
  540. referred to.
  541. type: string
  542. namespace:
  543. description: Namespace of the resource being referred
  544. to. Ignored if referent is not cluster-scoped.
  545. cluster-scoped defaults to the namespace of
  546. the referent.
  547. type: string
  548. type: object
  549. type: object
  550. required:
  551. - secretRef
  552. type: object
  553. serviceUrl:
  554. description: ServiceURL is the Endpoint URL that is specific
  555. to the Secrets Manager service instance
  556. type: string
  557. required:
  558. - auth
  559. type: object
  560. kubernetes:
  561. description: Kubernetes configures this store to sync secrets
  562. using a Kubernetes cluster provider
  563. properties:
  564. auth:
  565. description: Auth configures how secret-manager authenticates
  566. with a Kubernetes instance.
  567. maxProperties: 1
  568. minProperties: 1
  569. properties:
  570. cert:
  571. description: has both clientCert and clientKey as secretKeySelector
  572. properties:
  573. clientCert:
  574. description: A reference to a specific 'key' within
  575. a Secret resource, In some instances, `key` is a
  576. required field.
  577. properties:
  578. key:
  579. description: The key of the entry in the Secret
  580. resource's `data` field to be used. Some instances
  581. of this field may be defaulted, in others it
  582. may be required.
  583. type: string
  584. name:
  585. description: The name of the Secret resource being
  586. referred to.
  587. type: string
  588. namespace:
  589. description: Namespace of the resource being referred
  590. to. Ignored if referent is not cluster-scoped.
  591. cluster-scoped defaults to the namespace of
  592. the referent.
  593. type: string
  594. type: object
  595. clientKey:
  596. description: A reference to a specific 'key' within
  597. a Secret resource, In some instances, `key` is a
  598. required field.
  599. properties:
  600. key:
  601. description: The key of the entry in the Secret
  602. resource's `data` field to be used. Some instances
  603. of this field may be defaulted, in others it
  604. may be required.
  605. type: string
  606. name:
  607. description: The name of the Secret resource being
  608. referred to.
  609. type: string
  610. namespace:
  611. description: Namespace of the resource being referred
  612. to. Ignored if referent is not cluster-scoped.
  613. cluster-scoped defaults to the namespace of
  614. the referent.
  615. type: string
  616. type: object
  617. type: object
  618. serviceAccount:
  619. description: points to a service account that should be
  620. used for authentication
  621. properties:
  622. serviceAccount:
  623. description: A reference to a ServiceAccount resource.
  624. properties:
  625. name:
  626. description: The name of the ServiceAccount resource
  627. being referred to.
  628. type: string
  629. namespace:
  630. description: Namespace of the resource being referred
  631. to. Ignored if referent is not cluster-scoped.
  632. cluster-scoped defaults to the namespace of
  633. the referent.
  634. type: string
  635. required:
  636. - name
  637. type: object
  638. type: object
  639. token:
  640. description: use static token to authenticate with
  641. properties:
  642. bearerToken:
  643. description: A reference to a specific 'key' within
  644. a Secret resource, In some instances, `key` is a
  645. required field.
  646. properties:
  647. key:
  648. description: The key of the entry in the Secret
  649. resource's `data` field to be used. Some instances
  650. of this field may be defaulted, in others it
  651. may be required.
  652. type: string
  653. name:
  654. description: The name of the Secret resource being
  655. referred to.
  656. type: string
  657. namespace:
  658. description: Namespace of the resource being referred
  659. to. Ignored if referent is not cluster-scoped.
  660. cluster-scoped defaults to the namespace of
  661. the referent.
  662. type: string
  663. type: object
  664. type: object
  665. type: object
  666. remoteNamespace:
  667. default: default
  668. description: Remote namespace to fetch the secrets from
  669. type: string
  670. server:
  671. description: configures the Kubernetes server Address.
  672. properties:
  673. caBundle:
  674. description: CABundle is a base64-encoded CA certificate
  675. format: byte
  676. type: string
  677. caProvider:
  678. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  679. properties:
  680. key:
  681. description: The key the value inside of the provider
  682. type to use, only used with "Secret" type
  683. type: string
  684. name:
  685. description: The name of the object located at the
  686. provider type.
  687. type: string
  688. namespace:
  689. description: The namespace the Provider type is in.
  690. type: string
  691. type:
  692. description: The type of provider to use such as "Secret",
  693. or "ConfigMap".
  694. enum:
  695. - Secret
  696. - ConfigMap
  697. type: string
  698. required:
  699. - name
  700. - type
  701. type: object
  702. url:
  703. default: kubernetes.default
  704. description: configures the Kubernetes server Address.
  705. type: string
  706. type: object
  707. required:
  708. - auth
  709. type: object
  710. oracle:
  711. description: Oracle configures this store to sync secrets using
  712. Oracle Vault provider
  713. properties:
  714. auth:
  715. description: Auth configures how secret-manager authenticates
  716. with the Oracle Vault. If empty, use the instance principal,
  717. otherwise the user credentials specified in Auth.
  718. properties:
  719. secretRef:
  720. description: SecretRef to pass through sensitive information.
  721. properties:
  722. fingerprint:
  723. description: Fingerprint is the fingerprint of the
  724. API private key.
  725. properties:
  726. key:
  727. description: The key of the entry in the Secret
  728. resource's `data` field to be used. Some instances
  729. of this field may be defaulted, in others it
  730. may be required.
  731. type: string
  732. name:
  733. description: The name of the Secret resource being
  734. referred to.
  735. type: string
  736. namespace:
  737. description: Namespace of the resource being referred
  738. to. Ignored if referent is not cluster-scoped.
  739. cluster-scoped defaults to the namespace of
  740. the referent.
  741. type: string
  742. type: object
  743. privatekey:
  744. description: PrivateKey is the user's API Signing
  745. Key in PEM format, used for authentication.
  746. properties:
  747. key:
  748. description: The key of the entry in the Secret
  749. resource's `data` field to be used. Some instances
  750. of this field may be defaulted, in others it
  751. may be required.
  752. type: string
  753. name:
  754. description: The name of the Secret resource being
  755. referred to.
  756. type: string
  757. namespace:
  758. description: Namespace of the resource being referred
  759. to. Ignored if referent is not cluster-scoped.
  760. cluster-scoped defaults to the namespace of
  761. the referent.
  762. type: string
  763. type: object
  764. required:
  765. - fingerprint
  766. - privatekey
  767. type: object
  768. tenancy:
  769. description: Tenancy is the tenancy OCID where user is
  770. located.
  771. type: string
  772. user:
  773. description: User is an access OCID specific to the account.
  774. type: string
  775. required:
  776. - secretRef
  777. - tenancy
  778. - user
  779. type: object
  780. region:
  781. description: Region is the region where vault is located.
  782. type: string
  783. vault:
  784. description: Vault is the vault's OCID of the specific vault
  785. where secret is located.
  786. type: string
  787. required:
  788. - region
  789. - vault
  790. type: object
  791. vault:
  792. description: Vault configures this store to sync secrets using
  793. Hashi provider
  794. properties:
  795. auth:
  796. description: Auth configures how secret-manager authenticates
  797. with the Vault server.
  798. properties:
  799. appRole:
  800. description: AppRole authenticates with Vault using the
  801. App Role auth mechanism, with the role and secret stored
  802. in a Kubernetes Secret resource.
  803. properties:
  804. path:
  805. default: approle
  806. description: 'Path where the App Role authentication
  807. backend is mounted in Vault, e.g: "approle"'
  808. type: string
  809. roleId:
  810. description: RoleID configured in the App Role authentication
  811. backend when setting up the authentication backend
  812. in Vault.
  813. type: string
  814. secretRef:
  815. description: Reference to a key in a Secret that contains
  816. the App Role secret used to authenticate with Vault.
  817. The `key` field must be specified and denotes which
  818. entry within the Secret resource is used as the
  819. app role secret.
  820. properties:
  821. key:
  822. description: The key of the entry in the Secret
  823. resource's `data` field to be used. Some instances
  824. of this field may be defaulted, in others it
  825. may be required.
  826. type: string
  827. name:
  828. description: The name of the Secret resource being
  829. referred to.
  830. type: string
  831. namespace:
  832. description: Namespace of the resource being referred
  833. to. Ignored if referent is not cluster-scoped.
  834. cluster-scoped defaults to the namespace of
  835. the referent.
  836. type: string
  837. type: object
  838. required:
  839. - path
  840. - roleId
  841. - secretRef
  842. type: object
  843. cert:
  844. description: Cert authenticates with TLS Certificates
  845. by passing client certificate, private key and ca certificate
  846. Cert authentication method
  847. properties:
  848. clientCert:
  849. description: ClientCert is a certificate to authenticate
  850. using the Cert Vault authentication method
  851. properties:
  852. key:
  853. description: The key of the entry in the Secret
  854. resource's `data` field to be used. Some instances
  855. of this field may be defaulted, in others it
  856. may be required.
  857. type: string
  858. name:
  859. description: The name of the Secret resource being
  860. referred to.
  861. type: string
  862. namespace:
  863. description: Namespace of the resource being referred
  864. to. Ignored if referent is not cluster-scoped.
  865. cluster-scoped defaults to the namespace of
  866. the referent.
  867. type: string
  868. type: object
  869. secretRef:
  870. description: SecretRef to a key in a Secret resource
  871. containing client private key to authenticate with
  872. Vault using the Cert authentication method
  873. properties:
  874. key:
  875. description: The key of the entry in the Secret
  876. resource's `data` field to be used. Some instances
  877. of this field may be defaulted, in others it
  878. may be required.
  879. type: string
  880. name:
  881. description: The name of the Secret resource being
  882. referred to.
  883. type: string
  884. namespace:
  885. description: Namespace of the resource being referred
  886. to. Ignored if referent is not cluster-scoped.
  887. cluster-scoped defaults to the namespace of
  888. the referent.
  889. type: string
  890. type: object
  891. type: object
  892. jwt:
  893. description: Jwt authenticates with Vault by passing role
  894. and JWT token using the JWT/OIDC authentication method
  895. properties:
  896. path:
  897. default: jwt
  898. description: 'Path where the JWT authentication backend
  899. is mounted in Vault, e.g: "jwt"'
  900. type: string
  901. role:
  902. description: Role is a JWT role to authenticate using
  903. the JWT/OIDC Vault authentication method
  904. type: string
  905. secretRef:
  906. description: SecretRef to a key in a Secret resource
  907. containing JWT token to authenticate with Vault
  908. using the JWT/OIDC authentication method
  909. properties:
  910. key:
  911. description: The key of the entry in the Secret
  912. resource's `data` field to be used. Some instances
  913. of this field may be defaulted, in others it
  914. may be required.
  915. type: string
  916. name:
  917. description: The name of the Secret resource being
  918. referred to.
  919. type: string
  920. namespace:
  921. description: Namespace of the resource being referred
  922. to. Ignored if referent is not cluster-scoped.
  923. cluster-scoped defaults to the namespace of
  924. the referent.
  925. type: string
  926. type: object
  927. required:
  928. - path
  929. type: object
  930. kubernetes:
  931. description: Kubernetes authenticates with Vault by passing
  932. the ServiceAccount token stored in the named Secret
  933. resource to the Vault server.
  934. properties:
  935. mountPath:
  936. default: kubernetes
  937. description: 'Path where the Kubernetes authentication
  938. backend is mounted in Vault, e.g: "kubernetes"'
  939. type: string
  940. role:
  941. description: A required field containing the Vault
  942. Role to assume. A Role binds a Kubernetes ServiceAccount
  943. with a set of Vault policies.
  944. type: string
  945. secretRef:
  946. description: Optional secret field containing a Kubernetes
  947. ServiceAccount JWT used for authenticating with
  948. Vault. If a name is specified without a key, `token`
  949. is the default. If one is not specified, the one
  950. bound to the controller will be used.
  951. properties:
  952. key:
  953. description: The key of the entry in the Secret
  954. resource's `data` field to be used. Some instances
  955. of this field may be defaulted, in others it
  956. may be required.
  957. type: string
  958. name:
  959. description: The name of the Secret resource being
  960. referred to.
  961. type: string
  962. namespace:
  963. description: Namespace of the resource being referred
  964. to. Ignored if referent is not cluster-scoped.
  965. cluster-scoped defaults to the namespace of
  966. the referent.
  967. type: string
  968. type: object
  969. serviceAccountRef:
  970. description: Optional service account field containing
  971. the name of a kubernetes ServiceAccount. If the
  972. service account is specified, the service account
  973. secret token JWT will be used for authenticating
  974. with Vault. If the service account selector is not
  975. supplied, the secretRef will be used instead.
  976. properties:
  977. name:
  978. description: The name of the ServiceAccount resource
  979. being 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. required:
  988. - name
  989. type: object
  990. required:
  991. - mountPath
  992. - role
  993. type: object
  994. ldap:
  995. description: Ldap authenticates with Vault by passing
  996. username/password pair using the LDAP authentication
  997. method
  998. properties:
  999. path:
  1000. default: ldap
  1001. description: 'Path where the LDAP authentication backend
  1002. is mounted in Vault, e.g: "ldap"'
  1003. type: string
  1004. secretRef:
  1005. description: SecretRef to a key in a Secret resource
  1006. containing password for the LDAP user used to authenticate
  1007. with Vault using the LDAP authentication method
  1008. properties:
  1009. key:
  1010. description: The key of the entry in the Secret
  1011. resource's `data` field to be used. Some instances
  1012. of this field may be defaulted, in others it
  1013. may be required.
  1014. type: string
  1015. name:
  1016. description: The name of the Secret resource being
  1017. referred to.
  1018. type: string
  1019. namespace:
  1020. description: Namespace of the resource being referred
  1021. to. Ignored if referent is not cluster-scoped.
  1022. cluster-scoped defaults to the namespace of
  1023. the referent.
  1024. type: string
  1025. type: object
  1026. username:
  1027. description: Username is a LDAP user name used to
  1028. authenticate using the LDAP Vault authentication
  1029. method
  1030. type: string
  1031. required:
  1032. - path
  1033. - username
  1034. type: object
  1035. tokenSecretRef:
  1036. description: TokenSecretRef authenticates with Vault by
  1037. presenting a token.
  1038. properties:
  1039. key:
  1040. description: The key of the entry in the Secret resource's
  1041. `data` field to be used. Some instances of this
  1042. field may be defaulted, in others it may be required.
  1043. type: string
  1044. name:
  1045. description: The name of the Secret resource being
  1046. referred to.
  1047. type: string
  1048. namespace:
  1049. description: Namespace of the resource being referred
  1050. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1051. defaults to the namespace of the referent.
  1052. type: string
  1053. type: object
  1054. type: object
  1055. caBundle:
  1056. description: PEM encoded CA bundle used to validate Vault
  1057. server certificate. Only used if the Server URL is using
  1058. HTTPS protocol. This parameter is ignored for plain HTTP
  1059. protocol connection. If not set the system root certificates
  1060. are used to validate the TLS connection.
  1061. format: byte
  1062. type: string
  1063. caProvider:
  1064. description: The provider for the CA bundle to use to validate
  1065. Vault server certificate.
  1066. properties:
  1067. key:
  1068. description: The key the value inside of the provider
  1069. type to use, only used with "Secret" type
  1070. type: string
  1071. name:
  1072. description: The name of the object located at the provider
  1073. type.
  1074. type: string
  1075. namespace:
  1076. description: The namespace the Provider type is in.
  1077. type: string
  1078. type:
  1079. description: The type of provider to use such as "Secret",
  1080. or "ConfigMap".
  1081. enum:
  1082. - Secret
  1083. - ConfigMap
  1084. type: string
  1085. required:
  1086. - name
  1087. - type
  1088. type: object
  1089. forwardInconsistent:
  1090. description: ForwardInconsistent tells Vault to forward read-after-write
  1091. requests to the Vault leader instead of simply retrying
  1092. within a loop. This can increase performance if the option
  1093. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1094. type: boolean
  1095. namespace:
  1096. description: 'Name of the vault namespace. Namespaces is a
  1097. set of features within Vault Enterprise that allows Vault
  1098. environments to support Secure Multi-tenancy. e.g: "ns1".
  1099. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  1100. type: string
  1101. path:
  1102. description: 'Path is the mount path of the Vault KV backend
  1103. endpoint, e.g: "secret". The v2 KV secret engine version
  1104. specific "/data" path suffix for fetching secrets from Vault
  1105. is optional and will be appended if not present in specified
  1106. path.'
  1107. type: string
  1108. readYourWrites:
  1109. description: ReadYourWrites ensures isolated read-after-write
  1110. semantics by providing discovered cluster replication states
  1111. in each request. More information about eventual consistency
  1112. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  1113. type: boolean
  1114. server:
  1115. description: 'Server is the connection address for the Vault
  1116. server, e.g: "https://vault.example.com:8200".'
  1117. type: string
  1118. version:
  1119. default: v2
  1120. description: Version is the Vault KV secret engine version.
  1121. This can be either "v1" or "v2". Version defaults to "v2".
  1122. enum:
  1123. - v1
  1124. - v2
  1125. type: string
  1126. required:
  1127. - auth
  1128. - server
  1129. type: object
  1130. webhook:
  1131. description: Webhook configures this store to sync secrets using
  1132. a generic templated webhook
  1133. properties:
  1134. body:
  1135. description: Body
  1136. type: string
  1137. caBundle:
  1138. description: PEM encoded CA bundle used to validate webhook
  1139. server certificate. Only used if the Server URL is using
  1140. HTTPS protocol. This parameter is ignored for plain HTTP
  1141. protocol connection. If not set the system root certificates
  1142. are used to validate the TLS connection.
  1143. format: byte
  1144. type: string
  1145. caProvider:
  1146. description: The provider for the CA bundle to use to validate
  1147. webhook server certificate.
  1148. properties:
  1149. key:
  1150. description: The key the value inside of the provider
  1151. type to use, only used with "Secret" type
  1152. type: string
  1153. name:
  1154. description: The name of the object located at the provider
  1155. type.
  1156. type: string
  1157. namespace:
  1158. description: The namespace the Provider type is in.
  1159. type: string
  1160. type:
  1161. description: The type of provider to use such as "Secret",
  1162. or "ConfigMap".
  1163. enum:
  1164. - Secret
  1165. - ConfigMap
  1166. type: string
  1167. required:
  1168. - name
  1169. - type
  1170. type: object
  1171. headers:
  1172. additionalProperties:
  1173. type: string
  1174. description: Headers
  1175. type: object
  1176. method:
  1177. description: Webhook Method
  1178. type: string
  1179. result:
  1180. description: Result formatting
  1181. properties:
  1182. jsonPath:
  1183. description: Json path of return value
  1184. type: string
  1185. type: object
  1186. secrets:
  1187. description: Secrets to fill in templates These secrets will
  1188. be passed to the templating function as key value pairs
  1189. under the given name
  1190. items:
  1191. properties:
  1192. name:
  1193. description: Name of this secret in templates
  1194. type: string
  1195. secretRef:
  1196. description: Secret ref to fill in credentials
  1197. properties:
  1198. key:
  1199. description: The key of the entry in the Secret
  1200. resource's `data` field to be used. Some instances
  1201. of this field may be defaulted, in others it may
  1202. be required.
  1203. type: string
  1204. name:
  1205. description: The name of the Secret resource being
  1206. referred to.
  1207. type: string
  1208. namespace:
  1209. description: Namespace of the resource being referred
  1210. to. Ignored if referent is not cluster-scoped.
  1211. cluster-scoped defaults to the namespace of the
  1212. referent.
  1213. type: string
  1214. type: object
  1215. required:
  1216. - name
  1217. - secretRef
  1218. type: object
  1219. type: array
  1220. timeout:
  1221. description: Timeout
  1222. type: string
  1223. url:
  1224. description: Webhook url to call
  1225. type: string
  1226. required:
  1227. - result
  1228. - url
  1229. type: object
  1230. yandexlockbox:
  1231. description: YandexLockbox configures this store to sync secrets
  1232. using Yandex Lockbox provider
  1233. properties:
  1234. apiEndpoint:
  1235. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1236. type: string
  1237. auth:
  1238. description: Auth defines the information necessary to authenticate
  1239. against Yandex Lockbox
  1240. properties:
  1241. authorizedKeySecretRef:
  1242. description: The authorized key used for authentication
  1243. properties:
  1244. key:
  1245. description: The key of the entry in the Secret resource's
  1246. `data` field to be used. Some instances of this
  1247. field may be defaulted, in others it may be required.
  1248. type: string
  1249. name:
  1250. description: The name of the Secret resource being
  1251. referred to.
  1252. type: string
  1253. namespace:
  1254. description: Namespace of the resource being referred
  1255. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1256. defaults to the namespace of the referent.
  1257. type: string
  1258. type: object
  1259. type: object
  1260. caProvider:
  1261. description: The provider for the CA bundle to use to validate
  1262. Yandex.Cloud server certificate.
  1263. properties:
  1264. certSecretRef:
  1265. description: A reference to a specific 'key' within a
  1266. Secret resource, In some instances, `key` is a required
  1267. field.
  1268. properties:
  1269. key:
  1270. description: The key of the entry in the Secret resource's
  1271. `data` field to be used. Some instances of this
  1272. field may be defaulted, in others it may be required.
  1273. type: string
  1274. name:
  1275. description: The name of the Secret resource being
  1276. referred to.
  1277. type: string
  1278. namespace:
  1279. description: Namespace of the resource being referred
  1280. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1281. defaults to the namespace of the referent.
  1282. type: string
  1283. type: object
  1284. type: object
  1285. required:
  1286. - auth
  1287. type: object
  1288. type: object
  1289. retrySettings:
  1290. description: Used to configure http retries if failed
  1291. properties:
  1292. maxRetries:
  1293. format: int32
  1294. type: integer
  1295. retryInterval:
  1296. type: string
  1297. type: object
  1298. required:
  1299. - provider
  1300. type: object
  1301. status:
  1302. description: SecretStoreStatus defines the observed state of the SecretStore.
  1303. properties:
  1304. conditions:
  1305. items:
  1306. properties:
  1307. lastTransitionTime:
  1308. format: date-time
  1309. type: string
  1310. message:
  1311. type: string
  1312. reason:
  1313. type: string
  1314. status:
  1315. type: string
  1316. type:
  1317. type: string
  1318. required:
  1319. - status
  1320. - type
  1321. type: object
  1322. type: array
  1323. type: object
  1324. type: object
  1325. served: true
  1326. storage: false
  1327. subresources:
  1328. status: {}
  1329. - additionalPrinterColumns:
  1330. - jsonPath: .metadata.creationTimestamp
  1331. name: AGE
  1332. type: date
  1333. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1334. name: Status
  1335. type: string
  1336. name: v1beta1
  1337. schema:
  1338. openAPIV3Schema:
  1339. description: SecretStore represents a secure external location for storing
  1340. secrets, which can be referenced as part of `storeRef` fields.
  1341. properties:
  1342. apiVersion:
  1343. description: 'APIVersion defines the versioned schema of this representation
  1344. of an object. Servers should convert recognized schemas to the latest
  1345. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1346. type: string
  1347. kind:
  1348. description: 'Kind is a string value representing the REST resource this
  1349. object represents. Servers may infer this from the endpoint the client
  1350. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1351. type: string
  1352. metadata:
  1353. type: object
  1354. spec:
  1355. description: SecretStoreSpec defines the desired state of SecretStore.
  1356. properties:
  1357. controller:
  1358. description: 'Used to select the correct KES controller (think: ingress.ingressClassName)
  1359. The KES controller is instantiated with a specific controller name
  1360. and filters ES based on this property'
  1361. type: string
  1362. provider:
  1363. description: Used to configure the provider. Only one provider may
  1364. be set
  1365. maxProperties: 1
  1366. minProperties: 1
  1367. properties:
  1368. akeyless:
  1369. description: Akeyless configures this store to sync secrets using
  1370. Akeyless Vault provider
  1371. properties:
  1372. akeylessGWApiURL:
  1373. description: Akeyless GW API Url from which the secrets to
  1374. be fetched from.
  1375. type: string
  1376. authSecretRef:
  1377. description: Auth configures how the operator authenticates
  1378. with Akeyless.
  1379. properties:
  1380. secretRef:
  1381. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM:
  1382. AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  1383. properties:
  1384. accessID:
  1385. description: The SecretAccessID is used for authentication
  1386. properties:
  1387. key:
  1388. description: The key of the entry in the Secret
  1389. resource's `data` field to be used. Some instances
  1390. of this field may be defaulted, in others it
  1391. may be required.
  1392. type: string
  1393. name:
  1394. description: The name of the Secret resource being
  1395. referred to.
  1396. type: string
  1397. namespace:
  1398. description: Namespace of the resource being referred
  1399. to. Ignored if referent is not cluster-scoped.
  1400. cluster-scoped defaults to the namespace of
  1401. the referent.
  1402. type: string
  1403. type: object
  1404. accessType:
  1405. description: A reference to a specific 'key' within
  1406. a Secret resource, In some instances, `key` is a
  1407. required field.
  1408. properties:
  1409. key:
  1410. description: The key of the entry in the Secret
  1411. resource's `data` field to be used. Some instances
  1412. of this field may be defaulted, in others it
  1413. may be required.
  1414. type: string
  1415. name:
  1416. description: The name of the Secret resource being
  1417. referred to.
  1418. type: string
  1419. namespace:
  1420. description: Namespace of the resource being referred
  1421. to. Ignored if referent is not cluster-scoped.
  1422. cluster-scoped defaults to the namespace of
  1423. the referent.
  1424. type: string
  1425. type: object
  1426. accessTypeParam:
  1427. description: A reference to a specific 'key' within
  1428. a Secret resource, In some instances, `key` is a
  1429. required field.
  1430. properties:
  1431. key:
  1432. description: The key of the entry in the Secret
  1433. resource's `data` field to be used. Some instances
  1434. of this field may be defaulted, in others it
  1435. may be required.
  1436. type: string
  1437. name:
  1438. description: The name of the Secret resource being
  1439. referred to.
  1440. type: string
  1441. namespace:
  1442. description: Namespace of the resource being referred
  1443. to. Ignored if referent is not cluster-scoped.
  1444. cluster-scoped defaults to the namespace of
  1445. the referent.
  1446. type: string
  1447. type: object
  1448. type: object
  1449. required:
  1450. - secretRef
  1451. type: object
  1452. required:
  1453. - akeylessGWApiURL
  1454. - authSecretRef
  1455. type: object
  1456. alibaba:
  1457. description: Alibaba configures this store to sync secrets using
  1458. Alibaba Cloud provider
  1459. properties:
  1460. auth:
  1461. description: AlibabaAuth contains a secretRef for credentials.
  1462. properties:
  1463. secretRef:
  1464. description: AlibabaAuthSecretRef holds secret references
  1465. for Alibaba credentials.
  1466. properties:
  1467. accessKeyIDSecretRef:
  1468. description: The AccessKeyID is used for authentication
  1469. properties:
  1470. key:
  1471. description: The key of the entry in the Secret
  1472. resource's `data` field to be used. Some instances
  1473. of this field may be defaulted, in others it
  1474. may be required.
  1475. type: string
  1476. name:
  1477. description: The name of the Secret resource being
  1478. referred to.
  1479. type: string
  1480. namespace:
  1481. description: Namespace of the resource being referred
  1482. to. Ignored if referent is not cluster-scoped.
  1483. cluster-scoped defaults to the namespace of
  1484. the referent.
  1485. type: string
  1486. type: object
  1487. accessKeySecretSecretRef:
  1488. description: The AccessKeySecret is used for authentication
  1489. properties:
  1490. key:
  1491. description: The key of the entry in the Secret
  1492. resource's `data` field to be used. Some instances
  1493. of this field may be defaulted, in others it
  1494. may be required.
  1495. type: string
  1496. name:
  1497. description: The name of the Secret resource being
  1498. referred to.
  1499. type: string
  1500. namespace:
  1501. description: Namespace of the resource being referred
  1502. to. Ignored if referent is not cluster-scoped.
  1503. cluster-scoped defaults to the namespace of
  1504. the referent.
  1505. type: string
  1506. type: object
  1507. required:
  1508. - accessKeyIDSecretRef
  1509. - accessKeySecretSecretRef
  1510. type: object
  1511. required:
  1512. - secretRef
  1513. type: object
  1514. endpoint:
  1515. type: string
  1516. regionID:
  1517. description: Alibaba Region to be used for the provider
  1518. type: string
  1519. required:
  1520. - auth
  1521. - regionID
  1522. type: object
  1523. aws:
  1524. description: AWS configures this store to sync secrets using AWS
  1525. Secret Manager provider
  1526. properties:
  1527. auth:
  1528. description: 'Auth defines the information necessary to authenticate
  1529. against AWS if not set aws sdk will infer credentials from
  1530. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  1531. properties:
  1532. jwt:
  1533. description: Authenticate against AWS using service account
  1534. tokens.
  1535. properties:
  1536. serviceAccountRef:
  1537. description: A reference to a ServiceAccount resource.
  1538. properties:
  1539. name:
  1540. description: The name of the ServiceAccount resource
  1541. being referred to.
  1542. type: string
  1543. namespace:
  1544. description: Namespace of the resource being referred
  1545. to. Ignored if referent is not cluster-scoped.
  1546. cluster-scoped defaults to the namespace of
  1547. the referent.
  1548. type: string
  1549. required:
  1550. - name
  1551. type: object
  1552. type: object
  1553. secretRef:
  1554. description: AWSAuthSecretRef holds secret references
  1555. for AWS credentials both AccessKeyID and SecretAccessKey
  1556. must be defined in order to properly authenticate.
  1557. properties:
  1558. accessKeyIDSecretRef:
  1559. description: The AccessKeyID is used for authentication
  1560. properties:
  1561. key:
  1562. description: The key of the entry in the Secret
  1563. resource's `data` field to be used. Some instances
  1564. of this field may be defaulted, in others it
  1565. may be required.
  1566. type: string
  1567. name:
  1568. description: The name of the Secret resource being
  1569. referred to.
  1570. type: string
  1571. namespace:
  1572. description: Namespace of the resource being referred
  1573. to. Ignored if referent is not cluster-scoped.
  1574. cluster-scoped defaults to the namespace of
  1575. the referent.
  1576. type: string
  1577. type: object
  1578. secretAccessKeySecretRef:
  1579. description: The SecretAccessKey is used for authentication
  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. type: object
  1599. type: object
  1600. region:
  1601. description: AWS Region to be used for the provider
  1602. type: string
  1603. role:
  1604. description: Role is a Role ARN which the SecretManager provider
  1605. will assume
  1606. type: string
  1607. service:
  1608. description: Service defines which service should be used
  1609. to fetch the secrets
  1610. enum:
  1611. - SecretsManager
  1612. - ParameterStore
  1613. type: string
  1614. required:
  1615. - region
  1616. - service
  1617. type: object
  1618. azurekv:
  1619. description: AzureKV configures this store to sync secrets using
  1620. Azure Key Vault provider
  1621. properties:
  1622. authSecretRef:
  1623. description: Auth configures how the operator authenticates
  1624. with Azure. Required for ServicePrincipal auth type.
  1625. properties:
  1626. clientId:
  1627. description: The Azure clientId of the service principle
  1628. used for authentication.
  1629. properties:
  1630. key:
  1631. description: The key of the entry in the Secret resource's
  1632. `data` field to be used. Some instances of this
  1633. field may be defaulted, in others it may be required.
  1634. type: string
  1635. name:
  1636. description: The name of the Secret resource being
  1637. referred to.
  1638. type: string
  1639. namespace:
  1640. description: Namespace of the resource being referred
  1641. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1642. defaults to the namespace of the referent.
  1643. type: string
  1644. type: object
  1645. clientSecret:
  1646. description: The Azure ClientSecret of the service principle
  1647. used for authentication.
  1648. properties:
  1649. key:
  1650. description: The key of the entry in the Secret resource's
  1651. `data` field to be used. Some instances of this
  1652. field may be defaulted, in others it may be required.
  1653. type: string
  1654. name:
  1655. description: The name of the Secret resource being
  1656. referred to.
  1657. type: string
  1658. namespace:
  1659. description: Namespace of the resource being referred
  1660. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1661. defaults to the namespace of the referent.
  1662. type: string
  1663. type: object
  1664. required:
  1665. - clientId
  1666. - clientSecret
  1667. type: object
  1668. authType:
  1669. default: ServicePrincipal
  1670. description: 'Auth type defines how to authenticate to the
  1671. keyvault service. Valid values are: - "ServicePrincipal"
  1672. (default): Using a service principal (tenantId, clientId,
  1673. clientSecret) - "ManagedIdentity": Using Managed Identity
  1674. assigned to the pod (see aad-pod-identity)'
  1675. enum:
  1676. - ServicePrincipal
  1677. - ManagedIdentity
  1678. type: string
  1679. identityId:
  1680. description: If multiple Managed Identity is assigned to the
  1681. pod, you can select the one to be used
  1682. type: string
  1683. tenantId:
  1684. description: TenantID configures the Azure Tenant to send
  1685. requests to. Required for ServicePrincipal auth type.
  1686. type: string
  1687. vaultUrl:
  1688. description: Vault Url from which the secrets to be fetched
  1689. from.
  1690. type: string
  1691. required:
  1692. - vaultUrl
  1693. type: object
  1694. fake:
  1695. description: Fake configures a store with static key/value pairs
  1696. properties:
  1697. data:
  1698. items:
  1699. properties:
  1700. key:
  1701. type: string
  1702. value:
  1703. type: string
  1704. valueMap:
  1705. additionalProperties:
  1706. type: string
  1707. type: object
  1708. version:
  1709. type: string
  1710. required:
  1711. - key
  1712. type: object
  1713. type: array
  1714. required:
  1715. - data
  1716. type: object
  1717. gcpsm:
  1718. description: GCPSM configures this store to sync secrets using
  1719. Google Cloud Platform Secret Manager provider
  1720. properties:
  1721. auth:
  1722. description: Auth defines the information necessary to authenticate
  1723. against GCP
  1724. properties:
  1725. secretRef:
  1726. properties:
  1727. secretAccessKeySecretRef:
  1728. description: The SecretAccessKey is used for authentication
  1729. properties:
  1730. key:
  1731. description: The key of the entry in the Secret
  1732. resource's `data` field to be used. Some instances
  1733. of this field may be defaulted, in others it
  1734. may be required.
  1735. type: string
  1736. name:
  1737. description: The name of the Secret resource being
  1738. referred to.
  1739. type: string
  1740. namespace:
  1741. description: Namespace of the resource being referred
  1742. to. Ignored if referent is not cluster-scoped.
  1743. cluster-scoped defaults to the namespace of
  1744. the referent.
  1745. type: string
  1746. type: object
  1747. type: object
  1748. workloadIdentity:
  1749. properties:
  1750. clusterLocation:
  1751. type: string
  1752. clusterName:
  1753. type: string
  1754. clusterProjectID:
  1755. type: string
  1756. serviceAccountRef:
  1757. description: A reference to a ServiceAccount resource.
  1758. properties:
  1759. name:
  1760. description: The name of the ServiceAccount resource
  1761. being referred to.
  1762. type: string
  1763. namespace:
  1764. description: Namespace of the resource being referred
  1765. to. Ignored if referent is not cluster-scoped.
  1766. cluster-scoped defaults to the namespace of
  1767. the referent.
  1768. type: string
  1769. required:
  1770. - name
  1771. type: object
  1772. required:
  1773. - clusterLocation
  1774. - clusterName
  1775. - serviceAccountRef
  1776. type: object
  1777. type: object
  1778. projectID:
  1779. description: ProjectID project where secret is located
  1780. type: string
  1781. type: object
  1782. gitlab:
  1783. description: GItlab configures this store to sync secrets using
  1784. Gitlab Variables provider
  1785. properties:
  1786. auth:
  1787. description: Auth configures how secret-manager authenticates
  1788. with a GitLab instance.
  1789. properties:
  1790. SecretRef:
  1791. properties:
  1792. accessToken:
  1793. description: AccessToken is used for authentication.
  1794. properties:
  1795. key:
  1796. description: The key of the entry in the Secret
  1797. resource's `data` field to be used. Some instances
  1798. of this field may be defaulted, in others it
  1799. may be required.
  1800. type: string
  1801. name:
  1802. description: The name of the Secret resource being
  1803. referred to.
  1804. type: string
  1805. namespace:
  1806. description: Namespace of the resource being referred
  1807. to. Ignored if referent is not cluster-scoped.
  1808. cluster-scoped defaults to the namespace of
  1809. the referent.
  1810. type: string
  1811. type: object
  1812. type: object
  1813. required:
  1814. - SecretRef
  1815. type: object
  1816. projectID:
  1817. description: ProjectID specifies a project where secrets are
  1818. located.
  1819. type: string
  1820. url:
  1821. description: URL configures the GitLab instance URL. Defaults
  1822. to https://gitlab.com/.
  1823. type: string
  1824. required:
  1825. - auth
  1826. type: object
  1827. ibm:
  1828. description: IBM configures this store to sync secrets using IBM
  1829. Cloud provider
  1830. properties:
  1831. auth:
  1832. description: Auth configures how secret-manager authenticates
  1833. with the IBM secrets manager.
  1834. properties:
  1835. secretRef:
  1836. properties:
  1837. secretApiKeySecretRef:
  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. required:
  1859. - secretRef
  1860. type: object
  1861. serviceUrl:
  1862. description: ServiceURL is the Endpoint URL that is specific
  1863. to the Secrets Manager service instance
  1864. type: string
  1865. required:
  1866. - auth
  1867. type: object
  1868. kubernetes:
  1869. description: Kubernetes configures this store to sync secrets
  1870. using a Kubernetes cluster provider
  1871. properties:
  1872. auth:
  1873. description: Auth configures how secret-manager authenticates
  1874. with a Kubernetes instance.
  1875. maxProperties: 1
  1876. minProperties: 1
  1877. properties:
  1878. cert:
  1879. description: has both clientCert and clientKey as secretKeySelector
  1880. properties:
  1881. clientCert:
  1882. description: A reference to a specific 'key' within
  1883. a Secret resource, In some instances, `key` is a
  1884. required field.
  1885. properties:
  1886. key:
  1887. description: The key of the entry in the Secret
  1888. resource's `data` field to be used. Some instances
  1889. of this field may be defaulted, in others it
  1890. may be required.
  1891. type: string
  1892. name:
  1893. description: The name of the Secret resource being
  1894. referred to.
  1895. type: string
  1896. namespace:
  1897. description: Namespace of the resource being referred
  1898. to. Ignored if referent is not cluster-scoped.
  1899. cluster-scoped defaults to the namespace of
  1900. the referent.
  1901. type: string
  1902. type: object
  1903. clientKey:
  1904. description: A reference to a specific 'key' within
  1905. a Secret resource, In some instances, `key` is a
  1906. required field.
  1907. properties:
  1908. key:
  1909. description: The key of the entry in the Secret
  1910. resource's `data` field to be used. Some instances
  1911. of this field may be defaulted, in others it
  1912. may be required.
  1913. type: string
  1914. name:
  1915. description: The name of the Secret resource being
  1916. referred to.
  1917. type: string
  1918. namespace:
  1919. description: Namespace of the resource being referred
  1920. to. Ignored if referent is not cluster-scoped.
  1921. cluster-scoped defaults to the namespace of
  1922. the referent.
  1923. type: string
  1924. type: object
  1925. type: object
  1926. serviceAccount:
  1927. description: points to a service account that should be
  1928. used for authentication
  1929. properties:
  1930. serviceAccount:
  1931. description: A reference to a ServiceAccount resource.
  1932. properties:
  1933. name:
  1934. description: The name of the ServiceAccount resource
  1935. being referred to.
  1936. type: string
  1937. namespace:
  1938. description: Namespace of the resource being referred
  1939. to. Ignored if referent is not cluster-scoped.
  1940. cluster-scoped defaults to the namespace of
  1941. the referent.
  1942. type: string
  1943. required:
  1944. - name
  1945. type: object
  1946. type: object
  1947. token:
  1948. description: use static token to authenticate with
  1949. properties:
  1950. bearerToken:
  1951. description: A reference to a specific 'key' within
  1952. a Secret resource, In some instances, `key` is a
  1953. required field.
  1954. properties:
  1955. key:
  1956. description: The key of the entry in the Secret
  1957. resource's `data` field to be used. Some instances
  1958. of this field may be defaulted, in others it
  1959. may be required.
  1960. type: string
  1961. name:
  1962. description: The name of the Secret resource being
  1963. referred to.
  1964. type: string
  1965. namespace:
  1966. description: Namespace of the resource being referred
  1967. to. Ignored if referent is not cluster-scoped.
  1968. cluster-scoped defaults to the namespace of
  1969. the referent.
  1970. type: string
  1971. type: object
  1972. type: object
  1973. type: object
  1974. remoteNamespace:
  1975. default: default
  1976. description: Remote namespace to fetch the secrets from
  1977. type: string
  1978. server:
  1979. description: configures the Kubernetes server Address.
  1980. properties:
  1981. caBundle:
  1982. description: CABundle is a base64-encoded CA certificate
  1983. format: byte
  1984. type: string
  1985. caProvider:
  1986. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  1987. properties:
  1988. key:
  1989. description: The key the value inside of the provider
  1990. type to use, only used with "Secret" type
  1991. type: string
  1992. name:
  1993. description: The name of the object located at the
  1994. provider type.
  1995. type: string
  1996. namespace:
  1997. description: The namespace the Provider type is in.
  1998. type: string
  1999. type:
  2000. description: The type of provider to use such as "Secret",
  2001. or "ConfigMap".
  2002. enum:
  2003. - Secret
  2004. - ConfigMap
  2005. type: string
  2006. required:
  2007. - name
  2008. - type
  2009. type: object
  2010. url:
  2011. default: kubernetes.default
  2012. description: configures the Kubernetes server Address.
  2013. type: string
  2014. type: object
  2015. required:
  2016. - auth
  2017. type: object
  2018. oracle:
  2019. description: Oracle configures this store to sync secrets using
  2020. Oracle Vault provider
  2021. properties:
  2022. auth:
  2023. description: Auth configures how secret-manager authenticates
  2024. with the Oracle Vault. If empty, use the instance principal,
  2025. otherwise the user credentials specified in Auth.
  2026. properties:
  2027. secretRef:
  2028. description: SecretRef to pass through sensitive information.
  2029. properties:
  2030. fingerprint:
  2031. description: Fingerprint is the fingerprint of the
  2032. API private key.
  2033. properties:
  2034. key:
  2035. description: The key of the entry in the Secret
  2036. resource's `data` field to be used. Some instances
  2037. of this field may be defaulted, in others it
  2038. may be required.
  2039. type: string
  2040. name:
  2041. description: The name of the Secret resource being
  2042. referred to.
  2043. type: string
  2044. namespace:
  2045. description: Namespace of the resource being referred
  2046. to. Ignored if referent is not cluster-scoped.
  2047. cluster-scoped defaults to the namespace of
  2048. the referent.
  2049. type: string
  2050. type: object
  2051. privatekey:
  2052. description: PrivateKey is the user's API Signing
  2053. Key in PEM format, used for authentication.
  2054. properties:
  2055. key:
  2056. description: The key of the entry in the Secret
  2057. resource's `data` field to be used. Some instances
  2058. of this field may be defaulted, in others it
  2059. may be required.
  2060. type: string
  2061. name:
  2062. description: The name of the Secret resource being
  2063. referred to.
  2064. type: string
  2065. namespace:
  2066. description: Namespace of the resource being referred
  2067. to. Ignored if referent is not cluster-scoped.
  2068. cluster-scoped defaults to the namespace of
  2069. the referent.
  2070. type: string
  2071. type: object
  2072. required:
  2073. - fingerprint
  2074. - privatekey
  2075. type: object
  2076. tenancy:
  2077. description: Tenancy is the tenancy OCID where user is
  2078. located.
  2079. type: string
  2080. user:
  2081. description: User is an access OCID specific to the account.
  2082. type: string
  2083. required:
  2084. - secretRef
  2085. - tenancy
  2086. - user
  2087. type: object
  2088. region:
  2089. description: Region is the region where vault is located.
  2090. type: string
  2091. vault:
  2092. description: Vault is the vault's OCID of the specific vault
  2093. where secret is located.
  2094. type: string
  2095. required:
  2096. - region
  2097. - vault
  2098. type: object
  2099. vault:
  2100. description: Vault configures this store to sync secrets using
  2101. Hashi provider
  2102. properties:
  2103. auth:
  2104. description: Auth configures how secret-manager authenticates
  2105. with the Vault server.
  2106. properties:
  2107. appRole:
  2108. description: AppRole authenticates with Vault using the
  2109. App Role auth mechanism, with the role and secret stored
  2110. in a Kubernetes Secret resource.
  2111. properties:
  2112. path:
  2113. default: approle
  2114. description: 'Path where the App Role authentication
  2115. backend is mounted in Vault, e.g: "approle"'
  2116. type: string
  2117. roleId:
  2118. description: RoleID configured in the App Role authentication
  2119. backend when setting up the authentication backend
  2120. in Vault.
  2121. type: string
  2122. secretRef:
  2123. description: Reference to a key in a Secret that contains
  2124. the App Role secret used to authenticate with Vault.
  2125. The `key` field must be specified and denotes which
  2126. entry within the Secret resource is used as the
  2127. app role secret.
  2128. properties:
  2129. key:
  2130. description: The key of the entry in the Secret
  2131. resource's `data` field to be used. Some instances
  2132. of this field may be defaulted, in others it
  2133. may be required.
  2134. type: string
  2135. name:
  2136. description: The name of the Secret resource being
  2137. referred to.
  2138. type: string
  2139. namespace:
  2140. description: Namespace of the resource being referred
  2141. to. Ignored if referent is not cluster-scoped.
  2142. cluster-scoped defaults to the namespace of
  2143. the referent.
  2144. type: string
  2145. type: object
  2146. required:
  2147. - path
  2148. - roleId
  2149. - secretRef
  2150. type: object
  2151. cert:
  2152. description: Cert authenticates with TLS Certificates
  2153. by passing client certificate, private key and ca certificate
  2154. Cert authentication method
  2155. properties:
  2156. clientCert:
  2157. description: ClientCert is a certificate to authenticate
  2158. using the Cert Vault authentication method
  2159. properties:
  2160. key:
  2161. description: The key of the entry in the Secret
  2162. resource's `data` field to be used. Some instances
  2163. of this field may be defaulted, in others it
  2164. may be required.
  2165. type: string
  2166. name:
  2167. description: The name of the Secret resource being
  2168. referred to.
  2169. type: string
  2170. namespace:
  2171. description: Namespace of the resource being referred
  2172. to. Ignored if referent is not cluster-scoped.
  2173. cluster-scoped defaults to the namespace of
  2174. the referent.
  2175. type: string
  2176. type: object
  2177. secretRef:
  2178. description: SecretRef to a key in a Secret resource
  2179. containing client private key to authenticate with
  2180. Vault using the Cert authentication method
  2181. properties:
  2182. key:
  2183. description: The key of the entry in the Secret
  2184. resource's `data` field to be used. Some instances
  2185. of this field may be defaulted, in others it
  2186. may be required.
  2187. type: string
  2188. name:
  2189. description: The name of the Secret resource being
  2190. referred to.
  2191. type: string
  2192. namespace:
  2193. description: Namespace of the resource being referred
  2194. to. Ignored if referent is not cluster-scoped.
  2195. cluster-scoped defaults to the namespace of
  2196. the referent.
  2197. type: string
  2198. type: object
  2199. type: object
  2200. jwt:
  2201. description: Jwt authenticates with Vault by passing role
  2202. and JWT token using the JWT/OIDC authentication method
  2203. properties:
  2204. path:
  2205. default: jwt
  2206. description: 'Path where the JWT authentication backend
  2207. is mounted in Vault, e.g: "jwt"'
  2208. type: string
  2209. role:
  2210. description: Role is a JWT role to authenticate using
  2211. the JWT/OIDC Vault authentication method
  2212. type: string
  2213. secretRef:
  2214. description: SecretRef to a key in a Secret resource
  2215. containing JWT token to authenticate with Vault
  2216. using the JWT/OIDC authentication method
  2217. properties:
  2218. key:
  2219. description: The key of the entry in the Secret
  2220. resource's `data` field to be used. Some instances
  2221. of this field may be defaulted, in others it
  2222. may be required.
  2223. type: string
  2224. name:
  2225. description: The name of the Secret resource being
  2226. referred to.
  2227. type: string
  2228. namespace:
  2229. description: Namespace of the resource being referred
  2230. to. Ignored if referent is not cluster-scoped.
  2231. cluster-scoped defaults to the namespace of
  2232. the referent.
  2233. type: string
  2234. type: object
  2235. required:
  2236. - path
  2237. type: object
  2238. kubernetes:
  2239. description: Kubernetes authenticates with Vault by passing
  2240. the ServiceAccount token stored in the named Secret
  2241. resource to the Vault server.
  2242. properties:
  2243. mountPath:
  2244. default: kubernetes
  2245. description: 'Path where the Kubernetes authentication
  2246. backend is mounted in Vault, e.g: "kubernetes"'
  2247. type: string
  2248. role:
  2249. description: A required field containing the Vault
  2250. Role to assume. A Role binds a Kubernetes ServiceAccount
  2251. with a set of Vault policies.
  2252. type: string
  2253. secretRef:
  2254. description: Optional secret field containing a Kubernetes
  2255. ServiceAccount JWT used for authenticating with
  2256. Vault. If a name is specified without a key, `token`
  2257. is the default. If one is not specified, the one
  2258. bound to the controller will be used.
  2259. properties:
  2260. key:
  2261. description: The key of the entry in the Secret
  2262. resource's `data` field to be used. Some instances
  2263. of this field may be defaulted, in others it
  2264. may be required.
  2265. type: string
  2266. name:
  2267. description: The name of the Secret resource being
  2268. referred to.
  2269. type: string
  2270. namespace:
  2271. description: Namespace of the resource being referred
  2272. to. Ignored if referent is not cluster-scoped.
  2273. cluster-scoped defaults to the namespace of
  2274. the referent.
  2275. type: string
  2276. type: object
  2277. serviceAccountRef:
  2278. description: Optional service account field containing
  2279. the name of a kubernetes ServiceAccount. If the
  2280. service account is specified, the service account
  2281. secret token JWT will be used for authenticating
  2282. with Vault. If the service account selector is not
  2283. supplied, the secretRef will be used instead.
  2284. properties:
  2285. name:
  2286. description: The name of the ServiceAccount resource
  2287. being referred to.
  2288. type: string
  2289. namespace:
  2290. description: Namespace of the resource being referred
  2291. to. Ignored if referent is not cluster-scoped.
  2292. cluster-scoped defaults to the namespace of
  2293. the referent.
  2294. type: string
  2295. required:
  2296. - name
  2297. type: object
  2298. required:
  2299. - mountPath
  2300. - role
  2301. type: object
  2302. ldap:
  2303. description: Ldap authenticates with Vault by passing
  2304. username/password pair using the LDAP authentication
  2305. method
  2306. properties:
  2307. path:
  2308. default: ldap
  2309. description: 'Path where the LDAP authentication backend
  2310. is mounted in Vault, e.g: "ldap"'
  2311. type: string
  2312. secretRef:
  2313. description: SecretRef to a key in a Secret resource
  2314. containing password for the LDAP user used to authenticate
  2315. with Vault using the LDAP authentication method
  2316. properties:
  2317. key:
  2318. description: The key of the entry in the Secret
  2319. resource's `data` field to be used. Some instances
  2320. of this field may be defaulted, in others it
  2321. may be required.
  2322. type: string
  2323. name:
  2324. description: The name of the Secret resource being
  2325. referred to.
  2326. type: string
  2327. namespace:
  2328. description: Namespace of the resource being referred
  2329. to. Ignored if referent is not cluster-scoped.
  2330. cluster-scoped defaults to the namespace of
  2331. the referent.
  2332. type: string
  2333. type: object
  2334. username:
  2335. description: Username is a LDAP user name used to
  2336. authenticate using the LDAP Vault authentication
  2337. method
  2338. type: string
  2339. required:
  2340. - path
  2341. - username
  2342. type: object
  2343. tokenSecretRef:
  2344. description: TokenSecretRef authenticates with Vault by
  2345. presenting a token.
  2346. properties:
  2347. key:
  2348. description: The key of the entry in the Secret resource's
  2349. `data` field to be used. Some instances of this
  2350. field may be defaulted, in others it may be required.
  2351. type: string
  2352. name:
  2353. description: The name of the Secret resource being
  2354. referred to.
  2355. type: string
  2356. namespace:
  2357. description: Namespace of the resource being referred
  2358. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2359. defaults to the namespace of the referent.
  2360. type: string
  2361. type: object
  2362. type: object
  2363. caBundle:
  2364. description: PEM encoded CA bundle used to validate Vault
  2365. server certificate. Only used if the Server URL is using
  2366. HTTPS protocol. This parameter is ignored for plain HTTP
  2367. protocol connection. If not set the system root certificates
  2368. are used to validate the TLS connection.
  2369. format: byte
  2370. type: string
  2371. caProvider:
  2372. description: The provider for the CA bundle to use to validate
  2373. Vault server certificate.
  2374. properties:
  2375. key:
  2376. description: The key the value inside of the provider
  2377. type to use, only used with "Secret" type
  2378. type: string
  2379. name:
  2380. description: The name of the object located at the provider
  2381. type.
  2382. type: string
  2383. namespace:
  2384. description: The namespace the Provider type is in.
  2385. type: string
  2386. type:
  2387. description: The type of provider to use such as "Secret",
  2388. or "ConfigMap".
  2389. enum:
  2390. - Secret
  2391. - ConfigMap
  2392. type: string
  2393. required:
  2394. - name
  2395. - type
  2396. type: object
  2397. forwardInconsistent:
  2398. description: ForwardInconsistent tells Vault to forward read-after-write
  2399. requests to the Vault leader instead of simply retrying
  2400. within a loop. This can increase performance if the option
  2401. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  2402. type: boolean
  2403. namespace:
  2404. description: 'Name of the vault namespace. Namespaces is a
  2405. set of features within Vault Enterprise that allows Vault
  2406. environments to support Secure Multi-tenancy. e.g: "ns1".
  2407. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  2408. type: string
  2409. path:
  2410. description: 'Path is the mount path of the Vault KV backend
  2411. endpoint, e.g: "secret". The v2 KV secret engine version
  2412. specific "/data" path suffix for fetching secrets from Vault
  2413. is optional and will be appended if not present in specified
  2414. path.'
  2415. type: string
  2416. readYourWrites:
  2417. description: ReadYourWrites ensures isolated read-after-write
  2418. semantics by providing discovered cluster replication states
  2419. in each request. More information about eventual consistency
  2420. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  2421. type: boolean
  2422. server:
  2423. description: 'Server is the connection address for the Vault
  2424. server, e.g: "https://vault.example.com:8200".'
  2425. type: string
  2426. version:
  2427. default: v2
  2428. description: Version is the Vault KV secret engine version.
  2429. This can be either "v1" or "v2". Version defaults to "v2".
  2430. enum:
  2431. - v1
  2432. - v2
  2433. type: string
  2434. required:
  2435. - auth
  2436. - server
  2437. type: object
  2438. webhook:
  2439. description: Webhook configures this store to sync secrets using
  2440. a generic templated webhook
  2441. properties:
  2442. body:
  2443. description: Body
  2444. type: string
  2445. caBundle:
  2446. description: PEM encoded CA bundle used to validate webhook
  2447. server certificate. Only used if the Server URL is using
  2448. HTTPS protocol. This parameter is ignored for plain HTTP
  2449. protocol connection. If not set the system root certificates
  2450. are used to validate the TLS connection.
  2451. format: byte
  2452. type: string
  2453. caProvider:
  2454. description: The provider for the CA bundle to use to validate
  2455. webhook server certificate.
  2456. properties:
  2457. key:
  2458. description: The key the value inside of the provider
  2459. type to use, only used with "Secret" type
  2460. type: string
  2461. name:
  2462. description: The name of the object located at the provider
  2463. type.
  2464. type: string
  2465. namespace:
  2466. description: The namespace the Provider type is in.
  2467. type: string
  2468. type:
  2469. description: The type of provider to use such as "Secret",
  2470. or "ConfigMap".
  2471. enum:
  2472. - Secret
  2473. - ConfigMap
  2474. type: string
  2475. required:
  2476. - name
  2477. - type
  2478. type: object
  2479. headers:
  2480. additionalProperties:
  2481. type: string
  2482. description: Headers
  2483. type: object
  2484. method:
  2485. description: Webhook Method
  2486. type: string
  2487. result:
  2488. description: Result formatting
  2489. properties:
  2490. jsonPath:
  2491. description: Json path of return value
  2492. type: string
  2493. type: object
  2494. secrets:
  2495. description: Secrets to fill in templates These secrets will
  2496. be passed to the templating function as key value pairs
  2497. under the given name
  2498. items:
  2499. properties:
  2500. name:
  2501. description: Name of this secret in templates
  2502. type: string
  2503. secretRef:
  2504. description: Secret ref to fill in credentials
  2505. properties:
  2506. key:
  2507. description: The key of the entry in the Secret
  2508. resource's `data` field to be used. Some instances
  2509. of this field may be defaulted, in others it may
  2510. be required.
  2511. type: string
  2512. name:
  2513. description: The name of the Secret resource being
  2514. referred to.
  2515. type: string
  2516. namespace:
  2517. description: Namespace of the resource being referred
  2518. to. Ignored if referent is not cluster-scoped.
  2519. cluster-scoped defaults to the namespace of the
  2520. referent.
  2521. type: string
  2522. type: object
  2523. required:
  2524. - name
  2525. - secretRef
  2526. type: object
  2527. type: array
  2528. timeout:
  2529. description: Timeout
  2530. type: string
  2531. url:
  2532. description: Webhook url to call
  2533. type: string
  2534. required:
  2535. - result
  2536. - url
  2537. type: object
  2538. yandexlockbox:
  2539. description: YandexLockbox configures this store to sync secrets
  2540. using Yandex Lockbox provider
  2541. properties:
  2542. apiEndpoint:
  2543. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2544. type: string
  2545. auth:
  2546. description: Auth defines the information necessary to authenticate
  2547. against Yandex Lockbox
  2548. properties:
  2549. authorizedKeySecretRef:
  2550. description: The authorized key used for authentication
  2551. properties:
  2552. key:
  2553. description: The key of the entry in the Secret resource's
  2554. `data` field to be used. Some instances of this
  2555. field may be defaulted, in others it may be required.
  2556. type: string
  2557. name:
  2558. description: The name of the Secret resource being
  2559. referred to.
  2560. type: string
  2561. namespace:
  2562. description: Namespace of the resource being referred
  2563. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2564. defaults to the namespace of the referent.
  2565. type: string
  2566. type: object
  2567. type: object
  2568. caProvider:
  2569. description: The provider for the CA bundle to use to validate
  2570. Yandex.Cloud server certificate.
  2571. properties:
  2572. certSecretRef:
  2573. description: A reference to a specific 'key' within a
  2574. Secret resource, In some instances, `key` is a required
  2575. field.
  2576. properties:
  2577. key:
  2578. description: The key of the entry in the Secret resource's
  2579. `data` field to be used. Some instances of this
  2580. field may be defaulted, in others it may be required.
  2581. type: string
  2582. name:
  2583. description: The name of the Secret resource being
  2584. referred to.
  2585. type: string
  2586. namespace:
  2587. description: Namespace of the resource being referred
  2588. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2589. defaults to the namespace of the referent.
  2590. type: string
  2591. type: object
  2592. type: object
  2593. required:
  2594. - auth
  2595. type: object
  2596. type: object
  2597. retrySettings:
  2598. description: Used to configure http retries if failed
  2599. properties:
  2600. maxRetries:
  2601. format: int32
  2602. type: integer
  2603. retryInterval:
  2604. type: string
  2605. type: object
  2606. required:
  2607. - provider
  2608. type: object
  2609. status:
  2610. description: SecretStoreStatus defines the observed state of the SecretStore.
  2611. properties:
  2612. conditions:
  2613. items:
  2614. properties:
  2615. lastTransitionTime:
  2616. format: date-time
  2617. type: string
  2618. message:
  2619. type: string
  2620. reason:
  2621. type: string
  2622. status:
  2623. type: string
  2624. type:
  2625. type: string
  2626. required:
  2627. - status
  2628. - type
  2629. type: object
  2630. type: array
  2631. type: object
  2632. type: object
  2633. served: true
  2634. storage: true
  2635. subresources:
  2636. status: {}
  2637. status:
  2638. acceptedNames:
  2639. kind: ""
  2640. plural: ""
  2641. conditions: []
  2642. storedVersions: []