{
  "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:v1beta1",
  "kind": "discovery#restDescription",
  "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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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.\nAcceptable values are 0, 1, and 3.\nIf the value is 0, or the field is omitted, policy format version 1 will be\nreturned.",
                  "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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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.",
              "flatPath": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+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": "v1beta1/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.\nAcceptable values are 0, 1, and 3.\nIf the value is 0, or the field is omitted, policy format version 1 will be\nreturned.",
                  "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": "v1beta1/{+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.",
              "flatPath": "v1beta1/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": "v1beta1/{+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": "v1beta1/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": "v1beta1/{+resource}:testIamPermissions",
              "request": {
                "$ref": "TestIamPermissionsRequest"
              },
              "response": {
                "$ref": "TestIamPermissionsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20190802",
  "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"
        },
        "userOwnedDrydockNote": {
          "$ref": "UserOwnedDrydockNote",
          "description": "A Drydock ATTESTATION_AUTHORITY Note, created by the user."
        }
      },
      "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.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
        },
        "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\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 an expression text. Example:\n\n    title: \"User account presence\"\n    description: \"Determines whether the request has a user account\"\n    expression: \"size(request.user) \u003e 0\"",
      "id": "Expr",
      "properties": {
        "description": {
          "description": "An 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\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.",
          "type": "string"
        },
        "location": {
          "description": "An 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": "An 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": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**JSON Example**\n\n    {\n      \"bindings\": [\n        {\n          \"role\": \"roles/owner\",\n          \"members\": [\n            \"user:mike@example.com\",\n            \"group:admins@example.com\",\n            \"domain:google.com\",\n            \"serviceAccount:my-other-app@appspot.gserviceaccount.com\"\n          ]\n        },\n        {\n          \"role\": \"roles/viewer\",\n          \"members\": [\"user:sean@example.com\"]\n        }\n      ]\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-other-app@appspot.gserviceaccount.com\n      role: roles/owner\n    - members:\n      - user:sean@example.com\n      role: roles/viewer\n\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).",
      "id": "IamPolicy",
      "properties": {
        "bindings": {
          "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
          "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\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten.",
          "format": "byte",
          "type": "string"
        },
        "version": {
          "description": "Deprecated.",
          "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"
    },
    "UserOwnedDrydockNote": {
      "description": "An user owned drydock note references a Drydock\nATTESTATION_AUTHORITY Note created by the user.",
      "id": "UserOwnedDrydockNote",
      "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 Drydock resource name of a ATTESTATION_AUTHORITY Note,\ncreated by the user, in the format: `projects/*/notes/*` (or the legacy\n`providers/*/notes/*`). This field may not be updated.\n\nAn attestation by this attestor is stored as a Drydock\nATTESTATION_AUTHORITY Occurrence that names a container image and that\nlinks to this Note. Drydock 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": "v1beta1",
  "version_module": true
}