generators.external-secrets.io_stssessiontokens.yaml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.17.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: stssessiontokens.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: STSSessionToken
  16. listKind: STSSessionTokenList
  17. plural: stssessiontokens
  18. singular: stssessiontoken
  19. scope: Namespaced
  20. versions:
  21. - name: v1alpha1
  22. schema:
  23. openAPIV3Schema:
  24. description: |-
  25. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  26. The authorization token is valid for 12 hours.
  27. The authorizationToken returned is a base64 encoded string that can be decoded.
  28. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  29. properties:
  30. apiVersion:
  31. description: |-
  32. APIVersion defines the versioned schema of this representation of an object.
  33. Servers should convert recognized schemas to the latest internal value, and
  34. may reject unrecognized values.
  35. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  36. type: string
  37. kind:
  38. description: |-
  39. Kind is a string value representing the REST resource this object represents.
  40. Servers may infer this from the endpoint the client submits requests to.
  41. Cannot be updated.
  42. In CamelCase.
  43. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  44. type: string
  45. metadata:
  46. type: object
  47. spec:
  48. properties:
  49. auth:
  50. description: Auth defines how to authenticate with AWS
  51. properties:
  52. jwt:
  53. description: Authenticate against AWS using service account tokens.
  54. properties:
  55. serviceAccountRef:
  56. description: A reference to a ServiceAccount resource.
  57. properties:
  58. audiences:
  59. description: |-
  60. Audience specifies the `aud` claim for the service account token
  61. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  62. then this audiences will be appended to the list
  63. items:
  64. type: string
  65. type: array
  66. name:
  67. description: The name of the ServiceAccount resource being
  68. referred to.
  69. maxLength: 253
  70. minLength: 1
  71. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  72. type: string
  73. namespace:
  74. description: |-
  75. Namespace of the resource being referred to.
  76. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  77. maxLength: 63
  78. minLength: 1
  79. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  80. type: string
  81. required:
  82. - name
  83. type: object
  84. type: object
  85. secretRef:
  86. description: |-
  87. AWSAuthSecretRef holds secret references for AWS credentials
  88. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  89. properties:
  90. accessKeyIDSecretRef:
  91. description: The AccessKeyID is used for authentication
  92. properties:
  93. key:
  94. description: |-
  95. A key in the referenced Secret.
  96. Some instances of this field may be defaulted, in others it may be required.
  97. maxLength: 253
  98. minLength: 1
  99. pattern: ^[-._a-zA-Z0-9]+$
  100. type: string
  101. name:
  102. description: The name of the Secret resource being referred
  103. to.
  104. maxLength: 253
  105. minLength: 1
  106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  107. type: string
  108. namespace:
  109. description: |-
  110. The namespace of the Secret resource being referred to.
  111. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  112. maxLength: 63
  113. minLength: 1
  114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  115. type: string
  116. type: object
  117. secretAccessKeySecretRef:
  118. description: The SecretAccessKey is used for authentication
  119. properties:
  120. key:
  121. description: |-
  122. A key in the referenced Secret.
  123. Some instances of this field may be defaulted, in others it may be required.
  124. maxLength: 253
  125. minLength: 1
  126. pattern: ^[-._a-zA-Z0-9]+$
  127. type: string
  128. name:
  129. description: The name of the Secret resource being referred
  130. to.
  131. maxLength: 253
  132. minLength: 1
  133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  134. type: string
  135. namespace:
  136. description: |-
  137. The namespace of the Secret resource being referred to.
  138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  139. maxLength: 63
  140. minLength: 1
  141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  142. type: string
  143. type: object
  144. sessionTokenSecretRef:
  145. description: |-
  146. The SessionToken used for authentication
  147. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  148. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  149. properties:
  150. key:
  151. description: |-
  152. A key in the referenced Secret.
  153. Some instances of this field may be defaulted, in others it may be required.
  154. maxLength: 253
  155. minLength: 1
  156. pattern: ^[-._a-zA-Z0-9]+$
  157. type: string
  158. name:
  159. description: The name of the Secret resource being referred
  160. to.
  161. maxLength: 253
  162. minLength: 1
  163. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  164. type: string
  165. namespace:
  166. description: |-
  167. The namespace of the Secret resource being referred to.
  168. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  169. maxLength: 63
  170. minLength: 1
  171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  172. type: string
  173. type: object
  174. type: object
  175. type: object
  176. region:
  177. description: Region specifies the region to operate in.
  178. type: string
  179. requestParameters:
  180. description: RequestParameters contains parameters that can be passed
  181. to the STS service.
  182. properties:
  183. serialNumber:
  184. description: |-
  185. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  186. the GetSessionToken call.
  187. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  188. (such as arn:aws:iam::123456789012:mfa/user)
  189. type: string
  190. sessionDuration:
  191. description: |-
  192. SessionDuration The duration, in seconds, that the credentials should remain valid. Acceptable durations for
  193. IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds
  194. (12 hours) as the default.
  195. format: int64
  196. type: integer
  197. tokenCode:
  198. description: TokenCode is the value provided by the MFA device,
  199. if MFA is required.
  200. type: string
  201. type: object
  202. role:
  203. description: |-
  204. You can assume a role before making calls to the
  205. desired AWS service.
  206. type: string
  207. required:
  208. - region
  209. type: object
  210. type: object
  211. served: true
  212. storage: true
  213. subresources:
  214. status: {}