generators.external-secrets.io_acraccesstokens.yaml 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.11.4
  6. name: acraccesstokens.generators.external-secrets.io
  7. spec:
  8. group: generators.external-secrets.io
  9. names:
  10. categories:
  11. - acraccesstoken
  12. kind: ACRAccessToken
  13. listKind: ACRAccessTokenList
  14. plural: acraccesstokens
  15. shortNames:
  16. - acraccesstoken
  17. singular: acraccesstoken
  18. scope: Namespaced
  19. versions:
  20. - name: v1alpha1
  21. schema:
  22. openAPIV3Schema:
  23. description: "ACRAccessToken returns a Azure Container Registry token that
  24. can be used for pushing/pulling images. Note: by default it will return
  25. an ACR Refresh Token with full access (depending on the identity). This
  26. can be scoped down to the repository level using .spec.scope. In case scope
  27. is defined it will return an ACR Access Token. \n See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md"
  28. properties:
  29. apiVersion:
  30. description: 'APIVersion defines the versioned schema of this representation
  31. of an object. Servers should convert recognized schemas to the latest
  32. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  33. type: string
  34. kind:
  35. description: 'Kind is a string value representing the REST resource this
  36. object represents. Servers may infer this from the endpoint the client
  37. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  38. type: string
  39. metadata:
  40. type: object
  41. spec:
  42. description: 'ACRAccessTokenSpec defines how to generate the access token
  43. e.g. how to authenticate and which registry to use. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview'
  44. properties:
  45. auth:
  46. properties:
  47. managedIdentity:
  48. description: ManagedIdentity uses Azure Managed Identity to authenticate
  49. with Azure.
  50. properties:
  51. identityId:
  52. description: If multiple Managed Identity is assigned to the
  53. pod, you can select the one to be used
  54. type: string
  55. type: object
  56. servicePrincipal:
  57. description: ServicePrincipal uses Azure Service Principal credentials
  58. to authenticate with Azure.
  59. properties:
  60. secretRef:
  61. description: Configuration used to authenticate with Azure
  62. using static credentials stored in a Kind=Secret.
  63. properties:
  64. clientId:
  65. description: The Azure clientId of the service principle
  66. used for authentication.
  67. properties:
  68. key:
  69. description: The key of the entry in the Secret resource's
  70. `data` field to be used. Some instances of this
  71. field may be defaulted, in others it may be required.
  72. type: string
  73. name:
  74. description: The name of the Secret resource being
  75. referred to.
  76. type: string
  77. namespace:
  78. description: Namespace of the resource being referred
  79. to. Ignored if referent is not cluster-scoped. cluster-scoped
  80. defaults to the namespace of the referent.
  81. type: string
  82. type: object
  83. clientSecret:
  84. description: The Azure ClientSecret of the service principle
  85. used for authentication.
  86. properties:
  87. key:
  88. description: The key of the entry in the Secret resource's
  89. `data` field to be used. Some instances of this
  90. field may be defaulted, in others it may be required.
  91. type: string
  92. name:
  93. description: The name of the Secret resource being
  94. referred to.
  95. type: string
  96. namespace:
  97. description: Namespace of the resource being referred
  98. to. Ignored if referent is not cluster-scoped. cluster-scoped
  99. defaults to the namespace of the referent.
  100. type: string
  101. type: object
  102. type: object
  103. required:
  104. - secretRef
  105. type: object
  106. workloadIdentity:
  107. description: WorkloadIdentity uses Azure Workload Identity to
  108. authenticate with Azure.
  109. properties:
  110. serviceAccountRef:
  111. description: ServiceAccountRef specified the service account
  112. that should be used when authenticating with WorkloadIdentity.
  113. properties:
  114. audiences:
  115. description: Audience specifies the `aud` claim for the
  116. service account token If the service account uses a
  117. well-known annotation for e.g. IRSA or GCP Workload
  118. Identity then this audiences will be appended to the
  119. list
  120. items:
  121. type: string
  122. type: array
  123. name:
  124. description: The name of the ServiceAccount resource being
  125. referred to.
  126. type: string
  127. namespace:
  128. description: Namespace of the resource being referred
  129. to. Ignored if referent is not cluster-scoped. cluster-scoped
  130. defaults to the namespace of the referent.
  131. type: string
  132. required:
  133. - name
  134. type: object
  135. type: object
  136. type: object
  137. environmentType:
  138. default: PublicCloud
  139. description: 'EnvironmentType specifies the Azure cloud environment
  140. endpoints to use for connecting and authenticating with Azure. By
  141. default it points to the public cloud AAD endpoint. The following
  142. endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  143. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  144. enum:
  145. - PublicCloud
  146. - USGovernmentCloud
  147. - ChinaCloud
  148. - GermanCloud
  149. type: string
  150. registry:
  151. description: the domain name of the ACR registry e.g. foobarexample.azurecr.io
  152. type: string
  153. scope:
  154. description: "Define the scope for the access token, e.g. pull/push
  155. access for a repository. if not provided it will return a refresh
  156. token that has full scope. Note: you need to pin it down to the
  157. repository level, there is no wildcard available. \n examples: repository:my-repository:pull,push
  158. repository:my-repository:pull \n see docs for details: https://docs.docker.com/registry/spec/auth/scope/"
  159. type: string
  160. tenantId:
  161. description: TenantID configures the Azure Tenant to send requests
  162. to. Required for ServicePrincipal auth type.
  163. type: string
  164. required:
  165. - auth
  166. - registry
  167. type: object
  168. type: object
  169. served: true
  170. storage: true
  171. subresources:
  172. status: {}