generators.external-secrets.io_vaultdynamicsecrets.yaml 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.16.5
  6. labels:
  7. external-secrets.io/component: controller
  8. name: vaultdynamicsecrets.generators.external-secrets.io
  9. spec:
  10. group: generators.external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. - external-secrets-generators
  15. kind: VaultDynamicSecret
  16. listKind: VaultDynamicSecretList
  17. plural: vaultdynamicsecrets
  18. shortNames:
  19. - vaultdynamicsecret
  20. singular: vaultdynamicsecret
  21. scope: Namespaced
  22. versions:
  23. - name: v1alpha1
  24. schema:
  25. openAPIV3Schema:
  26. properties:
  27. apiVersion:
  28. description: |-
  29. APIVersion defines the versioned schema of this representation of an object.
  30. Servers should convert recognized schemas to the latest internal value, and
  31. may reject unrecognized values.
  32. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  33. type: string
  34. kind:
  35. description: |-
  36. Kind is a string value representing the REST resource this object represents.
  37. Servers may infer this from the endpoint the client submits requests to.
  38. Cannot be updated.
  39. In CamelCase.
  40. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  41. type: string
  42. metadata:
  43. type: object
  44. spec:
  45. properties:
  46. controller:
  47. description: |-
  48. Used to select the correct ESO controller (think: ingress.ingressClassName)
  49. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  50. type: string
  51. method:
  52. description: Vault API method to use (GET/POST/other)
  53. type: string
  54. parameters:
  55. description: Parameters to pass to Vault write (for non-GET methods)
  56. x-kubernetes-preserve-unknown-fields: true
  57. path:
  58. description: Vault path to obtain the dynamic secret from
  59. type: string
  60. provider:
  61. description: Vault provider common spec
  62. properties:
  63. auth:
  64. description: Auth configures how secret-manager authenticates
  65. with the Vault server.
  66. properties:
  67. appRole:
  68. description: |-
  69. AppRole authenticates with Vault using the App Role auth mechanism,
  70. with the role and secret stored in a Kubernetes Secret resource.
  71. properties:
  72. path:
  73. default: approle
  74. description: |-
  75. Path where the App Role authentication backend is mounted
  76. in Vault, e.g: "approle"
  77. type: string
  78. roleId:
  79. description: |-
  80. RoleID configured in the App Role authentication backend when setting
  81. up the authentication backend in Vault.
  82. type: string
  83. roleRef:
  84. description: |-
  85. Reference to a key in a Secret that contains the App Role ID used
  86. to authenticate with Vault.
  87. The `key` field must be specified and denotes which entry within the Secret
  88. resource is used as the app role id.
  89. properties:
  90. key:
  91. description: |-
  92. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  93. defaulted, in others it may be required.
  94. type: string
  95. name:
  96. description: The name of the Secret resource being
  97. referred to.
  98. type: string
  99. namespace:
  100. description: |-
  101. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  102. to the namespace of the referent.
  103. type: string
  104. type: object
  105. secretRef:
  106. description: |-
  107. Reference to a key in a Secret that contains the App Role secret used
  108. to authenticate with Vault.
  109. The `key` field must be specified and denotes which entry within the Secret
  110. resource is used as the app role secret.
  111. properties:
  112. key:
  113. description: |-
  114. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  115. defaulted, in others it may be required.
  116. type: string
  117. name:
  118. description: The name of the Secret resource being
  119. referred to.
  120. type: string
  121. namespace:
  122. description: |-
  123. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  124. to the namespace of the referent.
  125. type: string
  126. type: object
  127. required:
  128. - path
  129. - secretRef
  130. type: object
  131. cert:
  132. description: |-
  133. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  134. Cert authentication method
  135. properties:
  136. clientCert:
  137. description: |-
  138. ClientCert is a certificate to authenticate using the Cert Vault
  139. authentication method
  140. properties:
  141. key:
  142. description: |-
  143. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  144. defaulted, in others it may be required.
  145. type: string
  146. name:
  147. description: The name of the Secret resource being
  148. referred to.
  149. type: string
  150. namespace:
  151. description: |-
  152. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  153. to the namespace of the referent.
  154. type: string
  155. type: object
  156. secretRef:
  157. description: |-
  158. SecretRef to a key in a Secret resource containing client private key to
  159. authenticate with Vault using the Cert authentication method
  160. properties:
  161. key:
  162. description: |-
  163. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  164. defaulted, in others it may be required.
  165. type: string
  166. name:
  167. description: The name of the Secret resource being
  168. referred to.
  169. type: string
  170. namespace:
  171. description: |-
  172. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  173. to the namespace of the referent.
  174. type: string
  175. type: object
  176. type: object
  177. iam:
  178. description: |-
  179. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  180. AWS IAM authentication method
  181. properties:
  182. externalID:
  183. description: AWS External ID set on assumed IAM roles
  184. type: string
  185. jwt:
  186. description: Specify a service account with IRSA enabled
  187. properties:
  188. serviceAccountRef:
  189. description: A reference to a ServiceAccount resource.
  190. properties:
  191. audiences:
  192. description: |-
  193. Audience specifies the `aud` claim for the service account token
  194. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  195. then this audiences will be appended to the list
  196. items:
  197. type: string
  198. type: array
  199. name:
  200. description: The name of the ServiceAccount resource
  201. being referred to.
  202. type: string
  203. namespace:
  204. description: |-
  205. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  206. to the namespace of the referent.
  207. type: string
  208. required:
  209. - name
  210. type: object
  211. type: object
  212. path:
  213. description: 'Path where the AWS auth method is enabled
  214. in Vault, e.g: "aws"'
  215. type: string
  216. region:
  217. description: AWS region
  218. type: string
  219. role:
  220. description: This is the AWS role to be assumed before
  221. talking to vault
  222. type: string
  223. secretRef:
  224. description: Specify credentials in a Secret object
  225. properties:
  226. accessKeyIDSecretRef:
  227. description: The AccessKeyID is used for authentication
  228. properties:
  229. key:
  230. description: |-
  231. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  232. defaulted, in others it may be required.
  233. type: string
  234. name:
  235. description: The name of the Secret resource being
  236. referred to.
  237. type: string
  238. namespace:
  239. description: |-
  240. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  241. to the namespace of the referent.
  242. type: string
  243. type: object
  244. secretAccessKeySecretRef:
  245. description: The SecretAccessKey is used for authentication
  246. properties:
  247. key:
  248. description: |-
  249. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  250. defaulted, in others it may be required.
  251. type: string
  252. name:
  253. description: The name of the Secret resource being
  254. referred to.
  255. type: string
  256. namespace:
  257. description: |-
  258. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  259. to the namespace of the referent.
  260. type: string
  261. type: object
  262. sessionTokenSecretRef:
  263. description: |-
  264. The SessionToken used for authentication
  265. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  266. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  267. properties:
  268. key:
  269. description: |-
  270. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  271. defaulted, in others it may be required.
  272. type: string
  273. name:
  274. description: The name of the Secret resource being
  275. referred to.
  276. type: string
  277. namespace:
  278. description: |-
  279. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  280. to the namespace of the referent.
  281. type: string
  282. type: object
  283. type: object
  284. vaultAwsIamServerID:
  285. description: 'X-Vault-AWS-IAM-Server-ID is an additional
  286. header used by Vault IAM auth method to mitigate against
  287. different types of replay attacks. More details here:
  288. https://developer.hashicorp.com/vault/docs/auth/aws'
  289. type: string
  290. vaultRole:
  291. description: Vault Role. In vault, a role describes an
  292. identity with a set of permissions, groups, or policies
  293. you want to attach a user of the secrets engine
  294. type: string
  295. required:
  296. - vaultRole
  297. type: object
  298. jwt:
  299. description: |-
  300. Jwt authenticates with Vault by passing role and JWT token using the
  301. JWT/OIDC authentication method
  302. properties:
  303. kubernetesServiceAccountToken:
  304. description: |-
  305. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  306. a token for with the `TokenRequest` API.
  307. properties:
  308. audiences:
  309. description: |-
  310. Optional audiences field that will be used to request a temporary Kubernetes service
  311. account token for the service account referenced by `serviceAccountRef`.
  312. Defaults to a single audience `vault` it not specified.
  313. Deprecated: use serviceAccountRef.Audiences instead
  314. items:
  315. type: string
  316. type: array
  317. expirationSeconds:
  318. description: |-
  319. Optional expiration time in seconds that will be used to request a temporary
  320. Kubernetes service account token for the service account referenced by
  321. `serviceAccountRef`.
  322. Deprecated: this will be removed in the future.
  323. Defaults to 10 minutes.
  324. format: int64
  325. type: integer
  326. serviceAccountRef:
  327. description: Service account field containing the
  328. name of a kubernetes ServiceAccount.
  329. properties:
  330. audiences:
  331. description: |-
  332. Audience specifies the `aud` claim for the service account token
  333. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  334. then this audiences will be appended to the list
  335. items:
  336. type: string
  337. type: array
  338. name:
  339. description: The name of the ServiceAccount resource
  340. being referred to.
  341. type: string
  342. namespace:
  343. description: |-
  344. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  345. to the namespace of the referent.
  346. type: string
  347. required:
  348. - name
  349. type: object
  350. required:
  351. - serviceAccountRef
  352. type: object
  353. path:
  354. default: jwt
  355. description: |-
  356. Path where the JWT authentication backend is mounted
  357. in Vault, e.g: "jwt"
  358. type: string
  359. role:
  360. description: |-
  361. Role is a JWT role to authenticate using the JWT/OIDC Vault
  362. authentication method
  363. type: string
  364. secretRef:
  365. description: |-
  366. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  367. authenticate with Vault using the JWT/OIDC authentication method.
  368. properties:
  369. key:
  370. description: |-
  371. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  372. defaulted, in others it may be required.
  373. type: string
  374. name:
  375. description: The name of the Secret resource being
  376. referred to.
  377. type: string
  378. namespace:
  379. description: |-
  380. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  381. to the namespace of the referent.
  382. type: string
  383. type: object
  384. required:
  385. - path
  386. type: object
  387. kubernetes:
  388. description: |-
  389. Kubernetes authenticates with Vault by passing the ServiceAccount
  390. token stored in the named Secret resource to the Vault server.
  391. properties:
  392. mountPath:
  393. default: kubernetes
  394. description: |-
  395. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  396. "kubernetes"
  397. type: string
  398. role:
  399. description: |-
  400. A required field containing the Vault Role to assume. A Role binds a
  401. Kubernetes ServiceAccount with a set of Vault policies.
  402. type: string
  403. secretRef:
  404. description: |-
  405. Optional secret field containing a Kubernetes ServiceAccount JWT used
  406. for authenticating with Vault. If a name is specified without a key,
  407. `token` is the default. If one is not specified, the one bound to
  408. the controller will be used.
  409. properties:
  410. key:
  411. description: |-
  412. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  413. defaulted, in others it may be required.
  414. type: string
  415. name:
  416. description: The name of the Secret resource being
  417. referred to.
  418. type: string
  419. namespace:
  420. description: |-
  421. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  422. to the namespace of the referent.
  423. type: string
  424. type: object
  425. serviceAccountRef:
  426. description: |-
  427. Optional service account field containing the name of a kubernetes ServiceAccount.
  428. If the service account is specified, the service account secret token JWT will be used
  429. for authenticating with Vault. If the service account selector is not supplied,
  430. the secretRef will be used instead.
  431. properties:
  432. audiences:
  433. description: |-
  434. Audience specifies the `aud` claim for the service account token
  435. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  436. then this audiences will be appended to the list
  437. items:
  438. type: string
  439. type: array
  440. name:
  441. description: The name of the ServiceAccount resource
  442. being referred to.
  443. type: string
  444. namespace:
  445. description: |-
  446. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  447. to the namespace of the referent.
  448. type: string
  449. required:
  450. - name
  451. type: object
  452. required:
  453. - mountPath
  454. - role
  455. type: object
  456. ldap:
  457. description: |-
  458. Ldap authenticates with Vault by passing username/password pair using
  459. the LDAP authentication method
  460. properties:
  461. path:
  462. default: ldap
  463. description: |-
  464. Path where the LDAP authentication backend is mounted
  465. in Vault, e.g: "ldap"
  466. type: string
  467. secretRef:
  468. description: |-
  469. SecretRef to a key in a Secret resource containing password for the LDAP
  470. user used to authenticate with Vault using the LDAP authentication
  471. method
  472. properties:
  473. key:
  474. description: |-
  475. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  476. defaulted, in others it may be required.
  477. type: string
  478. name:
  479. description: The name of the Secret resource being
  480. referred to.
  481. type: string
  482. namespace:
  483. description: |-
  484. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  485. to the namespace of the referent.
  486. type: string
  487. type: object
  488. username:
  489. description: |-
  490. Username is a LDAP user name used to authenticate using the LDAP Vault
  491. authentication method
  492. type: string
  493. required:
  494. - path
  495. - username
  496. type: object
  497. namespace:
  498. description: |-
  499. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  500. Namespaces is a set of features within Vault Enterprise that allows
  501. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  502. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  503. This will default to Vault.Namespace field if set, or empty otherwise
  504. type: string
  505. tokenSecretRef:
  506. description: TokenSecretRef authenticates with Vault by presenting
  507. a token.
  508. properties:
  509. key:
  510. description: |-
  511. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  512. defaulted, in others it may be required.
  513. type: string
  514. name:
  515. description: The name of the Secret resource being referred
  516. to.
  517. type: string
  518. namespace:
  519. description: |-
  520. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  521. to the namespace of the referent.
  522. type: string
  523. type: object
  524. userPass:
  525. description: UserPass authenticates with Vault by passing
  526. username/password pair
  527. properties:
  528. path:
  529. default: user
  530. description: |-
  531. Path where the UserPassword authentication backend is mounted
  532. in Vault, e.g: "user"
  533. type: string
  534. secretRef:
  535. description: |-
  536. SecretRef to a key in a Secret resource containing password for the
  537. user used to authenticate with Vault using the UserPass authentication
  538. method
  539. properties:
  540. key:
  541. description: |-
  542. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  543. defaulted, in others it may be required.
  544. type: string
  545. name:
  546. description: The name of the Secret resource being
  547. referred to.
  548. type: string
  549. namespace:
  550. description: |-
  551. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  552. to the namespace of the referent.
  553. type: string
  554. type: object
  555. username:
  556. description: |-
  557. Username is a user name used to authenticate using the UserPass Vault
  558. authentication method
  559. type: string
  560. required:
  561. - path
  562. - username
  563. type: object
  564. type: object
  565. caBundle:
  566. description: |-
  567. PEM encoded CA bundle used to validate Vault server certificate. Only used
  568. if the Server URL is using HTTPS protocol. This parameter is ignored for
  569. plain HTTP protocol connection. If not set the system root certificates
  570. are used to validate the TLS connection.
  571. format: byte
  572. type: string
  573. caProvider:
  574. description: The provider for the CA bundle to use to validate
  575. Vault server certificate.
  576. properties:
  577. key:
  578. description: The key where the CA certificate can be found
  579. in the Secret or ConfigMap.
  580. type: string
  581. name:
  582. description: The name of the object located at the provider
  583. type.
  584. type: string
  585. namespace:
  586. description: |-
  587. The namespace the Provider type is in.
  588. Can only be defined when used in a ClusterSecretStore.
  589. type: string
  590. type:
  591. description: The type of provider to use such as "Secret",
  592. or "ConfigMap".
  593. enum:
  594. - Secret
  595. - ConfigMap
  596. type: string
  597. required:
  598. - name
  599. - type
  600. type: object
  601. forwardInconsistent:
  602. description: |-
  603. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  604. leader instead of simply retrying within a loop. This can increase performance if
  605. the option is enabled serverside.
  606. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  607. type: boolean
  608. headers:
  609. additionalProperties:
  610. type: string
  611. description: Headers to be added in Vault request
  612. type: object
  613. namespace:
  614. description: |-
  615. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  616. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  617. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  618. type: string
  619. path:
  620. description: |-
  621. Path is the mount path of the Vault KV backend endpoint, e.g:
  622. "secret". The v2 KV secret engine version specific "/data" path suffix
  623. for fetching secrets from Vault is optional and will be appended
  624. if not present in specified path.
  625. type: string
  626. readYourWrites:
  627. description: |-
  628. ReadYourWrites ensures isolated read-after-write semantics by
  629. providing discovered cluster replication states in each request.
  630. More information about eventual consistency in Vault can be found here
  631. https://www.vaultproject.io/docs/enterprise/consistency
  632. type: boolean
  633. server:
  634. description: 'Server is the connection address for the Vault server,
  635. e.g: "https://vault.example.com:8200".'
  636. type: string
  637. tls:
  638. description: |-
  639. The configuration used for client side related TLS communication, when the Vault server
  640. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  641. This parameter is ignored for plain HTTP protocol connection.
  642. It's worth noting this configuration is different from the "TLS certificates auth method",
  643. which is available under the `auth.cert` section.
  644. properties:
  645. certSecretRef:
  646. description: |-
  647. CertSecretRef is a certificate added to the transport layer
  648. when communicating with the Vault server.
  649. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  650. properties:
  651. key:
  652. description: |-
  653. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  654. defaulted, in others it may be required.
  655. type: string
  656. name:
  657. description: The name of the Secret resource being referred
  658. to.
  659. type: string
  660. namespace:
  661. description: |-
  662. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  663. to the namespace of the referent.
  664. type: string
  665. type: object
  666. keySecretRef:
  667. description: |-
  668. KeySecretRef to a key in a Secret resource containing client private key
  669. added to the transport layer when communicating with the Vault server.
  670. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  671. properties:
  672. key:
  673. description: |-
  674. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  675. defaulted, in others it may be required.
  676. type: string
  677. name:
  678. description: The name of the Secret resource being referred
  679. to.
  680. type: string
  681. namespace:
  682. description: |-
  683. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  684. to the namespace of the referent.
  685. type: string
  686. type: object
  687. type: object
  688. version:
  689. default: v2
  690. description: |-
  691. Version is the Vault KV secret engine version. This can be either "v1" or
  692. "v2". Version defaults to "v2".
  693. enum:
  694. - v1
  695. - v2
  696. type: string
  697. required:
  698. - auth
  699. - server
  700. type: object
  701. resultType:
  702. default: Data
  703. description: |-
  704. Result type defines which data is returned from the generator.
  705. By default it is the "data" section of the Vault API response.
  706. When using e.g. /auth/token/create the "data" section is empty but
  707. the "auth" section contains the generated token.
  708. Please refer to the vault docs regarding the result data structure.
  709. enum:
  710. - Data
  711. - Auth
  712. type: string
  713. required:
  714. - path
  715. - provider
  716. type: object
  717. type: object
  718. served: true
  719. storage: true
  720. subresources:
  721. status: {}