...

Text file src/github.com/GoogleCloudPlatform/k8s-config-connector/crds/binaryauthorization_v1beta1_binaryauthorizationattestor.yaml

Documentation: github.com/GoogleCloudPlatform/k8s-config-connector/crds

     1# Copyright 2020 Google LLC
     2#
     3# Licensed under the Apache License, Version 2.0 (the "License");
     4# you may not use this file except in compliance with the License.
     5# You may obtain a copy of the License at
     6#
     7#     http://www.apache.org/licenses/LICENSE-2.0
     8#
     9# Unless required by applicable law or agreed to in writing, software
    10# distributed under the License is distributed on an "AS IS" BASIS,
    11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12# See the License for the specific language governing permissions and
    13# limitations under the License.
    14
    15apiVersion: apiextensions.k8s.io/v1
    16kind: CustomResourceDefinition
    17metadata:
    18  annotations:
    19    cnrm.cloud.google.com/version: 1.106.0
    20  creationTimestamp: null
    21  labels:
    22    cnrm.cloud.google.com/dcl2crd: "true"
    23    cnrm.cloud.google.com/managed-by-kcc: "true"
    24    cnrm.cloud.google.com/stability-level: stable
    25    cnrm.cloud.google.com/system: "true"
    26  name: binaryauthorizationattestors.binaryauthorization.cnrm.cloud.google.com
    27spec:
    28  group: binaryauthorization.cnrm.cloud.google.com
    29  names:
    30    categories:
    31    - gcp
    32    kind: BinaryAuthorizationAttestor
    33    plural: binaryauthorizationattestors
    34    shortNames:
    35    - gcpbinaryauthorizationattestor
    36    - gcpbinaryauthorizationattestors
    37    singular: binaryauthorizationattestor
    38  scope: Namespaced
    39  versions:
    40  - additionalPrinterColumns:
    41    - jsonPath: .metadata.creationTimestamp
    42      name: Age
    43      type: date
    44    - description: When 'True', the most recent reconcile of the resource succeeded
    45      jsonPath: .status.conditions[?(@.type=='Ready')].status
    46      name: Ready
    47      type: string
    48    - description: The reason for the value in 'Ready'
    49      jsonPath: .status.conditions[?(@.type=='Ready')].reason
    50      name: Status
    51      type: string
    52    - description: The last transition time for the value in 'Status'
    53      jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
    54      name: Status Age
    55      type: date
    56    name: v1beta1
    57    schema:
    58      openAPIV3Schema:
    59        properties:
    60          apiVersion:
    61            description: 'apiVersion defines the versioned schema of this representation
    62              of an object. Servers should convert recognized schemas to the latest
    63              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
    64            type: string
    65          kind:
    66            description: 'kind is a string value representing the REST resource this
    67              object represents. Servers may infer this from the endpoint the client
    68              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
    69            type: string
    70          metadata:
    71            type: object
    72          spec:
    73            properties:
    74              description:
    75                description: Optional. A descriptive comment. This field may be updated.
    76                  The field may be displayed in chooser dialogs.
    77                type: string
    78              projectRef:
    79                description: Immutable. The Project that this resource belongs to.
    80                oneOf:
    81                - not:
    82                    required:
    83                    - external
    84                  required:
    85                  - name
    86                - not:
    87                    anyOf:
    88                    - required:
    89                      - name
    90                    - required:
    91                      - namespace
    92                  required:
    93                  - external
    94                properties:
    95                  external:
    96                    description: |-
    97                      The project for the resource
    98
    99                      Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`).
   100                    type: string
   101                  name:
   102                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   103                    type: string
   104                  namespace:
   105                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   106                    type: string
   107                type: object
   108              resourceID:
   109                description: Immutable. Optional. The name of the resource. Used for
   110                  creation and acquisition. When unset, the value of `metadata.name`
   111                  is used as the default.
   112                type: string
   113              userOwnedDrydockNote:
   114                description: This specifies how an attestation will be read, and how
   115                  it will be used during policy enforcement.
   116                properties:
   117                  noteRef:
   118                    description: Immutable.
   119                    oneOf:
   120                    - not:
   121                        required:
   122                        - external
   123                      required:
   124                      - name
   125                    - not:
   126                        anyOf:
   127                        - required:
   128                          - name
   129                        - required:
   130                          - namespace
   131                      required:
   132                      - external
   133                    properties:
   134                      external:
   135                        description: |-
   136                          Required. The Drydock resource name of a Attestation. Authority Note, created by the user, in the format: `projects/*/notes/*`. This field may not be updated. An attestation by this attestor is stored as a Grafeas Attestation. Authority Occurrence that names a container image and that links to this Note. Grafeas is an external dependency.
   137
   138                          Allowed value: The Google Cloud resource name of a `ContainerAnalysisNote` resource (format: `projects/{{project}}/notes/{{name}}`).
   139                        type: string
   140                      name:
   141                        description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   142                        type: string
   143                      namespace:
   144                        description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   145                        type: string
   146                    type: object
   147                  publicKeys:
   148                    description: Optional. Public keys that verify attestations signed
   149                      by this attestor. This field may be updated. If this field is
   150                      non-empty, one of the specified public keys must verify that
   151                      an attestation was signed by this attestor for the image specified
   152                      in the admission request. If this field is empty, this attestor
   153                      always returns that no valid attestations exist.
   154                    items:
   155                      properties:
   156                        asciiArmoredPgpPublicKey:
   157                          description: ASCII-armored representation of a PGP public
   158                            key, as the entire output by the command `gpg --export
   159                            --armor foo@example.com` (either LF or CRLF line endings).
   160                            When using this field, `id` should be left blank. The
   161                            BinAuthz API handlers will calculate the ID and fill it
   162                            in automatically. BinAuthz computes this ID as the OpenPGP
   163                            RFC4880 V4 fingerprint, represented as upper-case hex.
   164                            If `id` is provided by the caller, it will be overwritten
   165                            by the API-calculated ID.
   166                          type: string
   167                        comment:
   168                          description: Optional. A descriptive comment. This field
   169                            may be updated.
   170                          type: string
   171                        id:
   172                          description: The ID of this public key. Signatures verified
   173                            by BinAuthz must include the ID of the public key that
   174                            can be used to verify them, and that ID must match the
   175                            contents of this field exactly. Additional restrictions
   176                            on this field can be imposed based on which public key
   177                            type is encapsulated. See the documentation on `public_key`
   178                            cases below for details.
   179                          type: string
   180                        pkixPublicKey:
   181                          description: 'A raw PKIX SubjectPublicKeyInfo format public
   182                            key. NOTE: `id` may be explicitly provided by the caller
   183                            when using this type of public key, but it MUST be a valid
   184                            RFC3986 URI. If `id` is left blank, a default one will
   185                            be computed based on the digest of the DER encoding of
   186                            the public key.'
   187                          properties:
   188                            publicKeyPem:
   189                              description: A PEM-encoded public key, as described
   190                                in https://tools.ietf.org/html/rfc7468#section-13
   191                              type: string
   192                            signatureAlgorithm:
   193                              description: 'The signature algorithm used to verify
   194                                a message against a signature using this key. These
   195                                signature algorithm must match the structure and any
   196                                object identifiers encoded in `public_key_pem` (i.e.
   197                                this algorithm must match that of the public key).
   198                                Possible values: SIGNATURE_ALGORITHM_UNSPECIFIED,
   199                                RSA_PSS_2048_SHA256, RSA_PSS_3072_SHA256, RSA_PSS_4096_SHA256,
   200                                RSA_PSS_4096_SHA512, RSA_SIGN_PKCS1_2048_SHA256, RSA_SIGN_PKCS1_3072_SHA256,
   201                                RSA_SIGN_PKCS1_4096_SHA256, RSA_SIGN_PKCS1_4096_SHA512,
   202                                ECDSA_P256_SHA256, EC_SIGN_P256_SHA256, ECDSA_P384_SHA384,
   203                                EC_SIGN_P384_SHA384, ECDSA_P521_SHA512, EC_SIGN_P521_SHA512'
   204                              type: string
   205                          type: object
   206                      type: object
   207                    type: array
   208                required:
   209                - noteRef
   210                type: object
   211            required:
   212            - projectRef
   213            type: object
   214          status:
   215            properties:
   216              conditions:
   217                description: Conditions represent the latest available observation
   218                  of the resource's current state.
   219                items:
   220                  properties:
   221                    lastTransitionTime:
   222                      description: Last time the condition transitioned from one status
   223                        to another.
   224                      type: string
   225                    message:
   226                      description: Human-readable message indicating details about
   227                        last transition.
   228                      type: string
   229                    reason:
   230                      description: Unique, one-word, CamelCase reason for the condition's
   231                        last transition.
   232                      type: string
   233                    status:
   234                      description: Status is the status of the condition. Can be True,
   235                        False, Unknown.
   236                      type: string
   237                    type:
   238                      description: Type is the type of the condition.
   239                      type: string
   240                  type: object
   241                type: array
   242              observedGeneration:
   243                description: ObservedGeneration is the generation of the resource
   244                  that was most recently observed by the Config Connector controller.
   245                  If this is equal to metadata.generation, then that means that the
   246                  current reported status reflects the most recent desired state of
   247                  the resource.
   248                type: integer
   249              updateTime:
   250                description: Output only. Time when the attestor was last updated.
   251                format: date-time
   252                type: string
   253              userOwnedDrydockNote:
   254                properties:
   255                  delegationServiceAccountEmail:
   256                    description: Output only. This field will contain the service
   257                      account email address that this Attestor will use as the principal
   258                      when querying Container Analysis. Attestor administrators must
   259                      grant this service account the IAM role needed to read attestations
   260                      from the in Container Analysis (`containeranalysis.notes.occurrences.viewer`).
   261                      This email address is fixed for the lifetime of the Attestor,
   262                      but callers should not make any other assumptions about the
   263                      service account email; future versions may use an email based
   264                      on a different naming pattern.
   265                    type: string
   266                type: object
   267            type: object
   268        required:
   269        - spec
   270        type: object
   271    served: true
   272    storage: true
   273    subresources:
   274      status: {}
   275status:
   276  acceptedNames:
   277    kind: ""
   278    plural: ""
   279  conditions: []
   280  storedVersions: []

View as plain text