| <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, 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, x__xgafv=None, filter=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, kind=None, name=None, pageToken=None, x__xgafv=None, pageSize=None, filter=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, 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, 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, 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, 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. (required) |
| The object takes the form of: |
| |
| { # `Occurrence` includes information about analysis occurrences for an image. |
| "resource": { # # |
| # The resource for which the `Occurrence` applies. |
| # Resource is an entity that can have metadata. E.g., a Docker image. |
| "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. |
| }, |
| "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". |
| }, |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. |
| # a system. |
| "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 |
| "path": "A String", # The path from which we gathered that this package/version is installed. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # Output only. The name of the installed package. |
| }, |
| "name": "A String", # Output only. The name of the `Occurrence` in the form |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" |
| "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. |
| "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. |
| "finishTime": "A String", # Time at which execution of the build was finished. |
| "commands": [ # Commands requested by the build. |
| { # Command describes a step performed as part of the build pipeline. |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. |
| "A String", |
| ], |
| "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`. |
| "args": [ # Command-line arguments used when executing this Command. |
| "A String", |
| ], |
| "env": [ # Environment variables set before running this Command. |
| "A String", |
| ], |
| "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. |
| }, |
| ], |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| "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. |
| "branchName": "A String", # Name of the branch to build. |
| "repoName": "A String", # Name of the repo. |
| "tagName": "A String", # Name of the tag to build. |
| "commitSha": "A String", # Explicit commit SHA to build. |
| }, |
| "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. |
| }, |
| ], |
| }, |
| }, |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| ], |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| }, |
| "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", |
| }, |
| "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. |
| "createTime": "A String", # Time at which the build was created. |
| "builtArtifacts": [ # Output of the build. |
| { # Artifact describes a build product. |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a |
| # container. |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest |
| # like gcr.io/projectID/imagename@sha256:123456 |
| "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. |
| "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", |
| ], |
| }, |
| ], |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. |
| "startTime": "A String", # Time at which execution of the build was started. |
| "projectId": "A String", # ID of the project. |
| "id": "A String", # Unique identifier of the build. |
| }, |
| "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. |
| }, |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. |
| "analysisStatus": "A String", # The status of discovery for the 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. |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "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. |
| "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}`. |
| "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. |
| }, |
| }, |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. |
| }, |
| "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. |
| "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 [email protected] |
| # 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). |
| "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. |
| }, |
| }, |
| "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. |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the |
| # deployable field with the same name. |
| "A String", |
| ], |
| "userEmail": "A String", # Identity of the user that triggered this deployment. |
| "address": "A String", # Address of the runtime element hosting this deployment. |
| "platform": "A String", # Platform hosting this deployment. |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. |
| "undeployTime": "A String", # End of the lifetime of this deployment. |
| "config": "A String", # Configuration used to create this deployment. |
| }, |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. |
| # to fix it. |
| "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. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| "type": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "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. |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. |
| "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. |
| }, |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. |
| "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. |
| "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. |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. |
| }, |
| ], |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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 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: 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. |
| "resource": { # # |
| # The resource for which the `Occurrence` applies. |
| # Resource is an entity that can have metadata. E.g., a Docker image. |
| "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. |
| }, |
| "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". |
| }, |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. |
| # a system. |
| "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 |
| "path": "A String", # The path from which we gathered that this package/version is installed. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # Output only. The name of the installed package. |
| }, |
| "name": "A String", # Output only. The name of the `Occurrence` in the form |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" |
| "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. |
| "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. |
| "finishTime": "A String", # Time at which execution of the build was finished. |
| "commands": [ # Commands requested by the build. |
| { # Command describes a step performed as part of the build pipeline. |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. |
| "A String", |
| ], |
| "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`. |
| "args": [ # Command-line arguments used when executing this Command. |
| "A String", |
| ], |
| "env": [ # Environment variables set before running this Command. |
| "A String", |
| ], |
| "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. |
| }, |
| ], |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| "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. |
| "branchName": "A String", # Name of the branch to build. |
| "repoName": "A String", # Name of the repo. |
| "tagName": "A String", # Name of the tag to build. |
| "commitSha": "A String", # Explicit commit SHA to build. |
| }, |
| "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. |
| }, |
| ], |
| }, |
| }, |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| ], |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| }, |
| "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", |
| }, |
| "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. |
| "createTime": "A String", # Time at which the build was created. |
| "builtArtifacts": [ # Output of the build. |
| { # Artifact describes a build product. |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a |
| # container. |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest |
| # like gcr.io/projectID/imagename@sha256:123456 |
| "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. |
| "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", |
| ], |
| }, |
| ], |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. |
| "startTime": "A String", # Time at which execution of the build was started. |
| "projectId": "A String", # ID of the project. |
| "id": "A String", # Unique identifier of the build. |
| }, |
| "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. |
| }, |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. |
| "analysisStatus": "A String", # The status of discovery for the 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. |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "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. |
| "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}`. |
| "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. |
| }, |
| }, |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. |
| }, |
| "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. |
| "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 [email protected] |
| # 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). |
| "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. |
| }, |
| }, |
| "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. |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the |
| # deployable field with the same name. |
| "A String", |
| ], |
| "userEmail": "A String", # Identity of the user that triggered this deployment. |
| "address": "A String", # Address of the runtime element hosting this deployment. |
| "platform": "A String", # Platform hosting this deployment. |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. |
| "undeployTime": "A String", # End of the lifetime of this deployment. |
| "config": "A String", # Configuration used to create this deployment. |
| }, |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. |
| # to fix it. |
| "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. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| "type": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "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. |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. |
| "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. |
| }, |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. |
| "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. |
| "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. |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. |
| }, |
| ], |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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 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. |
| }</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. |
| "resource": { # # |
| # The resource for which the `Occurrence` applies. |
| # Resource is an entity that can have metadata. E.g., a Docker image. |
| "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. |
| }, |
| "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". |
| }, |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. |
| # a system. |
| "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 |
| "path": "A String", # The path from which we gathered that this package/version is installed. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # Output only. The name of the installed package. |
| }, |
| "name": "A String", # Output only. The name of the `Occurrence` in the form |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" |
| "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. |
| "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. |
| "finishTime": "A String", # Time at which execution of the build was finished. |
| "commands": [ # Commands requested by the build. |
| { # Command describes a step performed as part of the build pipeline. |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. |
| "A String", |
| ], |
| "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`. |
| "args": [ # Command-line arguments used when executing this Command. |
| "A String", |
| ], |
| "env": [ # Environment variables set before running this Command. |
| "A String", |
| ], |
| "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. |
| }, |
| ], |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| "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. |
| "branchName": "A String", # Name of the branch to build. |
| "repoName": "A String", # Name of the repo. |
| "tagName": "A String", # Name of the tag to build. |
| "commitSha": "A String", # Explicit commit SHA to build. |
| }, |
| "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. |
| }, |
| ], |
| }, |
| }, |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| ], |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| }, |
| "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", |
| }, |
| "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. |
| "createTime": "A String", # Time at which the build was created. |
| "builtArtifacts": [ # Output of the build. |
| { # Artifact describes a build product. |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a |
| # container. |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest |
| # like gcr.io/projectID/imagename@sha256:123456 |
| "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. |
| "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", |
| ], |
| }, |
| ], |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. |
| "startTime": "A String", # Time at which execution of the build was started. |
| "projectId": "A String", # ID of the project. |
| "id": "A String", # Unique identifier of the build. |
| }, |
| "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. |
| }, |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. |
| "analysisStatus": "A String", # The status of discovery for the 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. |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "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. |
| "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}`. |
| "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. |
| }, |
| }, |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. |
| }, |
| "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. |
| "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 [email protected] |
| # 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). |
| "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. |
| }, |
| }, |
| "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. |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the |
| # deployable field with the same name. |
| "A String", |
| ], |
| "userEmail": "A String", # Identity of the user that triggered this deployment. |
| "address": "A String", # Address of the runtime element hosting this deployment. |
| "platform": "A String", # Platform hosting this deployment. |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. |
| "undeployTime": "A String", # End of the lifetime of this deployment. |
| "config": "A String", # Configuration used to create this deployment. |
| }, |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. |
| # to fix it. |
| "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. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| "type": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "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. |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. |
| "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. |
| }, |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. |
| "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. |
| "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. |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. |
| }, |
| ], |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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 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. |
| }</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. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Defines an Identity and Access Management (IAM) policy. It is used to |
| # specify access control policies for Cloud Platform resources. |
| # |
| # |
| # A `Policy` consists of a list of `bindings`. A `binding` binds a list of |
| # `members` to a `role`, where the members can be user accounts, Google groups, |
| # Google domains, and service accounts. A `role` is a named list of permissions |
| # defined by IAM. |
| # |
| # **JSON Example** |
| # |
| # { |
| # "bindings": [ |
| # { |
| # "role": "roles/owner", |
| # "members": [ |
| # "user:[email protected]", |
| # "group:[email protected]", |
| # "domain:google.com", |
| # "serviceAccount:[email protected]" |
| # ] |
| # }, |
| # { |
| # "role": "roles/viewer", |
| # "members": ["user:[email protected]"] |
| # } |
| # ] |
| # } |
| # |
| # **YAML Example** |
| # |
| # bindings: |
| # - members: |
| # - user:[email protected] |
| # - group:[email protected] |
| # - domain:google.com |
| # - serviceAccount:[email protected] |
| # role: roles/owner |
| # - members: |
| # - user:[email protected] |
| # role: roles/viewer |
| # |
| # |
| # For a description of IAM and its features, see the |
| # [IAM developer's guide](https://cloud.google.com/iam/docs). |
| "bindings": [ # Associates a list of `members` to a `role`. |
| # `bindings` with no members will result in an error. |
| { # Associates `members` with a `role`. |
| "role": "A String", # Role that is assigned to `members`. |
| # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. |
| "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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a service |
| # account. For example, `[email protected]`. |
| # |
| # * `group:{emailid}`: An email address that represents a Google group. |
| # For example, `[email protected]`. |
| # |
| # |
| # * `domain:{domain}`: The G Suite domain (primary) that represents all the |
| # users of that domain. For example, `google.com` or `example.com`. |
| # |
| "A String", |
| ], |
| "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. |
| # NOTE: An unsatisfied condition will not allow user access via current |
| # binding. Different bindings, including their conditions, are examined |
| # independently. |
| # |
| # title: "User account presence" |
| # description: "Determines whether the request has a user account" |
| # expression: "size(request.user) > 0" |
| "description": "A String", # An 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. |
| # |
| # The application context of the containing message determines which |
| # well-known feature set of CEL is supported. |
| "location": "A String", # An optional string indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # An 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. |
| }, |
| }, |
| ], |
| "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. |
| { # Specifies the audit configuration for a service. |
| # The configuration determines which permission types are logged, and what |
| # identities, if any, are exempted from logging. |
| # An AuditConfig must have one or more AuditLogConfigs. |
| # |
| # If there are AuditConfigs for both `allServices` and a specific service, |
| # the union of the two AuditConfigs is used for that service: the log_types |
| # specified in each AuditConfig are enabled, and the exempted_members in each |
| # AuditLogConfig are exempted. |
| # |
| # Example Policy with multiple AuditConfigs: |
| # |
| # { |
| # "audit_configs": [ |
| # { |
| # "service": "allServices" |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # }, |
| # { |
| # "log_type": "ADMIN_READ", |
| # } |
| # ] |
| # }, |
| # { |
| # "service": "fooservice.googleapis.com" |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # } |
| # ] |
| # } |
| # ] |
| # } |
| # |
| # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| # logging. It also exempts [email protected] from DATA_READ logging, and |
| # [email protected] from DATA_WRITE logging. |
| "auditLogConfigs": [ # The configuration for logging of each type of permission. |
| { # Provides the configuration for logging a type of permissions. |
| # Example: |
| # |
| # { |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # } |
| # ] |
| # } |
| # |
| # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
| # [email protected] from DATA_READ logging. |
| "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of |
| # permission. |
| # Follows the same format of Binding.members. |
| "A String", |
| ], |
| "logType": "A String", # The log type that this config enables. |
| }, |
| ], |
| "service": "A String", # Specifies a service that will be enabled for audit logging. |
| # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. |
| # `allServices` is a special value that covers all services. |
| }, |
| ], |
| "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. |
| # |
| # If no `etag` is provided in the call to `setIamPolicy`, then the existing |
| # policy is overwritten blindly. |
| "version": 42, # Deprecated. |
| }</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`. |
| "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. |
| "builderVersion": "A String", # Version of the builder which produced this Note. |
| "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` |
| "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in |
| # `key_id` |
| "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). |
| "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. |
| }, |
| }, |
| "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. |
| "name": "A String", # The name of the note in the form |
| # "providers/{provider_id}/notes/{NOTE_ID}" |
| "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. |
| "cvssScore": 3.14, # The CVSS score for this Vulnerability. |
| "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 |
| "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The name of the package where the vulnerability was found. |
| # This field can be used as a filter in list requests. |
| "packageType": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to |
| # obsolete details. |
| "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. |
| # |
| # 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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The fix for this specific package 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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| }, |
| "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. |
| "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 |
| "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) |
| # denoting the package manager version distributing a package. |
| "maintainer": "A String", # A freeform string denoting the maintainer of this package. |
| "description": "A String", # The distribution channel-specific description of this 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 |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # The name of the package. |
| }, |
| "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as |
| # a filter in list requests. |
| "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 |
| }, |
| ], |
| "longDescription": "A String", # A detailed 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". |
| }, |
| }, |
| "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. |
| "resourceUrl": "A String", # The resource_url for the resource representing the basis of |
| # associated occurrence images. |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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. |
| }, |
| }, |
| "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. |
| "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`. |
| "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. |
| }, |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="getVulnerabilitySummary">getVulnerabilitySummary(parent, x__xgafv=None, filter=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) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| filter: string, The filter expression. |
| |
| 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. |
| "count": "A String", # The number of occurrences with the severity. |
| "severity": "A String", # The severity of the occurrences. |
| }, |
| ], |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list">list(parent, kind=None, name=None, pageToken=None, x__xgafv=None, pageSize=None, filter=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) |
| kind: string, The kind of occurrences to filter on. |
| name: string, The name field contains the project Id. For example: |
| "projects/{project_id} |
| @Deprecated |
| pageToken: string, Token to provide to skip to a particular spot in the list. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| pageSize: integer, Number of occurrences to return in the list. |
| filter: string, The filter expression. |
| |
| Returns: |
| An object of the form: |
| |
| { # Response including listed active occurrences. |
| "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. |
| "occurrences": [ # The occurrences requested. |
| { # `Occurrence` includes information about analysis occurrences for an image. |
| "resource": { # # |
| # The resource for which the `Occurrence` applies. |
| # Resource is an entity that can have metadata. E.g., a Docker image. |
| "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. |
| }, |
| "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". |
| }, |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. |
| # a system. |
| "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 |
| "path": "A String", # The path from which we gathered that this package/version is installed. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # Output only. The name of the installed package. |
| }, |
| "name": "A String", # Output only. The name of the `Occurrence` in the form |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" |
| "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. |
| "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. |
| "finishTime": "A String", # Time at which execution of the build was finished. |
| "commands": [ # Commands requested by the build. |
| { # Command describes a step performed as part of the build pipeline. |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. |
| "A String", |
| ], |
| "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`. |
| "args": [ # Command-line arguments used when executing this Command. |
| "A String", |
| ], |
| "env": [ # Environment variables set before running this Command. |
| "A String", |
| ], |
| "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. |
| }, |
| ], |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| "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. |
| "branchName": "A String", # Name of the branch to build. |
| "repoName": "A String", # Name of the repo. |
| "tagName": "A String", # Name of the tag to build. |
| "commitSha": "A String", # Explicit commit SHA to build. |
| }, |
| "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. |
| }, |
| ], |
| }, |
| }, |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| ], |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| }, |
| "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", |
| }, |
| "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. |
| "createTime": "A String", # Time at which the build was created. |
| "builtArtifacts": [ # Output of the build. |
| { # Artifact describes a build product. |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a |
| # container. |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest |
| # like gcr.io/projectID/imagename@sha256:123456 |
| "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. |
| "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", |
| ], |
| }, |
| ], |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. |
| "startTime": "A String", # Time at which execution of the build was started. |
| "projectId": "A String", # ID of the project. |
| "id": "A String", # Unique identifier of the build. |
| }, |
| "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. |
| }, |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. |
| "analysisStatus": "A String", # The status of discovery for the 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. |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "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. |
| "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}`. |
| "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. |
| }, |
| }, |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. |
| }, |
| "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. |
| "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 [email protected] |
| # 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). |
| "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. |
| }, |
| }, |
| "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. |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the |
| # deployable field with the same name. |
| "A String", |
| ], |
| "userEmail": "A String", # Identity of the user that triggered this deployment. |
| "address": "A String", # Address of the runtime element hosting this deployment. |
| "platform": "A String", # Platform hosting this deployment. |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. |
| "undeployTime": "A String", # End of the lifetime of this deployment. |
| "config": "A String", # Configuration used to create this deployment. |
| }, |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. |
| # to fix it. |
| "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. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| "type": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "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. |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. |
| "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. |
| }, |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. |
| "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. |
| "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. |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. |
| }, |
| ], |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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 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. |
| }, |
| ], |
| }</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, 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. (required) |
| The object takes the form of: |
| |
| { # `Occurrence` includes information about analysis occurrences for an image. |
| "resource": { # # |
| # The resource for which the `Occurrence` applies. |
| # Resource is an entity that can have metadata. E.g., a Docker image. |
| "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. |
| }, |
| "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". |
| }, |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. |
| # a system. |
| "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 |
| "path": "A String", # The path from which we gathered that this package/version is installed. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # Output only. The name of the installed package. |
| }, |
| "name": "A String", # Output only. The name of the `Occurrence` in the form |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" |
| "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. |
| "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. |
| "finishTime": "A String", # Time at which execution of the build was finished. |
| "commands": [ # Commands requested by the build. |
| { # Command describes a step performed as part of the build pipeline. |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. |
| "A String", |
| ], |
| "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`. |
| "args": [ # Command-line arguments used when executing this Command. |
| "A String", |
| ], |
| "env": [ # Environment variables set before running this Command. |
| "A String", |
| ], |
| "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. |
| }, |
| ], |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| "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. |
| "branchName": "A String", # Name of the branch to build. |
| "repoName": "A String", # Name of the repo. |
| "tagName": "A String", # Name of the tag to build. |
| "commitSha": "A String", # Explicit commit SHA to build. |
| }, |
| "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. |
| }, |
| ], |
| }, |
| }, |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| ], |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| }, |
| "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", |
| }, |
| "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. |
| "createTime": "A String", # Time at which the build was created. |
| "builtArtifacts": [ # Output of the build. |
| { # Artifact describes a build product. |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a |
| # container. |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest |
| # like gcr.io/projectID/imagename@sha256:123456 |
| "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. |
| "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", |
| ], |
| }, |
| ], |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. |
| "startTime": "A String", # Time at which execution of the build was started. |
| "projectId": "A String", # ID of the project. |
| "id": "A String", # Unique identifier of the build. |
| }, |
| "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. |
| }, |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. |
| "analysisStatus": "A String", # The status of discovery for the 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. |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "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. |
| "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}`. |
| "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. |
| }, |
| }, |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. |
| }, |
| "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. |
| "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 [email protected] |
| # 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). |
| "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. |
| }, |
| }, |
| "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. |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the |
| # deployable field with the same name. |
| "A String", |
| ], |
| "userEmail": "A String", # Identity of the user that triggered this deployment. |
| "address": "A String", # Address of the runtime element hosting this deployment. |
| "platform": "A String", # Platform hosting this deployment. |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. |
| "undeployTime": "A String", # End of the lifetime of this deployment. |
| "config": "A String", # Configuration used to create this deployment. |
| }, |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. |
| # to fix it. |
| "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. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| "type": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "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. |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. |
| "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. |
| }, |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. |
| "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. |
| "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. |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. |
| }, |
| ], |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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 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. |
| } |
| |
| 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. |
| "resource": { # # |
| # The resource for which the `Occurrence` applies. |
| # Resource is an entity that can have metadata. E.g., a Docker image. |
| "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. |
| }, |
| "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". |
| }, |
| "updateTime": "A String", # Output only. The time this `Occurrence` was last updated. |
| "installation": { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource. |
| # a system. |
| "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 |
| "path": "A String", # The path from which we gathered that this package/version is installed. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| }, |
| ], |
| "name": "A String", # Output only. The name of the installed package. |
| }, |
| "name": "A String", # Output only. The name of the `Occurrence` in the form |
| # "projects/{project_id}/occurrences/{OCCURRENCE_ID}" |
| "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. |
| "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. |
| "finishTime": "A String", # Time at which execution of the build was finished. |
| "commands": [ # Commands requested by the build. |
| { # Command describes a step performed as part of the build pipeline. |
| "waitFor": [ # The ID(s) of the Command(s) that this Command depends on. |
| "A String", |
| ], |
| "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`. |
| "args": [ # Command-line arguments used when executing this Command. |
| "A String", |
| ], |
| "env": [ # Environment variables set before running this Command. |
| "A String", |
| ], |
| "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. |
| }, |
| ], |
| "sourceProvenance": { # Source describes the location of the source used for the build. # Details of the Source input to the build. |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| "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. |
| "branchName": "A String", # Name of the branch to build. |
| "repoName": "A String", # Name of the repo. |
| "tagName": "A String", # Name of the tag to build. |
| "commitSha": "A String", # Explicit commit SHA to build. |
| }, |
| "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. |
| }, |
| ], |
| }, |
| }, |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| ], |
| "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. |
| "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). |
| "url": "A String", # Git repository URL. |
| "revisionId": "A String", # Required. |
| # Git commit hash. |
| }, |
| "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. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision ID. |
| "repoId": { # A unique identifier for a Cloud Repo. # The ID of the repo. |
| "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. |
| }, |
| "uid": "A String", # A server-assigned, globally unique identifier. |
| }, |
| }, |
| "labels": { # Labels with user defined metadata. |
| "a_key": "A String", |
| }, |
| "gerrit": { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project. |
| "aliasContext": { # An alias to a repo revision. # An alias, which may be a branch or tag. |
| "kind": "A String", # The alias kind. |
| "name": "A String", # The alias name. |
| }, |
| "revisionId": "A String", # A revision (commit) ID. |
| "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. |
| "hostUri": "A String", # The URI of a running Gerrit instance. |
| }, |
| }, |
| "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. |
| "object": "A String", # Google Cloud Storage object containing source. |
| "bucket": "A String", # Google Cloud Storage bucket containing source (see [Bucket Name |
| # Requirements] |
| # (https://cloud.google.com/storage/docs/bucket-naming#requirements)). |
| }, |
| }, |
| "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", |
| }, |
| "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. |
| "createTime": "A String", # Time at which the build was created. |
| "builtArtifacts": [ # Output of the build. |
| { # Artifact describes a build product. |
| "checksum": "A String", # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a |
| # container. |
| "id": "A String", # Artifact ID, if any; for container images, this will be a URL by digest |
| # like gcr.io/projectID/imagename@sha256:123456 |
| "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. |
| "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", |
| ], |
| }, |
| ], |
| "triggerId": "A String", # Trigger identifier if the build was triggered automatically; empty if not. |
| "startTime": "A String", # Time at which execution of the build was started. |
| "projectId": "A String", # ID of the project. |
| "id": "A String", # Unique identifier of the build. |
| }, |
| "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. |
| }, |
| "discovered": { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource. |
| "analysisStatus": "A String", # The status of discovery for the 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. |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "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. |
| "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}`. |
| "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. |
| }, |
| }, |
| "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). |
| "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. |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "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. |
| }, |
| ], |
| }, |
| "continuousAnalysis": "A String", # Whether the resource is continuously analyzed. |
| }, |
| "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. |
| "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 [email protected] |
| # 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). |
| "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. |
| }, |
| }, |
| "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. |
| "resourceUri": [ # Output only. Resource URI for the artifact being deployed taken from the |
| # deployable field with the same name. |
| "A String", |
| ], |
| "userEmail": "A String", # Identity of the user that triggered this deployment. |
| "address": "A String", # Address of the runtime element hosting this deployment. |
| "platform": "A String", # Platform hosting this deployment. |
| "deployTime": "A String", # Beginning of the lifetime of this deployment. |
| "undeployTime": "A String", # End of the lifetime of this deployment. |
| "config": "A String", # Configuration used to create this deployment. |
| }, |
| "remediation": "A String", # A description of actions that can be taken to remedy the `Note` |
| "vulnerabilityDetails": { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note. |
| # to fix it. |
| "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. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| "fixedLocation": { # The location of the vulnerability # The location of the available fix for vulnerability. |
| "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. |
| "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/ |
| "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. |
| # If kind is not NORMAL, then the other fields are ignored. |
| "revision": "A String", # The iteration of the package build from the above version. |
| "name": "A String", # The main part of the version name. |
| "epoch": 42, # Used to correct mistakes in the version numbering scheme. |
| }, |
| "package": "A String", # The package being described. |
| }, |
| }, |
| ], |
| "type": "A String", # The type of package; whether native or non native(ruby gems, |
| # node.js packages etc) |
| "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. |
| "severity": "A String", # Output only. The note provider assigned Severity of the vulnerability. |
| "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. |
| }, |
| "createTime": "A String", # Output only. The time this `Occurrence` was created. |
| "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. |
| "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. |
| "arguments": "A String", # The recovered arguments to the Dockerfile directive. |
| "directive": "A String", # The recovered Dockerfile directive used to construct this layer. |
| }, |
| ], |
| "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image. |
| "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. |
| "v2Blob": [ # The ordered list of v2 blobs that represent a given image. |
| "A String", |
| ], |
| "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 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. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="setIamPolicy">setIamPolicy(resource, body, 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. (required) |
| The object takes the form of: |
| |
| { # Request message for `SetIamPolicy` method. |
| "policy": { # Defines an Identity and Access Management (IAM) policy. It is used to # 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. |
| # specify access control policies for Cloud Platform resources. |
| # |
| # |
| # A `Policy` consists of a list of `bindings`. A `binding` binds a list of |
| # `members` to a `role`, where the members can be user accounts, Google groups, |
| # Google domains, and service accounts. A `role` is a named list of permissions |
| # defined by IAM. |
| # |
| # **JSON Example** |
| # |
| # { |
| # "bindings": [ |
| # { |
| # "role": "roles/owner", |
| # "members": [ |
| # "user:[email protected]", |
| # "group:[email protected]", |
| # "domain:google.com", |
| # "serviceAccount:[email protected]" |
| # ] |
| # }, |
| # { |
| # "role": "roles/viewer", |
| # "members": ["user:[email protected]"] |
| # } |
| # ] |
| # } |
| # |
| # **YAML Example** |
| # |
| # bindings: |
| # - members: |
| # - user:[email protected] |
| # - group:[email protected] |
| # - domain:google.com |
| # - serviceAccount:[email protected] |
| # role: roles/owner |
| # - members: |
| # - user:[email protected] |
| # role: roles/viewer |
| # |
| # |
| # For a description of IAM and its features, see the |
| # [IAM developer's guide](https://cloud.google.com/iam/docs). |
| "bindings": [ # Associates a list of `members` to a `role`. |
| # `bindings` with no members will result in an error. |
| { # Associates `members` with a `role`. |
| "role": "A String", # Role that is assigned to `members`. |
| # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. |
| "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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a service |
| # account. For example, `[email protected]`. |
| # |
| # * `group:{emailid}`: An email address that represents a Google group. |
| # For example, `[email protected]`. |
| # |
| # |
| # * `domain:{domain}`: The G Suite domain (primary) that represents all the |
| # users of that domain. For example, `google.com` or `example.com`. |
| # |
| "A String", |
| ], |
| "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. |
| # NOTE: An unsatisfied condition will not allow user access via current |
| # binding. Different bindings, including their conditions, are examined |
| # independently. |
| # |
| # title: "User account presence" |
| # description: "Determines whether the request has a user account" |
| # expression: "size(request.user) > 0" |
| "description": "A String", # An 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. |
| # |
| # The application context of the containing message determines which |
| # well-known feature set of CEL is supported. |
| "location": "A String", # An optional string indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # An 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. |
| }, |
| }, |
| ], |
| "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. |
| { # Specifies the audit configuration for a service. |
| # The configuration determines which permission types are logged, and what |
| # identities, if any, are exempted from logging. |
| # An AuditConfig must have one or more AuditLogConfigs. |
| # |
| # If there are AuditConfigs for both `allServices` and a specific service, |
| # the union of the two AuditConfigs is used for that service: the log_types |
| # specified in each AuditConfig are enabled, and the exempted_members in each |
| # AuditLogConfig are exempted. |
| # |
| # Example Policy with multiple AuditConfigs: |
| # |
| # { |
| # "audit_configs": [ |
| # { |
| # "service": "allServices" |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # }, |
| # { |
| # "log_type": "ADMIN_READ", |
| # } |
| # ] |
| # }, |
| # { |
| # "service": "fooservice.googleapis.com" |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # } |
| # ] |
| # } |
| # ] |
| # } |
| # |
| # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| # logging. It also exempts [email protected] from DATA_READ logging, and |
| # [email protected] from DATA_WRITE logging. |
| "auditLogConfigs": [ # The configuration for logging of each type of permission. |
| { # Provides the configuration for logging a type of permissions. |
| # Example: |
| # |
| # { |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # } |
| # ] |
| # } |
| # |
| # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
| # [email protected] from DATA_READ logging. |
| "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of |
| # permission. |
| # Follows the same format of Binding.members. |
| "A String", |
| ], |
| "logType": "A String", # The log type that this config enables. |
| }, |
| ], |
| "service": "A String", # Specifies a service that will be enabled for audit logging. |
| # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. |
| # `allServices` is a special value that covers all services. |
| }, |
| ], |
| "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. |
| # |
| # If no `etag` is provided in the call to `setIamPolicy`, then the existing |
| # policy is overwritten blindly. |
| "version": 42, # Deprecated. |
| }, |
| "updateMask": "A String", # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only |
| # the fields in the mask will be modified. If no mask is provided, the |
| # following default mask is used: |
| # paths: "bindings, etag" |
| # This field is only used by Cloud IAM. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Defines an Identity and Access Management (IAM) policy. It is used to |
| # specify access control policies for Cloud Platform resources. |
| # |
| # |
| # A `Policy` consists of a list of `bindings`. A `binding` binds a list of |
| # `members` to a `role`, where the members can be user accounts, Google groups, |
| # Google domains, and service accounts. A `role` is a named list of permissions |
| # defined by IAM. |
| # |
| # **JSON Example** |
| # |
| # { |
| # "bindings": [ |
| # { |
| # "role": "roles/owner", |
| # "members": [ |
| # "user:[email protected]", |
| # "group:[email protected]", |
| # "domain:google.com", |
| # "serviceAccount:[email protected]" |
| # ] |
| # }, |
| # { |
| # "role": "roles/viewer", |
| # "members": ["user:[email protected]"] |
| # } |
| # ] |
| # } |
| # |
| # **YAML Example** |
| # |
| # bindings: |
| # - members: |
| # - user:[email protected] |
| # - group:[email protected] |
| # - domain:google.com |
| # - serviceAccount:[email protected] |
| # role: roles/owner |
| # - members: |
| # - user:[email protected] |
| # role: roles/viewer |
| # |
| # |
| # For a description of IAM and its features, see the |
| # [IAM developer's guide](https://cloud.google.com/iam/docs). |
| "bindings": [ # Associates a list of `members` to a `role`. |
| # `bindings` with no members will result in an error. |
| { # Associates `members` with a `role`. |
| "role": "A String", # Role that is assigned to `members`. |
| # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. |
| "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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a service |
| # account. For example, `[email protected]`. |
| # |
| # * `group:{emailid}`: An email address that represents a Google group. |
| # For example, `[email protected]`. |
| # |
| # |
| # * `domain:{domain}`: The G Suite domain (primary) that represents all the |
| # users of that domain. For example, `google.com` or `example.com`. |
| # |
| "A String", |
| ], |
| "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. |
| # NOTE: An unsatisfied condition will not allow user access via current |
| # binding. Different bindings, including their conditions, are examined |
| # independently. |
| # |
| # title: "User account presence" |
| # description: "Determines whether the request has a user account" |
| # expression: "size(request.user) > 0" |
| "description": "A String", # An 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. |
| # |
| # The application context of the containing message determines which |
| # well-known feature set of CEL is supported. |
| "location": "A String", # An optional string indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # An 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. |
| }, |
| }, |
| ], |
| "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. |
| { # Specifies the audit configuration for a service. |
| # The configuration determines which permission types are logged, and what |
| # identities, if any, are exempted from logging. |
| # An AuditConfig must have one or more AuditLogConfigs. |
| # |
| # If there are AuditConfigs for both `allServices` and a specific service, |
| # the union of the two AuditConfigs is used for that service: the log_types |
| # specified in each AuditConfig are enabled, and the exempted_members in each |
| # AuditLogConfig are exempted. |
| # |
| # Example Policy with multiple AuditConfigs: |
| # |
| # { |
| # "audit_configs": [ |
| # { |
| # "service": "allServices" |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # }, |
| # { |
| # "log_type": "ADMIN_READ", |
| # } |
| # ] |
| # }, |
| # { |
| # "service": "fooservice.googleapis.com" |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # } |
| # ] |
| # } |
| # ] |
| # } |
| # |
| # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| # logging. It also exempts [email protected] from DATA_READ logging, and |
| # [email protected] from DATA_WRITE logging. |
| "auditLogConfigs": [ # The configuration for logging of each type of permission. |
| { # Provides the configuration for logging a type of permissions. |
| # Example: |
| # |
| # { |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE", |
| # } |
| # ] |
| # } |
| # |
| # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
| # [email protected] from DATA_READ logging. |
| "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of |
| # permission. |
| # Follows the same format of Binding.members. |
| "A String", |
| ], |
| "logType": "A String", # The log type that this config enables. |
| }, |
| ], |
| "service": "A String", # Specifies a service that will be enabled for audit logging. |
| # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. |
| # `allServices` is a special value that covers all services. |
| }, |
| ], |
| "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. |
| # |
| # If no `etag` is provided in the call to `setIamPolicy`, then the existing |
| # policy is overwritten blindly. |
| "version": 42, # Deprecated. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="testIamPermissions">testIamPermissions(resource, body, 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. (required) |
| 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> |