| <html><body> | |
| <style> | |
| body, h1, h2, h3, div, span, p, pre, a { | |
| margin: 0; | |
| padding: 0; | |
| border: 0; | |
| font-weight: inherit; | |
| font-style: inherit; | |
| font-size: 100%; | |
| font-family: inherit; | |
| vertical-align: baseline; | |
| } | |
| body { | |
| font-size: 13px; | |
| padding: 1em; | |
| } | |
| h1 { | |
| font-size: 26px; | |
| margin-bottom: 1em; | |
| } | |
| h2 { | |
| font-size: 24px; | |
| margin-bottom: 1em; | |
| } | |
| h3 { | |
| font-size: 20px; | |
| margin-bottom: 1em; | |
| margin-top: 1em; | |
| } | |
| pre, code { | |
| line-height: 1.5; | |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; | |
| } | |
| pre { | |
| margin-top: 0.5em; | |
| } | |
| h1, h2, h3, p { | |
| font-family: Arial, sans serif; | |
| } | |
| h1, h2, h3 { | |
| border-bottom: solid #CCC 1px; | |
| } | |
| .toc_element { | |
| margin-top: 0.5em; | |
| } | |
| .firstline { | |
| margin-left: 2 em; | |
| } | |
| .method { | |
| margin-top: 1em; | |
| border: solid 1px #CCC; | |
| padding: 1em; | |
| background: #EEE; | |
| } | |
| .details { | |
| font-weight: bold; | |
| font-size: 14px; | |
| } | |
| </style> | |
| <h1><a href="containeranalysis_v1alpha1.html">Container Analysis API</a> . <a href="containeranalysis_v1alpha1.projects.html">projects</a> . <a href="containeranalysis_v1alpha1.projects.occurrences.html">occurrences</a></h1> | |
| <h2>Instance Methods</h2> | |
| <p class="toc_element"> | |
| <code><a href="#create">create(parent, body=None, name=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Creates a new `Occurrence`. Use this method to create `Occurrences`</p> | |
| <p class="toc_element"> | |
| <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Deletes the given `Occurrence` from the system. Use this when</p> | |
| <p class="toc_element"> | |
| <code><a href="#get">get(name, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Returns the requested `Occurrence`.</p> | |
| <p class="toc_element"> | |
| <code><a href="#getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Gets the access control policy for a note or an `Occurrence` resource.</p> | |
| <p class="toc_element"> | |
| <code><a href="#getNotes">getNotes(name, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Gets the `Note` attached to the given `Occurrence`.</p> | |
| <p class="toc_element"> | |
| <code><a href="#getVulnerabilitySummary">getVulnerabilitySummary(parent, filter=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Gets a summary of the number and severity of occurrences.</p> | |
| <p class="toc_element"> | |
| <code><a href="#list">list(parent, pageToken=None, kind=None, pageSize=None, name=None, filter=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Lists active `Occurrences` for a given project matching the filters.</p> | |
| <p class="toc_element"> | |
| <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> | |
| <p class="firstline">Retrieves the next page of results.</p> | |
| <p class="toc_element"> | |
| <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Updates an existing occurrence.</p> | |
| <p class="toc_element"> | |
| <code><a href="#setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Sets the access control policy on the specified `Note` or `Occurrence`.</p> | |
| <p class="toc_element"> | |
| <code><a href="#testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Returns the permissions that a caller has on the specified note or</p> | |
| <h3>Method Details</h3> | |
| <div class="method"> | |
| <code class="details" id="create">create(parent, body=None, name=None, x__xgafv=None)</code> | |
| <pre>Creates a new `Occurrence`. Use this method to create `Occurrences` | |
| for a resource. | |
| Args: | |
| parent: string, This field contains the project Id for example: "projects/{project_id}" (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # `Occurrence` includes information about analysis occurrences for an image. | |
| "buildDetails": { # Message encapsulating build provenance details. # Build details for a verifiable build. | |
| "provenance": { # Provenance of a build. Contains all information needed to verify the full # The actual provenance | |
| # details about the build from source to completion. | |
| "id": "A String", # Unique identifier of the build. | |
| "buildOptions": { # Special options applied to this build. This is a catch-all field where | |
| # build providers can enter any desired additional details. | |
| "a_key": "A String", | |
| }, | |
| "startTime": "A String", # Time at which execution of the build was started. | |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. | |
| "createTime": "A String", # Time at which the build was created. | |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. | |
| "repoSource": { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo. | |
| # Repository. | |
| "projectId": "A String", # ID of the project that owns the repo. | |
| "repoName": "A String", # Name of the repo. | |
| "branchName": "A String", # Name of the branch to build. | |
| "tagName": "A String", # Name of the tag to build. | |
| "commitSha": "A String", # Explicit commit SHA to build. | |
| }, | |
| "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud | |
| # Storage. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "fileHashes": { # Hash(es) of the build source, which can be used to verify that the original | |
| # source integrity was maintained in the build. | |
| # | |
| # The keys to this map are file paths used as build source and the values | |
| # contain the hash values for those files. | |
| # | |
| # If the build source came in a single package such as a gzipped tarfile | |
| # (.tar.gz), the FileHash will be for the single path to that file. | |
| "a_key": { # Container message for hashes of byte content of files, used in Source | |
| # messages to verify integrity of source input to the build. | |
| "fileHash": [ # Collection of file hashes. | |
| { # Container message for hash values. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| ], | |
| }, | |
| }, | |
| "artifactStorageSource": { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this | |
| # location. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "additionalContexts": [ # If provided, some of the source code used for the build may be found in | |
| # these locations, in the case where the source repository had multiple | |
| # remotes or submodules. This list will not include the context specified in | |
| # the context field. | |
| { # A SourceContext is a reference to a tree of files. A SourceContext together | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| ], | |
| "context": { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location. | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| }, | |
| "projectId": "A String", # ID of the project. | |
| "finishTime": "A String", # Time at which execution of the build was finished. | |
| "creator": "A String", # E-mail address of the user who initiated this build. Note that this was the | |
| # user's e-mail address at the time the build was initiated; this address may | |
| # not represent the same end-user for all time. | |
| "logsBucket": "A String", # Google Cloud Storage bucket where logs were written. | |
| "builderVersion": "A String", # Version string of the builder at the time this build was executed. | |
| "commands": [ # Commands requested by the build. | |
| { # Command describes a step performed as part of the build pipeline. | |
| "name": "A String", # Name of the command, as presented on the command line, or if the command is | |
| # packaged as a Docker container, as presented to `docker pull`. | |
| "id": "A String", # Optional unique identifier for this Command, used in wait_for to reference | |
| # this Command as a dependency. | |
| "dir": "A String", # Working directory (relative to project source root) used when running | |
| # this Command. | |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. | |
| "A String", | |
| ], | |
| "env": [ # Environment variables set before running this Command. | |
| "A String", | |
| ], | |
| "args": [ # Command-line arguments used when executing this Command. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "builtArtifacts": [ # Output of the build. | |
| { # Artifact describes a build product. | |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest | |
| # like gcr.io/projectID/imagename@sha256:123456 | |
| "names": [ # Related artifact names. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. Note that a | |
| # single Artifact ID can have multiple names, for example if two tags are | |
| # applied to one image. | |
| "A String", | |
| ], | |
| "name": "A String", # Name of the artifact. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. | |
| # | |
| # This field is deprecated in favor of the plural `names` field; it continues | |
| # to exist here to allow existing BuildProvenance serialized to json in | |
| # google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_bytes to | |
| # deserialize back into proto. | |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a | |
| # container. | |
| }, | |
| ], | |
| }, | |
| "provenanceBytes": "A String", # Serialized JSON representation of the provenance, used in generating the | |
| # `BuildSignature` in the corresponding Result. After verifying the | |
| # signature, `provenance_bytes` can be unmarshalled and compared to the | |
| # provenance to confirm that it is unchanged. A base64-encoded string | |
| # representation of the provenance bytes is used for the signature in order | |
| # to interoperate with openssl which expects this format for signature | |
| # verification. | |
| # | |
| # The serialized form is captured both to avoid ambiguity in how the | |
| # provenance is marshalled to json as well to prevent incompatibilities with | |
| # future changes. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which of the `Occurrence` details are | |
| # specified. This field can be used as a filter in list requests. | |
| "resource": { # # | |
| # The resource for which the `Occurrence` applies. | |
| # Resource is an entity that can have metadata. E.g., a Docker image. | |
| "uri": "A String", # The unique URI of the resource. E.g., | |
| # "https://gcr.io/project/image@sha256:foo" for a Docker image. | |
| "name": "A String", # The name of the resource. E.g., the name of a Docker image - "Debian". | |
| "contentHash": { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| }, | |
| "resourceUrl": "A String", # The unique URL of the image or the container for which the `Occurrence` | |
| # applies. For example, https://gcr.io/project/image@sha256:foo This field | |
| # can be used as a filter in list requests. | |
| "name": "A String", # Output only. The name of the `Occurrence` in the form | |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" | |
| "attestation": { # Occurrence that represents a single "attestation". The authenticity of an # Describes an attestation of an artifact. | |
| # Attestation can be verified using the attached signature. If the verifier | |
| # trusts the public key of the signer, then verifying the signature is | |
| # sufficient to establish trust. In this circumstance, the | |
| # AttestationAuthority to which this Attestation is attached is primarily | |
| # useful for look-up (how to find this Attestation if you already know the | |
| # Authority and artifact to be verified) and intent (which authority was this | |
| # attestation intended to sign for). | |
| "pgpSignedAttestation": { # An attestation wrapper with a PGP-compatible signature. | |
| # This message only supports `ATTACHED` signatures, where the payload that is | |
| # signed is included alongside the signature itself in the same file. | |
| "signature": "A String", # The raw content of the signature, as output by GNU Privacy Guard (GPG) or | |
| # equivalent. Since this message only supports attached signatures, the | |
| # payload that was signed must be attached. While the signature format | |
| # supported is dependent on the verification implementation, currently only | |
| # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than | |
| # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor | |
| # --output=signature.gpg payload.json` will create the signature content | |
| # expected in this field in `signature.gpg` for the `payload.json` | |
| # attestation payload. | |
| "pgpKeyId": "A String", # The cryptographic fingerprint of the key used to generate the signature, | |
| # as output by, e.g. `gpg --list-keys`. This should be the version 4, full | |
| # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See | |
| # https://tools.ietf.org/html/rfc4880#section-12.2 for details. | |
| # Implementations may choose to acknowledge "LONG", "SHORT", or other | |
| # abbreviated key IDs, but only the full fingerprint is guaranteed to work. | |
| # In gpg, the full fingerprint can be retrieved from the `fpr` field | |
| # returned when calling --list-keys with --with-colons. For example: | |
| # ``` | |
| # gpg --with-colons --with-fingerprint --force-v4-certs \ | |
| # --list-keys attester@example.com | |
| # tru::1:1513631572:0:3:1:5 | |
| # pub:...<SNIP>... | |
| # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: | |
| # ``` | |
| # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. | |
| "contentType": "A String", # Type (for example schema) of the attestation payload that was signed. | |
| # The verifier must ensure that the provided type is one that the verifier | |
| # supports, and that the attestation payload is a valid instantiation of that | |
| # type (for example by validating a JSON schema). | |
| }, | |
| }, | |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. | |
| # a system. | |
| "name": "A String", # Output only. The name of the installed package. | |
| "location": [ # All of the places within the filesystem versions of this package | |
| # have been found. | |
| { # An occurrence of a particular package installation found within a | |
| # system's filesystem. | |
| # e.g. glibc was found in /var/lib/dpkg/status | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "version": { # Version contains structured information about the version of the package. # The version installed at this location. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "path": "A String", # The path from which we gathered that this package/version is installed. | |
| }, | |
| ], | |
| }, | |
| "upgrade": { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade. | |
| # specific upgrade. This presence is supplied via local sources (i.e. it is | |
| # present in the mirror and the running system has noticed its availability). | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| "parsedVersion": { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distribution": { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system | |
| # for the resource_url. This allows efficient filtering, as well as | |
| # making it easier to use the occurrence. | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| }, | |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. | |
| "operation": { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan. | |
| # This field is deprecated, do not use. | |
| # network API call. | |
| "response": { # The normal response of the operation in case of success. If the original | |
| # method returns no data on success, such as `Delete`, the response is | |
| # `google.protobuf.Empty`. If the original method is standard | |
| # `Get`/`Create`/`Update`, the response should be the resource. For other | |
| # methods, the response should have the type `XxxResponse`, where `Xxx` | |
| # is the original method name. For example, if the original method name | |
| # is `TakeSnapshot()`, the inferred response type is | |
| # `TakeSnapshotResponse`. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "name": "A String", # The server-assigned name, which is only unique within the same service that | |
| # originally returns it. If you use the default HTTP mapping, the | |
| # `name` should be a resource name ending with `operations/{unique_id}`. | |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "metadata": { # Service-specific metadata associated with the operation. It typically | |
| # contains progress information and common metadata such as create time. | |
| # Some services might not provide such metadata. Any method that returns a | |
| # long-running operation should document the metadata type, if any. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. | |
| # If `true`, the operation is completed, and either `error` or `response` is | |
| # available. | |
| }, | |
| "analysisStatus": "A String", # The status of discovery for the resource. | |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. | |
| "cpe": "A String", # The CPE of the resource being scanned. | |
| "analysisStatusError": { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under | |
| # details to show to the user. The LocalizedMessage output only and | |
| # populated by the API. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| }, | |
| "noteName": "A String", # An analysis note associated with this image, in the form | |
| # "providers/{provider_id}/notes/{NOTE_ID}" | |
| # This field can be used as a filter in list requests. | |
| "deployment": { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime. | |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. | |
| "address": "A String", # Address of the runtime element hosting this deployment. | |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the | |
| # deployable field with the same name. | |
| "A String", | |
| ], | |
| "config": "A String", # Configuration used to create this deployment. | |
| "userEmail": "A String", # Identity of the user that triggered this deployment. | |
| "undeployTime": "A String", # End of the lifetime of this deployment. | |
| "platform": "A String", # Platform hosting this deployment. | |
| }, | |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. | |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. | |
| # to fix it. | |
| "effectiveSeverity": "A String", # The distro assigned severity for this vulnerability when that is | |
| # available and note provider assigned severity when distro has not yet | |
| # assigned a severity for this vulnerability. | |
| "packageIssue": [ # The set of affected locations and their fixes (if available) within | |
| # the associated resource. | |
| { # This message wraps a location affected by a vulnerability and its | |
| # associated fix (if one is available). | |
| "severityName": "A String", | |
| "affectedLocation": { # The location of the vulnerability # The location of the vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| }, | |
| ], | |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. | |
| "cvssScore": 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a | |
| # scale of 0-10 where 0 indicates low severity and 10 indicates high | |
| # severity. | |
| "type": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| }, | |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. | |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` | |
| "derivedImage": { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis | |
| # in the associated note. | |
| # DockerImage relationship. This image would be produced from a Dockerfile | |
| # with FROM <DockerImage.Basis in attached Note>. | |
| "distance": 42, # Output only. The number of layers by which this image differs from the | |
| # associated image basis. | |
| "baseResourceUrl": "A String", # Output only. This contains the base image URL for the derived image | |
| # occurrence. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "layerInfo": [ # This contains layer-specific metadata, if populated it has length | |
| # "distance" and is ordered with [distance] being the layer immediately | |
| # following the base image and [1] being the final layer. | |
| { # Layer holds metadata specific to a layer of a Docker image. | |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. | |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. | |
| }, | |
| ], | |
| }, | |
| } | |
| name: string, The name of the project. Should be of the form "projects/{project_id}". | |
| @Deprecated | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # `Occurrence` includes information about analysis occurrences for an image. | |
| "buildDetails": { # Message encapsulating build provenance details. # Build details for a verifiable build. | |
| "provenance": { # Provenance of a build. Contains all information needed to verify the full # The actual provenance | |
| # details about the build from source to completion. | |
| "id": "A String", # Unique identifier of the build. | |
| "buildOptions": { # Special options applied to this build. This is a catch-all field where | |
| # build providers can enter any desired additional details. | |
| "a_key": "A String", | |
| }, | |
| "startTime": "A String", # Time at which execution of the build was started. | |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. | |
| "createTime": "A String", # Time at which the build was created. | |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. | |
| "repoSource": { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo. | |
| # Repository. | |
| "projectId": "A String", # ID of the project that owns the repo. | |
| "repoName": "A String", # Name of the repo. | |
| "branchName": "A String", # Name of the branch to build. | |
| "tagName": "A String", # Name of the tag to build. | |
| "commitSha": "A String", # Explicit commit SHA to build. | |
| }, | |
| "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud | |
| # Storage. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "fileHashes": { # Hash(es) of the build source, which can be used to verify that the original | |
| # source integrity was maintained in the build. | |
| # | |
| # The keys to this map are file paths used as build source and the values | |
| # contain the hash values for those files. | |
| # | |
| # If the build source came in a single package such as a gzipped tarfile | |
| # (.tar.gz), the FileHash will be for the single path to that file. | |
| "a_key": { # Container message for hashes of byte content of files, used in Source | |
| # messages to verify integrity of source input to the build. | |
| "fileHash": [ # Collection of file hashes. | |
| { # Container message for hash values. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| ], | |
| }, | |
| }, | |
| "artifactStorageSource": { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this | |
| # location. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "additionalContexts": [ # If provided, some of the source code used for the build may be found in | |
| # these locations, in the case where the source repository had multiple | |
| # remotes or submodules. This list will not include the context specified in | |
| # the context field. | |
| { # A SourceContext is a reference to a tree of files. A SourceContext together | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| ], | |
| "context": { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location. | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| }, | |
| "projectId": "A String", # ID of the project. | |
| "finishTime": "A String", # Time at which execution of the build was finished. | |
| "creator": "A String", # E-mail address of the user who initiated this build. Note that this was the | |
| # user's e-mail address at the time the build was initiated; this address may | |
| # not represent the same end-user for all time. | |
| "logsBucket": "A String", # Google Cloud Storage bucket where logs were written. | |
| "builderVersion": "A String", # Version string of the builder at the time this build was executed. | |
| "commands": [ # Commands requested by the build. | |
| { # Command describes a step performed as part of the build pipeline. | |
| "name": "A String", # Name of the command, as presented on the command line, or if the command is | |
| # packaged as a Docker container, as presented to `docker pull`. | |
| "id": "A String", # Optional unique identifier for this Command, used in wait_for to reference | |
| # this Command as a dependency. | |
| "dir": "A String", # Working directory (relative to project source root) used when running | |
| # this Command. | |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. | |
| "A String", | |
| ], | |
| "env": [ # Environment variables set before running this Command. | |
| "A String", | |
| ], | |
| "args": [ # Command-line arguments used when executing this Command. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "builtArtifacts": [ # Output of the build. | |
| { # Artifact describes a build product. | |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest | |
| # like gcr.io/projectID/imagename@sha256:123456 | |
| "names": [ # Related artifact names. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. Note that a | |
| # single Artifact ID can have multiple names, for example if two tags are | |
| # applied to one image. | |
| "A String", | |
| ], | |
| "name": "A String", # Name of the artifact. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. | |
| # | |
| # This field is deprecated in favor of the plural `names` field; it continues | |
| # to exist here to allow existing BuildProvenance serialized to json in | |
| # google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_bytes to | |
| # deserialize back into proto. | |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a | |
| # container. | |
| }, | |
| ], | |
| }, | |
| "provenanceBytes": "A String", # Serialized JSON representation of the provenance, used in generating the | |
| # `BuildSignature` in the corresponding Result. After verifying the | |
| # signature, `provenance_bytes` can be unmarshalled and compared to the | |
| # provenance to confirm that it is unchanged. A base64-encoded string | |
| # representation of the provenance bytes is used for the signature in order | |
| # to interoperate with openssl which expects this format for signature | |
| # verification. | |
| # | |
| # The serialized form is captured both to avoid ambiguity in how the | |
| # provenance is marshalled to json as well to prevent incompatibilities with | |
| # future changes. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which of the `Occurrence` details are | |
| # specified. This field can be used as a filter in list requests. | |
| "resource": { # # | |
| # The resource for which the `Occurrence` applies. | |
| # Resource is an entity that can have metadata. E.g., a Docker image. | |
| "uri": "A String", # The unique URI of the resource. E.g., | |
| # "https://gcr.io/project/image@sha256:foo" for a Docker image. | |
| "name": "A String", # The name of the resource. E.g., the name of a Docker image - "Debian". | |
| "contentHash": { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| }, | |
| "resourceUrl": "A String", # The unique URL of the image or the container for which the `Occurrence` | |
| # applies. For example, https://gcr.io/project/image@sha256:foo This field | |
| # can be used as a filter in list requests. | |
| "name": "A String", # Output only. The name of the `Occurrence` in the form | |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" | |
| "attestation": { # Occurrence that represents a single "attestation". The authenticity of an # Describes an attestation of an artifact. | |
| # Attestation can be verified using the attached signature. If the verifier | |
| # trusts the public key of the signer, then verifying the signature is | |
| # sufficient to establish trust. In this circumstance, the | |
| # AttestationAuthority to which this Attestation is attached is primarily | |
| # useful for look-up (how to find this Attestation if you already know the | |
| # Authority and artifact to be verified) and intent (which authority was this | |
| # attestation intended to sign for). | |
| "pgpSignedAttestation": { # An attestation wrapper with a PGP-compatible signature. | |
| # This message only supports `ATTACHED` signatures, where the payload that is | |
| # signed is included alongside the signature itself in the same file. | |
| "signature": "A String", # The raw content of the signature, as output by GNU Privacy Guard (GPG) or | |
| # equivalent. Since this message only supports attached signatures, the | |
| # payload that was signed must be attached. While the signature format | |
| # supported is dependent on the verification implementation, currently only | |
| # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than | |
| # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor | |
| # --output=signature.gpg payload.json` will create the signature content | |
| # expected in this field in `signature.gpg` for the `payload.json` | |
| # attestation payload. | |
| "pgpKeyId": "A String", # The cryptographic fingerprint of the key used to generate the signature, | |
| # as output by, e.g. `gpg --list-keys`. This should be the version 4, full | |
| # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See | |
| # https://tools.ietf.org/html/rfc4880#section-12.2 for details. | |
| # Implementations may choose to acknowledge "LONG", "SHORT", or other | |
| # abbreviated key IDs, but only the full fingerprint is guaranteed to work. | |
| # In gpg, the full fingerprint can be retrieved from the `fpr` field | |
| # returned when calling --list-keys with --with-colons. For example: | |
| # ``` | |
| # gpg --with-colons --with-fingerprint --force-v4-certs \ | |
| # --list-keys attester@example.com | |
| # tru::1:1513631572:0:3:1:5 | |
| # pub:...<SNIP>... | |
| # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: | |
| # ``` | |
| # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. | |
| "contentType": "A String", # Type (for example schema) of the attestation payload that was signed. | |
| # The verifier must ensure that the provided type is one that the verifier | |
| # supports, and that the attestation payload is a valid instantiation of that | |
| # type (for example by validating a JSON schema). | |
| }, | |
| }, | |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. | |
| # a system. | |
| "name": "A String", # Output only. The name of the installed package. | |
| "location": [ # All of the places within the filesystem versions of this package | |
| # have been found. | |
| { # An occurrence of a particular package installation found within a | |
| # system's filesystem. | |
| # e.g. glibc was found in /var/lib/dpkg/status | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "version": { # Version contains structured information about the version of the package. # The version installed at this location. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "path": "A String", # The path from which we gathered that this package/version is installed. | |
| }, | |
| ], | |
| }, | |
| "upgrade": { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade. | |
| # specific upgrade. This presence is supplied via local sources (i.e. it is | |
| # present in the mirror and the running system has noticed its availability). | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| "parsedVersion": { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distribution": { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system | |
| # for the resource_url. This allows efficient filtering, as well as | |
| # making it easier to use the occurrence. | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| }, | |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. | |
| "operation": { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan. | |
| # This field is deprecated, do not use. | |
| # network API call. | |
| "response": { # The normal response of the operation in case of success. If the original | |
| # method returns no data on success, such as `Delete`, the response is | |
| # `google.protobuf.Empty`. If the original method is standard | |
| # `Get`/`Create`/`Update`, the response should be the resource. For other | |
| # methods, the response should have the type `XxxResponse`, where `Xxx` | |
| # is the original method name. For example, if the original method name | |
| # is `TakeSnapshot()`, the inferred response type is | |
| # `TakeSnapshotResponse`. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "name": "A String", # The server-assigned name, which is only unique within the same service that | |
| # originally returns it. If you use the default HTTP mapping, the | |
| # `name` should be a resource name ending with `operations/{unique_id}`. | |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "metadata": { # Service-specific metadata associated with the operation. It typically | |
| # contains progress information and common metadata such as create time. | |
| # Some services might not provide such metadata. Any method that returns a | |
| # long-running operation should document the metadata type, if any. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. | |
| # If `true`, the operation is completed, and either `error` or `response` is | |
| # available. | |
| }, | |
| "analysisStatus": "A String", # The status of discovery for the resource. | |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. | |
| "cpe": "A String", # The CPE of the resource being scanned. | |
| "analysisStatusError": { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under | |
| # details to show to the user. The LocalizedMessage output only and | |
| # populated by the API. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| }, | |
| "noteName": "A String", # An analysis note associated with this image, in the form | |
| # "providers/{provider_id}/notes/{NOTE_ID}" | |
| # This field can be used as a filter in list requests. | |
| "deployment": { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime. | |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. | |
| "address": "A String", # Address of the runtime element hosting this deployment. | |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the | |
| # deployable field with the same name. | |
| "A String", | |
| ], | |
| "config": "A String", # Configuration used to create this deployment. | |
| "userEmail": "A String", # Identity of the user that triggered this deployment. | |
| "undeployTime": "A String", # End of the lifetime of this deployment. | |
| "platform": "A String", # Platform hosting this deployment. | |
| }, | |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. | |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. | |
| # to fix it. | |
| "effectiveSeverity": "A String", # The distro assigned severity for this vulnerability when that is | |
| # available and note provider assigned severity when distro has not yet | |
| # assigned a severity for this vulnerability. | |
| "packageIssue": [ # The set of affected locations and their fixes (if available) within | |
| # the associated resource. | |
| { # This message wraps a location affected by a vulnerability and its | |
| # associated fix (if one is available). | |
| "severityName": "A String", | |
| "affectedLocation": { # The location of the vulnerability # The location of the vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| }, | |
| ], | |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. | |
| "cvssScore": 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a | |
| # scale of 0-10 where 0 indicates low severity and 10 indicates high | |
| # severity. | |
| "type": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| }, | |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. | |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` | |
| "derivedImage": { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis | |
| # in the associated note. | |
| # DockerImage relationship. This image would be produced from a Dockerfile | |
| # with FROM <DockerImage.Basis in attached Note>. | |
| "distance": 42, # Output only. The number of layers by which this image differs from the | |
| # associated image basis. | |
| "baseResourceUrl": "A String", # Output only. This contains the base image URL for the derived image | |
| # occurrence. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "layerInfo": [ # This contains layer-specific metadata, if populated it has length | |
| # "distance" and is ordered with [distance] being the layer immediately | |
| # following the base image and [1] being the final layer. | |
| { # Layer holds metadata specific to a layer of a Docker image. | |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. | |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. | |
| }, | |
| ], | |
| }, | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="delete">delete(name, x__xgafv=None)</code> | |
| <pre>Deletes the given `Occurrence` from the system. Use this when | |
| an `Occurrence` is no longer applicable for the given resource. | |
| Args: | |
| name: string, The name of the occurrence in the form of | |
| "projects/{project_id}/occurrences/{OCCURRENCE_ID}" (required) | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # A generic empty message that you can re-use to avoid defining duplicated | |
| # empty messages in your APIs. A typical example is to use it as the request | |
| # or the response type of an API method. For instance: | |
| # | |
| # service Foo { | |
| # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); | |
| # } | |
| # | |
| # The JSON representation for `Empty` is empty JSON object `{}`. | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="get">get(name, x__xgafv=None)</code> | |
| <pre>Returns the requested `Occurrence`. | |
| Args: | |
| name: string, The name of the occurrence of the form | |
| "projects/{project_id}/occurrences/{OCCURRENCE_ID}" (required) | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # `Occurrence` includes information about analysis occurrences for an image. | |
| "buildDetails": { # Message encapsulating build provenance details. # Build details for a verifiable build. | |
| "provenance": { # Provenance of a build. Contains all information needed to verify the full # The actual provenance | |
| # details about the build from source to completion. | |
| "id": "A String", # Unique identifier of the build. | |
| "buildOptions": { # Special options applied to this build. This is a catch-all field where | |
| # build providers can enter any desired additional details. | |
| "a_key": "A String", | |
| }, | |
| "startTime": "A String", # Time at which execution of the build was started. | |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. | |
| "createTime": "A String", # Time at which the build was created. | |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. | |
| "repoSource": { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo. | |
| # Repository. | |
| "projectId": "A String", # ID of the project that owns the repo. | |
| "repoName": "A String", # Name of the repo. | |
| "branchName": "A String", # Name of the branch to build. | |
| "tagName": "A String", # Name of the tag to build. | |
| "commitSha": "A String", # Explicit commit SHA to build. | |
| }, | |
| "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud | |
| # Storage. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "fileHashes": { # Hash(es) of the build source, which can be used to verify that the original | |
| # source integrity was maintained in the build. | |
| # | |
| # The keys to this map are file paths used as build source and the values | |
| # contain the hash values for those files. | |
| # | |
| # If the build source came in a single package such as a gzipped tarfile | |
| # (.tar.gz), the FileHash will be for the single path to that file. | |
| "a_key": { # Container message for hashes of byte content of files, used in Source | |
| # messages to verify integrity of source input to the build. | |
| "fileHash": [ # Collection of file hashes. | |
| { # Container message for hash values. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| ], | |
| }, | |
| }, | |
| "artifactStorageSource": { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this | |
| # location. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "additionalContexts": [ # If provided, some of the source code used for the build may be found in | |
| # these locations, in the case where the source repository had multiple | |
| # remotes or submodules. This list will not include the context specified in | |
| # the context field. | |
| { # A SourceContext is a reference to a tree of files. A SourceContext together | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| ], | |
| "context": { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location. | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| }, | |
| "projectId": "A String", # ID of the project. | |
| "finishTime": "A String", # Time at which execution of the build was finished. | |
| "creator": "A String", # E-mail address of the user who initiated this build. Note that this was the | |
| # user's e-mail address at the time the build was initiated; this address may | |
| # not represent the same end-user for all time. | |
| "logsBucket": "A String", # Google Cloud Storage bucket where logs were written. | |
| "builderVersion": "A String", # Version string of the builder at the time this build was executed. | |
| "commands": [ # Commands requested by the build. | |
| { # Command describes a step performed as part of the build pipeline. | |
| "name": "A String", # Name of the command, as presented on the command line, or if the command is | |
| # packaged as a Docker container, as presented to `docker pull`. | |
| "id": "A String", # Optional unique identifier for this Command, used in wait_for to reference | |
| # this Command as a dependency. | |
| "dir": "A String", # Working directory (relative to project source root) used when running | |
| # this Command. | |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. | |
| "A String", | |
| ], | |
| "env": [ # Environment variables set before running this Command. | |
| "A String", | |
| ], | |
| "args": [ # Command-line arguments used when executing this Command. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "builtArtifacts": [ # Output of the build. | |
| { # Artifact describes a build product. | |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest | |
| # like gcr.io/projectID/imagename@sha256:123456 | |
| "names": [ # Related artifact names. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. Note that a | |
| # single Artifact ID can have multiple names, for example if two tags are | |
| # applied to one image. | |
| "A String", | |
| ], | |
| "name": "A String", # Name of the artifact. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. | |
| # | |
| # This field is deprecated in favor of the plural `names` field; it continues | |
| # to exist here to allow existing BuildProvenance serialized to json in | |
| # google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_bytes to | |
| # deserialize back into proto. | |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a | |
| # container. | |
| }, | |
| ], | |
| }, | |
| "provenanceBytes": "A String", # Serialized JSON representation of the provenance, used in generating the | |
| # `BuildSignature` in the corresponding Result. After verifying the | |
| # signature, `provenance_bytes` can be unmarshalled and compared to the | |
| # provenance to confirm that it is unchanged. A base64-encoded string | |
| # representation of the provenance bytes is used for the signature in order | |
| # to interoperate with openssl which expects this format for signature | |
| # verification. | |
| # | |
| # The serialized form is captured both to avoid ambiguity in how the | |
| # provenance is marshalled to json as well to prevent incompatibilities with | |
| # future changes. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which of the `Occurrence` details are | |
| # specified. This field can be used as a filter in list requests. | |
| "resource": { # # | |
| # The resource for which the `Occurrence` applies. | |
| # Resource is an entity that can have metadata. E.g., a Docker image. | |
| "uri": "A String", # The unique URI of the resource. E.g., | |
| # "https://gcr.io/project/image@sha256:foo" for a Docker image. | |
| "name": "A String", # The name of the resource. E.g., the name of a Docker image - "Debian". | |
| "contentHash": { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| }, | |
| "resourceUrl": "A String", # The unique URL of the image or the container for which the `Occurrence` | |
| # applies. For example, https://gcr.io/project/image@sha256:foo This field | |
| # can be used as a filter in list requests. | |
| "name": "A String", # Output only. The name of the `Occurrence` in the form | |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" | |
| "attestation": { # Occurrence that represents a single "attestation". The authenticity of an # Describes an attestation of an artifact. | |
| # Attestation can be verified using the attached signature. If the verifier | |
| # trusts the public key of the signer, then verifying the signature is | |
| # sufficient to establish trust. In this circumstance, the | |
| # AttestationAuthority to which this Attestation is attached is primarily | |
| # useful for look-up (how to find this Attestation if you already know the | |
| # Authority and artifact to be verified) and intent (which authority was this | |
| # attestation intended to sign for). | |
| "pgpSignedAttestation": { # An attestation wrapper with a PGP-compatible signature. | |
| # This message only supports `ATTACHED` signatures, where the payload that is | |
| # signed is included alongside the signature itself in the same file. | |
| "signature": "A String", # The raw content of the signature, as output by GNU Privacy Guard (GPG) or | |
| # equivalent. Since this message only supports attached signatures, the | |
| # payload that was signed must be attached. While the signature format | |
| # supported is dependent on the verification implementation, currently only | |
| # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than | |
| # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor | |
| # --output=signature.gpg payload.json` will create the signature content | |
| # expected in this field in `signature.gpg` for the `payload.json` | |
| # attestation payload. | |
| "pgpKeyId": "A String", # The cryptographic fingerprint of the key used to generate the signature, | |
| # as output by, e.g. `gpg --list-keys`. This should be the version 4, full | |
| # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See | |
| # https://tools.ietf.org/html/rfc4880#section-12.2 for details. | |
| # Implementations may choose to acknowledge "LONG", "SHORT", or other | |
| # abbreviated key IDs, but only the full fingerprint is guaranteed to work. | |
| # In gpg, the full fingerprint can be retrieved from the `fpr` field | |
| # returned when calling --list-keys with --with-colons. For example: | |
| # ``` | |
| # gpg --with-colons --with-fingerprint --force-v4-certs \ | |
| # --list-keys attester@example.com | |
| # tru::1:1513631572:0:3:1:5 | |
| # pub:...<SNIP>... | |
| # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: | |
| # ``` | |
| # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. | |
| "contentType": "A String", # Type (for example schema) of the attestation payload that was signed. | |
| # The verifier must ensure that the provided type is one that the verifier | |
| # supports, and that the attestation payload is a valid instantiation of that | |
| # type (for example by validating a JSON schema). | |
| }, | |
| }, | |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. | |
| # a system. | |
| "name": "A String", # Output only. The name of the installed package. | |
| "location": [ # All of the places within the filesystem versions of this package | |
| # have been found. | |
| { # An occurrence of a particular package installation found within a | |
| # system's filesystem. | |
| # e.g. glibc was found in /var/lib/dpkg/status | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "version": { # Version contains structured information about the version of the package. # The version installed at this location. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "path": "A String", # The path from which we gathered that this package/version is installed. | |
| }, | |
| ], | |
| }, | |
| "upgrade": { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade. | |
| # specific upgrade. This presence is supplied via local sources (i.e. it is | |
| # present in the mirror and the running system has noticed its availability). | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| "parsedVersion": { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distribution": { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system | |
| # for the resource_url. This allows efficient filtering, as well as | |
| # making it easier to use the occurrence. | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| }, | |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. | |
| "operation": { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan. | |
| # This field is deprecated, do not use. | |
| # network API call. | |
| "response": { # The normal response of the operation in case of success. If the original | |
| # method returns no data on success, such as `Delete`, the response is | |
| # `google.protobuf.Empty`. If the original method is standard | |
| # `Get`/`Create`/`Update`, the response should be the resource. For other | |
| # methods, the response should have the type `XxxResponse`, where `Xxx` | |
| # is the original method name. For example, if the original method name | |
| # is `TakeSnapshot()`, the inferred response type is | |
| # `TakeSnapshotResponse`. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "name": "A String", # The server-assigned name, which is only unique within the same service that | |
| # originally returns it. If you use the default HTTP mapping, the | |
| # `name` should be a resource name ending with `operations/{unique_id}`. | |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "metadata": { # Service-specific metadata associated with the operation. It typically | |
| # contains progress information and common metadata such as create time. | |
| # Some services might not provide such metadata. Any method that returns a | |
| # long-running operation should document the metadata type, if any. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. | |
| # If `true`, the operation is completed, and either `error` or `response` is | |
| # available. | |
| }, | |
| "analysisStatus": "A String", # The status of discovery for the resource. | |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. | |
| "cpe": "A String", # The CPE of the resource being scanned. | |
| "analysisStatusError": { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under | |
| # details to show to the user. The LocalizedMessage output only and | |
| # populated by the API. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| }, | |
| "noteName": "A String", # An analysis note associated with this image, in the form | |
| # "providers/{provider_id}/notes/{NOTE_ID}" | |
| # This field can be used as a filter in list requests. | |
| "deployment": { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime. | |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. | |
| "address": "A String", # Address of the runtime element hosting this deployment. | |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the | |
| # deployable field with the same name. | |
| "A String", | |
| ], | |
| "config": "A String", # Configuration used to create this deployment. | |
| "userEmail": "A String", # Identity of the user that triggered this deployment. | |
| "undeployTime": "A String", # End of the lifetime of this deployment. | |
| "platform": "A String", # Platform hosting this deployment. | |
| }, | |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. | |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. | |
| # to fix it. | |
| "effectiveSeverity": "A String", # The distro assigned severity for this vulnerability when that is | |
| # available and note provider assigned severity when distro has not yet | |
| # assigned a severity for this vulnerability. | |
| "packageIssue": [ # The set of affected locations and their fixes (if available) within | |
| # the associated resource. | |
| { # This message wraps a location affected by a vulnerability and its | |
| # associated fix (if one is available). | |
| "severityName": "A String", | |
| "affectedLocation": { # The location of the vulnerability # The location of the vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| }, | |
| ], | |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. | |
| "cvssScore": 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a | |
| # scale of 0-10 where 0 indicates low severity and 10 indicates high | |
| # severity. | |
| "type": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| }, | |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. | |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` | |
| "derivedImage": { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis | |
| # in the associated note. | |
| # DockerImage relationship. This image would be produced from a Dockerfile | |
| # with FROM <DockerImage.Basis in attached Note>. | |
| "distance": 42, # Output only. The number of layers by which this image differs from the | |
| # associated image basis. | |
| "baseResourceUrl": "A String", # Output only. This contains the base image URL for the derived image | |
| # occurrence. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "layerInfo": [ # This contains layer-specific metadata, if populated it has length | |
| # "distance" and is ordered with [distance] being the layer immediately | |
| # following the base image and [1] being the final layer. | |
| { # Layer holds metadata specific to a layer of a Docker image. | |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. | |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. | |
| }, | |
| ], | |
| }, | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</code> | |
| <pre>Gets the access control policy for a note or an `Occurrence` resource. | |
| Requires `containeranalysis.notes.setIamPolicy` or | |
| `containeranalysis.occurrences.setIamPolicy` permission if the resource is | |
| a note or occurrence, respectively. | |
| Attempting to call this method on a resource without the required | |
| permission will result in a `PERMISSION_DENIED` error. Attempting to call | |
| this method on a non-existent resource will result in a `NOT_FOUND` error | |
| if the user has list permission on the project, or a `PERMISSION_DENIED` | |
| error otherwise. The resource takes the following formats: | |
| `projects/{PROJECT_ID}/occurrences/{OCCURRENCE_ID}` for occurrences and | |
| projects/{PROJECT_ID}/notes/{NOTE_ID} for notes | |
| Args: | |
| resource: string, REQUIRED: The resource for which the policy is being requested. | |
| See the operation documentation for the appropriate value for this field. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # Request message for `GetIamPolicy` method. | |
| "options": { # Encapsulates settings provided to GetIamPolicy. # OPTIONAL: A `GetPolicyOptions` object for specifying options to | |
| # `GetIamPolicy`. | |
| "requestedPolicyVersion": 42, # Optional. The policy format version to be returned. | |
| # | |
| # Valid values are 0, 1, and 3. Requests specifying an invalid value will be | |
| # rejected. | |
| # | |
| # Requests for policies with any conditional bindings must specify version 3. | |
| # Policies without any conditional bindings may specify any valid value or | |
| # leave the field unset. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM | |
| # documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| }, | |
| } | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # An Identity and Access Management (IAM) policy, which specifies access | |
| # controls for Google Cloud resources. | |
| # | |
| # | |
| # A `Policy` is a collection of `bindings`. A `binding` binds one or more | |
| # `members` to a single `role`. Members can be user accounts, service accounts, | |
| # Google groups, and domains (such as G Suite). A `role` is a named list of | |
| # permissions; each `role` can be an IAM predefined role or a user-created | |
| # custom role. | |
| # | |
| # For some types of Google Cloud resources, a `binding` can also specify a | |
| # `condition`, which is a logical expression that allows access to a resource | |
| # only if the expression evaluates to `true`. A condition can add constraints | |
| # based on attributes of the request, the resource, or both. To learn which | |
| # resources support conditions in their IAM policies, see the | |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| # | |
| # **JSON example:** | |
| # | |
| # { | |
| # "bindings": [ | |
| # { | |
| # "role": "roles/resourcemanager.organizationAdmin", | |
| # "members": [ | |
| # "user:mike@example.com", | |
| # "group:admins@example.com", | |
| # "domain:google.com", | |
| # "serviceAccount:my-project-id@appspot.gserviceaccount.com" | |
| # ] | |
| # }, | |
| # { | |
| # "role": "roles/resourcemanager.organizationViewer", | |
| # "members": [ | |
| # "user:eve@example.com" | |
| # ], | |
| # "condition": { | |
| # "title": "expirable access", | |
| # "description": "Does not grant access after Sep 2020", | |
| # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", | |
| # } | |
| # } | |
| # ], | |
| # "etag": "BwWWja0YfJA=", | |
| # "version": 3 | |
| # } | |
| # | |
| # **YAML example:** | |
| # | |
| # bindings: | |
| # - members: | |
| # - user:mike@example.com | |
| # - group:admins@example.com | |
| # - domain:google.com | |
| # - serviceAccount:my-project-id@appspot.gserviceaccount.com | |
| # role: roles/resourcemanager.organizationAdmin | |
| # - members: | |
| # - user:eve@example.com | |
| # role: roles/resourcemanager.organizationViewer | |
| # condition: | |
| # title: expirable access | |
| # description: Does not grant access after Sep 2020 | |
| # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') | |
| # - etag: BwWWja0YfJA= | |
| # - version: 3 | |
| # | |
| # For a description of IAM and its features, see the | |
| # [IAM documentation](https://cloud.google.com/iam/docs/). | |
| "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help | |
| # prevent simultaneous updates of a policy from overwriting each other. | |
| # It is strongly suggested that systems make use of the `etag` in the | |
| # read-modify-write cycle to perform policy updates in order to avoid race | |
| # conditions: An `etag` is returned in the response to `getIamPolicy`, and | |
| # systems are expected to put that etag in the request to `setIamPolicy` to | |
| # ensure that their change will be applied to the same version of the policy. | |
| # | |
| # **Important:** If you use IAM Conditions, you must include the `etag` field | |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| # you to overwrite a version `3` policy with a version `1` policy, and all of | |
| # the conditions in the version `3` policy are lost. | |
| "version": 42, # Specifies the format of the policy. | |
| # | |
| # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value | |
| # are rejected. | |
| # | |
| # Any operation that affects conditional role bindings must specify version | |
| # `3`. This requirement applies to the following operations: | |
| # | |
| # * Getting a policy that includes a conditional role binding | |
| # * Adding a conditional role binding to a policy | |
| # * Changing a conditional role binding in a policy | |
| # * Removing any role binding, with or without a condition, from a policy | |
| # that includes conditions | |
| # | |
| # **Important:** If you use IAM Conditions, you must include the `etag` field | |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| # you to overwrite a version `3` policy with a version `1` policy, and all of | |
| # the conditions in the version `3` policy are lost. | |
| # | |
| # If a policy does not include any conditions, operations on that policy may | |
| # specify any valid version or leave the field unset. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a | |
| # `condition` that determines how and when the `bindings` are applied. Each | |
| # of the `bindings` must contain at least one member. | |
| { # Associates `members` with a `role`. | |
| "role": "A String", # Role that is assigned to `members`. | |
| # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. | |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding. | |
| # | |
| # If the condition evaluates to `true`, then this binding applies to the | |
| # current request. | |
| # | |
| # If the condition evaluates to `false`, then this binding does not apply to | |
| # the current request. However, a different role binding might grant the same | |
| # role to one or more of the members in this binding. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM | |
| # documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| # syntax. CEL is a C-like expression language. The syntax and semantics of CEL | |
| # are documented at https://github.com/google/cel-spec. | |
| # | |
| # Example (Comparison): | |
| # | |
| # title: "Summary size limit" | |
| # description: "Determines if a summary is less than 100 chars" | |
| # expression: "document.summary.size() < 100" | |
| # | |
| # Example (Equality): | |
| # | |
| # title: "Requestor is owner" | |
| # description: "Determines if requestor is the document owner" | |
| # expression: "document.owner == request.auth.claims.email" | |
| # | |
| # Example (Logic): | |
| # | |
| # title: "Public documents" | |
| # description: "Determine whether the document should be publicly visible" | |
| # expression: "document.type != 'private' && document.type != 'internal'" | |
| # | |
| # Example (Data Manipulation): | |
| # | |
| # title: "Notification string" | |
| # description: "Create a notification string with a timestamp." | |
| # expression: "'New message received at ' + string(document.create_time)" | |
| # | |
| # The exact variables and functions that may be referenced within an expression | |
| # are determined by the service that evaluates it. See the service | |
| # documentation for additional information. | |
| "title": "A String", # Optional. Title for the expression, i.e. a short string describing | |
| # its purpose. This can be used e.g. in UIs which allow to enter the | |
| # expression. | |
| "location": "A String", # Optional. String indicating the location of the expression for error | |
| # reporting, e.g. a file name and a position in the file. | |
| "description": "A String", # Optional. Description of the expression. This is a longer text which | |
| # describes the expression, e.g. when hovered over it in a UI. | |
| "expression": "A String", # Textual representation of an expression in Common Expression Language | |
| # syntax. | |
| }, | |
| "members": [ # Specifies the identities requesting access for a Cloud Platform resource. | |
| # `members` can have the following values: | |
| # | |
| # * `allUsers`: A special identifier that represents anyone who is | |
| # on the internet; with or without a Google account. | |
| # | |
| # * `allAuthenticatedUsers`: A special identifier that represents anyone | |
| # who is authenticated with a Google account or a service account. | |
| # | |
| # * `user:{emailid}`: An email address that represents a specific Google | |
| # account. For example, `alice@example.com` . | |
| # | |
| # | |
| # * `serviceAccount:{emailid}`: An email address that represents a service | |
| # account. For example, `my-other-app@appspot.gserviceaccount.com`. | |
| # | |
| # * `group:{emailid}`: An email address that represents a Google group. | |
| # For example, `admins@example.com`. | |
| # | |
| # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique | |
| # identifier) representing a user that has been recently deleted. For | |
| # example, `alice@example.com?uid=123456789012345678901`. If the user is | |
| # recovered, this value reverts to `user:{emailid}` and the recovered user | |
| # retains the role in the binding. | |
| # | |
| # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus | |
| # unique identifier) representing a service account that has been recently | |
| # deleted. For example, | |
| # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. | |
| # If the service account is undeleted, this value reverts to | |
| # `serviceAccount:{emailid}` and the undeleted service account retains the | |
| # role in the binding. | |
| # | |
| # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique | |
| # identifier) representing a Google group that has been recently | |
| # deleted. For example, `admins@example.com?uid=123456789012345678901`. If | |
| # the group is recovered, this value reverts to `group:{emailid}` and the | |
| # recovered group retains the role in the binding. | |
| # | |
| # | |
| # * `domain:{domain}`: The G Suite domain (primary) that represents all the | |
| # users of that domain. For example, `google.com` or `example.com`. | |
| # | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="getNotes">getNotes(name, x__xgafv=None)</code> | |
| <pre>Gets the `Note` attached to the given `Occurrence`. | |
| Args: | |
| name: string, The name of the occurrence in the form | |
| "projects/{project_id}/occurrences/{OCCURRENCE_ID}" (required) | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Provides a detailed description of a `Note`. | |
| "relatedUrl": [ # URLs associated with this note | |
| { # Metadata for any related URL information | |
| "url": "A String", # Specific URL to associate with the note | |
| "label": "A String", # Label to describe usage of the URL | |
| }, | |
| ], | |
| "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. | |
| "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. | |
| # relationship. Linked occurrences are derived from this or an | |
| # equivalent image via: | |
| # FROM <Basis.resource_url> | |
| # Or an equivalent reference, e.g. a tag of the resource_url. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "resourceUrl": "A String", # The resource_url for the resource representing the basis of | |
| # associated occurrence images. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This | |
| # field can be used as a filter in list requests. | |
| "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. | |
| # the provenance message in linked BuildDetails. | |
| "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this | |
| # `BuilderDetails`. | |
| "publicKey": "A String", # Public key of the builder which can be used to verify that the related | |
| # findings are valid and unchanged. If `key_type` is empty, this defaults | |
| # to PEM encoded public keys. | |
| # | |
| # This field may be empty if `key_id` references an external key. | |
| # | |
| # For Cloud Build based signatures, this is a PEM encoded public | |
| # key. To verify the Cloud Build signature, place the contents of | |
| # this field into a file (public.pem). The signature field is base64-decoded | |
| # into its binary representation in signature.bin, and the provenance bytes | |
| # from `BuildDetails` are base64-decoded into a binary representation in | |
| # signed.bin. OpenSSL can then verify the signature: | |
| # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` | |
| "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key | |
| # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the | |
| # CN for a cert), or a reference to an external key (such as a reference to a | |
| # key in Cloud Key Management Service). | |
| "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in | |
| # `key_id` | |
| "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. | |
| }, | |
| "builderVersion": "A String", # Version of the builder which produced this Note. | |
| }, | |
| "longDescription": "A String", # A detailed description of this `Note`. | |
| "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. | |
| "resourceUri": [ # Resource URI for the artifact being deployed. | |
| "A String", | |
| ], | |
| }, | |
| "shortDescription": "A String", # A one sentence description of this `Note`. | |
| "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. | |
| # example, an organization might have one `AttestationAuthority` for "QA" and | |
| # one for "build". This Note is intended to act strictly as a grouping | |
| # mechanism for the attached Occurrences (Attestations). This grouping | |
| # mechanism also provides a security boundary, since IAM ACLs gate the ability | |
| # for a principle to attach an Occurrence to a given Note. It also provides a | |
| # single point of lookup to find all attached Attestation Occurrences, even if | |
| # they don't all live in the same project. | |
| "hint": { # This submessage provides human-readable hints about the purpose of the | |
| # AttestationAuthority. Because the name of a Note acts as its resource | |
| # reference, it is important to disambiguate the canonical name of the Note | |
| # (which might be a UUID for security purposes) from "readable" names more | |
| # suitable for debug output. Note that these hints should NOT be used to | |
| # look up AttestationAuthorities in security sensitive contexts, such as when | |
| # looking up Attestations to verify. | |
| "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". | |
| }, | |
| }, | |
| "name": "A String", # The name of the note in the form | |
| # "projects/{provider_project_id}/notes/{NOTE_ID}" | |
| "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. | |
| "severity": "A String", # Note provider assigned impact of the vulnerability | |
| "details": [ # All information about the package to specifically identify this | |
| # vulnerability. One entry per (version range and cpe_uri) the | |
| # package vulnerability has manifested in. | |
| { # Identifies all occurrences of this vulnerability in the package for a | |
| # specific distro/location | |
| # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 | |
| "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "packageType": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in | |
| # which the vulnerability manifests. Examples include distro or storage | |
| # location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "description": "A String", # A vendor-specific description of this note. | |
| "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. | |
| "package": "A String", # The name of the package where the vulnerability was found. | |
| # This field can be used as a filter in list requests. | |
| "maxAffectedVersion": { # Version contains structured information about the version of the package. # The max version of the package in which the vulnerability exists. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to | |
| # obsolete details. | |
| }, | |
| ], | |
| "cvssScore": 3.14, # The CVSS score for this Vulnerability. | |
| }, | |
| "upgrade": { # An Upgrade Note represents a potential upgrade of a package to a given # A note describing an upgrade. | |
| # version. For each package version combination (i.e. bash 4.0, bash 4.1, | |
| # bash 4.1.2), there will be a Upgrade Note. | |
| "version": { # Version contains structured information about the version of the package. # Required - The version of the package in machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distributions": [ # Metadata about the upgrade for each specific operating system. | |
| { # The Upgrade Distribution represents metadata about the Upgrade for each | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| }, | |
| "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. | |
| # various channels. | |
| # e.g. glibc (aka libc6) is distributed by many, at various versions. | |
| "name": "A String", # The name of the package. | |
| "distribution": [ # The various channels by which a package is distributed. | |
| { # This represents a particular channel of distribution for a given package. | |
| # e.g. Debian's jessie-backports dpkg mirror | |
| "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in | |
| # this distribution channel. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "description": "A String", # The distribution channel-specific description of this package. | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "url": "A String", # The distribution channel-specific homepage for this package. | |
| "architecture": "A String", # The CPU architecture for which packages in this distribution | |
| # channel were built | |
| "maintainer": "A String", # A freeform string denoting the maintainer of this package. | |
| }, | |
| ], | |
| }, | |
| "createTime": "A String", # Output only. The time this note was created. This field can be used as a | |
| # filter in list requests. | |
| "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. | |
| # exists in a provider's project. A `Discovery` occurrence is created in a | |
| # consumer's project at the start of analysis. The occurrence's operation will | |
| # indicate the status of the analysis. Absence of an occurrence linked to this | |
| # note for a resource indicates that analysis hasn't started. | |
| "analysisKind": "A String", # The kind of analysis that is handled by this discovery. | |
| }, | |
| "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as | |
| # a filter in list requests. | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="getVulnerabilitySummary">getVulnerabilitySummary(parent, filter=None, x__xgafv=None)</code> | |
| <pre>Gets a summary of the number and severity of occurrences. | |
| Args: | |
| parent: string, This contains the project Id for example: projects/{project_id} (required) | |
| filter: string, The filter expression. | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # A summary of how many vulnz occurrences there are per severity type. | |
| # counts by groups, or if we should have different summary messages | |
| # like this. | |
| "counts": [ # A map of how many occurrences were found for each severity. | |
| { # The number of occurrences created for a specific severity. | |
| "severity": "A String", # The severity of the occurrences. | |
| "count": "A String", # The number of occurrences with the severity. | |
| }, | |
| ], | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="list">list(parent, pageToken=None, kind=None, pageSize=None, name=None, filter=None, x__xgafv=None)</code> | |
| <pre>Lists active `Occurrences` for a given project matching the filters. | |
| Args: | |
| parent: string, This contains the project Id for example: projects/{project_id}. (required) | |
| pageToken: string, Token to provide to skip to a particular spot in the list. | |
| kind: string, The kind of occurrences to filter on. | |
| pageSize: integer, Number of occurrences to return in the list. | |
| name: string, The name field contains the project Id. For example: | |
| "projects/{project_id} | |
| @Deprecated | |
| filter: string, The filter expression. | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Response including listed active occurrences. | |
| "occurrences": [ # The occurrences requested. | |
| { # `Occurrence` includes information about analysis occurrences for an image. | |
| "buildDetails": { # Message encapsulating build provenance details. # Build details for a verifiable build. | |
| "provenance": { # Provenance of a build. Contains all information needed to verify the full # The actual provenance | |
| # details about the build from source to completion. | |
| "id": "A String", # Unique identifier of the build. | |
| "buildOptions": { # Special options applied to this build. This is a catch-all field where | |
| # build providers can enter any desired additional details. | |
| "a_key": "A String", | |
| }, | |
| "startTime": "A String", # Time at which execution of the build was started. | |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. | |
| "createTime": "A String", # Time at which the build was created. | |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. | |
| "repoSource": { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo. | |
| # Repository. | |
| "projectId": "A String", # ID of the project that owns the repo. | |
| "repoName": "A String", # Name of the repo. | |
| "branchName": "A String", # Name of the branch to build. | |
| "tagName": "A String", # Name of the tag to build. | |
| "commitSha": "A String", # Explicit commit SHA to build. | |
| }, | |
| "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud | |
| # Storage. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "fileHashes": { # Hash(es) of the build source, which can be used to verify that the original | |
| # source integrity was maintained in the build. | |
| # | |
| # The keys to this map are file paths used as build source and the values | |
| # contain the hash values for those files. | |
| # | |
| # If the build source came in a single package such as a gzipped tarfile | |
| # (.tar.gz), the FileHash will be for the single path to that file. | |
| "a_key": { # Container message for hashes of byte content of files, used in Source | |
| # messages to verify integrity of source input to the build. | |
| "fileHash": [ # Collection of file hashes. | |
| { # Container message for hash values. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| ], | |
| }, | |
| }, | |
| "artifactStorageSource": { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this | |
| # location. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "additionalContexts": [ # If provided, some of the source code used for the build may be found in | |
| # these locations, in the case where the source repository had multiple | |
| # remotes or submodules. This list will not include the context specified in | |
| # the context field. | |
| { # A SourceContext is a reference to a tree of files. A SourceContext together | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| ], | |
| "context": { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location. | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| }, | |
| "projectId": "A String", # ID of the project. | |
| "finishTime": "A String", # Time at which execution of the build was finished. | |
| "creator": "A String", # E-mail address of the user who initiated this build. Note that this was the | |
| # user's e-mail address at the time the build was initiated; this address may | |
| # not represent the same end-user for all time. | |
| "logsBucket": "A String", # Google Cloud Storage bucket where logs were written. | |
| "builderVersion": "A String", # Version string of the builder at the time this build was executed. | |
| "commands": [ # Commands requested by the build. | |
| { # Command describes a step performed as part of the build pipeline. | |
| "name": "A String", # Name of the command, as presented on the command line, or if the command is | |
| # packaged as a Docker container, as presented to `docker pull`. | |
| "id": "A String", # Optional unique identifier for this Command, used in wait_for to reference | |
| # this Command as a dependency. | |
| "dir": "A String", # Working directory (relative to project source root) used when running | |
| # this Command. | |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. | |
| "A String", | |
| ], | |
| "env": [ # Environment variables set before running this Command. | |
| "A String", | |
| ], | |
| "args": [ # Command-line arguments used when executing this Command. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "builtArtifacts": [ # Output of the build. | |
| { # Artifact describes a build product. | |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest | |
| # like gcr.io/projectID/imagename@sha256:123456 | |
| "names": [ # Related artifact names. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. Note that a | |
| # single Artifact ID can have multiple names, for example if two tags are | |
| # applied to one image. | |
| "A String", | |
| ], | |
| "name": "A String", # Name of the artifact. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. | |
| # | |
| # This field is deprecated in favor of the plural `names` field; it continues | |
| # to exist here to allow existing BuildProvenance serialized to json in | |
| # google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_bytes to | |
| # deserialize back into proto. | |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a | |
| # container. | |
| }, | |
| ], | |
| }, | |
| "provenanceBytes": "A String", # Serialized JSON representation of the provenance, used in generating the | |
| # `BuildSignature` in the corresponding Result. After verifying the | |
| # signature, `provenance_bytes` can be unmarshalled and compared to the | |
| # provenance to confirm that it is unchanged. A base64-encoded string | |
| # representation of the provenance bytes is used for the signature in order | |
| # to interoperate with openssl which expects this format for signature | |
| # verification. | |
| # | |
| # The serialized form is captured both to avoid ambiguity in how the | |
| # provenance is marshalled to json as well to prevent incompatibilities with | |
| # future changes. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which of the `Occurrence` details are | |
| # specified. This field can be used as a filter in list requests. | |
| "resource": { # # | |
| # The resource for which the `Occurrence` applies. | |
| # Resource is an entity that can have metadata. E.g., a Docker image. | |
| "uri": "A String", # The unique URI of the resource. E.g., | |
| # "https://gcr.io/project/image@sha256:foo" for a Docker image. | |
| "name": "A String", # The name of the resource. E.g., the name of a Docker image - "Debian". | |
| "contentHash": { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| }, | |
| "resourceUrl": "A String", # The unique URL of the image or the container for which the `Occurrence` | |
| # applies. For example, https://gcr.io/project/image@sha256:foo This field | |
| # can be used as a filter in list requests. | |
| "name": "A String", # Output only. The name of the `Occurrence` in the form | |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" | |
| "attestation": { # Occurrence that represents a single "attestation". The authenticity of an # Describes an attestation of an artifact. | |
| # Attestation can be verified using the attached signature. If the verifier | |
| # trusts the public key of the signer, then verifying the signature is | |
| # sufficient to establish trust. In this circumstance, the | |
| # AttestationAuthority to which this Attestation is attached is primarily | |
| # useful for look-up (how to find this Attestation if you already know the | |
| # Authority and artifact to be verified) and intent (which authority was this | |
| # attestation intended to sign for). | |
| "pgpSignedAttestation": { # An attestation wrapper with a PGP-compatible signature. | |
| # This message only supports `ATTACHED` signatures, where the payload that is | |
| # signed is included alongside the signature itself in the same file. | |
| "signature": "A String", # The raw content of the signature, as output by GNU Privacy Guard (GPG) or | |
| # equivalent. Since this message only supports attached signatures, the | |
| # payload that was signed must be attached. While the signature format | |
| # supported is dependent on the verification implementation, currently only | |
| # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than | |
| # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor | |
| # --output=signature.gpg payload.json` will create the signature content | |
| # expected in this field in `signature.gpg` for the `payload.json` | |
| # attestation payload. | |
| "pgpKeyId": "A String", # The cryptographic fingerprint of the key used to generate the signature, | |
| # as output by, e.g. `gpg --list-keys`. This should be the version 4, full | |
| # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See | |
| # https://tools.ietf.org/html/rfc4880#section-12.2 for details. | |
| # Implementations may choose to acknowledge "LONG", "SHORT", or other | |
| # abbreviated key IDs, but only the full fingerprint is guaranteed to work. | |
| # In gpg, the full fingerprint can be retrieved from the `fpr` field | |
| # returned when calling --list-keys with --with-colons. For example: | |
| # ``` | |
| # gpg --with-colons --with-fingerprint --force-v4-certs \ | |
| # --list-keys attester@example.com | |
| # tru::1:1513631572:0:3:1:5 | |
| # pub:...<SNIP>... | |
| # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: | |
| # ``` | |
| # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. | |
| "contentType": "A String", # Type (for example schema) of the attestation payload that was signed. | |
| # The verifier must ensure that the provided type is one that the verifier | |
| # supports, and that the attestation payload is a valid instantiation of that | |
| # type (for example by validating a JSON schema). | |
| }, | |
| }, | |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. | |
| # a system. | |
| "name": "A String", # Output only. The name of the installed package. | |
| "location": [ # All of the places within the filesystem versions of this package | |
| # have been found. | |
| { # An occurrence of a particular package installation found within a | |
| # system's filesystem. | |
| # e.g. glibc was found in /var/lib/dpkg/status | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "version": { # Version contains structured information about the version of the package. # The version installed at this location. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "path": "A String", # The path from which we gathered that this package/version is installed. | |
| }, | |
| ], | |
| }, | |
| "upgrade": { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade. | |
| # specific upgrade. This presence is supplied via local sources (i.e. it is | |
| # present in the mirror and the running system has noticed its availability). | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| "parsedVersion": { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distribution": { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system | |
| # for the resource_url. This allows efficient filtering, as well as | |
| # making it easier to use the occurrence. | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| }, | |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. | |
| "operation": { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan. | |
| # This field is deprecated, do not use. | |
| # network API call. | |
| "response": { # The normal response of the operation in case of success. If the original | |
| # method returns no data on success, such as `Delete`, the response is | |
| # `google.protobuf.Empty`. If the original method is standard | |
| # `Get`/`Create`/`Update`, the response should be the resource. For other | |
| # methods, the response should have the type `XxxResponse`, where `Xxx` | |
| # is the original method name. For example, if the original method name | |
| # is `TakeSnapshot()`, the inferred response type is | |
| # `TakeSnapshotResponse`. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "name": "A String", # The server-assigned name, which is only unique within the same service that | |
| # originally returns it. If you use the default HTTP mapping, the | |
| # `name` should be a resource name ending with `operations/{unique_id}`. | |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "metadata": { # Service-specific metadata associated with the operation. It typically | |
| # contains progress information and common metadata such as create time. | |
| # Some services might not provide such metadata. Any method that returns a | |
| # long-running operation should document the metadata type, if any. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. | |
| # If `true`, the operation is completed, and either `error` or `response` is | |
| # available. | |
| }, | |
| "analysisStatus": "A String", # The status of discovery for the resource. | |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. | |
| "cpe": "A String", # The CPE of the resource being scanned. | |
| "analysisStatusError": { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under | |
| # details to show to the user. The LocalizedMessage output only and | |
| # populated by the API. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| }, | |
| "noteName": "A String", # An analysis note associated with this image, in the form | |
| # "providers/{provider_id}/notes/{NOTE_ID}" | |
| # This field can be used as a filter in list requests. | |
| "deployment": { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime. | |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. | |
| "address": "A String", # Address of the runtime element hosting this deployment. | |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the | |
| # deployable field with the same name. | |
| "A String", | |
| ], | |
| "config": "A String", # Configuration used to create this deployment. | |
| "userEmail": "A String", # Identity of the user that triggered this deployment. | |
| "undeployTime": "A String", # End of the lifetime of this deployment. | |
| "platform": "A String", # Platform hosting this deployment. | |
| }, | |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. | |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. | |
| # to fix it. | |
| "effectiveSeverity": "A String", # The distro assigned severity for this vulnerability when that is | |
| # available and note provider assigned severity when distro has not yet | |
| # assigned a severity for this vulnerability. | |
| "packageIssue": [ # The set of affected locations and their fixes (if available) within | |
| # the associated resource. | |
| { # This message wraps a location affected by a vulnerability and its | |
| # associated fix (if one is available). | |
| "severityName": "A String", | |
| "affectedLocation": { # The location of the vulnerability # The location of the vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| }, | |
| ], | |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. | |
| "cvssScore": 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a | |
| # scale of 0-10 where 0 indicates low severity and 10 indicates high | |
| # severity. | |
| "type": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| }, | |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. | |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` | |
| "derivedImage": { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis | |
| # in the associated note. | |
| # DockerImage relationship. This image would be produced from a Dockerfile | |
| # with FROM <DockerImage.Basis in attached Note>. | |
| "distance": 42, # Output only. The number of layers by which this image differs from the | |
| # associated image basis. | |
| "baseResourceUrl": "A String", # Output only. This contains the base image URL for the derived image | |
| # occurrence. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "layerInfo": [ # This contains layer-specific metadata, if populated it has length | |
| # "distance" and is ordered with [distance] being the layer immediately | |
| # following the base image and [1] being the final layer. | |
| { # Layer holds metadata specific to a layer of a Docker image. | |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. | |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. | |
| }, | |
| ], | |
| }, | |
| }, | |
| ], | |
| "nextPageToken": "A String", # The next pagination token in the list response. It should be used as | |
| # `page_token` for the following request. An empty value means no more | |
| # results. | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="list_next">list_next(previous_request, previous_response)</code> | |
| <pre>Retrieves the next page of results. | |
| Args: | |
| previous_request: The request for the previous page. (required) | |
| previous_response: The response from the request for the previous page. (required) | |
| Returns: | |
| A request object that you can call 'execute()' on to request the next | |
| page. Returns None if there are no more items in the collection. | |
| </pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code> | |
| <pre>Updates an existing occurrence. | |
| Args: | |
| name: string, The name of the occurrence. | |
| Should be of the form "projects/{project_id}/occurrences/{OCCURRENCE_ID}". (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # `Occurrence` includes information about analysis occurrences for an image. | |
| "buildDetails": { # Message encapsulating build provenance details. # Build details for a verifiable build. | |
| "provenance": { # Provenance of a build. Contains all information needed to verify the full # The actual provenance | |
| # details about the build from source to completion. | |
| "id": "A String", # Unique identifier of the build. | |
| "buildOptions": { # Special options applied to this build. This is a catch-all field where | |
| # build providers can enter any desired additional details. | |
| "a_key": "A String", | |
| }, | |
| "startTime": "A String", # Time at which execution of the build was started. | |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. | |
| "createTime": "A String", # Time at which the build was created. | |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. | |
| "repoSource": { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo. | |
| # Repository. | |
| "projectId": "A String", # ID of the project that owns the repo. | |
| "repoName": "A String", # Name of the repo. | |
| "branchName": "A String", # Name of the branch to build. | |
| "tagName": "A String", # Name of the tag to build. | |
| "commitSha": "A String", # Explicit commit SHA to build. | |
| }, | |
| "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud | |
| # Storage. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "fileHashes": { # Hash(es) of the build source, which can be used to verify that the original | |
| # source integrity was maintained in the build. | |
| # | |
| # The keys to this map are file paths used as build source and the values | |
| # contain the hash values for those files. | |
| # | |
| # If the build source came in a single package such as a gzipped tarfile | |
| # (.tar.gz), the FileHash will be for the single path to that file. | |
| "a_key": { # Container message for hashes of byte content of files, used in Source | |
| # messages to verify integrity of source input to the build. | |
| "fileHash": [ # Collection of file hashes. | |
| { # Container message for hash values. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| ], | |
| }, | |
| }, | |
| "artifactStorageSource": { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this | |
| # location. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "additionalContexts": [ # If provided, some of the source code used for the build may be found in | |
| # these locations, in the case where the source repository had multiple | |
| # remotes or submodules. This list will not include the context specified in | |
| # the context field. | |
| { # A SourceContext is a reference to a tree of files. A SourceContext together | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| ], | |
| "context": { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location. | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| }, | |
| "projectId": "A String", # ID of the project. | |
| "finishTime": "A String", # Time at which execution of the build was finished. | |
| "creator": "A String", # E-mail address of the user who initiated this build. Note that this was the | |
| # user's e-mail address at the time the build was initiated; this address may | |
| # not represent the same end-user for all time. | |
| "logsBucket": "A String", # Google Cloud Storage bucket where logs were written. | |
| "builderVersion": "A String", # Version string of the builder at the time this build was executed. | |
| "commands": [ # Commands requested by the build. | |
| { # Command describes a step performed as part of the build pipeline. | |
| "name": "A String", # Name of the command, as presented on the command line, or if the command is | |
| # packaged as a Docker container, as presented to `docker pull`. | |
| "id": "A String", # Optional unique identifier for this Command, used in wait_for to reference | |
| # this Command as a dependency. | |
| "dir": "A String", # Working directory (relative to project source root) used when running | |
| # this Command. | |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. | |
| "A String", | |
| ], | |
| "env": [ # Environment variables set before running this Command. | |
| "A String", | |
| ], | |
| "args": [ # Command-line arguments used when executing this Command. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "builtArtifacts": [ # Output of the build. | |
| { # Artifact describes a build product. | |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest | |
| # like gcr.io/projectID/imagename@sha256:123456 | |
| "names": [ # Related artifact names. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. Note that a | |
| # single Artifact ID can have multiple names, for example if two tags are | |
| # applied to one image. | |
| "A String", | |
| ], | |
| "name": "A String", # Name of the artifact. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. | |
| # | |
| # This field is deprecated in favor of the plural `names` field; it continues | |
| # to exist here to allow existing BuildProvenance serialized to json in | |
| # google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_bytes to | |
| # deserialize back into proto. | |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a | |
| # container. | |
| }, | |
| ], | |
| }, | |
| "provenanceBytes": "A String", # Serialized JSON representation of the provenance, used in generating the | |
| # `BuildSignature` in the corresponding Result. After verifying the | |
| # signature, `provenance_bytes` can be unmarshalled and compared to the | |
| # provenance to confirm that it is unchanged. A base64-encoded string | |
| # representation of the provenance bytes is used for the signature in order | |
| # to interoperate with openssl which expects this format for signature | |
| # verification. | |
| # | |
| # The serialized form is captured both to avoid ambiguity in how the | |
| # provenance is marshalled to json as well to prevent incompatibilities with | |
| # future changes. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which of the `Occurrence` details are | |
| # specified. This field can be used as a filter in list requests. | |
| "resource": { # # | |
| # The resource for which the `Occurrence` applies. | |
| # Resource is an entity that can have metadata. E.g., a Docker image. | |
| "uri": "A String", # The unique URI of the resource. E.g., | |
| # "https://gcr.io/project/image@sha256:foo" for a Docker image. | |
| "name": "A String", # The name of the resource. E.g., the name of a Docker image - "Debian". | |
| "contentHash": { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| }, | |
| "resourceUrl": "A String", # The unique URL of the image or the container for which the `Occurrence` | |
| # applies. For example, https://gcr.io/project/image@sha256:foo This field | |
| # can be used as a filter in list requests. | |
| "name": "A String", # Output only. The name of the `Occurrence` in the form | |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" | |
| "attestation": { # Occurrence that represents a single "attestation". The authenticity of an # Describes an attestation of an artifact. | |
| # Attestation can be verified using the attached signature. If the verifier | |
| # trusts the public key of the signer, then verifying the signature is | |
| # sufficient to establish trust. In this circumstance, the | |
| # AttestationAuthority to which this Attestation is attached is primarily | |
| # useful for look-up (how to find this Attestation if you already know the | |
| # Authority and artifact to be verified) and intent (which authority was this | |
| # attestation intended to sign for). | |
| "pgpSignedAttestation": { # An attestation wrapper with a PGP-compatible signature. | |
| # This message only supports `ATTACHED` signatures, where the payload that is | |
| # signed is included alongside the signature itself in the same file. | |
| "signature": "A String", # The raw content of the signature, as output by GNU Privacy Guard (GPG) or | |
| # equivalent. Since this message only supports attached signatures, the | |
| # payload that was signed must be attached. While the signature format | |
| # supported is dependent on the verification implementation, currently only | |
| # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than | |
| # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor | |
| # --output=signature.gpg payload.json` will create the signature content | |
| # expected in this field in `signature.gpg` for the `payload.json` | |
| # attestation payload. | |
| "pgpKeyId": "A String", # The cryptographic fingerprint of the key used to generate the signature, | |
| # as output by, e.g. `gpg --list-keys`. This should be the version 4, full | |
| # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See | |
| # https://tools.ietf.org/html/rfc4880#section-12.2 for details. | |
| # Implementations may choose to acknowledge "LONG", "SHORT", or other | |
| # abbreviated key IDs, but only the full fingerprint is guaranteed to work. | |
| # In gpg, the full fingerprint can be retrieved from the `fpr` field | |
| # returned when calling --list-keys with --with-colons. For example: | |
| # ``` | |
| # gpg --with-colons --with-fingerprint --force-v4-certs \ | |
| # --list-keys attester@example.com | |
| # tru::1:1513631572:0:3:1:5 | |
| # pub:...<SNIP>... | |
| # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: | |
| # ``` | |
| # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. | |
| "contentType": "A String", # Type (for example schema) of the attestation payload that was signed. | |
| # The verifier must ensure that the provided type is one that the verifier | |
| # supports, and that the attestation payload is a valid instantiation of that | |
| # type (for example by validating a JSON schema). | |
| }, | |
| }, | |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. | |
| # a system. | |
| "name": "A String", # Output only. The name of the installed package. | |
| "location": [ # All of the places within the filesystem versions of this package | |
| # have been found. | |
| { # An occurrence of a particular package installation found within a | |
| # system's filesystem. | |
| # e.g. glibc was found in /var/lib/dpkg/status | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "version": { # Version contains structured information about the version of the package. # The version installed at this location. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "path": "A String", # The path from which we gathered that this package/version is installed. | |
| }, | |
| ], | |
| }, | |
| "upgrade": { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade. | |
| # specific upgrade. This presence is supplied via local sources (i.e. it is | |
| # present in the mirror and the running system has noticed its availability). | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| "parsedVersion": { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distribution": { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system | |
| # for the resource_url. This allows efficient filtering, as well as | |
| # making it easier to use the occurrence. | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| }, | |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. | |
| "operation": { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan. | |
| # This field is deprecated, do not use. | |
| # network API call. | |
| "response": { # The normal response of the operation in case of success. If the original | |
| # method returns no data on success, such as `Delete`, the response is | |
| # `google.protobuf.Empty`. If the original method is standard | |
| # `Get`/`Create`/`Update`, the response should be the resource. For other | |
| # methods, the response should have the type `XxxResponse`, where `Xxx` | |
| # is the original method name. For example, if the original method name | |
| # is `TakeSnapshot()`, the inferred response type is | |
| # `TakeSnapshotResponse`. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "name": "A String", # The server-assigned name, which is only unique within the same service that | |
| # originally returns it. If you use the default HTTP mapping, the | |
| # `name` should be a resource name ending with `operations/{unique_id}`. | |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "metadata": { # Service-specific metadata associated with the operation. It typically | |
| # contains progress information and common metadata such as create time. | |
| # Some services might not provide such metadata. Any method that returns a | |
| # long-running operation should document the metadata type, if any. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. | |
| # If `true`, the operation is completed, and either `error` or `response` is | |
| # available. | |
| }, | |
| "analysisStatus": "A String", # The status of discovery for the resource. | |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. | |
| "cpe": "A String", # The CPE of the resource being scanned. | |
| "analysisStatusError": { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under | |
| # details to show to the user. The LocalizedMessage output only and | |
| # populated by the API. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| }, | |
| "noteName": "A String", # An analysis note associated with this image, in the form | |
| # "providers/{provider_id}/notes/{NOTE_ID}" | |
| # This field can be used as a filter in list requests. | |
| "deployment": { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime. | |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. | |
| "address": "A String", # Address of the runtime element hosting this deployment. | |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the | |
| # deployable field with the same name. | |
| "A String", | |
| ], | |
| "config": "A String", # Configuration used to create this deployment. | |
| "userEmail": "A String", # Identity of the user that triggered this deployment. | |
| "undeployTime": "A String", # End of the lifetime of this deployment. | |
| "platform": "A String", # Platform hosting this deployment. | |
| }, | |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. | |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. | |
| # to fix it. | |
| "effectiveSeverity": "A String", # The distro assigned severity for this vulnerability when that is | |
| # available and note provider assigned severity when distro has not yet | |
| # assigned a severity for this vulnerability. | |
| "packageIssue": [ # The set of affected locations and their fixes (if available) within | |
| # the associated resource. | |
| { # This message wraps a location affected by a vulnerability and its | |
| # associated fix (if one is available). | |
| "severityName": "A String", | |
| "affectedLocation": { # The location of the vulnerability # The location of the vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| }, | |
| ], | |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. | |
| "cvssScore": 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a | |
| # scale of 0-10 where 0 indicates low severity and 10 indicates high | |
| # severity. | |
| "type": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| }, | |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. | |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` | |
| "derivedImage": { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis | |
| # in the associated note. | |
| # DockerImage relationship. This image would be produced from a Dockerfile | |
| # with FROM <DockerImage.Basis in attached Note>. | |
| "distance": 42, # Output only. The number of layers by which this image differs from the | |
| # associated image basis. | |
| "baseResourceUrl": "A String", # Output only. This contains the base image URL for the derived image | |
| # occurrence. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "layerInfo": [ # This contains layer-specific metadata, if populated it has length | |
| # "distance" and is ordered with [distance] being the layer immediately | |
| # following the base image and [1] being the final layer. | |
| { # Layer holds metadata specific to a layer of a Docker image. | |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. | |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. | |
| }, | |
| ], | |
| }, | |
| } | |
| updateMask: string, The fields to update. | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # `Occurrence` includes information about analysis occurrences for an image. | |
| "buildDetails": { # Message encapsulating build provenance details. # Build details for a verifiable build. | |
| "provenance": { # Provenance of a build. Contains all information needed to verify the full # The actual provenance | |
| # details about the build from source to completion. | |
| "id": "A String", # Unique identifier of the build. | |
| "buildOptions": { # Special options applied to this build. This is a catch-all field where | |
| # build providers can enter any desired additional details. | |
| "a_key": "A String", | |
| }, | |
| "startTime": "A String", # Time at which execution of the build was started. | |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. | |
| "createTime": "A String", # Time at which the build was created. | |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. | |
| "repoSource": { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo. | |
| # Repository. | |
| "projectId": "A String", # ID of the project that owns the repo. | |
| "repoName": "A String", # Name of the repo. | |
| "branchName": "A String", # Name of the branch to build. | |
| "tagName": "A String", # Name of the tag to build. | |
| "commitSha": "A String", # Explicit commit SHA to build. | |
| }, | |
| "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud | |
| # Storage. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "fileHashes": { # Hash(es) of the build source, which can be used to verify that the original | |
| # source integrity was maintained in the build. | |
| # | |
| # The keys to this map are file paths used as build source and the values | |
| # contain the hash values for those files. | |
| # | |
| # If the build source came in a single package such as a gzipped tarfile | |
| # (.tar.gz), the FileHash will be for the single path to that file. | |
| "a_key": { # Container message for hashes of byte content of files, used in Source | |
| # messages to verify integrity of source input to the build. | |
| "fileHash": [ # Collection of file hashes. | |
| { # Container message for hash values. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| ], | |
| }, | |
| }, | |
| "artifactStorageSource": { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this | |
| # location. | |
| # Google Cloud Storage. | |
| "generation": "A String", # Google Cloud Storage generation for the object. | |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name | |
| # Requirements] | |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). | |
| "object": "A String", # Google Cloud Storage object containing source. | |
| }, | |
| "additionalContexts": [ # If provided, some of the source code used for the build may be found in | |
| # these locations, in the case where the source repository had multiple | |
| # remotes or submodules. This list will not include the context specified in | |
| # the context field. | |
| { # A SourceContext is a reference to a tree of files. A SourceContext together | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| ], | |
| "context": { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location. | |
| # with a path point to a unique revision of a single file or directory. | |
| "labels": { # Labels with user defined metadata. | |
| "a_key": "A String", | |
| }, | |
| "git": { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub). | |
| # repository (e.g., GitHub). | |
| "revisionId": "A String", # Required. Git commit hash. | |
| "url": "A String", # Git repository URL. | |
| }, | |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. | |
| "gerritProject": "A String", # The full project name within the host. Projects may be nested, so | |
| # "project/subproject" is a valid project name. The "repo name" is | |
| # the hostURI/project. | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "hostUri": "A String", # The URI of a running Gerrit instance. | |
| "revisionId": "A String", # A revision (commit) ID. | |
| }, | |
| "cloudRepo": { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo. | |
| # Source Repo. | |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. | |
| "uid": "A String", # A server-assigned, globally unique identifier. | |
| "projectRepoId": { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name. | |
| # winged-cargo-31) and a repo name within that project. | |
| "projectId": "A String", # The ID of the project. | |
| "repoName": "A String", # The name of the repo. Leave empty for the default repo. | |
| }, | |
| }, | |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. | |
| "name": "A String", # The alias name. | |
| "kind": "A String", # The alias kind. | |
| }, | |
| "revisionId": "A String", # A revision ID. | |
| }, | |
| }, | |
| }, | |
| "projectId": "A String", # ID of the project. | |
| "finishTime": "A String", # Time at which execution of the build was finished. | |
| "creator": "A String", # E-mail address of the user who initiated this build. Note that this was the | |
| # user's e-mail address at the time the build was initiated; this address may | |
| # not represent the same end-user for all time. | |
| "logsBucket": "A String", # Google Cloud Storage bucket where logs were written. | |
| "builderVersion": "A String", # Version string of the builder at the time this build was executed. | |
| "commands": [ # Commands requested by the build. | |
| { # Command describes a step performed as part of the build pipeline. | |
| "name": "A String", # Name of the command, as presented on the command line, or if the command is | |
| # packaged as a Docker container, as presented to `docker pull`. | |
| "id": "A String", # Optional unique identifier for this Command, used in wait_for to reference | |
| # this Command as a dependency. | |
| "dir": "A String", # Working directory (relative to project source root) used when running | |
| # this Command. | |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. | |
| "A String", | |
| ], | |
| "env": [ # Environment variables set before running this Command. | |
| "A String", | |
| ], | |
| "args": [ # Command-line arguments used when executing this Command. | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| "builtArtifacts": [ # Output of the build. | |
| { # Artifact describes a build product. | |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest | |
| # like gcr.io/projectID/imagename@sha256:123456 | |
| "names": [ # Related artifact names. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. Note that a | |
| # single Artifact ID can have multiple names, for example if two tags are | |
| # applied to one image. | |
| "A String", | |
| ], | |
| "name": "A String", # Name of the artifact. This may be the path to a binary or jar file, or in | |
| # the case of a container build, the name used to push the container image to | |
| # Google Container Registry, as presented to `docker push`. | |
| # | |
| # This field is deprecated in favor of the plural `names` field; it continues | |
| # to exist here to allow existing BuildProvenance serialized to json in | |
| # google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_bytes to | |
| # deserialize back into proto. | |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a | |
| # container. | |
| }, | |
| ], | |
| }, | |
| "provenanceBytes": "A String", # Serialized JSON representation of the provenance, used in generating the | |
| # `BuildSignature` in the corresponding Result. After verifying the | |
| # signature, `provenance_bytes` can be unmarshalled and compared to the | |
| # provenance to confirm that it is unchanged. A base64-encoded string | |
| # representation of the provenance bytes is used for the signature in order | |
| # to interoperate with openssl which expects this format for signature | |
| # verification. | |
| # | |
| # The serialized form is captured both to avoid ambiguity in how the | |
| # provenance is marshalled to json as well to prevent incompatibilities with | |
| # future changes. | |
| }, | |
| "kind": "A String", # Output only. This explicitly denotes which of the `Occurrence` details are | |
| # specified. This field can be used as a filter in list requests. | |
| "resource": { # # | |
| # The resource for which the `Occurrence` applies. | |
| # Resource is an entity that can have metadata. E.g., a Docker image. | |
| "uri": "A String", # The unique URI of the resource. E.g., | |
| # "https://gcr.io/project/image@sha256:foo" for a Docker image. | |
| "name": "A String", # The name of the resource. E.g., the name of a Docker image - "Debian". | |
| "contentHash": { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest. | |
| "type": "A String", # The type of hash that was performed. | |
| "value": "A String", # The hash value. | |
| }, | |
| }, | |
| "resourceUrl": "A String", # The unique URL of the image or the container for which the `Occurrence` | |
| # applies. For example, https://gcr.io/project/image@sha256:foo This field | |
| # can be used as a filter in list requests. | |
| "name": "A String", # Output only. The name of the `Occurrence` in the form | |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" | |
| "attestation": { # Occurrence that represents a single "attestation". The authenticity of an # Describes an attestation of an artifact. | |
| # Attestation can be verified using the attached signature. If the verifier | |
| # trusts the public key of the signer, then verifying the signature is | |
| # sufficient to establish trust. In this circumstance, the | |
| # AttestationAuthority to which this Attestation is attached is primarily | |
| # useful for look-up (how to find this Attestation if you already know the | |
| # Authority and artifact to be verified) and intent (which authority was this | |
| # attestation intended to sign for). | |
| "pgpSignedAttestation": { # An attestation wrapper with a PGP-compatible signature. | |
| # This message only supports `ATTACHED` signatures, where the payload that is | |
| # signed is included alongside the signature itself in the same file. | |
| "signature": "A String", # The raw content of the signature, as output by GNU Privacy Guard (GPG) or | |
| # equivalent. Since this message only supports attached signatures, the | |
| # payload that was signed must be attached. While the signature format | |
| # supported is dependent on the verification implementation, currently only | |
| # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than | |
| # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor | |
| # --output=signature.gpg payload.json` will create the signature content | |
| # expected in this field in `signature.gpg` for the `payload.json` | |
| # attestation payload. | |
| "pgpKeyId": "A String", # The cryptographic fingerprint of the key used to generate the signature, | |
| # as output by, e.g. `gpg --list-keys`. This should be the version 4, full | |
| # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See | |
| # https://tools.ietf.org/html/rfc4880#section-12.2 for details. | |
| # Implementations may choose to acknowledge "LONG", "SHORT", or other | |
| # abbreviated key IDs, but only the full fingerprint is guaranteed to work. | |
| # In gpg, the full fingerprint can be retrieved from the `fpr` field | |
| # returned when calling --list-keys with --with-colons. For example: | |
| # ``` | |
| # gpg --with-colons --with-fingerprint --force-v4-certs \ | |
| # --list-keys attester@example.com | |
| # tru::1:1513631572:0:3:1:5 | |
| # pub:...<SNIP>... | |
| # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: | |
| # ``` | |
| # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. | |
| "contentType": "A String", # Type (for example schema) of the attestation payload that was signed. | |
| # The verifier must ensure that the provided type is one that the verifier | |
| # supports, and that the attestation payload is a valid instantiation of that | |
| # type (for example by validating a JSON schema). | |
| }, | |
| }, | |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. | |
| # a system. | |
| "name": "A String", # Output only. The name of the installed package. | |
| "location": [ # All of the places within the filesystem versions of this package | |
| # have been found. | |
| { # An occurrence of a particular package installation found within a | |
| # system's filesystem. | |
| # e.g. glibc was found in /var/lib/dpkg/status | |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) | |
| # denoting the package manager version distributing a package. | |
| "version": { # Version contains structured information about the version of the package. # The version installed at this location. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "path": "A String", # The path from which we gathered that this package/version is installed. | |
| }, | |
| ], | |
| }, | |
| "upgrade": { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade. | |
| # specific upgrade. This presence is supplied via local sources (i.e. it is | |
| # present in the mirror and the running system has noticed its availability). | |
| "package": "A String", # Required - The package this Upgrade is for. | |
| "parsedVersion": { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "distribution": { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system | |
| # for the resource_url. This allows efficient filtering, as well as | |
| # making it easier to use the occurrence. | |
| # operating system (CPE). Some distributions have additional metadata around | |
| # updates, classifying them into various categories and severities. | |
| "classification": "A String", # The operating system classification of this Upgrade, as specified by the | |
| # upstream operating system upgrade feed. | |
| "severity": "A String", # The severity as specified by the upstream operating system. | |
| "cpeUri": "A String", # Required - The specific operating system this metadata applies to. See | |
| # https://cpe.mitre.org/specification/. | |
| "cve": [ # The cve that would be resolved by this upgrade. | |
| "A String", | |
| ], | |
| }, | |
| }, | |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. | |
| "operation": { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan. | |
| # This field is deprecated, do not use. | |
| # network API call. | |
| "response": { # The normal response of the operation in case of success. If the original | |
| # method returns no data on success, such as `Delete`, the response is | |
| # `google.protobuf.Empty`. If the original method is standard | |
| # `Get`/`Create`/`Update`, the response should be the resource. For other | |
| # methods, the response should have the type `XxxResponse`, where `Xxx` | |
| # is the original method name. For example, if the original method name | |
| # is `TakeSnapshot()`, the inferred response type is | |
| # `TakeSnapshotResponse`. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "name": "A String", # The server-assigned name, which is only unique within the same service that | |
| # originally returns it. If you use the default HTTP mapping, the | |
| # `name` should be a resource name ending with `operations/{unique_id}`. | |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "metadata": { # Service-specific metadata associated with the operation. It typically | |
| # contains progress information and common metadata such as create time. | |
| # Some services might not provide such metadata. Any method that returns a | |
| # long-running operation should document the metadata type, if any. | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. | |
| # If `true`, the operation is completed, and either `error` or `response` is | |
| # available. | |
| }, | |
| "analysisStatus": "A String", # The status of discovery for the resource. | |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. | |
| "cpe": "A String", # The CPE of the resource being scanned. | |
| "analysisStatusError": { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under | |
| # details to show to the user. The LocalizedMessage output only and | |
| # populated by the API. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| }, | |
| "noteName": "A String", # An analysis note associated with this image, in the form | |
| # "providers/{provider_id}/notes/{NOTE_ID}" | |
| # This field can be used as a filter in list requests. | |
| "deployment": { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime. | |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. | |
| "address": "A String", # Address of the runtime element hosting this deployment. | |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the | |
| # deployable field with the same name. | |
| "A String", | |
| ], | |
| "config": "A String", # Configuration used to create this deployment. | |
| "userEmail": "A String", # Identity of the user that triggered this deployment. | |
| "undeployTime": "A String", # End of the lifetime of this deployment. | |
| "platform": "A String", # Platform hosting this deployment. | |
| }, | |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. | |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. | |
| # to fix it. | |
| "effectiveSeverity": "A String", # The distro assigned severity for this vulnerability when that is | |
| # available and note provider assigned severity when distro has not yet | |
| # assigned a severity for this vulnerability. | |
| "packageIssue": [ # The set of affected locations and their fixes (if available) within | |
| # the associated resource. | |
| { # This message wraps a location affected by a vulnerability and its | |
| # associated fix (if one is available). | |
| "severityName": "A String", | |
| "affectedLocation": { # The location of the vulnerability # The location of the vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. | |
| "version": { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a | |
| # filter in list requests. | |
| # For a discussion of this in Debian/Ubuntu: | |
| # http://serverfault.com/questions/604541/debian-packages-version-convention | |
| # For a discussion of this in Redhat/Fedora/Centos: | |
| # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ | |
| "name": "A String", # The main part of the version name. | |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. | |
| # If kind is not NORMAL, then the other fields are ignored. | |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. | |
| "revision": "A String", # The iteration of the package build from the above version. | |
| }, | |
| "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) | |
| # format. Examples include distro or storage location for vulnerable jar. | |
| # This field can be used as a filter in list requests. | |
| "package": "A String", # The package being described. | |
| }, | |
| }, | |
| ], | |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. | |
| "cvssScore": 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a | |
| # scale of 0-10 where 0 indicates low severity and 10 indicates high | |
| # severity. | |
| "type": "A String", # The type of package; whether native or non native(ruby gems, | |
| # node.js packages etc) | |
| }, | |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. | |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` | |
| "derivedImage": { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis | |
| # in the associated note. | |
| # DockerImage relationship. This image would be produced from a Dockerfile | |
| # with FROM <DockerImage.Basis in attached Note>. | |
| "distance": 42, # Output only. The number of layers by which this image differs from the | |
| # associated image basis. | |
| "baseResourceUrl": "A String", # Output only. This contains the base image URL for the derived image | |
| # occurrence. | |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. | |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. | |
| "A String", | |
| ], | |
| "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 | |
| # representation. | |
| # This field can be used as a filter in list requests. | |
| "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: | |
| # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) | |
| # Only the name of the final blob is kept. | |
| # This field can be used as a filter in list requests. | |
| }, | |
| "layerInfo": [ # This contains layer-specific metadata, if populated it has length | |
| # "distance" and is ordered with [distance] being the layer immediately | |
| # following the base image and [1] being the final layer. | |
| { # Layer holds metadata specific to a layer of a Docker image. | |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. | |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. | |
| }, | |
| ], | |
| }, | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</code> | |
| <pre>Sets the access control policy on the specified `Note` or `Occurrence`. | |
| Requires `containeranalysis.notes.setIamPolicy` or | |
| `containeranalysis.occurrences.setIamPolicy` permission if the resource is | |
| a `Note` or an `Occurrence`, respectively. | |
| Attempting to call this method without these permissions will result in a ` | |
| `PERMISSION_DENIED` error. | |
| Attempting to call this method on a non-existent resource will result in a | |
| `NOT_FOUND` error if the user has `containeranalysis.notes.list` permission | |
| on a `Note` or `containeranalysis.occurrences.list` on an `Occurrence`, or | |
| a `PERMISSION_DENIED` error otherwise. The resource takes the following | |
| formats: `projects/{projectid}/occurrences/{occurrenceid}` for occurrences | |
| and projects/{projectid}/notes/{noteid} for notes | |
| Args: | |
| resource: string, REQUIRED: The resource for which the policy is being specified. | |
| See the operation documentation for the appropriate value for this field. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # Request message for `SetIamPolicy` method. | |
| "policy": { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of | |
| # the policy is limited to a few 10s of KB. An empty policy is a | |
| # valid policy but certain Cloud Platform services (such as Projects) | |
| # might reject them. | |
| # controls for Google Cloud resources. | |
| # | |
| # | |
| # A `Policy` is a collection of `bindings`. A `binding` binds one or more | |
| # `members` to a single `role`. Members can be user accounts, service accounts, | |
| # Google groups, and domains (such as G Suite). A `role` is a named list of | |
| # permissions; each `role` can be an IAM predefined role or a user-created | |
| # custom role. | |
| # | |
| # For some types of Google Cloud resources, a `binding` can also specify a | |
| # `condition`, which is a logical expression that allows access to a resource | |
| # only if the expression evaluates to `true`. A condition can add constraints | |
| # based on attributes of the request, the resource, or both. To learn which | |
| # resources support conditions in their IAM policies, see the | |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| # | |
| # **JSON example:** | |
| # | |
| # { | |
| # "bindings": [ | |
| # { | |
| # "role": "roles/resourcemanager.organizationAdmin", | |
| # "members": [ | |
| # "user:mike@example.com", | |
| # "group:admins@example.com", | |
| # "domain:google.com", | |
| # "serviceAccount:my-project-id@appspot.gserviceaccount.com" | |
| # ] | |
| # }, | |
| # { | |
| # "role": "roles/resourcemanager.organizationViewer", | |
| # "members": [ | |
| # "user:eve@example.com" | |
| # ], | |
| # "condition": { | |
| # "title": "expirable access", | |
| # "description": "Does not grant access after Sep 2020", | |
| # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", | |
| # } | |
| # } | |
| # ], | |
| # "etag": "BwWWja0YfJA=", | |
| # "version": 3 | |
| # } | |
| # | |
| # **YAML example:** | |
| # | |
| # bindings: | |
| # - members: | |
| # - user:mike@example.com | |
| # - group:admins@example.com | |
| # - domain:google.com | |
| # - serviceAccount:my-project-id@appspot.gserviceaccount.com | |
| # role: roles/resourcemanager.organizationAdmin | |
| # - members: | |
| # - user:eve@example.com | |
| # role: roles/resourcemanager.organizationViewer | |
| # condition: | |
| # title: expirable access | |
| # description: Does not grant access after Sep 2020 | |
| # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') | |
| # - etag: BwWWja0YfJA= | |
| # - version: 3 | |
| # | |
| # For a description of IAM and its features, see the | |
| # [IAM documentation](https://cloud.google.com/iam/docs/). | |
| "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help | |
| # prevent simultaneous updates of a policy from overwriting each other. | |
| # It is strongly suggested that systems make use of the `etag` in the | |
| # read-modify-write cycle to perform policy updates in order to avoid race | |
| # conditions: An `etag` is returned in the response to `getIamPolicy`, and | |
| # systems are expected to put that etag in the request to `setIamPolicy` to | |
| # ensure that their change will be applied to the same version of the policy. | |
| # | |
| # **Important:** If you use IAM Conditions, you must include the `etag` field | |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| # you to overwrite a version `3` policy with a version `1` policy, and all of | |
| # the conditions in the version `3` policy are lost. | |
| "version": 42, # Specifies the format of the policy. | |
| # | |
| # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value | |
| # are rejected. | |
| # | |
| # Any operation that affects conditional role bindings must specify version | |
| # `3`. This requirement applies to the following operations: | |
| # | |
| # * Getting a policy that includes a conditional role binding | |
| # * Adding a conditional role binding to a policy | |
| # * Changing a conditional role binding in a policy | |
| # * Removing any role binding, with or without a condition, from a policy | |
| # that includes conditions | |
| # | |
| # **Important:** If you use IAM Conditions, you must include the `etag` field | |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| # you to overwrite a version `3` policy with a version `1` policy, and all of | |
| # the conditions in the version `3` policy are lost. | |
| # | |
| # If a policy does not include any conditions, operations on that policy may | |
| # specify any valid version or leave the field unset. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a | |
| # `condition` that determines how and when the `bindings` are applied. Each | |
| # of the `bindings` must contain at least one member. | |
| { # Associates `members` with a `role`. | |
| "role": "A String", # Role that is assigned to `members`. | |
| # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. | |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding. | |
| # | |
| # If the condition evaluates to `true`, then this binding applies to the | |
| # current request. | |
| # | |
| # If the condition evaluates to `false`, then this binding does not apply to | |
| # the current request. However, a different role binding might grant the same | |
| # role to one or more of the members in this binding. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM | |
| # documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| # syntax. CEL is a C-like expression language. The syntax and semantics of CEL | |
| # are documented at https://github.com/google/cel-spec. | |
| # | |
| # Example (Comparison): | |
| # | |
| # title: "Summary size limit" | |
| # description: "Determines if a summary is less than 100 chars" | |
| # expression: "document.summary.size() < 100" | |
| # | |
| # Example (Equality): | |
| # | |
| # title: "Requestor is owner" | |
| # description: "Determines if requestor is the document owner" | |
| # expression: "document.owner == request.auth.claims.email" | |
| # | |
| # Example (Logic): | |
| # | |
| # title: "Public documents" | |
| # description: "Determine whether the document should be publicly visible" | |
| # expression: "document.type != 'private' && document.type != 'internal'" | |
| # | |
| # Example (Data Manipulation): | |
| # | |
| # title: "Notification string" | |
| # description: "Create a notification string with a timestamp." | |
| # expression: "'New message received at ' + string(document.create_time)" | |
| # | |
| # The exact variables and functions that may be referenced within an expression | |
| # are determined by the service that evaluates it. See the service | |
| # documentation for additional information. | |
| "title": "A String", # Optional. Title for the expression, i.e. a short string describing | |
| # its purpose. This can be used e.g. in UIs which allow to enter the | |
| # expression. | |
| "location": "A String", # Optional. String indicating the location of the expression for error | |
| # reporting, e.g. a file name and a position in the file. | |
| "description": "A String", # Optional. Description of the expression. This is a longer text which | |
| # describes the expression, e.g. when hovered over it in a UI. | |
| "expression": "A String", # Textual representation of an expression in Common Expression Language | |
| # syntax. | |
| }, | |
| "members": [ # Specifies the identities requesting access for a Cloud Platform resource. | |
| # `members` can have the following values: | |
| # | |
| # * `allUsers`: A special identifier that represents anyone who is | |
| # on the internet; with or without a Google account. | |
| # | |
| # * `allAuthenticatedUsers`: A special identifier that represents anyone | |
| # who is authenticated with a Google account or a service account. | |
| # | |
| # * `user:{emailid}`: An email address that represents a specific Google | |
| # account. For example, `alice@example.com` . | |
| # | |
| # | |
| # * `serviceAccount:{emailid}`: An email address that represents a service | |
| # account. For example, `my-other-app@appspot.gserviceaccount.com`. | |
| # | |
| # * `group:{emailid}`: An email address that represents a Google group. | |
| # For example, `admins@example.com`. | |
| # | |
| # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique | |
| # identifier) representing a user that has been recently deleted. For | |
| # example, `alice@example.com?uid=123456789012345678901`. If the user is | |
| # recovered, this value reverts to `user:{emailid}` and the recovered user | |
| # retains the role in the binding. | |
| # | |
| # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus | |
| # unique identifier) representing a service account that has been recently | |
| # deleted. For example, | |
| # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. | |
| # If the service account is undeleted, this value reverts to | |
| # `serviceAccount:{emailid}` and the undeleted service account retains the | |
| # role in the binding. | |
| # | |
| # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique | |
| # identifier) representing a Google group that has been recently | |
| # deleted. For example, `admins@example.com?uid=123456789012345678901`. If | |
| # the group is recovered, this value reverts to `group:{emailid}` and the | |
| # recovered group retains the role in the binding. | |
| # | |
| # | |
| # * `domain:{domain}`: The G Suite domain (primary) that represents all the | |
| # users of that domain. For example, `google.com` or `example.com`. | |
| # | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| }, | |
| } | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # An Identity and Access Management (IAM) policy, which specifies access | |
| # controls for Google Cloud resources. | |
| # | |
| # | |
| # A `Policy` is a collection of `bindings`. A `binding` binds one or more | |
| # `members` to a single `role`. Members can be user accounts, service accounts, | |
| # Google groups, and domains (such as G Suite). A `role` is a named list of | |
| # permissions; each `role` can be an IAM predefined role or a user-created | |
| # custom role. | |
| # | |
| # For some types of Google Cloud resources, a `binding` can also specify a | |
| # `condition`, which is a logical expression that allows access to a resource | |
| # only if the expression evaluates to `true`. A condition can add constraints | |
| # based on attributes of the request, the resource, or both. To learn which | |
| # resources support conditions in their IAM policies, see the | |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| # | |
| # **JSON example:** | |
| # | |
| # { | |
| # "bindings": [ | |
| # { | |
| # "role": "roles/resourcemanager.organizationAdmin", | |
| # "members": [ | |
| # "user:mike@example.com", | |
| # "group:admins@example.com", | |
| # "domain:google.com", | |
| # "serviceAccount:my-project-id@appspot.gserviceaccount.com" | |
| # ] | |
| # }, | |
| # { | |
| # "role": "roles/resourcemanager.organizationViewer", | |
| # "members": [ | |
| # "user:eve@example.com" | |
| # ], | |
| # "condition": { | |
| # "title": "expirable access", | |
| # "description": "Does not grant access after Sep 2020", | |
| # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", | |
| # } | |
| # } | |
| # ], | |
| # "etag": "BwWWja0YfJA=", | |
| # "version": 3 | |
| # } | |
| # | |
| # **YAML example:** | |
| # | |
| # bindings: | |
| # - members: | |
| # - user:mike@example.com | |
| # - group:admins@example.com | |
| # - domain:google.com | |
| # - serviceAccount:my-project-id@appspot.gserviceaccount.com | |
| # role: roles/resourcemanager.organizationAdmin | |
| # - members: | |
| # - user:eve@example.com | |
| # role: roles/resourcemanager.organizationViewer | |
| # condition: | |
| # title: expirable access | |
| # description: Does not grant access after Sep 2020 | |
| # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') | |
| # - etag: BwWWja0YfJA= | |
| # - version: 3 | |
| # | |
| # For a description of IAM and its features, see the | |
| # [IAM documentation](https://cloud.google.com/iam/docs/). | |
| "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help | |
| # prevent simultaneous updates of a policy from overwriting each other. | |
| # It is strongly suggested that systems make use of the `etag` in the | |
| # read-modify-write cycle to perform policy updates in order to avoid race | |
| # conditions: An `etag` is returned in the response to `getIamPolicy`, and | |
| # systems are expected to put that etag in the request to `setIamPolicy` to | |
| # ensure that their change will be applied to the same version of the policy. | |
| # | |
| # **Important:** If you use IAM Conditions, you must include the `etag` field | |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| # you to overwrite a version `3` policy with a version `1` policy, and all of | |
| # the conditions in the version `3` policy are lost. | |
| "version": 42, # Specifies the format of the policy. | |
| # | |
| # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value | |
| # are rejected. | |
| # | |
| # Any operation that affects conditional role bindings must specify version | |
| # `3`. This requirement applies to the following operations: | |
| # | |
| # * Getting a policy that includes a conditional role binding | |
| # * Adding a conditional role binding to a policy | |
| # * Changing a conditional role binding in a policy | |
| # * Removing any role binding, with or without a condition, from a policy | |
| # that includes conditions | |
| # | |
| # **Important:** If you use IAM Conditions, you must include the `etag` field | |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| # you to overwrite a version `3` policy with a version `1` policy, and all of | |
| # the conditions in the version `3` policy are lost. | |
| # | |
| # If a policy does not include any conditions, operations on that policy may | |
| # specify any valid version or leave the field unset. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a | |
| # `condition` that determines how and when the `bindings` are applied. Each | |
| # of the `bindings` must contain at least one member. | |
| { # Associates `members` with a `role`. | |
| "role": "A String", # Role that is assigned to `members`. | |
| # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. | |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding. | |
| # | |
| # If the condition evaluates to `true`, then this binding applies to the | |
| # current request. | |
| # | |
| # If the condition evaluates to `false`, then this binding does not apply to | |
| # the current request. However, a different role binding might grant the same | |
| # role to one or more of the members in this binding. | |
| # | |
| # To learn which resources support conditions in their IAM policies, see the | |
| # [IAM | |
| # documentation](https://cloud.google.com/iam/help/conditions/resource-policies). | |
| # syntax. CEL is a C-like expression language. The syntax and semantics of CEL | |
| # are documented at https://github.com/google/cel-spec. | |
| # | |
| # Example (Comparison): | |
| # | |
| # title: "Summary size limit" | |
| # description: "Determines if a summary is less than 100 chars" | |
| # expression: "document.summary.size() < 100" | |
| # | |
| # Example (Equality): | |
| # | |
| # title: "Requestor is owner" | |
| # description: "Determines if requestor is the document owner" | |
| # expression: "document.owner == request.auth.claims.email" | |
| # | |
| # Example (Logic): | |
| # | |
| # title: "Public documents" | |
| # description: "Determine whether the document should be publicly visible" | |
| # expression: "document.type != 'private' && document.type != 'internal'" | |
| # | |
| # Example (Data Manipulation): | |
| # | |
| # title: "Notification string" | |
| # description: "Create a notification string with a timestamp." | |
| # expression: "'New message received at ' + string(document.create_time)" | |
| # | |
| # The exact variables and functions that may be referenced within an expression | |
| # are determined by the service that evaluates it. See the service | |
| # documentation for additional information. | |
| "title": "A String", # Optional. Title for the expression, i.e. a short string describing | |
| # its purpose. This can be used e.g. in UIs which allow to enter the | |
| # expression. | |
| "location": "A String", # Optional. String indicating the location of the expression for error | |
| # reporting, e.g. a file name and a position in the file. | |
| "description": "A String", # Optional. Description of the expression. This is a longer text which | |
| # describes the expression, e.g. when hovered over it in a UI. | |
| "expression": "A String", # Textual representation of an expression in Common Expression Language | |
| # syntax. | |
| }, | |
| "members": [ # Specifies the identities requesting access for a Cloud Platform resource. | |
| # `members` can have the following values: | |
| # | |
| # * `allUsers`: A special identifier that represents anyone who is | |
| # on the internet; with or without a Google account. | |
| # | |
| # * `allAuthenticatedUsers`: A special identifier that represents anyone | |
| # who is authenticated with a Google account or a service account. | |
| # | |
| # * `user:{emailid}`: An email address that represents a specific Google | |
| # account. For example, `alice@example.com` . | |
| # | |
| # | |
| # * `serviceAccount:{emailid}`: An email address that represents a service | |
| # account. For example, `my-other-app@appspot.gserviceaccount.com`. | |
| # | |
| # * `group:{emailid}`: An email address that represents a Google group. | |
| # For example, `admins@example.com`. | |
| # | |
| # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique | |
| # identifier) representing a user that has been recently deleted. For | |
| # example, `alice@example.com?uid=123456789012345678901`. If the user is | |
| # recovered, this value reverts to `user:{emailid}` and the recovered user | |
| # retains the role in the binding. | |
| # | |
| # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus | |
| # unique identifier) representing a service account that has been recently | |
| # deleted. For example, | |
| # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. | |
| # If the service account is undeleted, this value reverts to | |
| # `serviceAccount:{emailid}` and the undeleted service account retains the | |
| # role in the binding. | |
| # | |
| # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique | |
| # identifier) representing a Google group that has been recently | |
| # deleted. For example, `admins@example.com?uid=123456789012345678901`. If | |
| # the group is recovered, this value reverts to `group:{emailid}` and the | |
| # recovered group retains the role in the binding. | |
| # | |
| # | |
| # * `domain:{domain}`: The G Suite domain (primary) that represents all the | |
| # users of that domain. For example, `google.com` or `example.com`. | |
| # | |
| "A String", | |
| ], | |
| }, | |
| ], | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code> | |
| <pre>Returns the permissions that a caller has on the specified note or | |
| occurrence resource. Requires list permission on the project (for example, | |
| "storage.objects.list" on the containing bucket for testing permission of | |
| an object). Attempting to call this method on a non-existent resource will | |
| result in a `NOT_FOUND` error if the user has list permission on the | |
| project, or a `PERMISSION_DENIED` error otherwise. The resource takes the | |
| following formats: `projects/{PROJECT_ID}/occurrences/{OCCURRENCE_ID}` for | |
| `Occurrences` and `projects/{PROJECT_ID}/notes/{NOTE_ID}` for `Notes` | |
| Args: | |
| resource: string, REQUIRED: The resource for which the policy detail is being requested. | |
| See the operation documentation for the appropriate value for this field. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # Request message for `TestIamPermissions` method. | |
| "permissions": [ # The set of permissions to check for the `resource`. Permissions with | |
| # wildcards (such as '*' or 'storage.*') are not allowed. For more | |
| # information see | |
| # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). | |
| "A String", | |
| ], | |
| } | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Response message for `TestIamPermissions` method. | |
| "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is | |
| # allowed. | |
| "A String", | |
| ], | |
| }</pre> | |
| </div> | |
| </body></html> |