{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://binaryauthorization.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Binary Authorization",
  "description": "The management interface for Binary Authorization, a system providing policy control for images deployed to Kubernetes Engine clusters.\n",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/binary-authorization/",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "binaryauthorization:v1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://binaryauthorization.mtls.googleapis.com/",
  "name": "binaryauthorization",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "projects": {
      "methods": {
        "getPolicy": {
          "description": "A policy specifies the attestors that must attest to\na container image, before the project is allowed to deploy that\nimage. There is at most one policy per project. All image admission\nrequests are permitted if a project has no policy.\n\nGets the policy for this project. Returns a default\npolicy if the project does not have one.",
          "flatPath": "v1/projects/{projectsId}/policy",
          "httpMethod": "GET",
          "id": "binaryauthorization.projects.getPolicy",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The resource name of the policy to retrieve,\nin the format `projects/*/policy`.",
              "location": "path",
              "pattern": "^projects/[^/]+/policy$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}",
          "response": {
            "$ref": "Policy"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "updatePolicy": {
          "description": "Creates or updates a project's policy, and returns a copy of the\nnew policy. A policy is always updated as a whole, to avoid race\nconditions with concurrent policy enforcement (or management!)\nrequests. Returns NOT_FOUND if the project does not exist, INVALID_ARGUMENT\nif the request is malformed.",
          "flatPath": "v1/projects/{projectsId}/policy",
          "httpMethod": "PUT",
          "id": "binaryauthorization.projects.updatePolicy",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Output only. The resource name, in the format `projects/*/policy`. There is\nat most one policy per project.",
              "location": "path",
              "pattern": "^projects/[^/]+/policy$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}",
          "request": {
            "$ref": "Policy"
          },
          "response": {
            "$ref": "Policy"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      },
      "resources": {
        "attestors": {
          "methods": {
            "create": {
              "description": "Creates an attestor, and returns a copy of the new\nattestor. Returns NOT_FOUND if the project does not exist,\nINVALID_ARGUMENT if the request is malformed, ALREADY_EXISTS if the\nattestor already exists.",
              "flatPath": "v1/projects/{projectsId}/attestors",
              "httpMethod": "POST",
              "id": "binaryauthorization.projects.attestors.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "attestorId": {
                  "description": "Required. The attestors ID.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The parent of this attestor.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/attestors",
              "request": {
                "$ref": "Attestor"
              },
              "response": {
                "$ref": "Attestor"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "delete": {
              "description": "Deletes an attestor. Returns NOT_FOUND if the\nattestor does not exist.",
              "flatPath": "v1/projects/{projectsId}/attestors/{attestorsId}",
              "httpMethod": "DELETE",
              "id": "binaryauthorization.projects.attestors.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the attestors to delete, in the format\n`projects/*/attestors/*`.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/attestors/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Gets an attestor.\nReturns NOT_FOUND if the attestor does not exist.",
              "flatPath": "v1/projects/{projectsId}/attestors/{attestorsId}",
              "httpMethod": "GET",
              "id": "binaryauthorization.projects.attestors.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the attestor to retrieve, in the format\n`projects/*/attestors/*`.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/attestors/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Attestor"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "getIamPolicy": {
              "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
              "flatPath": "v1/projects/{projectsId}/attestors/{attestorsId}:getIamPolicy",
              "httpMethod": "GET",
              "id": "binaryauthorization.projects.attestors.getIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "options.requestedPolicyVersion": {
                  "description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/attestors/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:getIamPolicy",
              "response": {
                "$ref": "IamPolicy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Lists attestors.\nReturns INVALID_ARGUMENT if the project does not exist.",
              "flatPath": "v1/projects/{projectsId}/attestors",
              "httpMethod": "GET",
              "id": "binaryauthorization.projects.attestors.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "Requested page size. The server may return fewer results than requested. If\nunspecified, the server will pick an appropriate default.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of ListAttestorsResponse.next_page_token returned\nfrom the previous call to the `ListAttestors` method.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The resource name of the project associated with the\nattestors, in the format `projects/*`.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/attestors",
              "response": {
                "$ref": "ListAttestorsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "setIamPolicy": {
              "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
              "flatPath": "v1/projects/{projectsId}/attestors/{attestorsId}:setIamPolicy",
              "httpMethod": "POST",
              "id": "binaryauthorization.projects.attestors.setIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/attestors/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:setIamPolicy",
              "request": {
                "$ref": "SetIamPolicyRequest"
              },
              "response": {
                "$ref": "IamPolicy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "testIamPermissions": {
              "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a `NOT_FOUND` error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
              "flatPath": "v1/projects/{projectsId}/attestors/{attestorsId}:testIamPermissions",
              "httpMethod": "POST",
              "id": "binaryauthorization.projects.attestors.testIamPermissions",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/attestors/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:testIamPermissions",
              "request": {
                "$ref": "TestIamPermissionsRequest"
              },
              "response": {
                "$ref": "TestIamPermissionsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "update": {
              "description": "Updates an attestor.\nReturns NOT_FOUND if the attestor does not exist.",
              "flatPath": "v1/projects/{projectsId}/attestors/{attestorsId}",
              "httpMethod": "PUT",
              "id": "binaryauthorization.projects.attestors.update",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The resource name, in the format:\n`projects/*/attestors/*`. This field may not be updated.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/attestors/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "request": {
                "$ref": "Attestor"
              },
              "response": {
                "$ref": "Attestor"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        },
        "policy": {
          "methods": {
            "getIamPolicy": {
              "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
              "flatPath": "v1/projects/{projectsId}/policy:getIamPolicy",
              "httpMethod": "GET",
              "id": "binaryauthorization.projects.policy.getIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "options.requestedPolicyVersion": {
                  "description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/policy$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:getIamPolicy",
              "response": {
                "$ref": "IamPolicy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "setIamPolicy": {
              "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
              "flatPath": "v1/projects/{projectsId}/policy:setIamPolicy",
              "httpMethod": "POST",
              "id": "binaryauthorization.projects.policy.setIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/policy$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:setIamPolicy",
              "request": {
                "$ref": "SetIamPolicyRequest"
              },
              "response": {
                "$ref": "IamPolicy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "testIamPermissions": {
              "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a `NOT_FOUND` error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
              "flatPath": "v1/projects/{projectsId}/policy:testIamPermissions",
              "httpMethod": "POST",
              "id": "binaryauthorization.projects.policy.testIamPermissions",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/policy$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:testIamPermissions",
              "request": {
                "$ref": "TestIamPermissionsRequest"
              },
              "response": {
                "$ref": "TestIamPermissionsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20200501",
  "rootUrl": "https://binaryauthorization.googleapis.com/",
  "schemas": {
    "AdmissionRule": {
      "description": "An admission rule specifies either that all container images\nused in a pod creation request must be attested to by one or more\nattestors, that all pod creations will be allowed, or that all\npod creations will be denied.\n\nImages matching an admission whitelist pattern\nare exempted from admission rules and will never block a pod creation.",
      "id": "AdmissionRule",
      "properties": {
        "enforcementMode": {
          "description": "Required. The action when a pod creation is denied by the admission rule.",
          "enum": [
            "ENFORCEMENT_MODE_UNSPECIFIED",
            "ENFORCED_BLOCK_AND_AUDIT_LOG",
            "DRYRUN_AUDIT_LOG_ONLY"
          ],
          "enumDescriptions": [
            "Do not use.",
            "Enforce the admission rule by blocking the pod creation.",
            "Dryrun mode: Audit logging only.  This will allow the pod creation as if\nthe admission request had specified break-glass."
          ],
          "type": "string"
        },
        "evaluationMode": {
          "description": "Required. How this admission rule will be evaluated.",
          "enum": [
            "EVALUATION_MODE_UNSPECIFIED",
            "ALWAYS_ALLOW",
            "REQUIRE_ATTESTATION",
            "ALWAYS_DENY"
          ],
          "enumDescriptions": [
            "Do not use.",
            "This rule allows all all pod creations.",
            "This rule allows a pod creation if all the attestors listed in\n'require_attestations_by' have valid attestations for all of the\nimages in the pod spec.",
            "This rule denies all pod creations."
          ],
          "type": "string"
        },
        "requireAttestationsBy": {
          "description": "Optional. The resource names of the attestors that must attest to\na container image, in the format `projects/*/attestors/*`. Each\nattestor must exist before a policy can reference it.  To add an attestor\nto a policy the principal issuing the policy change request must be able\nto read the attestor resource.\n\nNote: this field must be non-empty when the evaluation_mode field specifies\nREQUIRE_ATTESTATION, otherwise it must be empty.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AdmissionWhitelistPattern": {
      "description": "An admission whitelist pattern exempts images\nfrom checks by admission rules.",
      "id": "AdmissionWhitelistPattern",
      "properties": {
        "namePattern": {
          "description": "An image name pattern to whitelist, in the form `registry/path/to/image`.\nThis supports a trailing `*` as a wildcard, but this is allowed only in\ntext after the `registry/` part.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Attestor": {
      "description": "An attestor that attests to container image\nartifacts. An existing attestor cannot be modified except where\nindicated.",
      "id": "Attestor",
      "properties": {
        "description": {
          "description": "Optional. A descriptive comment.  This field may be updated.\nThe field may be displayed in chooser dialogs.",
          "type": "string"
        },
        "name": {
          "description": "Required. The resource name, in the format:\n`projects/*/attestors/*`. This field may not be updated.",
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. Time when the attestor was last updated.",
          "format": "google-datetime",
          "type": "string"
        },
        "userOwnedGrafeasNote": {
          "$ref": "UserOwnedGrafeasNote",
          "description": "This specifies how an attestation will be read, and how it will be used\nduring policy enforcement."
        }
      },
      "type": "object"
    },
    "AttestorPublicKey": {
      "description": "An attestor public key that will be used to verify\nattestations signed by this attestor.",
      "id": "AttestorPublicKey",
      "properties": {
        "asciiArmoredPgpPublicKey": {
          "description": "ASCII-armored representation of a PGP public key, as the entire output by\nthe command `gpg --export --armor foo@example.com` (either LF or CRLF\nline endings).\nWhen using this field, `id` should be left blank.  The BinAuthz API\nhandlers will calculate the ID and fill it in automatically.  BinAuthz\ncomputes this ID as the OpenPGP RFC4880 V4 fingerprint, represented as\nupper-case hex.  If `id` is provided by the caller, it will be\noverwritten by the API-calculated ID.",
          "type": "string"
        },
        "comment": {
          "description": "Optional. A descriptive comment. This field may be updated.",
          "type": "string"
        },
        "id": {
          "description": "The ID of this public key.\nSignatures verified by BinAuthz must include the ID of the public key that\ncan be used to verify them, and that ID must match the contents of this\nfield exactly.\nAdditional restrictions on this field can be imposed based on which public\nkey type is encapsulated. See the documentation on `public_key` cases below\nfor details.",
          "type": "string"
        },
        "pkixPublicKey": {
          "$ref": "PkixPublicKey",
          "description": "A raw PKIX SubjectPublicKeyInfo format public key.\n\nNOTE: `id` may be explicitly provided by the caller when using this\ntype of public key, but it MUST be a valid RFC3986 URI. If `id` is left\nblank, a default one will be computed based on the digest of the DER\nencoding of the public key."
        }
      },
      "type": "object"
    },
    "Binding": {
      "description": "Associates `members` with a `role`.",
      "id": "Binding",
      "properties": {
        "condition": {
          "$ref": "Expr",
          "description": "The condition that is associated with this binding.\n\nIf the condition evaluates to `true`, then this binding applies to the\ncurrent request.\n\nIf the condition evaluates to `false`, then this binding does not apply to\nthe current request. However, a different role binding might grant the same\nrole to one or more of the members in this binding.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies)."
        },
        "members": {
          "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@example.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique\n   identifier) representing a user that has been recently deleted. For\n   example, `alice@example.com?uid=123456789012345678901`. If the user is\n   recovered, this value reverts to `user:{emailid}` and the recovered user\n   retains the role in the binding.\n\n* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus\n   unique identifier) representing a service account that has been recently\n   deleted. For example,\n   `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.\n   If the service account is undeleted, this value reverts to\n   `serviceAccount:{emailid}` and the undeleted service account retains the\n   role in the binding.\n\n* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique\n   identifier) representing a Google group that has been recently\n   deleted. For example, `admins@example.com?uid=123456789012345678901`. If\n   the group is recovered, this value reverts to `group:{emailid}` and the\n   recovered group retains the role in the binding.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "role": {
          "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n    service Foo {\n      rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n    }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "Empty",
      "properties": {},
      "type": "object"
    },
    "Expr": {
      "description": "Represents a textual expression in the Common Expression Language (CEL)\nsyntax. CEL is a C-like expression language. The syntax and semantics of CEL\nare documented at https://github.com/google/cel-spec.\n\nExample (Comparison):\n\n    title: \"Summary size limit\"\n    description: \"Determines if a summary is less than 100 chars\"\n    expression: \"document.summary.size() \u003c 100\"\n\nExample (Equality):\n\n    title: \"Requestor is owner\"\n    description: \"Determines if requestor is the document owner\"\n    expression: \"document.owner == request.auth.claims.email\"\n\nExample (Logic):\n\n    title: \"Public documents\"\n    description: \"Determine whether the document should be publicly visible\"\n    expression: \"document.type != 'private' \u0026\u0026 document.type != 'internal'\"\n\nExample (Data Manipulation):\n\n    title: \"Notification string\"\n    description: \"Create a notification string with a timestamp.\"\n    expression: \"'New message received at ' + string(document.create_time)\"\n\nThe exact variables and functions that may be referenced within an expression\nare determined by the service that evaluates it. See the service\ndocumentation for additional information.",
      "id": "Expr",
      "properties": {
        "description": {
          "description": "Optional. Description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.",
          "type": "string"
        },
        "expression": {
          "description": "Textual representation of an expression in Common Expression Language\nsyntax.",
          "type": "string"
        },
        "location": {
          "description": "Optional. String indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.",
          "type": "string"
        },
        "title": {
          "description": "Optional. Title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "IamPolicy": {
      "description": "An Identity and Access Management (IAM) policy, which specifies access\ncontrols for Google Cloud resources.\n\n\nA `Policy` is a collection of `bindings`. A `binding` binds one or more\n`members` to a single `role`. Members can be user accounts, service accounts,\nGoogle groups, and domains (such as G Suite). A `role` is a named list of\npermissions; each `role` can be an IAM predefined role or a user-created\ncustom role.\n\nFor some types of Google Cloud resources, a `binding` can also specify a\n`condition`, which is a logical expression that allows access to a resource\nonly if the expression evaluates to `true`. A condition can add constraints\nbased on attributes of the request, the resource, or both. To learn which\nresources support conditions in their IAM policies, see the\n[IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).\n\n**JSON example:**\n\n    {\n      \"bindings\": [\n        {\n          \"role\": \"roles/resourcemanager.organizationAdmin\",\n          \"members\": [\n            \"user:mike@example.com\",\n            \"group:admins@example.com\",\n            \"domain:google.com\",\n            \"serviceAccount:my-project-id@appspot.gserviceaccount.com\"\n          ]\n        },\n        {\n          \"role\": \"roles/resourcemanager.organizationViewer\",\n          \"members\": [\n            \"user:eve@example.com\"\n          ],\n          \"condition\": {\n            \"title\": \"expirable access\",\n            \"description\": \"Does not grant access after Sep 2020\",\n            \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\",\n          }\n        }\n      ],\n      \"etag\": \"BwWWja0YfJA=\",\n      \"version\": 3\n    }\n\n**YAML example:**\n\n    bindings:\n    - members:\n      - user:mike@example.com\n      - group:admins@example.com\n      - domain:google.com\n      - serviceAccount:my-project-id@appspot.gserviceaccount.com\n      role: roles/resourcemanager.organizationAdmin\n    - members:\n      - user:eve@example.com\n      role: roles/resourcemanager.organizationViewer\n      condition:\n        title: expirable access\n        description: Does not grant access after Sep 2020\n        expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\n    - etag: BwWWja0YfJA=\n    - version: 3\n\nFor a description of IAM and its features, see the\n[IAM documentation](https://cloud.google.com/iam/docs/).",
      "id": "IamPolicy",
      "properties": {
        "bindings": {
          "description": "Associates a list of `members` to a `role`. Optionally, may specify a\n`condition` that determines how and when the `bindings` are applied. Each\nof the `bindings` must contain at least one member.",
          "items": {
            "$ref": "Binding"
          },
          "type": "array"
        },
        "etag": {
          "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\n**Important:** If you use IAM Conditions, you must include the `etag` field\nwhenever you call `setIamPolicy`. If you omit this field, then IAM allows\nyou to overwrite a version `3` policy with a version `1` policy, and all of\nthe conditions in the version `3` policy are lost.",
          "format": "byte",
          "type": "string"
        },
        "version": {
          "description": "Specifies the format of the policy.\n\nValid values are `0`, `1`, and `3`. Requests that specify an invalid value\nare rejected.\n\nAny operation that affects conditional role bindings must specify version\n`3`. This requirement applies to the following operations:\n\n* Getting a policy that includes a conditional role binding\n* Adding a conditional role binding to a policy\n* Changing a conditional role binding in a policy\n* Removing any role binding, with or without a condition, from a policy\n  that includes conditions\n\n**Important:** If you use IAM Conditions, you must include the `etag` field\nwhenever you call `setIamPolicy`. If you omit this field, then IAM allows\nyou to overwrite a version `3` policy with a version `1` policy, and all of\nthe conditions in the version `3` policy are lost.\n\nIf a policy does not include any conditions, operations on that policy may\nspecify any valid version or leave the field unset.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "ListAttestorsResponse": {
      "description": "Response message for BinauthzManagementService.ListAttestors.",
      "id": "ListAttestorsResponse",
      "properties": {
        "attestors": {
          "description": "The list of attestors.",
          "items": {
            "$ref": "Attestor"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results. Pass this value in the\nListAttestorsRequest.page_token field in the subsequent call to the\n`ListAttestors` method to retrieve the next page of results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "PkixPublicKey": {
      "description": "A public key in the PkixPublicKey format (see\nhttps://tools.ietf.org/html/rfc5280#section-4.1.2.7 for details).\nPublic keys of this type are typically textually encoded using the PEM\nformat.",
      "id": "PkixPublicKey",
      "properties": {
        "publicKeyPem": {
          "description": "A PEM-encoded public key, as described in\nhttps://tools.ietf.org/html/rfc7468#section-13",
          "type": "string"
        },
        "signatureAlgorithm": {
          "description": "The signature algorithm used to verify a message against a signature using\nthis key.\nThese signature algorithm must match the structure and any object\nidentifiers encoded in `public_key_pem` (i.e. this algorithm must match\nthat of the public key).",
          "enum": [
            "SIGNATURE_ALGORITHM_UNSPECIFIED",
            "RSA_PSS_2048_SHA256",
            "RSA_PSS_3072_SHA256",
            "RSA_PSS_4096_SHA256",
            "RSA_PSS_4096_SHA512",
            "RSA_SIGN_PKCS1_2048_SHA256",
            "RSA_SIGN_PKCS1_3072_SHA256",
            "RSA_SIGN_PKCS1_4096_SHA256",
            "RSA_SIGN_PKCS1_4096_SHA512",
            "ECDSA_P256_SHA256",
            "ECDSA_P384_SHA384",
            "ECDSA_P521_SHA512"
          ],
          "enumDescriptions": [
            "Not specified.",
            "RSASSA-PSS 2048 bit key with a SHA256 digest.",
            "RSASSA-PSS 3072 bit key with a SHA256 digest.",
            "RSASSA-PSS 4096 bit key with a SHA256 digest.",
            "RSASSA-PSS 4096 bit key with a SHA512 digest.",
            "RSASSA-PKCS1-v1_5 with a 2048 bit key and a SHA256 digest.",
            "RSASSA-PKCS1-v1_5 with a 3072 bit key and a SHA256 digest.",
            "RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA256 digest.",
            "RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA512 digest.",
            "ECDSA on the NIST P-256 curve with a SHA256 digest.",
            "ECDSA on the NIST P-384 curve with a SHA384 digest.",
            "ECDSA on the NIST P-521 curve with a SHA512 digest."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "Policy": {
      "description": "A policy for container image binary authorization.",
      "id": "Policy",
      "properties": {
        "admissionWhitelistPatterns": {
          "description": "Optional. Admission policy whitelisting. A matching admission request will\nalways be permitted. This feature is typically used to exclude Google or\nthird-party infrastructure images from Binary Authorization policies.",
          "items": {
            "$ref": "AdmissionWhitelistPattern"
          },
          "type": "array"
        },
        "clusterAdmissionRules": {
          "additionalProperties": {
            "$ref": "AdmissionRule"
          },
          "description": "Optional. Per-cluster admission rules. Cluster spec format:\n`location.clusterId`. There can be at most one admission rule per cluster\nspec.\nA `location` is either a compute zone (e.g. us-central1-a) or a region\n(e.g. us-central1).\nFor `clusterId` syntax restrictions see\nhttps://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.",
          "type": "object"
        },
        "defaultAdmissionRule": {
          "$ref": "AdmissionRule",
          "description": "Required. Default admission rule for a cluster without a per-cluster, per-\nkubernetes-service-account, or per-istio-service-identity admission rule."
        },
        "description": {
          "description": "Optional. A descriptive comment.",
          "type": "string"
        },
        "globalPolicyEvaluationMode": {
          "description": "Optional. Controls the evaluation of a Google-maintained global admission\npolicy for common system-level images. Images not covered by the global\npolicy will be subject to the project admission policy. This setting\nhas no effect when specified inside a global admission policy.",
          "enum": [
            "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED",
            "ENABLE",
            "DISABLE"
          ],
          "enumDescriptions": [
            "Not specified: DISABLE is assumed.",
            "Enables global policy evaluation.",
            "Disables global policy evaluation."
          ],
          "type": "string"
        },
        "name": {
          "description": "Output only. The resource name, in the format `projects/*/policy`. There is\nat most one policy per project.",
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. Time when the policy was last updated.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SetIamPolicyRequest": {
      "description": "Request message for `SetIamPolicy` method.",
      "id": "SetIamPolicyRequest",
      "properties": {
        "policy": {
          "$ref": "IamPolicy",
          "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
        }
      },
      "type": "object"
    },
    "TestIamPermissionsRequest": {
      "description": "Request message for `TestIamPermissions` method.",
      "id": "TestIamPermissionsRequest",
      "properties": {
        "permissions": {
          "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "TestIamPermissionsResponse": {
      "description": "Response message for `TestIamPermissions` method.",
      "id": "TestIamPermissionsResponse",
      "properties": {
        "permissions": {
          "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "UserOwnedGrafeasNote": {
      "description": "An user owned Grafeas note references a Grafeas\nAttestation.Authority Note created by the user.",
      "id": "UserOwnedGrafeasNote",
      "properties": {
        "delegationServiceAccountEmail": {
          "description": "Output only. This field will contain the service account email address\nthat this Attestor will use as the principal when querying Container\nAnalysis. Attestor administrators must grant this service account the\nIAM role needed to read attestations from the note_reference in\nContainer Analysis (`containeranalysis.notes.occurrences.viewer`).\n\nThis email address is fixed for the lifetime of the Attestor, but callers\nshould not make any other assumptions about the service account email;\nfuture versions may use an email based on a different naming pattern.",
          "type": "string"
        },
        "noteReference": {
          "description": "Required. The Grafeas resource name of a Attestation.Authority Note,\ncreated by the user, in the format: `projects/*/notes/*`. This field may\nnot be updated.\n\nAn attestation by this attestor is stored as a Grafeas\nAttestation.Authority Occurrence that names a container image and that\nlinks to this Note. Grafeas is an external dependency.",
          "type": "string"
        },
        "publicKeys": {
          "description": "Optional. Public keys that verify attestations signed by this\nattestor.  This field may be updated.\n\nIf this field is non-empty, one of the specified public keys must\nverify that an attestation was signed by this attestor for the\nimage specified in the admission request.\n\nIf this field is empty, this attestor always returns that no\nvalid attestations exist.",
          "items": {
            "$ref": "AttestorPublicKey"
          },
          "type": "array"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Binary Authorization API",
  "version": "v1",
  "version_module": true
}