crds_test.yaml.snap 194 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849
  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. conjur:
  1609. description: Conjur configures this store to sync secrets using conjur provider
  1610. properties:
  1611. auth:
  1612. properties:
  1613. apikey:
  1614. properties:
  1615. account:
  1616. type: string
  1617. apiKeyRef:
  1618. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1619. properties:
  1620. key:
  1621. 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.
  1622. type: string
  1623. name:
  1624. description: The name of the Secret resource being referred to.
  1625. type: string
  1626. namespace:
  1627. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1628. type: string
  1629. type: object
  1630. userRef:
  1631. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1632. properties:
  1633. key:
  1634. 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.
  1635. type: string
  1636. name:
  1637. description: The name of the Secret resource being referred to.
  1638. type: string
  1639. namespace:
  1640. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1641. type: string
  1642. type: object
  1643. required:
  1644. - account
  1645. - apiKeyRef
  1646. - userRef
  1647. type: object
  1648. required:
  1649. - apikey
  1650. type: object
  1651. caBundle:
  1652. type: string
  1653. url:
  1654. type: string
  1655. required:
  1656. - auth
  1657. - url
  1658. type: object
  1659. delinea:
  1660. description: Delinea DevOps Secrets Vault https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  1661. properties:
  1662. clientId:
  1663. description: ClientID is the non-secret part of the credential.
  1664. properties:
  1665. secretRef:
  1666. description: SecretRef references a key in a secret that will be used as value.
  1667. properties:
  1668. key:
  1669. 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.
  1670. type: string
  1671. name:
  1672. description: The name of the Secret resource being referred to.
  1673. type: string
  1674. namespace:
  1675. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1676. type: string
  1677. type: object
  1678. value:
  1679. description: Value can be specified directly to set a value without using a secret.
  1680. type: string
  1681. type: object
  1682. clientSecret:
  1683. description: ClientSecret is the secret part of the credential.
  1684. properties:
  1685. secretRef:
  1686. description: SecretRef references a key in a secret that will be used as value.
  1687. properties:
  1688. key:
  1689. 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.
  1690. type: string
  1691. name:
  1692. description: The name of the Secret resource being referred to.
  1693. type: string
  1694. namespace:
  1695. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1696. type: string
  1697. type: object
  1698. value:
  1699. description: Value can be specified directly to set a value without using a secret.
  1700. type: string
  1701. type: object
  1702. tenant:
  1703. description: Tenant is the chosen hostname / site name.
  1704. type: string
  1705. tld:
  1706. description: TLD is based on the server location that was chosen during provisioning. If unset, defaults to "com".
  1707. type: string
  1708. urlTemplate:
  1709. description: URLTemplate If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  1710. type: string
  1711. required:
  1712. - clientId
  1713. - clientSecret
  1714. - tenant
  1715. type: object
  1716. doppler:
  1717. description: Doppler configures this store to sync secrets using the Doppler provider
  1718. properties:
  1719. auth:
  1720. description: Auth configures how the Operator authenticates with the Doppler API
  1721. properties:
  1722. secretRef:
  1723. properties:
  1724. dopplerToken:
  1725. 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.
  1726. properties:
  1727. key:
  1728. 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.
  1729. type: string
  1730. name:
  1731. description: The name of the Secret resource being referred to.
  1732. type: string
  1733. namespace:
  1734. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1735. type: string
  1736. type: object
  1737. required:
  1738. - dopplerToken
  1739. type: object
  1740. required:
  1741. - secretRef
  1742. type: object
  1743. config:
  1744. description: Doppler config (required if not using a Service Token)
  1745. type: string
  1746. format:
  1747. description: Format enables the downloading of secrets as a file (string)
  1748. enum:
  1749. - json
  1750. - dotnet-json
  1751. - env
  1752. - yaml
  1753. - docker
  1754. type: string
  1755. nameTransformer:
  1756. description: Environment variable compatible name transforms that change secret names to a different format
  1757. enum:
  1758. - upper-camel
  1759. - camel
  1760. - lower-snake
  1761. - tf-var
  1762. - dotnet-env
  1763. - lower-kebab
  1764. type: string
  1765. project:
  1766. description: Doppler project (required if not using a Service Token)
  1767. type: string
  1768. required:
  1769. - auth
  1770. type: object
  1771. fake:
  1772. description: Fake configures a store with static key/value pairs
  1773. properties:
  1774. data:
  1775. items:
  1776. properties:
  1777. key:
  1778. type: string
  1779. value:
  1780. type: string
  1781. valueMap:
  1782. additionalProperties:
  1783. type: string
  1784. type: object
  1785. version:
  1786. type: string
  1787. required:
  1788. - key
  1789. type: object
  1790. type: array
  1791. required:
  1792. - data
  1793. type: object
  1794. gcpsm:
  1795. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1796. properties:
  1797. auth:
  1798. description: Auth defines the information necessary to authenticate against GCP
  1799. properties:
  1800. secretRef:
  1801. properties:
  1802. secretAccessKeySecretRef:
  1803. description: The SecretAccessKey is used for authentication
  1804. properties:
  1805. key:
  1806. 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.
  1807. type: string
  1808. name:
  1809. description: The name of the Secret resource being referred to.
  1810. type: string
  1811. namespace:
  1812. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1813. type: string
  1814. type: object
  1815. type: object
  1816. workloadIdentity:
  1817. properties:
  1818. clusterLocation:
  1819. type: string
  1820. clusterName:
  1821. type: string
  1822. clusterProjectID:
  1823. type: string
  1824. serviceAccountRef:
  1825. description: A reference to a ServiceAccount resource.
  1826. properties:
  1827. audiences:
  1828. 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
  1829. items:
  1830. type: string
  1831. type: array
  1832. name:
  1833. description: The name of the ServiceAccount resource being referred to.
  1834. type: string
  1835. namespace:
  1836. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1837. type: string
  1838. required:
  1839. - name
  1840. type: object
  1841. required:
  1842. - clusterLocation
  1843. - clusterName
  1844. - serviceAccountRef
  1845. type: object
  1846. type: object
  1847. projectID:
  1848. description: ProjectID project where secret is located
  1849. type: string
  1850. type: object
  1851. gitlab:
  1852. description: GitLab configures this store to sync secrets using GitLab Variables provider
  1853. properties:
  1854. auth:
  1855. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1856. properties:
  1857. SecretRef:
  1858. properties:
  1859. accessToken:
  1860. description: AccessToken is used for authentication.
  1861. properties:
  1862. key:
  1863. 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.
  1864. type: string
  1865. name:
  1866. description: The name of the Secret resource being referred to.
  1867. type: string
  1868. namespace:
  1869. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1870. type: string
  1871. type: object
  1872. type: object
  1873. required:
  1874. - SecretRef
  1875. type: object
  1876. environment:
  1877. 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)
  1878. type: string
  1879. groupIDs:
  1880. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  1881. items:
  1882. type: string
  1883. type: array
  1884. inheritFromGroups:
  1885. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  1886. type: boolean
  1887. projectID:
  1888. description: ProjectID specifies a project where secrets are located.
  1889. type: string
  1890. url:
  1891. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1892. type: string
  1893. required:
  1894. - auth
  1895. type: object
  1896. ibm:
  1897. description: IBM configures this store to sync secrets using IBM Cloud provider
  1898. properties:
  1899. auth:
  1900. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1901. maxProperties: 1
  1902. minProperties: 1
  1903. properties:
  1904. containerAuth:
  1905. description: IBM Container-based auth with IAM Trusted Profile.
  1906. properties:
  1907. iamEndpoint:
  1908. type: string
  1909. profile:
  1910. description: the IBM Trusted Profile
  1911. type: string
  1912. tokenLocation:
  1913. description: Location the token is mounted on the pod
  1914. type: string
  1915. required:
  1916. - profile
  1917. type: object
  1918. secretRef:
  1919. properties:
  1920. secretApiKeySecretRef:
  1921. description: The SecretAccessKey is used for authentication
  1922. properties:
  1923. key:
  1924. 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.
  1925. type: string
  1926. name:
  1927. description: The name of the Secret resource being referred to.
  1928. type: string
  1929. namespace:
  1930. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1931. type: string
  1932. type: object
  1933. type: object
  1934. type: object
  1935. serviceUrl:
  1936. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1937. type: string
  1938. required:
  1939. - auth
  1940. type: object
  1941. keepersecurity:
  1942. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  1943. properties:
  1944. authRef:
  1945. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1946. properties:
  1947. key:
  1948. 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.
  1949. type: string
  1950. name:
  1951. description: The name of the Secret resource being referred to.
  1952. type: string
  1953. namespace:
  1954. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1955. type: string
  1956. type: object
  1957. folderID:
  1958. type: string
  1959. required:
  1960. - authRef
  1961. - folderID
  1962. type: object
  1963. kubernetes:
  1964. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  1965. properties:
  1966. auth:
  1967. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  1968. maxProperties: 1
  1969. minProperties: 1
  1970. properties:
  1971. cert:
  1972. description: has both clientCert and clientKey as secretKeySelector
  1973. properties:
  1974. clientCert:
  1975. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1976. properties:
  1977. key:
  1978. 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.
  1979. type: string
  1980. name:
  1981. description: The name of the Secret resource being referred to.
  1982. type: string
  1983. namespace:
  1984. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1985. type: string
  1986. type: object
  1987. clientKey:
  1988. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1989. properties:
  1990. key:
  1991. 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.
  1992. type: string
  1993. name:
  1994. description: The name of the Secret resource being referred to.
  1995. type: string
  1996. namespace:
  1997. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1998. type: string
  1999. type: object
  2000. type: object
  2001. serviceAccount:
  2002. description: points to a service account that should be used for authentication
  2003. properties:
  2004. audiences:
  2005. 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
  2006. items:
  2007. type: string
  2008. type: array
  2009. name:
  2010. description: The name of the ServiceAccount resource being referred to.
  2011. type: string
  2012. namespace:
  2013. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2014. type: string
  2015. required:
  2016. - name
  2017. type: object
  2018. token:
  2019. description: use static token to authenticate with
  2020. properties:
  2021. bearerToken:
  2022. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2023. properties:
  2024. key:
  2025. 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.
  2026. type: string
  2027. name:
  2028. description: The name of the Secret resource being referred to.
  2029. type: string
  2030. namespace:
  2031. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2032. type: string
  2033. type: object
  2034. type: object
  2035. type: object
  2036. remoteNamespace:
  2037. default: default
  2038. description: Remote namespace to fetch the secrets from
  2039. type: string
  2040. server:
  2041. description: configures the Kubernetes server Address.
  2042. properties:
  2043. caBundle:
  2044. description: CABundle is a base64-encoded CA certificate
  2045. format: byte
  2046. type: string
  2047. caProvider:
  2048. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2049. properties:
  2050. key:
  2051. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2052. type: string
  2053. name:
  2054. description: The name of the object located at the provider type.
  2055. type: string
  2056. namespace:
  2057. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  2058. type: string
  2059. type:
  2060. description: The type of provider to use such as "Secret", or "ConfigMap".
  2061. enum:
  2062. - Secret
  2063. - ConfigMap
  2064. type: string
  2065. required:
  2066. - name
  2067. - type
  2068. type: object
  2069. url:
  2070. default: kubernetes.default
  2071. description: configures the Kubernetes server Address.
  2072. type: string
  2073. type: object
  2074. required:
  2075. - auth
  2076. type: object
  2077. onepassword:
  2078. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  2079. properties:
  2080. auth:
  2081. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  2082. properties:
  2083. secretRef:
  2084. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  2085. properties:
  2086. connectTokenSecretRef:
  2087. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  2088. properties:
  2089. key:
  2090. 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.
  2091. type: string
  2092. name:
  2093. description: The name of the Secret resource being referred to.
  2094. type: string
  2095. namespace:
  2096. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2097. type: string
  2098. type: object
  2099. required:
  2100. - connectTokenSecretRef
  2101. type: object
  2102. required:
  2103. - secretRef
  2104. type: object
  2105. connectHost:
  2106. description: ConnectHost defines the OnePassword Connect Server to connect to
  2107. type: string
  2108. vaults:
  2109. additionalProperties:
  2110. type: integer
  2111. description: Vaults defines which OnePassword vaults to search in which order
  2112. type: object
  2113. required:
  2114. - auth
  2115. - connectHost
  2116. - vaults
  2117. type: object
  2118. oracle:
  2119. description: Oracle configures this store to sync secrets using Oracle Vault provider
  2120. properties:
  2121. auth:
  2122. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  2123. properties:
  2124. secretRef:
  2125. description: SecretRef to pass through sensitive information.
  2126. properties:
  2127. fingerprint:
  2128. description: Fingerprint is the fingerprint of the API private key.
  2129. properties:
  2130. key:
  2131. 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.
  2132. type: string
  2133. name:
  2134. description: The name of the Secret resource being referred to.
  2135. type: string
  2136. namespace:
  2137. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2138. type: string
  2139. type: object
  2140. privatekey:
  2141. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  2142. properties:
  2143. key:
  2144. 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.
  2145. type: string
  2146. name:
  2147. description: The name of the Secret resource being referred to.
  2148. type: string
  2149. namespace:
  2150. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2151. type: string
  2152. type: object
  2153. required:
  2154. - fingerprint
  2155. - privatekey
  2156. type: object
  2157. tenancy:
  2158. description: Tenancy is the tenancy OCID where user is located.
  2159. type: string
  2160. user:
  2161. description: User is an access OCID specific to the account.
  2162. type: string
  2163. required:
  2164. - secretRef
  2165. - tenancy
  2166. - user
  2167. type: object
  2168. region:
  2169. description: Region is the region where vault is located.
  2170. type: string
  2171. vault:
  2172. description: Vault is the vault's OCID of the specific vault where secret is located.
  2173. type: string
  2174. required:
  2175. - region
  2176. - vault
  2177. type: object
  2178. scaleway:
  2179. description: Scaleway
  2180. properties:
  2181. accessKey:
  2182. description: AccessKey is the non-secret part of the api key.
  2183. properties:
  2184. secretRef:
  2185. description: SecretRef references a key in a secret that will be used as value.
  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. value:
  2198. description: Value can be specified directly to set a value without using a secret.
  2199. type: string
  2200. type: object
  2201. apiUrl:
  2202. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  2203. type: string
  2204. projectId:
  2205. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  2206. type: string
  2207. region:
  2208. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  2209. type: string
  2210. secretKey:
  2211. description: SecretKey is the non-secret part of the api key.
  2212. properties:
  2213. secretRef:
  2214. description: SecretRef references a key in a secret that will be used as value.
  2215. properties:
  2216. key:
  2217. 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.
  2218. type: string
  2219. name:
  2220. description: The name of the Secret resource being referred to.
  2221. type: string
  2222. namespace:
  2223. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2224. type: string
  2225. type: object
  2226. value:
  2227. description: Value can be specified directly to set a value without using a secret.
  2228. type: string
  2229. type: object
  2230. required:
  2231. - accessKey
  2232. - projectId
  2233. - region
  2234. - secretKey
  2235. type: object
  2236. senhasegura:
  2237. description: Senhasegura configures this store to sync secrets using senhasegura provider
  2238. properties:
  2239. auth:
  2240. description: Auth defines parameters to authenticate in senhasegura
  2241. properties:
  2242. clientId:
  2243. type: string
  2244. clientSecretSecretRef:
  2245. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2246. properties:
  2247. key:
  2248. 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.
  2249. type: string
  2250. name:
  2251. description: The name of the Secret resource being referred to.
  2252. type: string
  2253. namespace:
  2254. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2255. type: string
  2256. type: object
  2257. required:
  2258. - clientId
  2259. - clientSecretSecretRef
  2260. type: object
  2261. ignoreSslCertificate:
  2262. default: false
  2263. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  2264. type: boolean
  2265. module:
  2266. description: Module defines which senhasegura module should be used to get secrets
  2267. type: string
  2268. url:
  2269. description: URL of senhasegura
  2270. type: string
  2271. required:
  2272. - auth
  2273. - module
  2274. - url
  2275. type: object
  2276. vault:
  2277. description: Vault configures this store to sync secrets using Hashi provider
  2278. properties:
  2279. auth:
  2280. description: Auth configures how secret-manager authenticates with the Vault server.
  2281. properties:
  2282. appRole:
  2283. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  2284. properties:
  2285. path:
  2286. default: approle
  2287. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  2288. type: string
  2289. roleId:
  2290. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  2291. type: string
  2292. roleRef:
  2293. 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.
  2294. properties:
  2295. key:
  2296. 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.
  2297. type: string
  2298. name:
  2299. description: The name of the Secret resource being referred to.
  2300. type: string
  2301. namespace:
  2302. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2303. type: string
  2304. type: object
  2305. secretRef:
  2306. 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.
  2307. properties:
  2308. key:
  2309. 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.
  2310. type: string
  2311. name:
  2312. description: The name of the Secret resource being referred to.
  2313. type: string
  2314. namespace:
  2315. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2316. type: string
  2317. type: object
  2318. required:
  2319. - path
  2320. - secretRef
  2321. type: object
  2322. cert:
  2323. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  2324. properties:
  2325. clientCert:
  2326. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  2327. properties:
  2328. key:
  2329. 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.
  2330. type: string
  2331. name:
  2332. description: The name of the Secret resource being referred to.
  2333. type: string
  2334. namespace:
  2335. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2336. type: string
  2337. type: object
  2338. secretRef:
  2339. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  2340. properties:
  2341. key:
  2342. 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.
  2343. type: string
  2344. name:
  2345. description: The name of the Secret resource being referred to.
  2346. type: string
  2347. namespace:
  2348. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2349. type: string
  2350. type: object
  2351. type: object
  2352. iam:
  2353. description: Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials AWS IAM authentication method
  2354. properties:
  2355. externalID:
  2356. description: AWS External ID set on assumed IAM roles
  2357. type: string
  2358. jwt:
  2359. description: Specify a service account with IRSA enabled
  2360. properties:
  2361. serviceAccountRef:
  2362. description: A reference to a ServiceAccount resource.
  2363. properties:
  2364. audiences:
  2365. 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
  2366. items:
  2367. type: string
  2368. type: array
  2369. name:
  2370. description: The name of the ServiceAccount resource being referred to.
  2371. type: string
  2372. namespace:
  2373. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2374. type: string
  2375. required:
  2376. - name
  2377. type: object
  2378. type: object
  2379. path:
  2380. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  2381. type: string
  2382. region:
  2383. description: AWS region
  2384. type: string
  2385. role:
  2386. description: This is the AWS role to be assumed before talking to vault
  2387. type: string
  2388. secretRef:
  2389. description: Specify credentials in a Secret object
  2390. properties:
  2391. accessKeyIDSecretRef:
  2392. description: The AccessKeyID is used for authentication
  2393. properties:
  2394. key:
  2395. 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.
  2396. type: string
  2397. name:
  2398. description: The name of the Secret resource being referred to.
  2399. type: string
  2400. namespace:
  2401. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2402. type: string
  2403. type: object
  2404. secretAccessKeySecretRef:
  2405. description: The SecretAccessKey is used for authentication
  2406. properties:
  2407. key:
  2408. 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.
  2409. type: string
  2410. name:
  2411. description: The name of the Secret resource being referred to.
  2412. type: string
  2413. namespace:
  2414. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2415. type: string
  2416. type: object
  2417. sessionTokenSecretRef:
  2418. 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'
  2419. properties:
  2420. key:
  2421. 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.
  2422. type: string
  2423. name:
  2424. description: The name of the Secret resource being referred to.
  2425. type: string
  2426. namespace:
  2427. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2428. type: string
  2429. type: object
  2430. type: object
  2431. vaultAwsIamServerID:
  2432. 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'
  2433. type: string
  2434. vaultRole:
  2435. 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
  2436. type: string
  2437. required:
  2438. - vaultRole
  2439. type: object
  2440. jwt:
  2441. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  2442. properties:
  2443. kubernetesServiceAccountToken:
  2444. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  2445. properties:
  2446. audiences:
  2447. 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'
  2448. items:
  2449. type: string
  2450. type: array
  2451. expirationSeconds:
  2452. 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.'
  2453. format: int64
  2454. type: integer
  2455. serviceAccountRef:
  2456. description: Service account field containing the name of a kubernetes ServiceAccount.
  2457. properties:
  2458. audiences:
  2459. 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
  2460. items:
  2461. type: string
  2462. type: array
  2463. name:
  2464. description: The name of the ServiceAccount resource being referred to.
  2465. type: string
  2466. namespace:
  2467. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2468. type: string
  2469. required:
  2470. - name
  2471. type: object
  2472. required:
  2473. - serviceAccountRef
  2474. type: object
  2475. path:
  2476. default: jwt
  2477. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  2478. type: string
  2479. role:
  2480. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  2481. type: string
  2482. secretRef:
  2483. 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.
  2484. properties:
  2485. key:
  2486. 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.
  2487. type: string
  2488. name:
  2489. description: The name of the Secret resource being referred to.
  2490. type: string
  2491. namespace:
  2492. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2493. type: string
  2494. type: object
  2495. required:
  2496. - path
  2497. type: object
  2498. kubernetes:
  2499. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  2500. properties:
  2501. mountPath:
  2502. default: kubernetes
  2503. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  2504. type: string
  2505. role:
  2506. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  2507. type: string
  2508. secretRef:
  2509. 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.
  2510. properties:
  2511. key:
  2512. 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.
  2513. type: string
  2514. name:
  2515. description: The name of the Secret resource being referred to.
  2516. type: string
  2517. namespace:
  2518. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2519. type: string
  2520. type: object
  2521. serviceAccountRef:
  2522. 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.
  2523. properties:
  2524. audiences:
  2525. 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
  2526. items:
  2527. type: string
  2528. type: array
  2529. name:
  2530. description: The name of the ServiceAccount resource being referred to.
  2531. type: string
  2532. namespace:
  2533. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2534. type: string
  2535. required:
  2536. - name
  2537. type: object
  2538. required:
  2539. - mountPath
  2540. - role
  2541. type: object
  2542. ldap:
  2543. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  2544. properties:
  2545. path:
  2546. default: ldap
  2547. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  2548. type: string
  2549. secretRef:
  2550. 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
  2551. properties:
  2552. key:
  2553. 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.
  2554. type: string
  2555. name:
  2556. description: The name of the Secret resource being referred to.
  2557. type: string
  2558. namespace:
  2559. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2560. type: string
  2561. type: object
  2562. username:
  2563. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  2564. type: string
  2565. required:
  2566. - path
  2567. - username
  2568. type: object
  2569. tokenSecretRef:
  2570. description: TokenSecretRef authenticates with Vault by presenting a token.
  2571. properties:
  2572. key:
  2573. 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.
  2574. type: string
  2575. name:
  2576. description: The name of the Secret resource being referred to.
  2577. type: string
  2578. namespace:
  2579. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2580. type: string
  2581. type: object
  2582. type: object
  2583. caBundle:
  2584. 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.
  2585. format: byte
  2586. type: string
  2587. caProvider:
  2588. description: The provider for the CA bundle to use to validate Vault server certificate.
  2589. properties:
  2590. key:
  2591. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2592. type: string
  2593. name:
  2594. description: The name of the object located at the provider type.
  2595. type: string
  2596. namespace:
  2597. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  2598. type: string
  2599. type:
  2600. description: The type of provider to use such as "Secret", or "ConfigMap".
  2601. enum:
  2602. - Secret
  2603. - ConfigMap
  2604. type: string
  2605. required:
  2606. - name
  2607. - type
  2608. type: object
  2609. forwardInconsistent:
  2610. 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
  2611. type: boolean
  2612. namespace:
  2613. 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'
  2614. type: string
  2615. path:
  2616. 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.'
  2617. type: string
  2618. readYourWrites:
  2619. 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
  2620. type: boolean
  2621. server:
  2622. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  2623. type: string
  2624. version:
  2625. default: v2
  2626. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  2627. enum:
  2628. - v1
  2629. - v2
  2630. type: string
  2631. required:
  2632. - auth
  2633. - server
  2634. type: object
  2635. webhook:
  2636. description: Webhook configures this store to sync secrets using a generic templated webhook
  2637. properties:
  2638. body:
  2639. description: Body
  2640. type: string
  2641. caBundle:
  2642. 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.
  2643. format: byte
  2644. type: string
  2645. caProvider:
  2646. description: The provider for the CA bundle to use to validate webhook server certificate.
  2647. properties:
  2648. key:
  2649. description: The key the value inside of the provider type to use, only used with "Secret" type
  2650. type: string
  2651. name:
  2652. description: The name of the object located at the provider type.
  2653. type: string
  2654. namespace:
  2655. description: The namespace the Provider type is in.
  2656. type: string
  2657. type:
  2658. description: The type of provider to use such as "Secret", or "ConfigMap".
  2659. enum:
  2660. - Secret
  2661. - ConfigMap
  2662. type: string
  2663. required:
  2664. - name
  2665. - type
  2666. type: object
  2667. headers:
  2668. additionalProperties:
  2669. type: string
  2670. description: Headers
  2671. type: object
  2672. method:
  2673. description: Webhook Method
  2674. type: string
  2675. result:
  2676. description: Result formatting
  2677. properties:
  2678. jsonPath:
  2679. description: Json path of return value
  2680. type: string
  2681. type: object
  2682. secrets:
  2683. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  2684. items:
  2685. properties:
  2686. name:
  2687. description: Name of this secret in templates
  2688. type: string
  2689. secretRef:
  2690. description: Secret ref to fill in credentials
  2691. properties:
  2692. key:
  2693. 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.
  2694. type: string
  2695. name:
  2696. description: The name of the Secret resource being referred to.
  2697. type: string
  2698. namespace:
  2699. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2700. type: string
  2701. type: object
  2702. required:
  2703. - name
  2704. - secretRef
  2705. type: object
  2706. type: array
  2707. timeout:
  2708. description: Timeout
  2709. type: string
  2710. url:
  2711. description: Webhook url to call
  2712. type: string
  2713. required:
  2714. - result
  2715. - url
  2716. type: object
  2717. yandexcertificatemanager:
  2718. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  2719. properties:
  2720. apiEndpoint:
  2721. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2722. type: string
  2723. auth:
  2724. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  2725. properties:
  2726. authorizedKeySecretRef:
  2727. description: The authorized key used for authentication
  2728. properties:
  2729. key:
  2730. 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.
  2731. type: string
  2732. name:
  2733. description: The name of the Secret resource being referred to.
  2734. type: string
  2735. namespace:
  2736. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2737. type: string
  2738. type: object
  2739. type: object
  2740. caProvider:
  2741. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2742. properties:
  2743. certSecretRef:
  2744. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2745. properties:
  2746. key:
  2747. 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.
  2748. type: string
  2749. name:
  2750. description: The name of the Secret resource being referred to.
  2751. type: string
  2752. namespace:
  2753. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2754. type: string
  2755. type: object
  2756. type: object
  2757. required:
  2758. - auth
  2759. type: object
  2760. yandexlockbox:
  2761. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  2762. properties:
  2763. apiEndpoint:
  2764. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2765. type: string
  2766. auth:
  2767. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  2768. properties:
  2769. authorizedKeySecretRef:
  2770. description: The authorized key used for authentication
  2771. properties:
  2772. key:
  2773. 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.
  2774. type: string
  2775. name:
  2776. description: The name of the Secret resource being referred to.
  2777. type: string
  2778. namespace:
  2779. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2780. type: string
  2781. type: object
  2782. type: object
  2783. caProvider:
  2784. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2785. properties:
  2786. certSecretRef:
  2787. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2788. properties:
  2789. key:
  2790. 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.
  2791. type: string
  2792. name:
  2793. description: The name of the Secret resource being referred to.
  2794. type: string
  2795. namespace:
  2796. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2797. type: string
  2798. type: object
  2799. type: object
  2800. required:
  2801. - auth
  2802. type: object
  2803. type: object
  2804. refreshInterval:
  2805. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  2806. type: integer
  2807. retrySettings:
  2808. description: Used to configure http retries if failed
  2809. properties:
  2810. maxRetries:
  2811. format: int32
  2812. type: integer
  2813. retryInterval:
  2814. type: string
  2815. type: object
  2816. required:
  2817. - provider
  2818. type: object
  2819. status:
  2820. description: SecretStoreStatus defines the observed state of the SecretStore.
  2821. properties:
  2822. capabilities:
  2823. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  2824. type: string
  2825. conditions:
  2826. items:
  2827. properties:
  2828. lastTransitionTime:
  2829. format: date-time
  2830. type: string
  2831. message:
  2832. type: string
  2833. reason:
  2834. type: string
  2835. status:
  2836. type: string
  2837. type:
  2838. type: string
  2839. required:
  2840. - status
  2841. - type
  2842. type: object
  2843. type: array
  2844. type: object
  2845. type: object
  2846. served: true
  2847. storage: true
  2848. subresources:
  2849. status: {}