crds_test.yaml.snap 187 KB

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