
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.11.3
  creationTimestamp: null
  name: configurations.dapr.io
  labels:
    app.kubernetes.io/part-of: "dapr"
spec:
  group: dapr.io
  names:
    kind: Configuration
    listKind: ConfigurationList
    plural: configurations
    singular: configuration
  scope: Namespaced
  versions:
  - name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Configuration describes an Dapr configuration setting.
        properties:
          apiVersion:
            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'
            type: string
          kind:
            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'
            type: string
          metadata:
            type: object
          spec:
            description: ConfigurationSpec is the spec for an configuration.
            properties:
              accessControl:
                description: AccessControlSpec is the spec object in ConfigurationSpec.
                properties:
                  defaultAction:
                    type: string
                  policies:
                    items:
                      description: AppPolicySpec defines the policy data structure
                        for each app.
                      properties:
                        appId:
                          type: string
                        defaultAction:
                          type: string
                        namespace:
                          type: string
                        operations:
                          items:
                            description: AppOperationAction defines the data structure
                              for each app operation.
                            properties:
                              action:
                                type: string
                              httpVerb:
                                items:
                                  type: string
                                type: array
                              name:
                                type: string
                            required:
                            - action
                            - name
                            type: object
                          type: array
                        trustDomain:
                          type: string
                      required:
                      - appId
                      type: object
                    type: array
                  trustDomain:
                    type: string
                type: object
              api:
                description: APISpec describes the configuration for Dapr APIs.
                properties:
                  allowed:
                    description: List of allowed APIs. Can be used in conjunction with denied.
                    items:
                      description: APIAccessRule describes an access rule for allowing or denying a Dapr API.
                      properties:
                        name:
                          type: string
                        protocol:
                          type: string
                        version:
                          type: string
                      required:
                      - name
                      - version
                      type: object
                    type: array
                  denied:
                    description: List of denied APIs. Can be used in conjunction with allowed.
                    items:
                      description: APIAccessRule describes an access rule for allowing or denying a Dapr API.
                      properties:
                        name:
                          type: string
                        protocol:
                          type: string
                        version:
                          type: string
                      required:
                      - name
                      - version
                      type: object
                    type: array
                type: object
              appHttpPipeline:
                description: PipelineSpec defines the middleware pipeline.
                properties:
                  handlers:
                    items:
                      description: HandlerSpec defines a request handlers.
                      properties:
                        name:
                          type: string
                        selector:
                          description: SelectorSpec selects target services to which
                            the handler is to be applied.
                          properties:
                            fields:
                              items:
                                description: SelectorField defines a selector fields.
                                properties:
                                  field:
                                    type: string
                                  value:
                                    type: string
                                required:
                                - field
                                - value
                                type: object
                              type: array
                          required:
                          - fields
                          type: object
                        type:
                          type: string
                      required:
                      - name
                      - type
                      type: object
                    type: array
                required:
                - handlers
                type: object
              components:
                description: ComponentsSpec describes the configuration for Dapr components
                properties:
                  deny:
                    description: Denylist of component types that cannot be instantiated
                    items:
                      type: string
                    type: array
                type: object
              features:
                items:
                  description: FeatureSpec defines the features that are enabled/disabled.
                  properties:
                    enabled:
                      type: boolean
                    name:
                      type: string
                  required:
                  - enabled
                  - name
                  type: object
                type: array
              httpPipeline:
                description: PipelineSpec defines the middleware pipeline.
                properties:
                  handlers:
                    items:
                      description: HandlerSpec defines a request handlers.
                      properties:
                        name:
                          type: string
                        selector:
                          description: SelectorSpec selects target services to which
                            the handler is to be applied.
                          properties:
                            fields:
                              items:
                                description: SelectorField defines a selector fields.
                                properties:
                                  field:
                                    type: string
                                  value:
                                    type: string
                                required:
                                - field
                                - value
                                type: object
                              type: array
                          required:
                          - fields
                          type: object
                        type:
                          type: string
                      required:
                      - name
                      - type
                      type: object
                    type: array
                required:
                - handlers
                type: object
              logging:
                description: LoggingSpec defines the configuration for logging.
                properties:
                  apiLogging:
                    description: Configure API logging.
                    properties:
                      enabled:
                        description: Default value for enabling API logging. Sidecars
                          can always override this by setting `--enable-api-logging`
                          to true or false explicitly. The default value is false.
                        type: boolean
                      obfuscateURLs:
                        description: 'When enabled, obfuscates the values of URLs
                          in HTTP API logs, logging the route name rather than the
                          full path being invoked, which could contain PII. Default:
                          false. This option has no effect if API logging is disabled.'
                        type: boolean
                      omitHealthChecks:
                        description: 'If true, health checks are not reported in API
                          logs. Default: false. This option has no effect if API logging
                          is disabled.'
                        type: boolean
                    type: object
                type: object
              metric:
                default:
                  enabled: true
                description: MetricSpec defines metrics configuration.
                properties:
                  enabled:
                    type: boolean
                  http:
                    description: MetricHTTP defines configuration for metrics for
                      the HTTP server
                    properties:
                      increasedCardinality:
                        description: 'If true, metrics for the HTTP server are collected
                          with increased cardinality. The default is true in Dapr 1.13,
                          but will be changed to false in 1.15+'
                        type: boolean
                      pathMatching:
                        description: PathMatching defines the path matching configuration for HTTP server metrics.
                        properties:
                          ingress:
                            type: array
                            items:
                              type: string
                          egress:
                            type: array
                            items:
                              type: string
                        type: object
                    type: object
                  rules:
                    items:
                      description: MetricsRule defines configuration options for a
                        metric.
                      properties:
                        labels:
                          items:
                            description: MetricsLabel defines an object that allows
                              to set regex expressions for a label.
                            properties:
                              name:
                                type: string
                              regex:
                                additionalProperties:
                                  type: string
                                type: object
                            required:
                            - name
                            - regex
                            type: object
                          type: array
                        name:
                          type: string
                      required:
                      - labels
                      - name
                      type: object
                    type: array
                required:
                - enabled
                type: object
              metrics:
                default:
                  enabled: true
                description: MetricSpec defines metrics configuration.
                properties:
                  enabled:
                    type: boolean
                  http:
                    description: MetricHTTP defines configuration for metrics for
                      the HTTP server
                    properties:
                      increasedCardinality:
                        description: 'If true, metrics for the HTTP server are collected
                          with increased cardinality. The default is true in Dapr 1.13,
                          but will be changed to false in 1.14+'
                        type: boolean
                      pathMatching:
                        description: PathMatching defines the path matching configuration for HTTP server metrics.
                        properties:
                          ingress:
                            type: array
                            items:
                              type: string
                          egress:
                            type: array
                            items:
                              type: string
                        type: object
                    type: object
                  rules:
                    items:
                      description: MetricsRule defines configuration options for a
                        metric.
                      properties:
                        labels:
                          items:
                            description: MetricsLabel defines an object that allows
                              to set regex expressions for a label.
                            properties:
                              name:
                                type: string
                              regex:
                                additionalProperties:
                                  type: string
                                type: object
                            required:
                            - name
                            - regex
                            type: object
                          type: array
                        name:
                          type: string
                      required:
                      - labels
                      - name
                      type: object
                    type: array
                required:
                - enabled
                type: object
              mtls:
                description: MTLSSpec defines mTLS configuration.
                properties:
                  allowedClockSkew:
                    type: string
                  controlPlaneTrustDomain:
                    type: string
                  enabled:
                    type: boolean
                  sentryAddress:
                    type: string
                  tokenValidators:
                    description: Additional token validators to use. When Dapr is
                      running in Kubernetes mode, this is in addition to the built-in
                      "kubernetes" validator. In self-hosted mode, enabling a custom
                      validator will disable the built-in "insecure" validator.
                    items:
                      description: ValidatorSpec contains additional token validators
                        to use.
                      properties:
                        name:
                          description: Name of the validator
                          enum:
                          - jwks
                          type: string
                        options:
                          description: Options for the validator, if any
                          type: object
                          x-kubernetes-preserve-unknown-fields: true
                      required:
                      - name
                      type: object
                    type: array
                  workloadCertTTL:
                    type: string
                required:
                - enabled
                type: object
              nameResolution:
                description: NameResolutionSpec is the spec for name resolution configuration.
                properties:
                  component:
                    type: string
                  configuration:
                    description: DynamicValue is a dynamic value struct for the component.metadata
                      pair value.
                    type: object
                    x-kubernetes-preserve-unknown-fields: true
                  version:
                    type: string
                required:
                - component
                - configuration
                - version
                type: object
              secrets:
                description: SecretsSpec is the spec for secrets configuration.
                properties:
                  scopes:
                    items:
                      description: SecretsScope defines the scope for secrets.
                      properties:
                        allowedSecrets:
                          items:
                            type: string
                          type: array
                        defaultAccess:
                          type: string
                        deniedSecrets:
                          items:
                            type: string
                          type: array
                        storeName:
                          type: string
                      required:
                      - storeName
                      type: object
                    type: array
                required:
                - scopes
                type: object
              tracing:
                description: TracingSpec defines distributed tracing configuration.
                properties:
                  otel:
                    description: OtelSpec defines Otel exporter configurations.
                    properties:
                      endpointAddress:
                        type: string
                      isSecure:
                        type: boolean
                      protocol:
                        type: string
                    required:
                    - endpointAddress
                    - isSecure
                    - protocol
                    type: object
                  samplingRate:
                    type: string
                  stdout:
                    type: boolean
                  zipkin:
                    description: ZipkinSpec defines Zipkin trace configurations.
                    properties:
                      endpointAddress:
                        type: string
                    required:
                    - endpointAddress
                    type: object
                required:
                - samplingRate
                type: object
              wasm:
                description: WasmSpec describes the security profile for all Dapr Wasm components.
                properties:
                  strictSandbox:
                    type: boolean
                type: object
            type: object
        type: object
    served: true
    storage: true
