1<html><body> 2<style> 3 4body, h1, h2, h3, div, span, p, pre, a { 5 margin: 0; 6 padding: 0; 7 border: 0; 8 font-weight: inherit; 9 font-style: inherit; 10 font-size: 100%; 11 font-family: inherit; 12 vertical-align: baseline; 13} 14 15body { 16 font-size: 13px; 17 padding: 1em; 18} 19 20h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23} 24 25h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28} 29 30h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34} 35 36pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39} 40 41pre { 42 margin-top: 0.5em; 43} 44 45h1, h2, h3, p { 46 font-family: Arial, sans serif; 47} 48 49h1, h2, h3 { 50 border-bottom: solid #CCC 1px; 51} 52 53.toc_element { 54 margin-top: 0.5em; 55} 56 57.firstline { 58 margin-left: 2 em; 59} 60 61.method { 62 margin-top: 1em; 63 border: solid 1px #CCC; 64 padding: 1em; 65 background: #EEE; 66} 67 68.details { 69 font-weight: bold; 70 font-size: 14px; 71} 72 73</style> 74 75<h1><a href="containeranalysis_v1alpha1.html">Container Analysis API</a> . <a href="containeranalysis_v1alpha1.projects.html">projects</a> . <a href="containeranalysis_v1alpha1.projects.notes.html">notes</a></h1> 76<h2>Instance Methods</h2> 77<p class="toc_element"> 78 <code><a href="containeranalysis_v1alpha1.projects.notes.occurrences.html">occurrences()</a></code> 79</p> 80<p class="firstline">Returns the occurrences Resource.</p> 81 82<p class="toc_element"> 83 <code><a href="#create">create(parent, body, name=None, noteId=None, x__xgafv=None)</a></code></p> 84<p class="firstline">Creates a new `Note`.</p> 85<p class="toc_element"> 86 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p> 87<p class="firstline">Deletes the given `Note` from the system.</p> 88<p class="toc_element"> 89 <code><a href="#get">get(name, x__xgafv=None)</a></code></p> 90<p class="firstline">Returns the requested `Note`.</p> 91<p class="toc_element"> 92 <code><a href="#getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</a></code></p> 93<p class="firstline">Gets the access control policy for a note or an `Occurrence` resource.</p> 94<p class="toc_element"> 95 <code><a href="#list">list(parent, name=None, pageSize=None, pageToken=None, x__xgafv=None, filter=None)</a></code></p> 96<p class="firstline">Lists all `Notes` for a given project.</p> 97<p class="toc_element"> 98 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> 99<p class="firstline">Retrieves the next page of results.</p> 100<p class="toc_element"> 101 <code><a href="#patch">patch(name, body, updateMask=None, x__xgafv=None)</a></code></p> 102<p class="firstline">Updates an existing `Note`.</p> 103<p class="toc_element"> 104 <code><a href="#setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</a></code></p> 105<p class="firstline">Sets the access control policy on the specified `Note` or `Occurrence`.</p> 106<p class="toc_element"> 107 <code><a href="#testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</a></code></p> 108<p class="firstline">Returns the permissions that a caller has on the specified note or</p> 109<h3>Method Details</h3> 110<div class="method"> 111 <code class="details" id="create">create(parent, body, name=None, noteId=None, x__xgafv=None)</code> 112 <pre>Creates a new `Note`. 113 114Args: 115 parent: string, This field contains the project Id for example: 116"projects/{project_id} (required) 117 body: object, The request body. (required) 118 The object takes the form of: 119 120{ # Provides a detailed description of a `Note`. 121 "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. 122 # the provenance message in linked BuildDetails. 123 "builderVersion": "A String", # Version of the builder which produced this Note. 124 "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this 125 # `BuilderDetails`. 126 "publicKey": "A String", # Public key of the builder which can be used to verify that the related 127 # findings are valid and unchanged. If `key_type` is empty, this defaults 128 # to PEM encoded public keys. 129 # 130 # This field may be empty if `key_id` references an external key. 131 # 132 # For Cloud Build based signatures, this is a PEM encoded public 133 # key. To verify the Cloud Build signature, place the contents of 134 # this field into a file (public.pem). The signature field is base64-decoded 135 # into its binary representation in signature.bin, and the provenance bytes 136 # from `BuildDetails` are base64-decoded into a binary representation in 137 # signed.bin. OpenSSL can then verify the signature: 138 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 139 "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in 140 # `key_id` 141 "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key 142 # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the 143 # CN for a cert), or a reference to an external key (such as a reference to a 144 # key in Cloud Key Management Service). 145 "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. 146 }, 147 }, 148 "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This 149 # field can be used as a filter in list requests. 150 "name": "A String", # The name of the note in the form 151 # "providers/{provider_id}/notes/{NOTE_ID}" 152 "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. 153 "cvssScore": 3.14, # The CVSS score for this Vulnerability. 154 "severity": "A String", # Note provider assigned impact of the vulnerability 155 "details": [ # All information about the package to specifically identify this 156 # vulnerability. One entry per (version range and cpe_uri) the 157 # package vulnerability has manifested in. 158 { # Identifies all occurrences of this vulnerability in the package for a 159 # specific distro/location 160 # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 161 "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. 162 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in 163 # which the vulnerability manifests. Examples include distro or storage 164 # location for vulnerable jar. 165 # This field can be used as a filter in list requests. 166 "description": "A String", # A vendor-specific description of this note. 167 "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. 168 # For a discussion of this in Debian/Ubuntu: 169 # http://serverfault.com/questions/604541/debian-packages-version-convention 170 # For a discussion of this in Redhat/Fedora/Centos: 171 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 172 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 173 # If kind is not NORMAL, then the other fields are ignored. 174 "revision": "A String", # The iteration of the package build from the above version. 175 "name": "A String", # The main part of the version name. 176 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 177 }, 178 "package": "A String", # The name of the package where the vulnerability was found. 179 # This field can be used as a filter in list requests. 180 "packageType": "A String", # The type of package; whether native or non native(ruby gems, 181 # node.js packages etc) 182 "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to 183 # obsolete details. 184 "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. 185 # 186 # The max version of the package in which the vulnerability exists. 187 # For a discussion of this in Debian/Ubuntu: 188 # http://serverfault.com/questions/604541/debian-packages-version-convention 189 # For a discussion of this in Redhat/Fedora/Centos: 190 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 191 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 192 # If kind is not NORMAL, then the other fields are ignored. 193 "revision": "A String", # The iteration of the package build from the above version. 194 "name": "A String", # The main part of the version name. 195 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 196 }, 197 "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. 198 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) 199 # format. Examples include distro or storage location for vulnerable jar. 200 # This field can be used as a filter in list requests. 201 "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 202 # filter in list requests. 203 # For a discussion of this in Debian/Ubuntu: 204 # http://serverfault.com/questions/604541/debian-packages-version-convention 205 # For a discussion of this in Redhat/Fedora/Centos: 206 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 207 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 208 # If kind is not NORMAL, then the other fields are ignored. 209 "revision": "A String", # The iteration of the package build from the above version. 210 "name": "A String", # The main part of the version name. 211 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 212 }, 213 "package": "A String", # The package being described. 214 }, 215 }, 216 ], 217 }, 218 "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. 219 # various channels. 220 # e.g. glibc (aka libc6) is distributed by many, at various versions. 221 "distribution": [ # The various channels by which a package is distributed. 222 { # This represents a particular channel of distribution for a given package. 223 # e.g. Debian's jessie-backports dpkg mirror 224 "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) 225 # denoting the package manager version distributing a package. 226 "maintainer": "A String", # A freeform string denoting the maintainer of this package. 227 "description": "A String", # The distribution channel-specific description of this package. 228 "url": "A String", # The distribution channel-specific homepage for this package. 229 "architecture": "A String", # The CPU architecture for which packages in this distribution 230 # channel were built 231 "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in 232 # this distribution channel. 233 # For a discussion of this in Debian/Ubuntu: 234 # http://serverfault.com/questions/604541/debian-packages-version-convention 235 # For a discussion of this in Redhat/Fedora/Centos: 236 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 237 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 238 # If kind is not NORMAL, then the other fields are ignored. 239 "revision": "A String", # The iteration of the package build from the above version. 240 "name": "A String", # The main part of the version name. 241 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 242 }, 243 }, 244 ], 245 "name": "A String", # The name of the package. 246 }, 247 "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as 248 # a filter in list requests. 249 "relatedUrl": [ # URLs associated with this note 250 { # Metadata for any related URL information 251 "url": "A String", # Specific URL to associate with the note 252 "label": "A String", # Label to describe usage of the URL 253 }, 254 ], 255 "longDescription": "A String", # A detailed description of this `Note`. 256 "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. 257 # example, an organization might have one `AttestationAuthority` for "QA" and 258 # one for "build". This Note is intended to act strictly as a grouping 259 # mechanism for the attached Occurrences (Attestations). This grouping 260 # mechanism also provides a security boundary, since IAM ACLs gate the ability 261 # for a principle to attach an Occurrence to a given Note. It also provides a 262 # single point of lookup to find all attached Attestation Occurrences, even if 263 # they don't all live in the same project. 264 "hint": { # This submessage provides human-readable hints about the purpose of the 265 # AttestationAuthority. Because the name of a Note acts as its resource 266 # reference, it is important to disambiguate the canonical name of the Note 267 # (which might be a UUID for security purposes) from "readable" names more 268 # suitable for debug output. Note that these hints should NOT be used to 269 # look up AttestationAuthorities in security sensitive contexts, such as when 270 # looking up Attestations to verify. 271 "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". 272 }, 273 }, 274 "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. 275 # relationship. Linked occurrences are derived from this or an 276 # equivalent image via: 277 # FROM <Basis.resource_url> 278 # Or an equivalent reference, e.g. a tag of the resource_url. 279 "resourceUrl": "A String", # The resource_url for the resource representing the basis of 280 # associated occurrence images. 281 "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. 282 "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 283 # representation. 284 # This field can be used as a filter in list requests. 285 "v2Blob": [ # The ordered list of v2 blobs that represent a given image. 286 "A String", 287 ], 288 "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: 289 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 290 # Only the name of the final blob is kept. 291 # This field can be used as a filter in list requests. 292 }, 293 }, 294 "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. 295 "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. 296 "resourceUri": [ # Resource URI for the artifact being deployed. 297 "A String", 298 ], 299 }, 300 "shortDescription": "A String", # A one sentence description of this `Note`. 301 "createTime": "A String", # Output only. The time this note was created. This field can be used as a 302 # filter in list requests. 303 "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. 304 # exists in a provider's project. A `Discovery` occurrence is created in a 305 # consumer's project at the start of analysis. The occurrence's operation will 306 # indicate the status of the analysis. Absence of an occurrence linked to this 307 # note for a resource indicates that analysis hasn't started. 308 "analysisKind": "A String", # The kind of analysis that is handled by this discovery. 309 }, 310} 311 312 name: string, The name of the project. 313Should be of the form "providers/{provider_id}". 314@Deprecated 315 noteId: string, The ID to use for this note. 316 x__xgafv: string, V1 error format. 317 Allowed values 318 1 - v1 error format 319 2 - v2 error format 320 321Returns: 322 An object of the form: 323 324 { # Provides a detailed description of a `Note`. 325 "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. 326 # the provenance message in linked BuildDetails. 327 "builderVersion": "A String", # Version of the builder which produced this Note. 328 "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this 329 # `BuilderDetails`. 330 "publicKey": "A String", # Public key of the builder which can be used to verify that the related 331 # findings are valid and unchanged. If `key_type` is empty, this defaults 332 # to PEM encoded public keys. 333 # 334 # This field may be empty if `key_id` references an external key. 335 # 336 # For Cloud Build based signatures, this is a PEM encoded public 337 # key. To verify the Cloud Build signature, place the contents of 338 # this field into a file (public.pem). The signature field is base64-decoded 339 # into its binary representation in signature.bin, and the provenance bytes 340 # from `BuildDetails` are base64-decoded into a binary representation in 341 # signed.bin. OpenSSL can then verify the signature: 342 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 343 "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in 344 # `key_id` 345 "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key 346 # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the 347 # CN for a cert), or a reference to an external key (such as a reference to a 348 # key in Cloud Key Management Service). 349 "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. 350 }, 351 }, 352 "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This 353 # field can be used as a filter in list requests. 354 "name": "A String", # The name of the note in the form 355 # "providers/{provider_id}/notes/{NOTE_ID}" 356 "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. 357 "cvssScore": 3.14, # The CVSS score for this Vulnerability. 358 "severity": "A String", # Note provider assigned impact of the vulnerability 359 "details": [ # All information about the package to specifically identify this 360 # vulnerability. One entry per (version range and cpe_uri) the 361 # package vulnerability has manifested in. 362 { # Identifies all occurrences of this vulnerability in the package for a 363 # specific distro/location 364 # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 365 "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. 366 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in 367 # which the vulnerability manifests. Examples include distro or storage 368 # location for vulnerable jar. 369 # This field can be used as a filter in list requests. 370 "description": "A String", # A vendor-specific description of this note. 371 "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. 372 # For a discussion of this in Debian/Ubuntu: 373 # http://serverfault.com/questions/604541/debian-packages-version-convention 374 # For a discussion of this in Redhat/Fedora/Centos: 375 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 376 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 377 # If kind is not NORMAL, then the other fields are ignored. 378 "revision": "A String", # The iteration of the package build from the above version. 379 "name": "A String", # The main part of the version name. 380 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 381 }, 382 "package": "A String", # The name of the package where the vulnerability was found. 383 # This field can be used as a filter in list requests. 384 "packageType": "A String", # The type of package; whether native or non native(ruby gems, 385 # node.js packages etc) 386 "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to 387 # obsolete details. 388 "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. 389 # 390 # The max version of the package in which the vulnerability exists. 391 # For a discussion of this in Debian/Ubuntu: 392 # http://serverfault.com/questions/604541/debian-packages-version-convention 393 # For a discussion of this in Redhat/Fedora/Centos: 394 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 395 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 396 # If kind is not NORMAL, then the other fields are ignored. 397 "revision": "A String", # The iteration of the package build from the above version. 398 "name": "A String", # The main part of the version name. 399 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 400 }, 401 "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. 402 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) 403 # format. Examples include distro or storage location for vulnerable jar. 404 # This field can be used as a filter in list requests. 405 "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 406 # filter in list requests. 407 # For a discussion of this in Debian/Ubuntu: 408 # http://serverfault.com/questions/604541/debian-packages-version-convention 409 # For a discussion of this in Redhat/Fedora/Centos: 410 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 411 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 412 # If kind is not NORMAL, then the other fields are ignored. 413 "revision": "A String", # The iteration of the package build from the above version. 414 "name": "A String", # The main part of the version name. 415 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 416 }, 417 "package": "A String", # The package being described. 418 }, 419 }, 420 ], 421 }, 422 "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. 423 # various channels. 424 # e.g. glibc (aka libc6) is distributed by many, at various versions. 425 "distribution": [ # The various channels by which a package is distributed. 426 { # This represents a particular channel of distribution for a given package. 427 # e.g. Debian's jessie-backports dpkg mirror 428 "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) 429 # denoting the package manager version distributing a package. 430 "maintainer": "A String", # A freeform string denoting the maintainer of this package. 431 "description": "A String", # The distribution channel-specific description of this package. 432 "url": "A String", # The distribution channel-specific homepage for this package. 433 "architecture": "A String", # The CPU architecture for which packages in this distribution 434 # channel were built 435 "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in 436 # this distribution channel. 437 # For a discussion of this in Debian/Ubuntu: 438 # http://serverfault.com/questions/604541/debian-packages-version-convention 439 # For a discussion of this in Redhat/Fedora/Centos: 440 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 441 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 442 # If kind is not NORMAL, then the other fields are ignored. 443 "revision": "A String", # The iteration of the package build from the above version. 444 "name": "A String", # The main part of the version name. 445 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 446 }, 447 }, 448 ], 449 "name": "A String", # The name of the package. 450 }, 451 "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as 452 # a filter in list requests. 453 "relatedUrl": [ # URLs associated with this note 454 { # Metadata for any related URL information 455 "url": "A String", # Specific URL to associate with the note 456 "label": "A String", # Label to describe usage of the URL 457 }, 458 ], 459 "longDescription": "A String", # A detailed description of this `Note`. 460 "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. 461 # example, an organization might have one `AttestationAuthority` for "QA" and 462 # one for "build". This Note is intended to act strictly as a grouping 463 # mechanism for the attached Occurrences (Attestations). This grouping 464 # mechanism also provides a security boundary, since IAM ACLs gate the ability 465 # for a principle to attach an Occurrence to a given Note. It also provides a 466 # single point of lookup to find all attached Attestation Occurrences, even if 467 # they don't all live in the same project. 468 "hint": { # This submessage provides human-readable hints about the purpose of the 469 # AttestationAuthority. Because the name of a Note acts as its resource 470 # reference, it is important to disambiguate the canonical name of the Note 471 # (which might be a UUID for security purposes) from "readable" names more 472 # suitable for debug output. Note that these hints should NOT be used to 473 # look up AttestationAuthorities in security sensitive contexts, such as when 474 # looking up Attestations to verify. 475 "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". 476 }, 477 }, 478 "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. 479 # relationship. Linked occurrences are derived from this or an 480 # equivalent image via: 481 # FROM <Basis.resource_url> 482 # Or an equivalent reference, e.g. a tag of the resource_url. 483 "resourceUrl": "A String", # The resource_url for the resource representing the basis of 484 # associated occurrence images. 485 "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. 486 "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 487 # representation. 488 # This field can be used as a filter in list requests. 489 "v2Blob": [ # The ordered list of v2 blobs that represent a given image. 490 "A String", 491 ], 492 "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: 493 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 494 # Only the name of the final blob is kept. 495 # This field can be used as a filter in list requests. 496 }, 497 }, 498 "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. 499 "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. 500 "resourceUri": [ # Resource URI for the artifact being deployed. 501 "A String", 502 ], 503 }, 504 "shortDescription": "A String", # A one sentence description of this `Note`. 505 "createTime": "A String", # Output only. The time this note was created. This field can be used as a 506 # filter in list requests. 507 "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. 508 # exists in a provider's project. A `Discovery` occurrence is created in a 509 # consumer's project at the start of analysis. The occurrence's operation will 510 # indicate the status of the analysis. Absence of an occurrence linked to this 511 # note for a resource indicates that analysis hasn't started. 512 "analysisKind": "A String", # The kind of analysis that is handled by this discovery. 513 }, 514 }</pre> 515</div> 516 517<div class="method"> 518 <code class="details" id="delete">delete(name, x__xgafv=None)</code> 519 <pre>Deletes the given `Note` from the system. 520 521Args: 522 name: string, The name of the note in the form of 523"providers/{provider_id}/notes/{NOTE_ID}" (required) 524 x__xgafv: string, V1 error format. 525 Allowed values 526 1 - v1 error format 527 2 - v2 error format 528 529Returns: 530 An object of the form: 531 532 { # A generic empty message that you can re-use to avoid defining duplicated 533 # empty messages in your APIs. A typical example is to use it as the request 534 # or the response type of an API method. For instance: 535 # 536 # service Foo { 537 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); 538 # } 539 # 540 # The JSON representation for `Empty` is empty JSON object `{}`. 541 }</pre> 542</div> 543 544<div class="method"> 545 <code class="details" id="get">get(name, x__xgafv=None)</code> 546 <pre>Returns the requested `Note`. 547 548Args: 549 name: string, The name of the note in the form of 550"providers/{provider_id}/notes/{NOTE_ID}" (required) 551 x__xgafv: string, V1 error format. 552 Allowed values 553 1 - v1 error format 554 2 - v2 error format 555 556Returns: 557 An object of the form: 558 559 { # Provides a detailed description of a `Note`. 560 "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. 561 # the provenance message in linked BuildDetails. 562 "builderVersion": "A String", # Version of the builder which produced this Note. 563 "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this 564 # `BuilderDetails`. 565 "publicKey": "A String", # Public key of the builder which can be used to verify that the related 566 # findings are valid and unchanged. If `key_type` is empty, this defaults 567 # to PEM encoded public keys. 568 # 569 # This field may be empty if `key_id` references an external key. 570 # 571 # For Cloud Build based signatures, this is a PEM encoded public 572 # key. To verify the Cloud Build signature, place the contents of 573 # this field into a file (public.pem). The signature field is base64-decoded 574 # into its binary representation in signature.bin, and the provenance bytes 575 # from `BuildDetails` are base64-decoded into a binary representation in 576 # signed.bin. OpenSSL can then verify the signature: 577 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 578 "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in 579 # `key_id` 580 "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key 581 # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the 582 # CN for a cert), or a reference to an external key (such as a reference to a 583 # key in Cloud Key Management Service). 584 "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. 585 }, 586 }, 587 "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This 588 # field can be used as a filter in list requests. 589 "name": "A String", # The name of the note in the form 590 # "providers/{provider_id}/notes/{NOTE_ID}" 591 "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. 592 "cvssScore": 3.14, # The CVSS score for this Vulnerability. 593 "severity": "A String", # Note provider assigned impact of the vulnerability 594 "details": [ # All information about the package to specifically identify this 595 # vulnerability. One entry per (version range and cpe_uri) the 596 # package vulnerability has manifested in. 597 { # Identifies all occurrences of this vulnerability in the package for a 598 # specific distro/location 599 # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 600 "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. 601 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in 602 # which the vulnerability manifests. Examples include distro or storage 603 # location for vulnerable jar. 604 # This field can be used as a filter in list requests. 605 "description": "A String", # A vendor-specific description of this note. 606 "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. 607 # For a discussion of this in Debian/Ubuntu: 608 # http://serverfault.com/questions/604541/debian-packages-version-convention 609 # For a discussion of this in Redhat/Fedora/Centos: 610 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 611 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 612 # If kind is not NORMAL, then the other fields are ignored. 613 "revision": "A String", # The iteration of the package build from the above version. 614 "name": "A String", # The main part of the version name. 615 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 616 }, 617 "package": "A String", # The name of the package where the vulnerability was found. 618 # This field can be used as a filter in list requests. 619 "packageType": "A String", # The type of package; whether native or non native(ruby gems, 620 # node.js packages etc) 621 "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to 622 # obsolete details. 623 "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. 624 # 625 # The max version of the package in which the vulnerability exists. 626 # For a discussion of this in Debian/Ubuntu: 627 # http://serverfault.com/questions/604541/debian-packages-version-convention 628 # For a discussion of this in Redhat/Fedora/Centos: 629 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 630 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 631 # If kind is not NORMAL, then the other fields are ignored. 632 "revision": "A String", # The iteration of the package build from the above version. 633 "name": "A String", # The main part of the version name. 634 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 635 }, 636 "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. 637 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) 638 # format. Examples include distro or storage location for vulnerable jar. 639 # This field can be used as a filter in list requests. 640 "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 641 # filter in list requests. 642 # For a discussion of this in Debian/Ubuntu: 643 # http://serverfault.com/questions/604541/debian-packages-version-convention 644 # For a discussion of this in Redhat/Fedora/Centos: 645 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 646 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 647 # If kind is not NORMAL, then the other fields are ignored. 648 "revision": "A String", # The iteration of the package build from the above version. 649 "name": "A String", # The main part of the version name. 650 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 651 }, 652 "package": "A String", # The package being described. 653 }, 654 }, 655 ], 656 }, 657 "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. 658 # various channels. 659 # e.g. glibc (aka libc6) is distributed by many, at various versions. 660 "distribution": [ # The various channels by which a package is distributed. 661 { # This represents a particular channel of distribution for a given package. 662 # e.g. Debian's jessie-backports dpkg mirror 663 "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) 664 # denoting the package manager version distributing a package. 665 "maintainer": "A String", # A freeform string denoting the maintainer of this package. 666 "description": "A String", # The distribution channel-specific description of this package. 667 "url": "A String", # The distribution channel-specific homepage for this package. 668 "architecture": "A String", # The CPU architecture for which packages in this distribution 669 # channel were built 670 "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in 671 # this distribution channel. 672 # For a discussion of this in Debian/Ubuntu: 673 # http://serverfault.com/questions/604541/debian-packages-version-convention 674 # For a discussion of this in Redhat/Fedora/Centos: 675 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 676 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 677 # If kind is not NORMAL, then the other fields are ignored. 678 "revision": "A String", # The iteration of the package build from the above version. 679 "name": "A String", # The main part of the version name. 680 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 681 }, 682 }, 683 ], 684 "name": "A String", # The name of the package. 685 }, 686 "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as 687 # a filter in list requests. 688 "relatedUrl": [ # URLs associated with this note 689 { # Metadata for any related URL information 690 "url": "A String", # Specific URL to associate with the note 691 "label": "A String", # Label to describe usage of the URL 692 }, 693 ], 694 "longDescription": "A String", # A detailed description of this `Note`. 695 "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. 696 # example, an organization might have one `AttestationAuthority` for "QA" and 697 # one for "build". This Note is intended to act strictly as a grouping 698 # mechanism for the attached Occurrences (Attestations). This grouping 699 # mechanism also provides a security boundary, since IAM ACLs gate the ability 700 # for a principle to attach an Occurrence to a given Note. It also provides a 701 # single point of lookup to find all attached Attestation Occurrences, even if 702 # they don't all live in the same project. 703 "hint": { # This submessage provides human-readable hints about the purpose of the 704 # AttestationAuthority. Because the name of a Note acts as its resource 705 # reference, it is important to disambiguate the canonical name of the Note 706 # (which might be a UUID for security purposes) from "readable" names more 707 # suitable for debug output. Note that these hints should NOT be used to 708 # look up AttestationAuthorities in security sensitive contexts, such as when 709 # looking up Attestations to verify. 710 "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". 711 }, 712 }, 713 "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. 714 # relationship. Linked occurrences are derived from this or an 715 # equivalent image via: 716 # FROM <Basis.resource_url> 717 # Or an equivalent reference, e.g. a tag of the resource_url. 718 "resourceUrl": "A String", # The resource_url for the resource representing the basis of 719 # associated occurrence images. 720 "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. 721 "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 722 # representation. 723 # This field can be used as a filter in list requests. 724 "v2Blob": [ # The ordered list of v2 blobs that represent a given image. 725 "A String", 726 ], 727 "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: 728 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 729 # Only the name of the final blob is kept. 730 # This field can be used as a filter in list requests. 731 }, 732 }, 733 "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. 734 "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. 735 "resourceUri": [ # Resource URI for the artifact being deployed. 736 "A String", 737 ], 738 }, 739 "shortDescription": "A String", # A one sentence description of this `Note`. 740 "createTime": "A String", # Output only. The time this note was created. This field can be used as a 741 # filter in list requests. 742 "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. 743 # exists in a provider's project. A `Discovery` occurrence is created in a 744 # consumer's project at the start of analysis. The occurrence's operation will 745 # indicate the status of the analysis. Absence of an occurrence linked to this 746 # note for a resource indicates that analysis hasn't started. 747 "analysisKind": "A String", # The kind of analysis that is handled by this discovery. 748 }, 749 }</pre> 750</div> 751 752<div class="method"> 753 <code class="details" id="getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</code> 754 <pre>Gets the access control policy for a note or an `Occurrence` resource. 755Requires `containeranalysis.notes.setIamPolicy` or 756`containeranalysis.occurrences.setIamPolicy` permission if the resource is 757a note or occurrence, respectively. 758Attempting to call this method on a resource without the required 759permission will result in a `PERMISSION_DENIED` error. Attempting to call 760this method on a non-existent resource will result in a `NOT_FOUND` error 761if the user has list permission on the project, or a `PERMISSION_DENIED` 762error otherwise. The resource takes the following formats: 763`projects/{PROJECT_ID}/occurrences/{OCCURRENCE_ID}` for occurrences and 764projects/{PROJECT_ID}/notes/{NOTE_ID} for notes 765 766Args: 767 resource: string, REQUIRED: The resource for which the policy is being requested. 768See the operation documentation for the appropriate value for this field. (required) 769 body: object, The request body. 770 The object takes the form of: 771 772{ # Request message for `GetIamPolicy` method. 773 } 774 775 x__xgafv: string, V1 error format. 776 Allowed values 777 1 - v1 error format 778 2 - v2 error format 779 780Returns: 781 An object of the form: 782 783 { # Defines an Identity and Access Management (IAM) policy. It is used to 784 # specify access control policies for Cloud Platform resources. 785 # 786 # 787 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of 788 # `members` to a `role`, where the members can be user accounts, Google groups, 789 # Google domains, and service accounts. A `role` is a named list of permissions 790 # defined by IAM. 791 # 792 # **JSON Example** 793 # 794 # { 795 # "bindings": [ 796 # { 797 # "role": "roles/owner", 798 # "members": [ 799 # "user:mike@example.com", 800 # "group:admins@example.com", 801 # "domain:google.com", 802 # "serviceAccount:my-other-app@appspot.gserviceaccount.com" 803 # ] 804 # }, 805 # { 806 # "role": "roles/viewer", 807 # "members": ["user:sean@example.com"] 808 # } 809 # ] 810 # } 811 # 812 # **YAML Example** 813 # 814 # bindings: 815 # - members: 816 # - user:mike@example.com 817 # - group:admins@example.com 818 # - domain:google.com 819 # - serviceAccount:my-other-app@appspot.gserviceaccount.com 820 # role: roles/owner 821 # - members: 822 # - user:sean@example.com 823 # role: roles/viewer 824 # 825 # 826 # For a description of IAM and its features, see the 827 # [IAM developer's guide](https://cloud.google.com/iam/docs). 828 "bindings": [ # Associates a list of `members` to a `role`. 829 # `bindings` with no members will result in an error. 830 { # Associates `members` with a `role`. 831 "role": "A String", # Role that is assigned to `members`. 832 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 833 "members": [ # Specifies the identities requesting access for a Cloud Platform resource. 834 # `members` can have the following values: 835 # 836 # * `allUsers`: A special identifier that represents anyone who is 837 # on the internet; with or without a Google account. 838 # 839 # * `allAuthenticatedUsers`: A special identifier that represents anyone 840 # who is authenticated with a Google account or a service account. 841 # 842 # * `user:{emailid}`: An email address that represents a specific Google 843 # account. For example, `alice@gmail.com` . 844 # 845 # 846 # * `serviceAccount:{emailid}`: An email address that represents a service 847 # account. For example, `my-other-app@appspot.gserviceaccount.com`. 848 # 849 # * `group:{emailid}`: An email address that represents a Google group. 850 # For example, `admins@example.com`. 851 # 852 # 853 # * `domain:{domain}`: The G Suite domain (primary) that represents all the 854 # users of that domain. For example, `google.com` or `example.com`. 855 # 856 "A String", 857 ], 858 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. 859 # NOTE: An unsatisfied condition will not allow user access via current 860 # binding. Different bindings, including their conditions, are examined 861 # independently. 862 # 863 # title: "User account presence" 864 # description: "Determines whether the request has a user account" 865 # expression: "size(request.user) > 0" 866 "description": "A String", # An optional description of the expression. This is a longer text which 867 # describes the expression, e.g. when hovered over it in a UI. 868 "expression": "A String", # Textual representation of an expression in 869 # Common Expression Language syntax. 870 # 871 # The application context of the containing message determines which 872 # well-known feature set of CEL is supported. 873 "location": "A String", # An optional string indicating the location of the expression for error 874 # reporting, e.g. a file name and a position in the file. 875 "title": "A String", # An optional title for the expression, i.e. a short string describing 876 # its purpose. This can be used e.g. in UIs which allow to enter the 877 # expression. 878 }, 879 }, 880 ], 881 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. 882 { # Specifies the audit configuration for a service. 883 # The configuration determines which permission types are logged, and what 884 # identities, if any, are exempted from logging. 885 # An AuditConfig must have one or more AuditLogConfigs. 886 # 887 # If there are AuditConfigs for both `allServices` and a specific service, 888 # the union of the two AuditConfigs is used for that service: the log_types 889 # specified in each AuditConfig are enabled, and the exempted_members in each 890 # AuditLogConfig are exempted. 891 # 892 # Example Policy with multiple AuditConfigs: 893 # 894 # { 895 # "audit_configs": [ 896 # { 897 # "service": "allServices" 898 # "audit_log_configs": [ 899 # { 900 # "log_type": "DATA_READ", 901 # "exempted_members": [ 902 # "user:foo@gmail.com" 903 # ] 904 # }, 905 # { 906 # "log_type": "DATA_WRITE", 907 # }, 908 # { 909 # "log_type": "ADMIN_READ", 910 # } 911 # ] 912 # }, 913 # { 914 # "service": "fooservice.googleapis.com" 915 # "audit_log_configs": [ 916 # { 917 # "log_type": "DATA_READ", 918 # }, 919 # { 920 # "log_type": "DATA_WRITE", 921 # "exempted_members": [ 922 # "user:bar@gmail.com" 923 # ] 924 # } 925 # ] 926 # } 927 # ] 928 # } 929 # 930 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ 931 # logging. It also exempts foo@gmail.com from DATA_READ logging, and 932 # bar@gmail.com from DATA_WRITE logging. 933 "auditLogConfigs": [ # The configuration for logging of each type of permission. 934 { # Provides the configuration for logging a type of permissions. 935 # Example: 936 # 937 # { 938 # "audit_log_configs": [ 939 # { 940 # "log_type": "DATA_READ", 941 # "exempted_members": [ 942 # "user:foo@gmail.com" 943 # ] 944 # }, 945 # { 946 # "log_type": "DATA_WRITE", 947 # } 948 # ] 949 # } 950 # 951 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting 952 # foo@gmail.com from DATA_READ logging. 953 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of 954 # permission. 955 # Follows the same format of Binding.members. 956 "A String", 957 ], 958 "logType": "A String", # The log type that this config enables. 959 }, 960 ], 961 "service": "A String", # Specifies a service that will be enabled for audit logging. 962 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. 963 # `allServices` is a special value that covers all services. 964 }, 965 ], 966 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help 967 # prevent simultaneous updates of a policy from overwriting each other. 968 # It is strongly suggested that systems make use of the `etag` in the 969 # read-modify-write cycle to perform policy updates in order to avoid race 970 # conditions: An `etag` is returned in the response to `getIamPolicy`, and 971 # systems are expected to put that etag in the request to `setIamPolicy` to 972 # ensure that their change will be applied to the same version of the policy. 973 # 974 # If no `etag` is provided in the call to `setIamPolicy`, then the existing 975 # policy is overwritten blindly. 976 "version": 42, # Deprecated. 977 }</pre> 978</div> 979 980<div class="method"> 981 <code class="details" id="list">list(parent, name=None, pageSize=None, pageToken=None, x__xgafv=None, filter=None)</code> 982 <pre>Lists all `Notes` for a given project. 983 984Args: 985 parent: string, This field contains the project Id for example: "projects/{PROJECT_ID}". (required) 986 name: string, The name field will contain the project Id for example: 987"providers/{provider_id} 988@Deprecated 989 pageSize: integer, Number of notes to return in the list. 990 pageToken: string, Token to provide to skip to a particular spot in the list. 991 x__xgafv: string, V1 error format. 992 Allowed values 993 1 - v1 error format 994 2 - v2 error format 995 filter: string, The filter expression. 996 997Returns: 998 An object of the form: 999 1000 { # Response including listed notes. 1001 "nextPageToken": "A String", # The next pagination token in the list response. It should be used as 1002 # page_token for the following request. An empty value means no more result. 1003 "notes": [ # The occurrences requested 1004 { # Provides a detailed description of a `Note`. 1005 "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. 1006 # the provenance message in linked BuildDetails. 1007 "builderVersion": "A String", # Version of the builder which produced this Note. 1008 "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this 1009 # `BuilderDetails`. 1010 "publicKey": "A String", # Public key of the builder which can be used to verify that the related 1011 # findings are valid and unchanged. If `key_type` is empty, this defaults 1012 # to PEM encoded public keys. 1013 # 1014 # This field may be empty if `key_id` references an external key. 1015 # 1016 # For Cloud Build based signatures, this is a PEM encoded public 1017 # key. To verify the Cloud Build signature, place the contents of 1018 # this field into a file (public.pem). The signature field is base64-decoded 1019 # into its binary representation in signature.bin, and the provenance bytes 1020 # from `BuildDetails` are base64-decoded into a binary representation in 1021 # signed.bin. OpenSSL can then verify the signature: 1022 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 1023 "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in 1024 # `key_id` 1025 "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key 1026 # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the 1027 # CN for a cert), or a reference to an external key (such as a reference to a 1028 # key in Cloud Key Management Service). 1029 "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. 1030 }, 1031 }, 1032 "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This 1033 # field can be used as a filter in list requests. 1034 "name": "A String", # The name of the note in the form 1035 # "providers/{provider_id}/notes/{NOTE_ID}" 1036 "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. 1037 "cvssScore": 3.14, # The CVSS score for this Vulnerability. 1038 "severity": "A String", # Note provider assigned impact of the vulnerability 1039 "details": [ # All information about the package to specifically identify this 1040 # vulnerability. One entry per (version range and cpe_uri) the 1041 # package vulnerability has manifested in. 1042 { # Identifies all occurrences of this vulnerability in the package for a 1043 # specific distro/location 1044 # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 1045 "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. 1046 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in 1047 # which the vulnerability manifests. Examples include distro or storage 1048 # location for vulnerable jar. 1049 # This field can be used as a filter in list requests. 1050 "description": "A String", # A vendor-specific description of this note. 1051 "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. 1052 # For a discussion of this in Debian/Ubuntu: 1053 # http://serverfault.com/questions/604541/debian-packages-version-convention 1054 # For a discussion of this in Redhat/Fedora/Centos: 1055 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1056 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1057 # If kind is not NORMAL, then the other fields are ignored. 1058 "revision": "A String", # The iteration of the package build from the above version. 1059 "name": "A String", # The main part of the version name. 1060 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1061 }, 1062 "package": "A String", # The name of the package where the vulnerability was found. 1063 # This field can be used as a filter in list requests. 1064 "packageType": "A String", # The type of package; whether native or non native(ruby gems, 1065 # node.js packages etc) 1066 "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to 1067 # obsolete details. 1068 "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. 1069 # 1070 # The max version of the package in which the vulnerability exists. 1071 # For a discussion of this in Debian/Ubuntu: 1072 # http://serverfault.com/questions/604541/debian-packages-version-convention 1073 # For a discussion of this in Redhat/Fedora/Centos: 1074 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1075 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1076 # If kind is not NORMAL, then the other fields are ignored. 1077 "revision": "A String", # The iteration of the package build from the above version. 1078 "name": "A String", # The main part of the version name. 1079 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1080 }, 1081 "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. 1082 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) 1083 # format. Examples include distro or storage location for vulnerable jar. 1084 # This field can be used as a filter in list requests. 1085 "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 1086 # filter in list requests. 1087 # For a discussion of this in Debian/Ubuntu: 1088 # http://serverfault.com/questions/604541/debian-packages-version-convention 1089 # For a discussion of this in Redhat/Fedora/Centos: 1090 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1091 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1092 # If kind is not NORMAL, then the other fields are ignored. 1093 "revision": "A String", # The iteration of the package build from the above version. 1094 "name": "A String", # The main part of the version name. 1095 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1096 }, 1097 "package": "A String", # The package being described. 1098 }, 1099 }, 1100 ], 1101 }, 1102 "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. 1103 # various channels. 1104 # e.g. glibc (aka libc6) is distributed by many, at various versions. 1105 "distribution": [ # The various channels by which a package is distributed. 1106 { # This represents a particular channel of distribution for a given package. 1107 # e.g. Debian's jessie-backports dpkg mirror 1108 "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) 1109 # denoting the package manager version distributing a package. 1110 "maintainer": "A String", # A freeform string denoting the maintainer of this package. 1111 "description": "A String", # The distribution channel-specific description of this package. 1112 "url": "A String", # The distribution channel-specific homepage for this package. 1113 "architecture": "A String", # The CPU architecture for which packages in this distribution 1114 # channel were built 1115 "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in 1116 # this distribution channel. 1117 # For a discussion of this in Debian/Ubuntu: 1118 # http://serverfault.com/questions/604541/debian-packages-version-convention 1119 # For a discussion of this in Redhat/Fedora/Centos: 1120 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1121 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1122 # If kind is not NORMAL, then the other fields are ignored. 1123 "revision": "A String", # The iteration of the package build from the above version. 1124 "name": "A String", # The main part of the version name. 1125 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1126 }, 1127 }, 1128 ], 1129 "name": "A String", # The name of the package. 1130 }, 1131 "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as 1132 # a filter in list requests. 1133 "relatedUrl": [ # URLs associated with this note 1134 { # Metadata for any related URL information 1135 "url": "A String", # Specific URL to associate with the note 1136 "label": "A String", # Label to describe usage of the URL 1137 }, 1138 ], 1139 "longDescription": "A String", # A detailed description of this `Note`. 1140 "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. 1141 # example, an organization might have one `AttestationAuthority` for "QA" and 1142 # one for "build". This Note is intended to act strictly as a grouping 1143 # mechanism for the attached Occurrences (Attestations). This grouping 1144 # mechanism also provides a security boundary, since IAM ACLs gate the ability 1145 # for a principle to attach an Occurrence to a given Note. It also provides a 1146 # single point of lookup to find all attached Attestation Occurrences, even if 1147 # they don't all live in the same project. 1148 "hint": { # This submessage provides human-readable hints about the purpose of the 1149 # AttestationAuthority. Because the name of a Note acts as its resource 1150 # reference, it is important to disambiguate the canonical name of the Note 1151 # (which might be a UUID for security purposes) from "readable" names more 1152 # suitable for debug output. Note that these hints should NOT be used to 1153 # look up AttestationAuthorities in security sensitive contexts, such as when 1154 # looking up Attestations to verify. 1155 "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". 1156 }, 1157 }, 1158 "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. 1159 # relationship. Linked occurrences are derived from this or an 1160 # equivalent image via: 1161 # FROM <Basis.resource_url> 1162 # Or an equivalent reference, e.g. a tag of the resource_url. 1163 "resourceUrl": "A String", # The resource_url for the resource representing the basis of 1164 # associated occurrence images. 1165 "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. 1166 "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 1167 # representation. 1168 # This field can be used as a filter in list requests. 1169 "v2Blob": [ # The ordered list of v2 blobs that represent a given image. 1170 "A String", 1171 ], 1172 "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: 1173 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 1174 # Only the name of the final blob is kept. 1175 # This field can be used as a filter in list requests. 1176 }, 1177 }, 1178 "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. 1179 "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. 1180 "resourceUri": [ # Resource URI for the artifact being deployed. 1181 "A String", 1182 ], 1183 }, 1184 "shortDescription": "A String", # A one sentence description of this `Note`. 1185 "createTime": "A String", # Output only. The time this note was created. This field can be used as a 1186 # filter in list requests. 1187 "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. 1188 # exists in a provider's project. A `Discovery` occurrence is created in a 1189 # consumer's project at the start of analysis. The occurrence's operation will 1190 # indicate the status of the analysis. Absence of an occurrence linked to this 1191 # note for a resource indicates that analysis hasn't started. 1192 "analysisKind": "A String", # The kind of analysis that is handled by this discovery. 1193 }, 1194 }, 1195 ], 1196 }</pre> 1197</div> 1198 1199<div class="method"> 1200 <code class="details" id="list_next">list_next(previous_request, previous_response)</code> 1201 <pre>Retrieves the next page of results. 1202 1203Args: 1204 previous_request: The request for the previous page. (required) 1205 previous_response: The response from the request for the previous page. (required) 1206 1207Returns: 1208 A request object that you can call 'execute()' on to request the next 1209 page. Returns None if there are no more items in the collection. 1210 </pre> 1211</div> 1212 1213<div class="method"> 1214 <code class="details" id="patch">patch(name, body, updateMask=None, x__xgafv=None)</code> 1215 <pre>Updates an existing `Note`. 1216 1217Args: 1218 name: string, The name of the note. 1219Should be of the form "projects/{provider_id}/notes/{note_id}". (required) 1220 body: object, The request body. (required) 1221 The object takes the form of: 1222 1223{ # Provides a detailed description of a `Note`. 1224 "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. 1225 # the provenance message in linked BuildDetails. 1226 "builderVersion": "A String", # Version of the builder which produced this Note. 1227 "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this 1228 # `BuilderDetails`. 1229 "publicKey": "A String", # Public key of the builder which can be used to verify that the related 1230 # findings are valid and unchanged. If `key_type` is empty, this defaults 1231 # to PEM encoded public keys. 1232 # 1233 # This field may be empty if `key_id` references an external key. 1234 # 1235 # For Cloud Build based signatures, this is a PEM encoded public 1236 # key. To verify the Cloud Build signature, place the contents of 1237 # this field into a file (public.pem). The signature field is base64-decoded 1238 # into its binary representation in signature.bin, and the provenance bytes 1239 # from `BuildDetails` are base64-decoded into a binary representation in 1240 # signed.bin. OpenSSL can then verify the signature: 1241 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 1242 "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in 1243 # `key_id` 1244 "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key 1245 # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the 1246 # CN for a cert), or a reference to an external key (such as a reference to a 1247 # key in Cloud Key Management Service). 1248 "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. 1249 }, 1250 }, 1251 "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This 1252 # field can be used as a filter in list requests. 1253 "name": "A String", # The name of the note in the form 1254 # "providers/{provider_id}/notes/{NOTE_ID}" 1255 "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. 1256 "cvssScore": 3.14, # The CVSS score for this Vulnerability. 1257 "severity": "A String", # Note provider assigned impact of the vulnerability 1258 "details": [ # All information about the package to specifically identify this 1259 # vulnerability. One entry per (version range and cpe_uri) the 1260 # package vulnerability has manifested in. 1261 { # Identifies all occurrences of this vulnerability in the package for a 1262 # specific distro/location 1263 # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 1264 "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. 1265 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in 1266 # which the vulnerability manifests. Examples include distro or storage 1267 # location for vulnerable jar. 1268 # This field can be used as a filter in list requests. 1269 "description": "A String", # A vendor-specific description of this note. 1270 "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. 1271 # For a discussion of this in Debian/Ubuntu: 1272 # http://serverfault.com/questions/604541/debian-packages-version-convention 1273 # For a discussion of this in Redhat/Fedora/Centos: 1274 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1275 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1276 # If kind is not NORMAL, then the other fields are ignored. 1277 "revision": "A String", # The iteration of the package build from the above version. 1278 "name": "A String", # The main part of the version name. 1279 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1280 }, 1281 "package": "A String", # The name of the package where the vulnerability was found. 1282 # This field can be used as a filter in list requests. 1283 "packageType": "A String", # The type of package; whether native or non native(ruby gems, 1284 # node.js packages etc) 1285 "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to 1286 # obsolete details. 1287 "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. 1288 # 1289 # The max version of the package in which the vulnerability exists. 1290 # For a discussion of this in Debian/Ubuntu: 1291 # http://serverfault.com/questions/604541/debian-packages-version-convention 1292 # For a discussion of this in Redhat/Fedora/Centos: 1293 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1294 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1295 # If kind is not NORMAL, then the other fields are ignored. 1296 "revision": "A String", # The iteration of the package build from the above version. 1297 "name": "A String", # The main part of the version name. 1298 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1299 }, 1300 "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. 1301 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) 1302 # format. Examples include distro or storage location for vulnerable jar. 1303 # This field can be used as a filter in list requests. 1304 "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 1305 # filter in list requests. 1306 # For a discussion of this in Debian/Ubuntu: 1307 # http://serverfault.com/questions/604541/debian-packages-version-convention 1308 # For a discussion of this in Redhat/Fedora/Centos: 1309 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1310 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1311 # If kind is not NORMAL, then the other fields are ignored. 1312 "revision": "A String", # The iteration of the package build from the above version. 1313 "name": "A String", # The main part of the version name. 1314 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1315 }, 1316 "package": "A String", # The package being described. 1317 }, 1318 }, 1319 ], 1320 }, 1321 "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. 1322 # various channels. 1323 # e.g. glibc (aka libc6) is distributed by many, at various versions. 1324 "distribution": [ # The various channels by which a package is distributed. 1325 { # This represents a particular channel of distribution for a given package. 1326 # e.g. Debian's jessie-backports dpkg mirror 1327 "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) 1328 # denoting the package manager version distributing a package. 1329 "maintainer": "A String", # A freeform string denoting the maintainer of this package. 1330 "description": "A String", # The distribution channel-specific description of this package. 1331 "url": "A String", # The distribution channel-specific homepage for this package. 1332 "architecture": "A String", # The CPU architecture for which packages in this distribution 1333 # channel were built 1334 "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in 1335 # this distribution channel. 1336 # For a discussion of this in Debian/Ubuntu: 1337 # http://serverfault.com/questions/604541/debian-packages-version-convention 1338 # For a discussion of this in Redhat/Fedora/Centos: 1339 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1340 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1341 # If kind is not NORMAL, then the other fields are ignored. 1342 "revision": "A String", # The iteration of the package build from the above version. 1343 "name": "A String", # The main part of the version name. 1344 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1345 }, 1346 }, 1347 ], 1348 "name": "A String", # The name of the package. 1349 }, 1350 "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as 1351 # a filter in list requests. 1352 "relatedUrl": [ # URLs associated with this note 1353 { # Metadata for any related URL information 1354 "url": "A String", # Specific URL to associate with the note 1355 "label": "A String", # Label to describe usage of the URL 1356 }, 1357 ], 1358 "longDescription": "A String", # A detailed description of this `Note`. 1359 "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. 1360 # example, an organization might have one `AttestationAuthority` for "QA" and 1361 # one for "build". This Note is intended to act strictly as a grouping 1362 # mechanism for the attached Occurrences (Attestations). This grouping 1363 # mechanism also provides a security boundary, since IAM ACLs gate the ability 1364 # for a principle to attach an Occurrence to a given Note. It also provides a 1365 # single point of lookup to find all attached Attestation Occurrences, even if 1366 # they don't all live in the same project. 1367 "hint": { # This submessage provides human-readable hints about the purpose of the 1368 # AttestationAuthority. Because the name of a Note acts as its resource 1369 # reference, it is important to disambiguate the canonical name of the Note 1370 # (which might be a UUID for security purposes) from "readable" names more 1371 # suitable for debug output. Note that these hints should NOT be used to 1372 # look up AttestationAuthorities in security sensitive contexts, such as when 1373 # looking up Attestations to verify. 1374 "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". 1375 }, 1376 }, 1377 "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. 1378 # relationship. Linked occurrences are derived from this or an 1379 # equivalent image via: 1380 # FROM <Basis.resource_url> 1381 # Or an equivalent reference, e.g. a tag of the resource_url. 1382 "resourceUrl": "A String", # The resource_url for the resource representing the basis of 1383 # associated occurrence images. 1384 "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. 1385 "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 1386 # representation. 1387 # This field can be used as a filter in list requests. 1388 "v2Blob": [ # The ordered list of v2 blobs that represent a given image. 1389 "A String", 1390 ], 1391 "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: 1392 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 1393 # Only the name of the final blob is kept. 1394 # This field can be used as a filter in list requests. 1395 }, 1396 }, 1397 "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. 1398 "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. 1399 "resourceUri": [ # Resource URI for the artifact being deployed. 1400 "A String", 1401 ], 1402 }, 1403 "shortDescription": "A String", # A one sentence description of this `Note`. 1404 "createTime": "A String", # Output only. The time this note was created. This field can be used as a 1405 # filter in list requests. 1406 "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. 1407 # exists in a provider's project. A `Discovery` occurrence is created in a 1408 # consumer's project at the start of analysis. The occurrence's operation will 1409 # indicate the status of the analysis. Absence of an occurrence linked to this 1410 # note for a resource indicates that analysis hasn't started. 1411 "analysisKind": "A String", # The kind of analysis that is handled by this discovery. 1412 }, 1413} 1414 1415 updateMask: string, The fields to update. 1416 x__xgafv: string, V1 error format. 1417 Allowed values 1418 1 - v1 error format 1419 2 - v2 error format 1420 1421Returns: 1422 An object of the form: 1423 1424 { # Provides a detailed description of a `Note`. 1425 "buildType": { # Note holding the version of the provider's builder and the signature of # Build provenance type for a verifiable build. 1426 # the provenance message in linked BuildDetails. 1427 "builderVersion": "A String", # Version of the builder which produced this Note. 1428 "signature": { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this 1429 # `BuilderDetails`. 1430 "publicKey": "A String", # Public key of the builder which can be used to verify that the related 1431 # findings are valid and unchanged. If `key_type` is empty, this defaults 1432 # to PEM encoded public keys. 1433 # 1434 # This field may be empty if `key_id` references an external key. 1435 # 1436 # For Cloud Build based signatures, this is a PEM encoded public 1437 # key. To verify the Cloud Build signature, place the contents of 1438 # this field into a file (public.pem). The signature field is base64-decoded 1439 # into its binary representation in signature.bin, and the provenance bytes 1440 # from `BuildDetails` are base64-decoded into a binary representation in 1441 # signed.bin. OpenSSL can then verify the signature: 1442 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 1443 "keyType": "A String", # The type of the key, either stored in `public_key` or referenced in 1444 # `key_id` 1445 "keyId": "A String", # An Id for the key used to sign. This could be either an Id for the key 1446 # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the 1447 # CN for a cert), or a reference to an external key (such as a reference to a 1448 # key in Cloud Key Management Service). 1449 "signature": "A String", # Signature of the related `BuildProvenance`, encoded in a base64 string. 1450 }, 1451 }, 1452 "kind": "A String", # Output only. This explicitly denotes which kind of note is specified. This 1453 # field can be used as a filter in list requests. 1454 "name": "A String", # The name of the note in the form 1455 # "providers/{provider_id}/notes/{NOTE_ID}" 1456 "vulnerabilityType": { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note. 1457 "cvssScore": 3.14, # The CVSS score for this Vulnerability. 1458 "severity": "A String", # Note provider assigned impact of the vulnerability 1459 "details": [ # All information about the package to specifically identify this 1460 # vulnerability. One entry per (version range and cpe_uri) the 1461 # package vulnerability has manifested in. 1462 { # Identifies all occurrences of this vulnerability in the package for a 1463 # specific distro/location 1464 # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 1465 "severityName": "A String", # The severity (eg: distro assigned severity) for this vulnerability. 1466 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in 1467 # which the vulnerability manifests. Examples include distro or storage 1468 # location for vulnerable jar. 1469 # This field can be used as a filter in list requests. 1470 "description": "A String", # A vendor-specific description of this note. 1471 "minAffectedVersion": { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists. 1472 # For a discussion of this in Debian/Ubuntu: 1473 # http://serverfault.com/questions/604541/debian-packages-version-convention 1474 # For a discussion of this in Redhat/Fedora/Centos: 1475 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1476 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1477 # If kind is not NORMAL, then the other fields are ignored. 1478 "revision": "A String", # The iteration of the package build from the above version. 1479 "name": "A String", # The main part of the version name. 1480 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1481 }, 1482 "package": "A String", # The name of the package where the vulnerability was found. 1483 # This field can be used as a filter in list requests. 1484 "packageType": "A String", # The type of package; whether native or non native(ruby gems, 1485 # node.js packages etc) 1486 "isObsolete": True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to 1487 # obsolete details. 1488 "maxAffectedVersion": { # Version contains structured information about the version of the package. # Deprecated, do not use. Use fixed_location instead. 1489 # 1490 # The max version of the package in which the vulnerability exists. 1491 # For a discussion of this in Debian/Ubuntu: 1492 # http://serverfault.com/questions/604541/debian-packages-version-convention 1493 # For a discussion of this in Redhat/Fedora/Centos: 1494 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1495 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1496 # If kind is not NORMAL, then the other fields are ignored. 1497 "revision": "A String", # The iteration of the package build from the above version. 1498 "name": "A String", # The main part of the version name. 1499 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1500 }, 1501 "fixedLocation": { # The location of the vulnerability # The fix for this specific package version. 1502 "cpeUri": "A String", # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) 1503 # format. Examples include distro or storage location for vulnerable jar. 1504 # This field can be used as a filter in list requests. 1505 "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 1506 # filter in list requests. 1507 # For a discussion of this in Debian/Ubuntu: 1508 # http://serverfault.com/questions/604541/debian-packages-version-convention 1509 # For a discussion of this in Redhat/Fedora/Centos: 1510 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1511 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1512 # If kind is not NORMAL, then the other fields are ignored. 1513 "revision": "A String", # The iteration of the package build from the above version. 1514 "name": "A String", # The main part of the version name. 1515 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1516 }, 1517 "package": "A String", # The package being described. 1518 }, 1519 }, 1520 ], 1521 }, 1522 "package": { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers. 1523 # various channels. 1524 # e.g. glibc (aka libc6) is distributed by many, at various versions. 1525 "distribution": [ # The various channels by which a package is distributed. 1526 { # This represents a particular channel of distribution for a given package. 1527 # e.g. Debian's jessie-backports dpkg mirror 1528 "cpeUri": "A String", # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/) 1529 # denoting the package manager version distributing a package. 1530 "maintainer": "A String", # A freeform string denoting the maintainer of this package. 1531 "description": "A String", # The distribution channel-specific description of this package. 1532 "url": "A String", # The distribution channel-specific homepage for this package. 1533 "architecture": "A String", # The CPU architecture for which packages in this distribution 1534 # channel were built 1535 "latestVersion": { # Version contains structured information about the version of the package. # The latest available version of this package in 1536 # this distribution channel. 1537 # For a discussion of this in Debian/Ubuntu: 1538 # http://serverfault.com/questions/604541/debian-packages-version-convention 1539 # For a discussion of this in Redhat/Fedora/Centos: 1540 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/ 1541 "kind": "A String", # Distinguish between sentinel MIN/MAX versions and normal versions. 1542 # If kind is not NORMAL, then the other fields are ignored. 1543 "revision": "A String", # The iteration of the package build from the above version. 1544 "name": "A String", # The main part of the version name. 1545 "epoch": 42, # Used to correct mistakes in the version numbering scheme. 1546 }, 1547 }, 1548 ], 1549 "name": "A String", # The name of the package. 1550 }, 1551 "updateTime": "A String", # Output only. The time this note was last updated. This field can be used as 1552 # a filter in list requests. 1553 "relatedUrl": [ # URLs associated with this note 1554 { # Metadata for any related URL information 1555 "url": "A String", # Specific URL to associate with the note 1556 "label": "A String", # Label to describe usage of the URL 1557 }, 1558 ], 1559 "longDescription": "A String", # A detailed description of this `Note`. 1560 "attestationAuthority": { # Note kind that represents a logical attestation "role" or "authority". For # A note describing an attestation role. 1561 # example, an organization might have one `AttestationAuthority` for "QA" and 1562 # one for "build". This Note is intended to act strictly as a grouping 1563 # mechanism for the attached Occurrences (Attestations). This grouping 1564 # mechanism also provides a security boundary, since IAM ACLs gate the ability 1565 # for a principle to attach an Occurrence to a given Note. It also provides a 1566 # single point of lookup to find all attached Attestation Occurrences, even if 1567 # they don't all live in the same project. 1568 "hint": { # This submessage provides human-readable hints about the purpose of the 1569 # AttestationAuthority. Because the name of a Note acts as its resource 1570 # reference, it is important to disambiguate the canonical name of the Note 1571 # (which might be a UUID for security purposes) from "readable" names more 1572 # suitable for debug output. Note that these hints should NOT be used to 1573 # look up AttestationAuthorities in security sensitive contexts, such as when 1574 # looking up Attestations to verify. 1575 "humanReadableName": "A String", # The human readable name of this Attestation Authority, for example "qa". 1576 }, 1577 }, 1578 "baseImage": { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image. 1579 # relationship. Linked occurrences are derived from this or an 1580 # equivalent image via: 1581 # FROM <Basis.resource_url> 1582 # Or an equivalent reference, e.g. a tag of the resource_url. 1583 "resourceUrl": "A String", # The resource_url for the resource representing the basis of 1584 # associated occurrence images. 1585 "fingerprint": { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image. 1586 "v1Name": "A String", # The layer-id of the final layer in the Docker image's v1 1587 # representation. 1588 # This field can be used as a filter in list requests. 1589 "v2Blob": [ # The ordered list of v2 blobs that represent a given image. 1590 "A String", 1591 ], 1592 "v2Name": "A String", # Output only. The name of the image's v2 blobs computed via: 1593 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 1594 # Only the name of the final blob is kept. 1595 # This field can be used as a filter in list requests. 1596 }, 1597 }, 1598 "expirationTime": "A String", # Time of expiration for this note, null if note does not expire. 1599 "deployable": { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed. 1600 "resourceUri": [ # Resource URI for the artifact being deployed. 1601 "A String", 1602 ], 1603 }, 1604 "shortDescription": "A String", # A one sentence description of this `Note`. 1605 "createTime": "A String", # Output only. The time this note was created. This field can be used as a 1606 # filter in list requests. 1607 "discovery": { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type. 1608 # exists in a provider's project. A `Discovery` occurrence is created in a 1609 # consumer's project at the start of analysis. The occurrence's operation will 1610 # indicate the status of the analysis. Absence of an occurrence linked to this 1611 # note for a resource indicates that analysis hasn't started. 1612 "analysisKind": "A String", # The kind of analysis that is handled by this discovery. 1613 }, 1614 }</pre> 1615</div> 1616 1617<div class="method"> 1618 <code class="details" id="setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</code> 1619 <pre>Sets the access control policy on the specified `Note` or `Occurrence`. 1620Requires `containeranalysis.notes.setIamPolicy` or 1621`containeranalysis.occurrences.setIamPolicy` permission if the resource is 1622a `Note` or an `Occurrence`, respectively. 1623Attempting to call this method without these permissions will result in a ` 1624`PERMISSION_DENIED` error. 1625Attempting to call this method on a non-existent resource will result in a 1626`NOT_FOUND` error if the user has `containeranalysis.notes.list` permission 1627on a `Note` or `containeranalysis.occurrences.list` on an `Occurrence`, or 1628a `PERMISSION_DENIED` error otherwise. The resource takes the following 1629formats: `projects/{projectid}/occurrences/{occurrenceid}` for occurrences 1630and projects/{projectid}/notes/{noteid} for notes 1631 1632Args: 1633 resource: string, REQUIRED: The resource for which the policy is being specified. 1634See the operation documentation for the appropriate value for this field. (required) 1635 body: object, The request body. (required) 1636 The object takes the form of: 1637 1638{ # Request message for `SetIamPolicy` method. 1639 "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 1640 # the policy is limited to a few 10s of KB. An empty policy is a 1641 # valid policy but certain Cloud Platform services (such as Projects) 1642 # might reject them. 1643 # specify access control policies for Cloud Platform resources. 1644 # 1645 # 1646 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of 1647 # `members` to a `role`, where the members can be user accounts, Google groups, 1648 # Google domains, and service accounts. A `role` is a named list of permissions 1649 # defined by IAM. 1650 # 1651 # **JSON Example** 1652 # 1653 # { 1654 # "bindings": [ 1655 # { 1656 # "role": "roles/owner", 1657 # "members": [ 1658 # "user:mike@example.com", 1659 # "group:admins@example.com", 1660 # "domain:google.com", 1661 # "serviceAccount:my-other-app@appspot.gserviceaccount.com" 1662 # ] 1663 # }, 1664 # { 1665 # "role": "roles/viewer", 1666 # "members": ["user:sean@example.com"] 1667 # } 1668 # ] 1669 # } 1670 # 1671 # **YAML Example** 1672 # 1673 # bindings: 1674 # - members: 1675 # - user:mike@example.com 1676 # - group:admins@example.com 1677 # - domain:google.com 1678 # - serviceAccount:my-other-app@appspot.gserviceaccount.com 1679 # role: roles/owner 1680 # - members: 1681 # - user:sean@example.com 1682 # role: roles/viewer 1683 # 1684 # 1685 # For a description of IAM and its features, see the 1686 # [IAM developer's guide](https://cloud.google.com/iam/docs). 1687 "bindings": [ # Associates a list of `members` to a `role`. 1688 # `bindings` with no members will result in an error. 1689 { # Associates `members` with a `role`. 1690 "role": "A String", # Role that is assigned to `members`. 1691 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 1692 "members": [ # Specifies the identities requesting access for a Cloud Platform resource. 1693 # `members` can have the following values: 1694 # 1695 # * `allUsers`: A special identifier that represents anyone who is 1696 # on the internet; with or without a Google account. 1697 # 1698 # * `allAuthenticatedUsers`: A special identifier that represents anyone 1699 # who is authenticated with a Google account or a service account. 1700 # 1701 # * `user:{emailid}`: An email address that represents a specific Google 1702 # account. For example, `alice@gmail.com` . 1703 # 1704 # 1705 # * `serviceAccount:{emailid}`: An email address that represents a service 1706 # account. For example, `my-other-app@appspot.gserviceaccount.com`. 1707 # 1708 # * `group:{emailid}`: An email address that represents a Google group. 1709 # For example, `admins@example.com`. 1710 # 1711 # 1712 # * `domain:{domain}`: The G Suite domain (primary) that represents all the 1713 # users of that domain. For example, `google.com` or `example.com`. 1714 # 1715 "A String", 1716 ], 1717 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. 1718 # NOTE: An unsatisfied condition will not allow user access via current 1719 # binding. Different bindings, including their conditions, are examined 1720 # independently. 1721 # 1722 # title: "User account presence" 1723 # description: "Determines whether the request has a user account" 1724 # expression: "size(request.user) > 0" 1725 "description": "A String", # An optional description of the expression. This is a longer text which 1726 # describes the expression, e.g. when hovered over it in a UI. 1727 "expression": "A String", # Textual representation of an expression in 1728 # Common Expression Language syntax. 1729 # 1730 # The application context of the containing message determines which 1731 # well-known feature set of CEL is supported. 1732 "location": "A String", # An optional string indicating the location of the expression for error 1733 # reporting, e.g. a file name and a position in the file. 1734 "title": "A String", # An optional title for the expression, i.e. a short string describing 1735 # its purpose. This can be used e.g. in UIs which allow to enter the 1736 # expression. 1737 }, 1738 }, 1739 ], 1740 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. 1741 { # Specifies the audit configuration for a service. 1742 # The configuration determines which permission types are logged, and what 1743 # identities, if any, are exempted from logging. 1744 # An AuditConfig must have one or more AuditLogConfigs. 1745 # 1746 # If there are AuditConfigs for both `allServices` and a specific service, 1747 # the union of the two AuditConfigs is used for that service: the log_types 1748 # specified in each AuditConfig are enabled, and the exempted_members in each 1749 # AuditLogConfig are exempted. 1750 # 1751 # Example Policy with multiple AuditConfigs: 1752 # 1753 # { 1754 # "audit_configs": [ 1755 # { 1756 # "service": "allServices" 1757 # "audit_log_configs": [ 1758 # { 1759 # "log_type": "DATA_READ", 1760 # "exempted_members": [ 1761 # "user:foo@gmail.com" 1762 # ] 1763 # }, 1764 # { 1765 # "log_type": "DATA_WRITE", 1766 # }, 1767 # { 1768 # "log_type": "ADMIN_READ", 1769 # } 1770 # ] 1771 # }, 1772 # { 1773 # "service": "fooservice.googleapis.com" 1774 # "audit_log_configs": [ 1775 # { 1776 # "log_type": "DATA_READ", 1777 # }, 1778 # { 1779 # "log_type": "DATA_WRITE", 1780 # "exempted_members": [ 1781 # "user:bar@gmail.com" 1782 # ] 1783 # } 1784 # ] 1785 # } 1786 # ] 1787 # } 1788 # 1789 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ 1790 # logging. It also exempts foo@gmail.com from DATA_READ logging, and 1791 # bar@gmail.com from DATA_WRITE logging. 1792 "auditLogConfigs": [ # The configuration for logging of each type of permission. 1793 { # Provides the configuration for logging a type of permissions. 1794 # Example: 1795 # 1796 # { 1797 # "audit_log_configs": [ 1798 # { 1799 # "log_type": "DATA_READ", 1800 # "exempted_members": [ 1801 # "user:foo@gmail.com" 1802 # ] 1803 # }, 1804 # { 1805 # "log_type": "DATA_WRITE", 1806 # } 1807 # ] 1808 # } 1809 # 1810 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting 1811 # foo@gmail.com from DATA_READ logging. 1812 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of 1813 # permission. 1814 # Follows the same format of Binding.members. 1815 "A String", 1816 ], 1817 "logType": "A String", # The log type that this config enables. 1818 }, 1819 ], 1820 "service": "A String", # Specifies a service that will be enabled for audit logging. 1821 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. 1822 # `allServices` is a special value that covers all services. 1823 }, 1824 ], 1825 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help 1826 # prevent simultaneous updates of a policy from overwriting each other. 1827 # It is strongly suggested that systems make use of the `etag` in the 1828 # read-modify-write cycle to perform policy updates in order to avoid race 1829 # conditions: An `etag` is returned in the response to `getIamPolicy`, and 1830 # systems are expected to put that etag in the request to `setIamPolicy` to 1831 # ensure that their change will be applied to the same version of the policy. 1832 # 1833 # If no `etag` is provided in the call to `setIamPolicy`, then the existing 1834 # policy is overwritten blindly. 1835 "version": 42, # Deprecated. 1836 }, 1837 "updateMask": "A String", # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only 1838 # the fields in the mask will be modified. If no mask is provided, the 1839 # following default mask is used: 1840 # paths: "bindings, etag" 1841 # This field is only used by Cloud IAM. 1842 } 1843 1844 x__xgafv: string, V1 error format. 1845 Allowed values 1846 1 - v1 error format 1847 2 - v2 error format 1848 1849Returns: 1850 An object of the form: 1851 1852 { # Defines an Identity and Access Management (IAM) policy. It is used to 1853 # specify access control policies for Cloud Platform resources. 1854 # 1855 # 1856 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of 1857 # `members` to a `role`, where the members can be user accounts, Google groups, 1858 # Google domains, and service accounts. A `role` is a named list of permissions 1859 # defined by IAM. 1860 # 1861 # **JSON Example** 1862 # 1863 # { 1864 # "bindings": [ 1865 # { 1866 # "role": "roles/owner", 1867 # "members": [ 1868 # "user:mike@example.com", 1869 # "group:admins@example.com", 1870 # "domain:google.com", 1871 # "serviceAccount:my-other-app@appspot.gserviceaccount.com" 1872 # ] 1873 # }, 1874 # { 1875 # "role": "roles/viewer", 1876 # "members": ["user:sean@example.com"] 1877 # } 1878 # ] 1879 # } 1880 # 1881 # **YAML Example** 1882 # 1883 # bindings: 1884 # - members: 1885 # - user:mike@example.com 1886 # - group:admins@example.com 1887 # - domain:google.com 1888 # - serviceAccount:my-other-app@appspot.gserviceaccount.com 1889 # role: roles/owner 1890 # - members: 1891 # - user:sean@example.com 1892 # role: roles/viewer 1893 # 1894 # 1895 # For a description of IAM and its features, see the 1896 # [IAM developer's guide](https://cloud.google.com/iam/docs). 1897 "bindings": [ # Associates a list of `members` to a `role`. 1898 # `bindings` with no members will result in an error. 1899 { # Associates `members` with a `role`. 1900 "role": "A String", # Role that is assigned to `members`. 1901 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 1902 "members": [ # Specifies the identities requesting access for a Cloud Platform resource. 1903 # `members` can have the following values: 1904 # 1905 # * `allUsers`: A special identifier that represents anyone who is 1906 # on the internet; with or without a Google account. 1907 # 1908 # * `allAuthenticatedUsers`: A special identifier that represents anyone 1909 # who is authenticated with a Google account or a service account. 1910 # 1911 # * `user:{emailid}`: An email address that represents a specific Google 1912 # account. For example, `alice@gmail.com` . 1913 # 1914 # 1915 # * `serviceAccount:{emailid}`: An email address that represents a service 1916 # account. For example, `my-other-app@appspot.gserviceaccount.com`. 1917 # 1918 # * `group:{emailid}`: An email address that represents a Google group. 1919 # For example, `admins@example.com`. 1920 # 1921 # 1922 # * `domain:{domain}`: The G Suite domain (primary) that represents all the 1923 # users of that domain. For example, `google.com` or `example.com`. 1924 # 1925 "A String", 1926 ], 1927 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. 1928 # NOTE: An unsatisfied condition will not allow user access via current 1929 # binding. Different bindings, including their conditions, are examined 1930 # independently. 1931 # 1932 # title: "User account presence" 1933 # description: "Determines whether the request has a user account" 1934 # expression: "size(request.user) > 0" 1935 "description": "A String", # An optional description of the expression. This is a longer text which 1936 # describes the expression, e.g. when hovered over it in a UI. 1937 "expression": "A String", # Textual representation of an expression in 1938 # Common Expression Language syntax. 1939 # 1940 # The application context of the containing message determines which 1941 # well-known feature set of CEL is supported. 1942 "location": "A String", # An optional string indicating the location of the expression for error 1943 # reporting, e.g. a file name and a position in the file. 1944 "title": "A String", # An optional title for the expression, i.e. a short string describing 1945 # its purpose. This can be used e.g. in UIs which allow to enter the 1946 # expression. 1947 }, 1948 }, 1949 ], 1950 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. 1951 { # Specifies the audit configuration for a service. 1952 # The configuration determines which permission types are logged, and what 1953 # identities, if any, are exempted from logging. 1954 # An AuditConfig must have one or more AuditLogConfigs. 1955 # 1956 # If there are AuditConfigs for both `allServices` and a specific service, 1957 # the union of the two AuditConfigs is used for that service: the log_types 1958 # specified in each AuditConfig are enabled, and the exempted_members in each 1959 # AuditLogConfig are exempted. 1960 # 1961 # Example Policy with multiple AuditConfigs: 1962 # 1963 # { 1964 # "audit_configs": [ 1965 # { 1966 # "service": "allServices" 1967 # "audit_log_configs": [ 1968 # { 1969 # "log_type": "DATA_READ", 1970 # "exempted_members": [ 1971 # "user:foo@gmail.com" 1972 # ] 1973 # }, 1974 # { 1975 # "log_type": "DATA_WRITE", 1976 # }, 1977 # { 1978 # "log_type": "ADMIN_READ", 1979 # } 1980 # ] 1981 # }, 1982 # { 1983 # "service": "fooservice.googleapis.com" 1984 # "audit_log_configs": [ 1985 # { 1986 # "log_type": "DATA_READ", 1987 # }, 1988 # { 1989 # "log_type": "DATA_WRITE", 1990 # "exempted_members": [ 1991 # "user:bar@gmail.com" 1992 # ] 1993 # } 1994 # ] 1995 # } 1996 # ] 1997 # } 1998 # 1999 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ 2000 # logging. It also exempts foo@gmail.com from DATA_READ logging, and 2001 # bar@gmail.com from DATA_WRITE logging. 2002 "auditLogConfigs": [ # The configuration for logging of each type of permission. 2003 { # Provides the configuration for logging a type of permissions. 2004 # Example: 2005 # 2006 # { 2007 # "audit_log_configs": [ 2008 # { 2009 # "log_type": "DATA_READ", 2010 # "exempted_members": [ 2011 # "user:foo@gmail.com" 2012 # ] 2013 # }, 2014 # { 2015 # "log_type": "DATA_WRITE", 2016 # } 2017 # ] 2018 # } 2019 # 2020 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting 2021 # foo@gmail.com from DATA_READ logging. 2022 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of 2023 # permission. 2024 # Follows the same format of Binding.members. 2025 "A String", 2026 ], 2027 "logType": "A String", # The log type that this config enables. 2028 }, 2029 ], 2030 "service": "A String", # Specifies a service that will be enabled for audit logging. 2031 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. 2032 # `allServices` is a special value that covers all services. 2033 }, 2034 ], 2035 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help 2036 # prevent simultaneous updates of a policy from overwriting each other. 2037 # It is strongly suggested that systems make use of the `etag` in the 2038 # read-modify-write cycle to perform policy updates in order to avoid race 2039 # conditions: An `etag` is returned in the response to `getIamPolicy`, and 2040 # systems are expected to put that etag in the request to `setIamPolicy` to 2041 # ensure that their change will be applied to the same version of the policy. 2042 # 2043 # If no `etag` is provided in the call to `setIamPolicy`, then the existing 2044 # policy is overwritten blindly. 2045 "version": 42, # Deprecated. 2046 }</pre> 2047</div> 2048 2049<div class="method"> 2050 <code class="details" id="testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</code> 2051 <pre>Returns the permissions that a caller has on the specified note or 2052occurrence resource. Requires list permission on the project (for example, 2053"storage.objects.list" on the containing bucket for testing permission of 2054an object). Attempting to call this method on a non-existent resource will 2055result in a `NOT_FOUND` error if the user has list permission on the 2056project, or a `PERMISSION_DENIED` error otherwise. The resource takes the 2057following formats: `projects/{PROJECT_ID}/occurrences/{OCCURRENCE_ID}` for 2058`Occurrences` and `projects/{PROJECT_ID}/notes/{NOTE_ID}` for `Notes` 2059 2060Args: 2061 resource: string, REQUIRED: The resource for which the policy detail is being requested. 2062See the operation documentation for the appropriate value for this field. (required) 2063 body: object, The request body. (required) 2064 The object takes the form of: 2065 2066{ # Request message for `TestIamPermissions` method. 2067 "permissions": [ # The set of permissions to check for the `resource`. Permissions with 2068 # wildcards (such as '*' or 'storage.*') are not allowed. For more 2069 # information see 2070 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). 2071 "A String", 2072 ], 2073 } 2074 2075 x__xgafv: string, V1 error format. 2076 Allowed values 2077 1 - v1 error format 2078 2 - v2 error format 2079 2080Returns: 2081 An object of the form: 2082 2083 { # Response message for `TestIamPermissions` method. 2084 "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is 2085 # allowed. 2086 "A String", 2087 ], 2088 }</pre> 2089</div> 2090 2091</body></html>