blob: 48fa6e269ae280218692df68f2044651e87fabfd [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<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_v1beta1.html">Container Analysis API</a> . <a href="containeranalysis_v1beta1.projects.html">projects</a> . <a href="containeranalysis_v1beta1.projects.notes.html">notes</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="containeranalysis_v1beta1.projects.notes.occurrences.html">occurrences()</a></code>
79</p>
80<p class="firstline">Returns the occurrences Resource.</p>
81
82<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070083 <code><a href="#batchCreate">batchCreate(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070084<p class="firstline">Creates new notes in batch.</p>
85<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070086 <code><a href="#create">create(parent, body=None, noteId=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070087<p class="firstline">Creates a new note.</p>
88<p class="toc_element">
89 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
90<p class="firstline">Deletes the specified note.</p>
91<p class="toc_element">
92 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
93<p class="firstline">Gets the specified note.</p>
94<p class="toc_element">
95 <code><a href="#getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
96<p class="firstline">Gets the access control policy for a note or an occurrence resource.</p>
97<p class="toc_element">
Bu Sun Kim65020912020-05-20 12:08:20 -070098 <code><a href="#list">list(parent, pageToken=None, pageSize=None, filter=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070099<p class="firstline">Lists notes for the specified project.</p>
100<p class="toc_element">
101 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
102<p class="firstline">Retrieves the next page of results.</p>
103<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700104 <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700105<p class="firstline">Updates the specified note.</p>
106<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700107 <code><a href="#setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700108<p class="firstline">Sets the access control policy on the specified note or occurrence.</p>
109<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700110 <code><a href="#testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700111<p class="firstline">Returns the permissions that a caller has on the specified note or</p>
112<h3>Method Details</h3>
113<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700114 <code class="details" id="batchCreate">batchCreate(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700115 <pre>Creates new notes in batch.
116
117Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700118 parent: string, Required. The name of the project in the form of `projects/[PROJECT_ID]`, under which
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700119the notes are to be created. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700120 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700121 The object takes the form of:
122
123{ # Request to create notes in batch.
Bu Sun Kim65020912020-05-20 12:08:20 -0700124 &quot;notes&quot;: { # Required. The notes to create. Max allowed length is 1000.
125 &quot;a_key&quot;: { # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700126 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
127 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
128 # consumer&#x27;s project at the start of analysis.
129 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
130 # discovery.
131 },
132 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
133 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700134 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
135 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
136 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
137 # the attached occurrences (Attestations). This grouping mechanism also
138 # provides a security boundary, since IAM ACLs gate the ability for a principle
139 # to attach an occurrence to a given note. It also provides a single point of
140 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
141 # live in the same project.
142 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
143 # authority. Because the name of a note acts as its resource reference, it is
144 # important to disambiguate the canonical name of the Note (which might be a
145 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
146 # output. Note that these hints should not be used to look up authorities in
147 # security sensitive contexts, such as when looking up attestations to
148 # verify.
149 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
150 # example &quot;qa&quot;.
151 },
152 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700153 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
154 # chain step in an in-toto layout. This information goes into a Grafeas note.
155 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
156 # artifacts that enter this supply chain step, and exit the supply chain
157 # step, i.e. materials and products of the step.
158 { # Defines an object to declare an in-toto artifact rule
159 &quot;artifactRule&quot;: [
160 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -0700161 ],
162 },
163 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700164 &quot;expectedProducts&quot;: [
165 { # Defines an object to declare an in-toto artifact rule
166 &quot;artifactRule&quot;: [
167 &quot;A String&quot;,
168 ],
169 },
170 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700171 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
172 # signatures on the step metadata.
173 { # This defines the format used to record keys used in the software supply
174 # chain. An in-toto link is attested using one or more keys defined in the
175 # in-toto layout. An example of this is:
176 # {
177 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
178 # &quot;key_type&quot;: &quot;rsa&quot;,
179 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
180 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
181 # }
182 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
183 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700184 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
185 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700186 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
187 # and &quot;ecdsa&quot;.
188 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
189 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700190 },
191 ],
192 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
193 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700194 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700195 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
196 &quot;A String&quot;,
197 ],
198 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700199 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
200 # list requests.
201 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700202 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
203 # relationship. Linked occurrences are derived from this or an
204 # equivalent image via:
205 # FROM &lt;Basis.resource_url&gt;
206 # Or an equivalent reference, e.g. a tag of the resource_url.
207 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700208 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
209 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700210 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
211 &quot;A String&quot;,
212 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700213 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
214 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
215 # Only the name of the final blob is kept.
216 },
217 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
218 # basis of associated occurrence images.
219 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700220 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
221 # a filter in list requests.
222 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
223 # provenance message in the build details occurrence.
224 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
225 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
226 # containing build details.
227 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
228 # findings are valid and unchanged. If `key_type` is empty, this defaults
229 # to PEM encoded public keys.
230 #
231 # This field may be empty if `key_id` references an external key.
232 #
233 # For Cloud Build based signatures, this is a PEM encoded public
234 # key. To verify the Cloud Build signature, place the contents of
235 # this field into a file (public.pem). The signature field is base64-decoded
236 # into its binary representation in signature.bin, and the provenance bytes
237 # from `BuildDetails` are base64-decoded into a binary representation in
238 # signed.bin. OpenSSL can then verify the signature:
239 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
240 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
241 # `key_id`.
242 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
243 # base-64 encoded.
244 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
245 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
246 # CN for a cert), or a reference to an external key (such as a reference to a
247 # key in Cloud Key Management Service).
248 },
249 },
250 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
251 &quot;relatedUrl&quot;: [ # URLs associated with this note.
252 { # Metadata for any related URL information.
253 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
254 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
255 },
256 ],
257 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
258 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
259 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
260 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
261 # patches, thus Windows vulnerabilities really are a missing package, rather
262 # than a package being at an incorrect version.
263 {
264 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
265 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
266 # [cpe format](https://cpe.mitre.org/specification/) in which the
267 # vulnerability manifests. Examples include distro or storage location for
268 # vulnerable jar.
269 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
270 # vulnerability. Note that there may be multiple hotfixes (and thus
271 # multiple KBs) that mitigate a given vulnerability. Currently any listed
272 # kb&#x27;s presence is considered a fix.
273 {
274 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
275 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
276 # https://www.catalog.update.microsoft.com/
277 },
278 ],
279 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
280 },
281 ],
282 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
283 # upstream timestamp from the underlying information source - e.g. Ubuntu
284 # security tracker.
285 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
286 &quot;details&quot;: [ # All information about the package to specifically identify this
287 # vulnerability. One entry per (version range and cpe_uri) the package
288 # vulnerability has manifested in.
289 { # Identifies all appearances of this vulnerability in the package for a
290 # specific distro/location. For example: glibc in
291 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
292 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
293 # upstream timestamp from the underlying information source - e.g. Ubuntu
294 # security tracker.
295 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
296 # packages etc).
297 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
298 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
299 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
300 # format. Examples include distro or storage location for vulnerable jar.
301 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
302 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
303 # versions.
304 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
305 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
306 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
307 # name.
308 },
309 },
310 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
311 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
312 # versions.
313 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
314 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
315 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
316 # name.
317 },
318 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
319 # [cpe format](https://cpe.mitre.org/specification/) in which the
320 # vulnerability manifests. Examples include distro or storage location for
321 # vulnerable jar.
322 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
323 # obsolete details.
324 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
325 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
326 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
327 # versions.
328 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
329 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
330 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
331 # name.
332 },
333 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
334 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
335 },
336 ],
337 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
338 # For details, see https://www.first.org/cvss/specification-document
339 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
340 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
341 &quot;availabilityImpact&quot;: &quot;A String&quot;,
342 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
343 # Represents the intrinsic characteristics of a vulnerability that are
344 # constant over time and across user environments.
345 &quot;privilegesRequired&quot;: &quot;A String&quot;,
346 &quot;impactScore&quot;: 3.14,
347 &quot;attackComplexity&quot;: &quot;A String&quot;,
348 &quot;scope&quot;: &quot;A String&quot;,
349 &quot;exploitabilityScore&quot;: 3.14,
350 &quot;userInteraction&quot;: &quot;A String&quot;,
351 &quot;integrityImpact&quot;: &quot;A String&quot;,
352 },
353 },
354 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
355 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
356 &quot;A String&quot;,
357 ],
358 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
359 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700360 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
361 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
362 &quot;A String&quot;,
363 ],
364 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700365 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
366 # channels. E.g., glibc (aka libc6) is distributed by many, at various
367 # versions.
368 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
369 { # This represents a particular channel of distribution for a given package.
370 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
371 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
372 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
373 # versions.
374 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
375 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
376 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
377 # name.
378 },
379 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
380 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
381 # denoting the package manager version distributing a package.
382 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
383 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
384 # built.
385 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
386 },
387 ],
388 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
389 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700390 },
391 },
392 }
393
394 x__xgafv: string, V1 error format.
395 Allowed values
396 1 - v1 error format
397 2 - v2 error format
398
399Returns:
400 An object of the form:
401
402 { # Response for creating notes in batch.
Bu Sun Kim65020912020-05-20 12:08:20 -0700403 &quot;notes&quot;: [ # The notes that were created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700404 { # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700405 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
406 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
407 # consumer&#x27;s project at the start of analysis.
408 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
409 # discovery.
410 },
411 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
412 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700413 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
414 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
415 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
416 # the attached occurrences (Attestations). This grouping mechanism also
417 # provides a security boundary, since IAM ACLs gate the ability for a principle
418 # to attach an occurrence to a given note. It also provides a single point of
419 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
420 # live in the same project.
421 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
422 # authority. Because the name of a note acts as its resource reference, it is
423 # important to disambiguate the canonical name of the Note (which might be a
424 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
425 # output. Note that these hints should not be used to look up authorities in
426 # security sensitive contexts, such as when looking up attestations to
427 # verify.
428 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
429 # example &quot;qa&quot;.
430 },
431 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700432 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
433 # chain step in an in-toto layout. This information goes into a Grafeas note.
434 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
435 # artifacts that enter this supply chain step, and exit the supply chain
436 # step, i.e. materials and products of the step.
437 { # Defines an object to declare an in-toto artifact rule
438 &quot;artifactRule&quot;: [
439 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -0700440 ],
441 },
442 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700443 &quot;expectedProducts&quot;: [
444 { # Defines an object to declare an in-toto artifact rule
445 &quot;artifactRule&quot;: [
446 &quot;A String&quot;,
447 ],
448 },
449 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700450 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
451 # signatures on the step metadata.
452 { # This defines the format used to record keys used in the software supply
453 # chain. An in-toto link is attested using one or more keys defined in the
454 # in-toto layout. An example of this is:
455 # {
456 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
457 # &quot;key_type&quot;: &quot;rsa&quot;,
458 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
459 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
460 # }
461 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
462 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700463 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
464 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700465 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
466 # and &quot;ecdsa&quot;.
467 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
468 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700469 },
470 ],
471 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
472 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700473 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700474 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
475 &quot;A String&quot;,
476 ],
477 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700478 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
479 # list requests.
480 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700481 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
482 # relationship. Linked occurrences are derived from this or an
483 # equivalent image via:
484 # FROM &lt;Basis.resource_url&gt;
485 # Or an equivalent reference, e.g. a tag of the resource_url.
486 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700487 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
488 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700489 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
490 &quot;A String&quot;,
491 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700492 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
493 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
494 # Only the name of the final blob is kept.
495 },
496 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
497 # basis of associated occurrence images.
498 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700499 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
500 # a filter in list requests.
501 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
502 # provenance message in the build details occurrence.
503 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
504 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
505 # containing build details.
506 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
507 # findings are valid and unchanged. If `key_type` is empty, this defaults
508 # to PEM encoded public keys.
509 #
510 # This field may be empty if `key_id` references an external key.
511 #
512 # For Cloud Build based signatures, this is a PEM encoded public
513 # key. To verify the Cloud Build signature, place the contents of
514 # this field into a file (public.pem). The signature field is base64-decoded
515 # into its binary representation in signature.bin, and the provenance bytes
516 # from `BuildDetails` are base64-decoded into a binary representation in
517 # signed.bin. OpenSSL can then verify the signature:
518 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
519 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
520 # `key_id`.
521 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
522 # base-64 encoded.
523 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
524 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
525 # CN for a cert), or a reference to an external key (such as a reference to a
526 # key in Cloud Key Management Service).
527 },
528 },
529 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
530 &quot;relatedUrl&quot;: [ # URLs associated with this note.
531 { # Metadata for any related URL information.
532 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
533 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
534 },
535 ],
536 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
537 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
538 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
539 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
540 # patches, thus Windows vulnerabilities really are a missing package, rather
541 # than a package being at an incorrect version.
542 {
543 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
544 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
545 # [cpe format](https://cpe.mitre.org/specification/) in which the
546 # vulnerability manifests. Examples include distro or storage location for
547 # vulnerable jar.
548 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
549 # vulnerability. Note that there may be multiple hotfixes (and thus
550 # multiple KBs) that mitigate a given vulnerability. Currently any listed
551 # kb&#x27;s presence is considered a fix.
552 {
553 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
554 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
555 # https://www.catalog.update.microsoft.com/
556 },
557 ],
558 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
559 },
560 ],
561 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
562 # upstream timestamp from the underlying information source - e.g. Ubuntu
563 # security tracker.
564 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
565 &quot;details&quot;: [ # All information about the package to specifically identify this
566 # vulnerability. One entry per (version range and cpe_uri) the package
567 # vulnerability has manifested in.
568 { # Identifies all appearances of this vulnerability in the package for a
569 # specific distro/location. For example: glibc in
570 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
571 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
572 # upstream timestamp from the underlying information source - e.g. Ubuntu
573 # security tracker.
574 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
575 # packages etc).
576 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
577 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
578 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
579 # format. Examples include distro or storage location for vulnerable jar.
580 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
581 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
582 # versions.
583 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
584 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
585 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
586 # name.
587 },
588 },
589 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
590 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
591 # versions.
592 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
593 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
594 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
595 # name.
596 },
597 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
598 # [cpe format](https://cpe.mitre.org/specification/) in which the
599 # vulnerability manifests. Examples include distro or storage location for
600 # vulnerable jar.
601 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
602 # obsolete details.
603 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
604 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
605 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
606 # versions.
607 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
608 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
609 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
610 # name.
611 },
612 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
613 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
614 },
615 ],
616 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
617 # For details, see https://www.first.org/cvss/specification-document
618 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
619 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
620 &quot;availabilityImpact&quot;: &quot;A String&quot;,
621 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
622 # Represents the intrinsic characteristics of a vulnerability that are
623 # constant over time and across user environments.
624 &quot;privilegesRequired&quot;: &quot;A String&quot;,
625 &quot;impactScore&quot;: 3.14,
626 &quot;attackComplexity&quot;: &quot;A String&quot;,
627 &quot;scope&quot;: &quot;A String&quot;,
628 &quot;exploitabilityScore&quot;: 3.14,
629 &quot;userInteraction&quot;: &quot;A String&quot;,
630 &quot;integrityImpact&quot;: &quot;A String&quot;,
631 },
632 },
633 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
634 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
635 &quot;A String&quot;,
636 ],
637 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
638 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700639 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
640 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
641 &quot;A String&quot;,
642 ],
643 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700644 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
645 # channels. E.g., glibc (aka libc6) is distributed by many, at various
646 # versions.
647 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
648 { # This represents a particular channel of distribution for a given package.
649 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
650 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
651 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
652 # versions.
653 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
654 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
655 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
656 # name.
657 },
658 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
659 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
660 # denoting the package manager version distributing a package.
661 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
662 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
663 # built.
664 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
665 },
666 ],
667 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
668 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700669 },
670 ],
671 }</pre>
672</div>
673
674<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700675 <code class="details" id="create">create(parent, body=None, noteId=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700676 <pre>Creates a new note.
677
678Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700679 parent: string, Required. The name of the project in the form of `projects/[PROJECT_ID]`, under which
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700680the note is to be created. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700681 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700682 The object takes the form of:
683
684{ # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700685 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
686 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
687 # consumer&#x27;s project at the start of analysis.
688 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
689 # discovery.
690 },
691 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
692 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700693 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
694 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
695 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
696 # the attached occurrences (Attestations). This grouping mechanism also
697 # provides a security boundary, since IAM ACLs gate the ability for a principle
698 # to attach an occurrence to a given note. It also provides a single point of
699 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
700 # live in the same project.
701 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
702 # authority. Because the name of a note acts as its resource reference, it is
703 # important to disambiguate the canonical name of the Note (which might be a
704 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
705 # output. Note that these hints should not be used to look up authorities in
706 # security sensitive contexts, such as when looking up attestations to
707 # verify.
708 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
709 # example &quot;qa&quot;.
710 },
711 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700712 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
713 # chain step in an in-toto layout. This information goes into a Grafeas note.
714 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
715 # artifacts that enter this supply chain step, and exit the supply chain
716 # step, i.e. materials and products of the step.
717 { # Defines an object to declare an in-toto artifact rule
718 &quot;artifactRule&quot;: [
719 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -0700720 ],
721 },
722 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700723 &quot;expectedProducts&quot;: [
724 { # Defines an object to declare an in-toto artifact rule
725 &quot;artifactRule&quot;: [
726 &quot;A String&quot;,
727 ],
728 },
729 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700730 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
731 # signatures on the step metadata.
732 { # This defines the format used to record keys used in the software supply
733 # chain. An in-toto link is attested using one or more keys defined in the
734 # in-toto layout. An example of this is:
735 # {
736 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
737 # &quot;key_type&quot;: &quot;rsa&quot;,
738 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
739 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
740 # }
741 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
742 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700743 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
744 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700745 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
746 # and &quot;ecdsa&quot;.
747 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
748 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700749 },
750 ],
751 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
752 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700753 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700754 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
755 &quot;A String&quot;,
756 ],
757 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700758 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
759 # list requests.
760 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700761 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
762 # relationship. Linked occurrences are derived from this or an
763 # equivalent image via:
764 # FROM &lt;Basis.resource_url&gt;
765 # Or an equivalent reference, e.g. a tag of the resource_url.
766 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700767 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
768 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700769 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
770 &quot;A String&quot;,
771 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700772 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
773 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
774 # Only the name of the final blob is kept.
775 },
776 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
777 # basis of associated occurrence images.
778 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700779 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
780 # a filter in list requests.
781 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
782 # provenance message in the build details occurrence.
783 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
784 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
785 # containing build details.
786 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
787 # findings are valid and unchanged. If `key_type` is empty, this defaults
788 # to PEM encoded public keys.
789 #
790 # This field may be empty if `key_id` references an external key.
791 #
792 # For Cloud Build based signatures, this is a PEM encoded public
793 # key. To verify the Cloud Build signature, place the contents of
794 # this field into a file (public.pem). The signature field is base64-decoded
795 # into its binary representation in signature.bin, and the provenance bytes
796 # from `BuildDetails` are base64-decoded into a binary representation in
797 # signed.bin. OpenSSL can then verify the signature:
798 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
799 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
800 # `key_id`.
801 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
802 # base-64 encoded.
803 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
804 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
805 # CN for a cert), or a reference to an external key (such as a reference to a
806 # key in Cloud Key Management Service).
807 },
808 },
809 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
810 &quot;relatedUrl&quot;: [ # URLs associated with this note.
811 { # Metadata for any related URL information.
812 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
813 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
814 },
815 ],
816 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
817 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
818 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
819 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
820 # patches, thus Windows vulnerabilities really are a missing package, rather
821 # than a package being at an incorrect version.
822 {
823 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
824 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
825 # [cpe format](https://cpe.mitre.org/specification/) in which the
826 # vulnerability manifests. Examples include distro or storage location for
827 # vulnerable jar.
828 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
829 # vulnerability. Note that there may be multiple hotfixes (and thus
830 # multiple KBs) that mitigate a given vulnerability. Currently any listed
831 # kb&#x27;s presence is considered a fix.
832 {
833 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
834 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
835 # https://www.catalog.update.microsoft.com/
836 },
837 ],
838 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
839 },
840 ],
841 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
842 # upstream timestamp from the underlying information source - e.g. Ubuntu
843 # security tracker.
844 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
845 &quot;details&quot;: [ # All information about the package to specifically identify this
846 # vulnerability. One entry per (version range and cpe_uri) the package
847 # vulnerability has manifested in.
848 { # Identifies all appearances of this vulnerability in the package for a
849 # specific distro/location. For example: glibc in
850 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
851 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
852 # upstream timestamp from the underlying information source - e.g. Ubuntu
853 # security tracker.
854 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
855 # packages etc).
856 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
857 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
858 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
859 # format. Examples include distro or storage location for vulnerable jar.
860 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
861 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
862 # versions.
863 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
864 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
865 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
866 # name.
867 },
868 },
869 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
870 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
871 # versions.
872 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
873 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
874 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
875 # name.
876 },
877 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
878 # [cpe format](https://cpe.mitre.org/specification/) in which the
879 # vulnerability manifests. Examples include distro or storage location for
880 # vulnerable jar.
881 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
882 # obsolete details.
883 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
884 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
885 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
886 # versions.
887 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
888 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
889 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
890 # name.
891 },
892 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
893 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
894 },
895 ],
896 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
897 # For details, see https://www.first.org/cvss/specification-document
898 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
899 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
900 &quot;availabilityImpact&quot;: &quot;A String&quot;,
901 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
902 # Represents the intrinsic characteristics of a vulnerability that are
903 # constant over time and across user environments.
904 &quot;privilegesRequired&quot;: &quot;A String&quot;,
905 &quot;impactScore&quot;: 3.14,
906 &quot;attackComplexity&quot;: &quot;A String&quot;,
907 &quot;scope&quot;: &quot;A String&quot;,
908 &quot;exploitabilityScore&quot;: 3.14,
909 &quot;userInteraction&quot;: &quot;A String&quot;,
910 &quot;integrityImpact&quot;: &quot;A String&quot;,
911 },
912 },
913 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
914 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
915 &quot;A String&quot;,
916 ],
917 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
918 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700919 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
920 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
921 &quot;A String&quot;,
922 ],
923 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700924 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
925 # channels. E.g., glibc (aka libc6) is distributed by many, at various
926 # versions.
927 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
928 { # This represents a particular channel of distribution for a given package.
929 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
930 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
931 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
932 # versions.
933 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
934 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
935 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
936 # name.
937 },
938 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
939 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
940 # denoting the package manager version distributing a package.
941 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
942 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
943 # built.
944 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
945 },
946 ],
947 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
948 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700949}
950
Dan O'Mearadd494642020-05-01 07:42:23 -0700951 noteId: string, Required. The ID to use for this note.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700952 x__xgafv: string, V1 error format.
953 Allowed values
954 1 - v1 error format
955 2 - v2 error format
956
957Returns:
958 An object of the form:
959
960 { # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700961 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
962 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
963 # consumer&#x27;s project at the start of analysis.
964 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
965 # discovery.
966 },
967 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
968 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700969 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
970 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
971 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
972 # the attached occurrences (Attestations). This grouping mechanism also
973 # provides a security boundary, since IAM ACLs gate the ability for a principle
974 # to attach an occurrence to a given note. It also provides a single point of
975 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
976 # live in the same project.
977 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
978 # authority. Because the name of a note acts as its resource reference, it is
979 # important to disambiguate the canonical name of the Note (which might be a
980 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
981 # output. Note that these hints should not be used to look up authorities in
982 # security sensitive contexts, such as when looking up attestations to
983 # verify.
984 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
985 # example &quot;qa&quot;.
986 },
987 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700988 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
989 # chain step in an in-toto layout. This information goes into a Grafeas note.
990 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
991 # artifacts that enter this supply chain step, and exit the supply chain
992 # step, i.e. materials and products of the step.
993 { # Defines an object to declare an in-toto artifact rule
994 &quot;artifactRule&quot;: [
995 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -0700996 ],
997 },
998 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700999 &quot;expectedProducts&quot;: [
1000 { # Defines an object to declare an in-toto artifact rule
1001 &quot;artifactRule&quot;: [
1002 &quot;A String&quot;,
1003 ],
1004 },
1005 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001006 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
1007 # signatures on the step metadata.
1008 { # This defines the format used to record keys used in the software supply
1009 # chain. An in-toto link is attested using one or more keys defined in the
1010 # in-toto layout. An example of this is:
1011 # {
1012 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
1013 # &quot;key_type&quot;: &quot;rsa&quot;,
1014 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
1015 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
1016 # }
1017 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
1018 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001019 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
1020 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001021 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
1022 # and &quot;ecdsa&quot;.
1023 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
1024 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001025 },
1026 ],
1027 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
1028 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001029 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001030 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
1031 &quot;A String&quot;,
1032 ],
1033 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001034 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
1035 # list requests.
1036 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001037 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
1038 # relationship. Linked occurrences are derived from this or an
1039 # equivalent image via:
1040 # FROM &lt;Basis.resource_url&gt;
1041 # Or an equivalent reference, e.g. a tag of the resource_url.
1042 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001043 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
1044 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001045 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
1046 &quot;A String&quot;,
1047 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001048 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
1049 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
1050 # Only the name of the final blob is kept.
1051 },
1052 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
1053 # basis of associated occurrence images.
1054 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001055 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
1056 # a filter in list requests.
1057 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
1058 # provenance message in the build details occurrence.
1059 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
1060 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
1061 # containing build details.
1062 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
1063 # findings are valid and unchanged. If `key_type` is empty, this defaults
1064 # to PEM encoded public keys.
1065 #
1066 # This field may be empty if `key_id` references an external key.
1067 #
1068 # For Cloud Build based signatures, this is a PEM encoded public
1069 # key. To verify the Cloud Build signature, place the contents of
1070 # this field into a file (public.pem). The signature field is base64-decoded
1071 # into its binary representation in signature.bin, and the provenance bytes
1072 # from `BuildDetails` are base64-decoded into a binary representation in
1073 # signed.bin. OpenSSL can then verify the signature:
1074 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
1075 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
1076 # `key_id`.
1077 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
1078 # base-64 encoded.
1079 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
1080 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
1081 # CN for a cert), or a reference to an external key (such as a reference to a
1082 # key in Cloud Key Management Service).
1083 },
1084 },
1085 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
1086 &quot;relatedUrl&quot;: [ # URLs associated with this note.
1087 { # Metadata for any related URL information.
1088 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
1089 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
1090 },
1091 ],
1092 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
1093 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
1094 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
1095 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
1096 # patches, thus Windows vulnerabilities really are a missing package, rather
1097 # than a package being at an incorrect version.
1098 {
1099 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
1100 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
1101 # [cpe format](https://cpe.mitre.org/specification/) in which the
1102 # vulnerability manifests. Examples include distro or storage location for
1103 # vulnerable jar.
1104 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
1105 # vulnerability. Note that there may be multiple hotfixes (and thus
1106 # multiple KBs) that mitigate a given vulnerability. Currently any listed
1107 # kb&#x27;s presence is considered a fix.
1108 {
1109 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
1110 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
1111 # https://www.catalog.update.microsoft.com/
1112 },
1113 ],
1114 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
1115 },
1116 ],
1117 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
1118 # upstream timestamp from the underlying information source - e.g. Ubuntu
1119 # security tracker.
1120 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
1121 &quot;details&quot;: [ # All information about the package to specifically identify this
1122 # vulnerability. One entry per (version range and cpe_uri) the package
1123 # vulnerability has manifested in.
1124 { # Identifies all appearances of this vulnerability in the package for a
1125 # specific distro/location. For example: glibc in
1126 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
1127 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
1128 # upstream timestamp from the underlying information source - e.g. Ubuntu
1129 # security tracker.
1130 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
1131 # packages etc).
1132 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
1133 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
1134 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
1135 # format. Examples include distro or storage location for vulnerable jar.
1136 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
1137 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1138 # versions.
1139 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1140 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1141 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1142 # name.
1143 },
1144 },
1145 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
1146 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1147 # versions.
1148 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1149 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1150 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1151 # name.
1152 },
1153 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
1154 # [cpe format](https://cpe.mitre.org/specification/) in which the
1155 # vulnerability manifests. Examples include distro or storage location for
1156 # vulnerable jar.
1157 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
1158 # obsolete details.
1159 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
1160 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
1161 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1162 # versions.
1163 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1164 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1165 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1166 # name.
1167 },
1168 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
1169 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
1170 },
1171 ],
1172 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
1173 # For details, see https://www.first.org/cvss/specification-document
1174 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
1175 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
1176 &quot;availabilityImpact&quot;: &quot;A String&quot;,
1177 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
1178 # Represents the intrinsic characteristics of a vulnerability that are
1179 # constant over time and across user environments.
1180 &quot;privilegesRequired&quot;: &quot;A String&quot;,
1181 &quot;impactScore&quot;: 3.14,
1182 &quot;attackComplexity&quot;: &quot;A String&quot;,
1183 &quot;scope&quot;: &quot;A String&quot;,
1184 &quot;exploitabilityScore&quot;: 3.14,
1185 &quot;userInteraction&quot;: &quot;A String&quot;,
1186 &quot;integrityImpact&quot;: &quot;A String&quot;,
1187 },
1188 },
1189 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
1190 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
1191 &quot;A String&quot;,
1192 ],
1193 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
1194 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001195 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
1196 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
1197 &quot;A String&quot;,
1198 ],
1199 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001200 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
1201 # channels. E.g., glibc (aka libc6) is distributed by many, at various
1202 # versions.
1203 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
1204 { # This represents a particular channel of distribution for a given package.
1205 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
1206 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
1207 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1208 # versions.
1209 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1210 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1211 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1212 # name.
1213 },
1214 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
1215 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
1216 # denoting the package manager version distributing a package.
1217 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
1218 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
1219 # built.
1220 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
1221 },
1222 ],
1223 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
1224 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001225 }</pre>
1226</div>
1227
1228<div class="method">
1229 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
1230 <pre>Deletes the specified note.
1231
1232Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07001233 name: string, Required. The name of the note in the form of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001234`projects/[PROVIDER_ID]/notes/[NOTE_ID]`. (required)
1235 x__xgafv: string, V1 error format.
1236 Allowed values
1237 1 - v1 error format
1238 2 - v2 error format
1239
1240Returns:
1241 An object of the form:
1242
1243 { # A generic empty message that you can re-use to avoid defining duplicated
1244 # empty messages in your APIs. A typical example is to use it as the request
1245 # or the response type of an API method. For instance:
1246 #
1247 # service Foo {
1248 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1249 # }
1250 #
1251 # The JSON representation for `Empty` is empty JSON object `{}`.
1252 }</pre>
1253</div>
1254
1255<div class="method">
1256 <code class="details" id="get">get(name, x__xgafv=None)</code>
1257 <pre>Gets the specified note.
1258
1259Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07001260 name: string, Required. The name of the note in the form of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001261`projects/[PROVIDER_ID]/notes/[NOTE_ID]`. (required)
1262 x__xgafv: string, V1 error format.
1263 Allowed values
1264 1 - v1 error format
1265 2 - v2 error format
1266
1267Returns:
1268 An object of the form:
1269
1270 { # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001271 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
1272 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
1273 # consumer&#x27;s project at the start of analysis.
1274 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
1275 # discovery.
1276 },
1277 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
1278 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001279 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
1280 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
1281 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
1282 # the attached occurrences (Attestations). This grouping mechanism also
1283 # provides a security boundary, since IAM ACLs gate the ability for a principle
1284 # to attach an occurrence to a given note. It also provides a single point of
1285 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
1286 # live in the same project.
1287 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
1288 # authority. Because the name of a note acts as its resource reference, it is
1289 # important to disambiguate the canonical name of the Note (which might be a
1290 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
1291 # output. Note that these hints should not be used to look up authorities in
1292 # security sensitive contexts, such as when looking up attestations to
1293 # verify.
1294 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
1295 # example &quot;qa&quot;.
1296 },
1297 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001298 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
1299 # chain step in an in-toto layout. This information goes into a Grafeas note.
1300 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
1301 # artifacts that enter this supply chain step, and exit the supply chain
1302 # step, i.e. materials and products of the step.
1303 { # Defines an object to declare an in-toto artifact rule
1304 &quot;artifactRule&quot;: [
1305 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -07001306 ],
1307 },
1308 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001309 &quot;expectedProducts&quot;: [
1310 { # Defines an object to declare an in-toto artifact rule
1311 &quot;artifactRule&quot;: [
1312 &quot;A String&quot;,
1313 ],
1314 },
1315 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001316 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
1317 # signatures on the step metadata.
1318 { # This defines the format used to record keys used in the software supply
1319 # chain. An in-toto link is attested using one or more keys defined in the
1320 # in-toto layout. An example of this is:
1321 # {
1322 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
1323 # &quot;key_type&quot;: &quot;rsa&quot;,
1324 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
1325 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
1326 # }
1327 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
1328 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001329 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
1330 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001331 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
1332 # and &quot;ecdsa&quot;.
1333 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
1334 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001335 },
1336 ],
1337 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
1338 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001339 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001340 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
1341 &quot;A String&quot;,
1342 ],
1343 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001344 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
1345 # list requests.
1346 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001347 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
1348 # relationship. Linked occurrences are derived from this or an
1349 # equivalent image via:
1350 # FROM &lt;Basis.resource_url&gt;
1351 # Or an equivalent reference, e.g. a tag of the resource_url.
1352 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001353 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
1354 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001355 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
1356 &quot;A String&quot;,
1357 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001358 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
1359 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
1360 # Only the name of the final blob is kept.
1361 },
1362 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
1363 # basis of associated occurrence images.
1364 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001365 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
1366 # a filter in list requests.
1367 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
1368 # provenance message in the build details occurrence.
1369 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
1370 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
1371 # containing build details.
1372 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
1373 # findings are valid and unchanged. If `key_type` is empty, this defaults
1374 # to PEM encoded public keys.
1375 #
1376 # This field may be empty if `key_id` references an external key.
1377 #
1378 # For Cloud Build based signatures, this is a PEM encoded public
1379 # key. To verify the Cloud Build signature, place the contents of
1380 # this field into a file (public.pem). The signature field is base64-decoded
1381 # into its binary representation in signature.bin, and the provenance bytes
1382 # from `BuildDetails` are base64-decoded into a binary representation in
1383 # signed.bin. OpenSSL can then verify the signature:
1384 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
1385 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
1386 # `key_id`.
1387 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
1388 # base-64 encoded.
1389 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
1390 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
1391 # CN for a cert), or a reference to an external key (such as a reference to a
1392 # key in Cloud Key Management Service).
1393 },
1394 },
1395 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
1396 &quot;relatedUrl&quot;: [ # URLs associated with this note.
1397 { # Metadata for any related URL information.
1398 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
1399 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
1400 },
1401 ],
1402 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
1403 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
1404 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
1405 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
1406 # patches, thus Windows vulnerabilities really are a missing package, rather
1407 # than a package being at an incorrect version.
1408 {
1409 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
1410 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
1411 # [cpe format](https://cpe.mitre.org/specification/) in which the
1412 # vulnerability manifests. Examples include distro or storage location for
1413 # vulnerable jar.
1414 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
1415 # vulnerability. Note that there may be multiple hotfixes (and thus
1416 # multiple KBs) that mitigate a given vulnerability. Currently any listed
1417 # kb&#x27;s presence is considered a fix.
1418 {
1419 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
1420 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
1421 # https://www.catalog.update.microsoft.com/
1422 },
1423 ],
1424 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
1425 },
1426 ],
1427 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
1428 # upstream timestamp from the underlying information source - e.g. Ubuntu
1429 # security tracker.
1430 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
1431 &quot;details&quot;: [ # All information about the package to specifically identify this
1432 # vulnerability. One entry per (version range and cpe_uri) the package
1433 # vulnerability has manifested in.
1434 { # Identifies all appearances of this vulnerability in the package for a
1435 # specific distro/location. For example: glibc in
1436 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
1437 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
1438 # upstream timestamp from the underlying information source - e.g. Ubuntu
1439 # security tracker.
1440 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
1441 # packages etc).
1442 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
1443 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
1444 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
1445 # format. Examples include distro or storage location for vulnerable jar.
1446 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
1447 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1448 # versions.
1449 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1450 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1451 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1452 # name.
1453 },
1454 },
1455 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
1456 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1457 # versions.
1458 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1459 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1460 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1461 # name.
1462 },
1463 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
1464 # [cpe format](https://cpe.mitre.org/specification/) in which the
1465 # vulnerability manifests. Examples include distro or storage location for
1466 # vulnerable jar.
1467 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
1468 # obsolete details.
1469 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
1470 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
1471 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1472 # versions.
1473 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1474 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1475 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1476 # name.
1477 },
1478 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
1479 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
1480 },
1481 ],
1482 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
1483 # For details, see https://www.first.org/cvss/specification-document
1484 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
1485 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
1486 &quot;availabilityImpact&quot;: &quot;A String&quot;,
1487 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
1488 # Represents the intrinsic characteristics of a vulnerability that are
1489 # constant over time and across user environments.
1490 &quot;privilegesRequired&quot;: &quot;A String&quot;,
1491 &quot;impactScore&quot;: 3.14,
1492 &quot;attackComplexity&quot;: &quot;A String&quot;,
1493 &quot;scope&quot;: &quot;A String&quot;,
1494 &quot;exploitabilityScore&quot;: 3.14,
1495 &quot;userInteraction&quot;: &quot;A String&quot;,
1496 &quot;integrityImpact&quot;: &quot;A String&quot;,
1497 },
1498 },
1499 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
1500 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
1501 &quot;A String&quot;,
1502 ],
1503 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
1504 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001505 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
1506 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
1507 &quot;A String&quot;,
1508 ],
1509 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001510 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
1511 # channels. E.g., glibc (aka libc6) is distributed by many, at various
1512 # versions.
1513 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
1514 { # This represents a particular channel of distribution for a given package.
1515 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
1516 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
1517 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1518 # versions.
1519 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1520 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1521 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1522 # name.
1523 },
1524 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
1525 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
1526 # denoting the package manager version distributing a package.
1527 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
1528 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
1529 # built.
1530 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
1531 },
1532 ],
1533 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
1534 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001535 }</pre>
1536</div>
1537
1538<div class="method">
1539 <code class="details" id="getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</code>
1540 <pre>Gets the access control policy for a note or an occurrence resource.
1541Requires `containeranalysis.notes.setIamPolicy` or
1542`containeranalysis.occurrences.setIamPolicy` permission if the resource is
1543a note or occurrence, respectively.
1544
1545The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
1546notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
1547occurrences.
1548
1549Args:
1550 resource: string, REQUIRED: The resource for which the policy is being requested.
1551See the operation documentation for the appropriate value for this field. (required)
1552 body: object, The request body.
1553 The object takes the form of:
1554
1555{ # Request message for `GetIamPolicy` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07001556 &quot;options&quot;: { # Encapsulates settings provided to GetIamPolicy. # OPTIONAL: A `GetPolicyOptions` object for specifying options to
Dan O'Mearadd494642020-05-01 07:42:23 -07001557 # `GetIamPolicy`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001558 &quot;requestedPolicyVersion&quot;: 42, # Optional. The policy format version to be returned.
Dan O'Mearadd494642020-05-01 07:42:23 -07001559 #
1560 # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1561 # rejected.
1562 #
1563 # Requests for policies with any conditional bindings must specify version 3.
1564 # Policies without any conditional bindings may specify any valid value or
1565 # leave the field unset.
Bu Sun Kim65020912020-05-20 12:08:20 -07001566 #
1567 # To learn which resources support conditions in their IAM policies, see the
1568 # [IAM
1569 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07001570 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001571 }
1572
1573 x__xgafv: string, V1 error format.
1574 Allowed values
1575 1 - v1 error format
1576 2 - v2 error format
1577
1578Returns:
1579 An object of the form:
1580
Dan O'Mearadd494642020-05-01 07:42:23 -07001581 { # An Identity and Access Management (IAM) policy, which specifies access
1582 # controls for Google Cloud resources.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001583 #
1584 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001585 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1586 # `members` to a single `role`. Members can be user accounts, service accounts,
1587 # Google groups, and domains (such as G Suite). A `role` is a named list of
1588 # permissions; each `role` can be an IAM predefined role or a user-created
1589 # custom role.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001590 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001591 # For some types of Google Cloud resources, a `binding` can also specify a
1592 # `condition`, which is a logical expression that allows access to a resource
1593 # only if the expression evaluates to `true`. A condition can add constraints
1594 # based on attributes of the request, the resource, or both. To learn which
1595 # resources support conditions in their IAM policies, see the
1596 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07001597 #
1598 # **JSON example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001599 #
1600 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001601 # &quot;bindings&quot;: [
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001602 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001603 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
1604 # &quot;members&quot;: [
1605 # &quot;user:mike@example.com&quot;,
1606 # &quot;group:admins@example.com&quot;,
1607 # &quot;domain:google.com&quot;,
1608 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001609 # ]
1610 # },
1611 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001612 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
1613 # &quot;members&quot;: [
1614 # &quot;user:eve@example.com&quot;
1615 # ],
1616 # &quot;condition&quot;: {
1617 # &quot;title&quot;: &quot;expirable access&quot;,
1618 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
1619 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -07001620 # }
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001621 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07001622 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001623 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
1624 # &quot;version&quot;: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001625 # }
1626 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001627 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001628 #
1629 # bindings:
1630 # - members:
1631 # - user:mike@example.com
1632 # - group:admins@example.com
1633 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07001634 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1635 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001636 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07001637 # - user:eve@example.com
1638 # role: roles/resourcemanager.organizationViewer
1639 # condition:
1640 # title: expirable access
1641 # description: Does not grant access after Sep 2020
Bu Sun Kim65020912020-05-20 12:08:20 -07001642 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
Dan O'Mearadd494642020-05-01 07:42:23 -07001643 # - etag: BwWWja0YfJA=
1644 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001645 #
1646 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07001647 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001648 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
1649 # prevent simultaneous updates of a policy from overwriting each other.
1650 # It is strongly suggested that systems make use of the `etag` in the
1651 # read-modify-write cycle to perform policy updates in order to avoid race
1652 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1653 # systems are expected to put that etag in the request to `setIamPolicy` to
1654 # ensure that their change will be applied to the same version of the policy.
1655 #
1656 # **Important:** If you use IAM Conditions, you must include the `etag` field
1657 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1658 # you to overwrite a version `3` policy with a version `1` policy, and all of
1659 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07001660 &quot;version&quot;: 42, # Specifies the format of the policy.
1661 #
1662 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1663 # are rejected.
1664 #
1665 # Any operation that affects conditional role bindings must specify version
1666 # `3`. This requirement applies to the following operations:
1667 #
1668 # * Getting a policy that includes a conditional role binding
1669 # * Adding a conditional role binding to a policy
1670 # * Changing a conditional role binding in a policy
1671 # * Removing any role binding, with or without a condition, from a policy
1672 # that includes conditions
1673 #
1674 # **Important:** If you use IAM Conditions, you must include the `etag` field
1675 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1676 # you to overwrite a version `3` policy with a version `1` policy, and all of
1677 # the conditions in the version `3` policy are lost.
1678 #
1679 # If a policy does not include any conditions, operations on that policy may
1680 # specify any valid version or leave the field unset.
1681 #
1682 # To learn which resources support conditions in their IAM policies, see the
1683 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1684 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
Dan O'Mearadd494642020-05-01 07:42:23 -07001685 # `condition` that determines how and when the `bindings` are applied. Each
1686 # of the `bindings` must contain at least one member.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001687 { # Associates `members` with a `role`.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001688 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
1689 # `members` can have the following values:
1690 #
1691 # * `allUsers`: A special identifier that represents anyone who is
1692 # on the internet; with or without a Google account.
1693 #
1694 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1695 # who is authenticated with a Google account or a service account.
1696 #
1697 # * `user:{emailid}`: An email address that represents a specific Google
1698 # account. For example, `alice@example.com` .
1699 #
1700 #
1701 # * `serviceAccount:{emailid}`: An email address that represents a service
1702 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1703 #
1704 # * `group:{emailid}`: An email address that represents a Google group.
1705 # For example, `admins@example.com`.
1706 #
1707 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1708 # identifier) representing a user that has been recently deleted. For
1709 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1710 # recovered, this value reverts to `user:{emailid}` and the recovered user
1711 # retains the role in the binding.
1712 #
1713 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1714 # unique identifier) representing a service account that has been recently
1715 # deleted. For example,
1716 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1717 # If the service account is undeleted, this value reverts to
1718 # `serviceAccount:{emailid}` and the undeleted service account retains the
1719 # role in the binding.
1720 #
1721 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1722 # identifier) representing a Google group that has been recently
1723 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1724 # the group is recovered, this value reverts to `group:{emailid}` and the
1725 # recovered group retains the role in the binding.
1726 #
1727 #
1728 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1729 # users of that domain. For example, `google.com` or `example.com`.
1730 #
1731 &quot;A String&quot;,
1732 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001733 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
1734 #
1735 # If the condition evaluates to `true`, then this binding applies to the
1736 # current request.
1737 #
1738 # If the condition evaluates to `false`, then this binding does not apply to
1739 # the current request. However, a different role binding might grant the same
1740 # role to one or more of the members in this binding.
1741 #
1742 # To learn which resources support conditions in their IAM policies, see the
1743 # [IAM
1744 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1745 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1746 # are documented at https://github.com/google/cel-spec.
1747 #
1748 # Example (Comparison):
1749 #
1750 # title: &quot;Summary size limit&quot;
1751 # description: &quot;Determines if a summary is less than 100 chars&quot;
1752 # expression: &quot;document.summary.size() &lt; 100&quot;
1753 #
1754 # Example (Equality):
1755 #
1756 # title: &quot;Requestor is owner&quot;
1757 # description: &quot;Determines if requestor is the document owner&quot;
1758 # expression: &quot;document.owner == request.auth.claims.email&quot;
1759 #
1760 # Example (Logic):
1761 #
1762 # title: &quot;Public documents&quot;
1763 # description: &quot;Determine whether the document should be publicly visible&quot;
1764 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
1765 #
1766 # Example (Data Manipulation):
1767 #
1768 # title: &quot;Notification string&quot;
1769 # description: &quot;Create a notification string with a timestamp.&quot;
1770 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
1771 #
1772 # The exact variables and functions that may be referenced within an expression
1773 # are determined by the service that evaluates it. See the service
1774 # documentation for additional information.
1775 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
1776 # describes the expression, e.g. when hovered over it in a UI.
1777 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
1778 # syntax.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001779 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
1780 # reporting, e.g. a file name and a position in the file.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001781 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
1782 # its purpose. This can be used e.g. in UIs which allow to enter the
1783 # expression.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001784 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001785 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
1786 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001787 },
1788 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001789 }</pre>
1790</div>
1791
1792<div class="method">
Bu Sun Kim65020912020-05-20 12:08:20 -07001793 <code class="details" id="list">list(parent, pageToken=None, pageSize=None, filter=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001794 <pre>Lists notes for the specified project.
1795
1796Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07001797 parent: string, Required. The name of the project to list notes for in the form of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001798`projects/[PROJECT_ID]`. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001799 pageToken: string, Token to provide to skip to a particular spot in the list.
Bu Sun Kim65020912020-05-20 12:08:20 -07001800 pageSize: integer, Number of notes to return in the list. Must be positive. Max allowed page
1801size is 1000. If not specified, page size defaults to 20.
1802 filter: string, The filter expression.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001803 x__xgafv: string, V1 error format.
1804 Allowed values
1805 1 - v1 error format
1806 2 - v2 error format
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001807
1808Returns:
1809 An object of the form:
1810
1811 { # Response for listing notes.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001812 &quot;nextPageToken&quot;: &quot;A String&quot;, # The next pagination token in the list response. It should be used as
1813 # `page_token` for the following request. An empty value means no more
1814 # results.
Bu Sun Kim65020912020-05-20 12:08:20 -07001815 &quot;notes&quot;: [ # The notes requested.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001816 { # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001817 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
1818 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
1819 # consumer&#x27;s project at the start of analysis.
1820 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
1821 # discovery.
1822 },
1823 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
1824 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001825 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
1826 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
1827 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
1828 # the attached occurrences (Attestations). This grouping mechanism also
1829 # provides a security boundary, since IAM ACLs gate the ability for a principle
1830 # to attach an occurrence to a given note. It also provides a single point of
1831 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
1832 # live in the same project.
1833 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
1834 # authority. Because the name of a note acts as its resource reference, it is
1835 # important to disambiguate the canonical name of the Note (which might be a
1836 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
1837 # output. Note that these hints should not be used to look up authorities in
1838 # security sensitive contexts, such as when looking up attestations to
1839 # verify.
1840 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
1841 # example &quot;qa&quot;.
1842 },
1843 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001844 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
1845 # chain step in an in-toto layout. This information goes into a Grafeas note.
1846 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
1847 # artifacts that enter this supply chain step, and exit the supply chain
1848 # step, i.e. materials and products of the step.
1849 { # Defines an object to declare an in-toto artifact rule
1850 &quot;artifactRule&quot;: [
1851 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -07001852 ],
1853 },
1854 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001855 &quot;expectedProducts&quot;: [
1856 { # Defines an object to declare an in-toto artifact rule
1857 &quot;artifactRule&quot;: [
1858 &quot;A String&quot;,
1859 ],
1860 },
1861 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001862 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
1863 # signatures on the step metadata.
1864 { # This defines the format used to record keys used in the software supply
1865 # chain. An in-toto link is attested using one or more keys defined in the
1866 # in-toto layout. An example of this is:
1867 # {
1868 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
1869 # &quot;key_type&quot;: &quot;rsa&quot;,
1870 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
1871 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
1872 # }
1873 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
1874 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001875 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
1876 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001877 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
1878 # and &quot;ecdsa&quot;.
1879 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
1880 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001881 },
1882 ],
1883 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
1884 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001885 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001886 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
1887 &quot;A String&quot;,
1888 ],
1889 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001890 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
1891 # list requests.
1892 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001893 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
1894 # relationship. Linked occurrences are derived from this or an
1895 # equivalent image via:
1896 # FROM &lt;Basis.resource_url&gt;
1897 # Or an equivalent reference, e.g. a tag of the resource_url.
1898 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001899 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
1900 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001901 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
1902 &quot;A String&quot;,
1903 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001904 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
1905 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
1906 # Only the name of the final blob is kept.
1907 },
1908 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
1909 # basis of associated occurrence images.
1910 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001911 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
1912 # a filter in list requests.
1913 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
1914 # provenance message in the build details occurrence.
1915 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
1916 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
1917 # containing build details.
1918 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
1919 # findings are valid and unchanged. If `key_type` is empty, this defaults
1920 # to PEM encoded public keys.
1921 #
1922 # This field may be empty if `key_id` references an external key.
1923 #
1924 # For Cloud Build based signatures, this is a PEM encoded public
1925 # key. To verify the Cloud Build signature, place the contents of
1926 # this field into a file (public.pem). The signature field is base64-decoded
1927 # into its binary representation in signature.bin, and the provenance bytes
1928 # from `BuildDetails` are base64-decoded into a binary representation in
1929 # signed.bin. OpenSSL can then verify the signature:
1930 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
1931 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
1932 # `key_id`.
1933 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
1934 # base-64 encoded.
1935 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
1936 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
1937 # CN for a cert), or a reference to an external key (such as a reference to a
1938 # key in Cloud Key Management Service).
1939 },
1940 },
1941 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
1942 &quot;relatedUrl&quot;: [ # URLs associated with this note.
1943 { # Metadata for any related URL information.
1944 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
1945 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
1946 },
1947 ],
1948 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
1949 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
1950 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
1951 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
1952 # patches, thus Windows vulnerabilities really are a missing package, rather
1953 # than a package being at an incorrect version.
1954 {
1955 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
1956 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
1957 # [cpe format](https://cpe.mitre.org/specification/) in which the
1958 # vulnerability manifests. Examples include distro or storage location for
1959 # vulnerable jar.
1960 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
1961 # vulnerability. Note that there may be multiple hotfixes (and thus
1962 # multiple KBs) that mitigate a given vulnerability. Currently any listed
1963 # kb&#x27;s presence is considered a fix.
1964 {
1965 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
1966 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
1967 # https://www.catalog.update.microsoft.com/
1968 },
1969 ],
1970 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
1971 },
1972 ],
1973 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
1974 # upstream timestamp from the underlying information source - e.g. Ubuntu
1975 # security tracker.
1976 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
1977 &quot;details&quot;: [ # All information about the package to specifically identify this
1978 # vulnerability. One entry per (version range and cpe_uri) the package
1979 # vulnerability has manifested in.
1980 { # Identifies all appearances of this vulnerability in the package for a
1981 # specific distro/location. For example: glibc in
1982 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
1983 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
1984 # upstream timestamp from the underlying information source - e.g. Ubuntu
1985 # security tracker.
1986 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
1987 # packages etc).
1988 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
1989 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
1990 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
1991 # format. Examples include distro or storage location for vulnerable jar.
1992 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
1993 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
1994 # versions.
1995 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
1996 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
1997 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
1998 # name.
1999 },
2000 },
2001 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
2002 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2003 # versions.
2004 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2005 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2006 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2007 # name.
2008 },
2009 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
2010 # [cpe format](https://cpe.mitre.org/specification/) in which the
2011 # vulnerability manifests. Examples include distro or storage location for
2012 # vulnerable jar.
2013 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
2014 # obsolete details.
2015 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
2016 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
2017 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2018 # versions.
2019 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2020 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2021 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2022 # name.
2023 },
2024 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
2025 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
2026 },
2027 ],
2028 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
2029 # For details, see https://www.first.org/cvss/specification-document
2030 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
2031 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
2032 &quot;availabilityImpact&quot;: &quot;A String&quot;,
2033 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
2034 # Represents the intrinsic characteristics of a vulnerability that are
2035 # constant over time and across user environments.
2036 &quot;privilegesRequired&quot;: &quot;A String&quot;,
2037 &quot;impactScore&quot;: 3.14,
2038 &quot;attackComplexity&quot;: &quot;A String&quot;,
2039 &quot;scope&quot;: &quot;A String&quot;,
2040 &quot;exploitabilityScore&quot;: 3.14,
2041 &quot;userInteraction&quot;: &quot;A String&quot;,
2042 &quot;integrityImpact&quot;: &quot;A String&quot;,
2043 },
2044 },
2045 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
2046 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
2047 &quot;A String&quot;,
2048 ],
2049 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
2050 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002051 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
2052 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
2053 &quot;A String&quot;,
2054 ],
2055 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002056 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
2057 # channels. E.g., glibc (aka libc6) is distributed by many, at various
2058 # versions.
2059 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
2060 { # This represents a particular channel of distribution for a given package.
2061 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
2062 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
2063 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2064 # versions.
2065 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2066 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2067 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2068 # name.
2069 },
2070 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
2071 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
2072 # denoting the package manager version distributing a package.
2073 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
2074 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
2075 # built.
2076 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
2077 },
2078 ],
2079 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
2080 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002081 },
2082 ],
2083 }</pre>
2084</div>
2085
2086<div class="method">
2087 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
2088 <pre>Retrieves the next page of results.
2089
2090Args:
2091 previous_request: The request for the previous page. (required)
2092 previous_response: The response from the request for the previous page. (required)
2093
2094Returns:
Bu Sun Kim65020912020-05-20 12:08:20 -07002095 A request object that you can call &#x27;execute()&#x27; on to request the next
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002096 page. Returns None if there are no more items in the collection.
2097 </pre>
2098</div>
2099
2100<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07002101 <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002102 <pre>Updates the specified note.
2103
2104Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07002105 name: string, Required. The name of the note in the form of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002106`projects/[PROVIDER_ID]/notes/[NOTE_ID]`. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07002107 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002108 The object takes the form of:
2109
2110{ # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002111 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
2112 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
2113 # consumer&#x27;s project at the start of analysis.
2114 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
2115 # discovery.
2116 },
2117 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
2118 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -07002119 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
2120 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
2121 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
2122 # the attached occurrences (Attestations). This grouping mechanism also
2123 # provides a security boundary, since IAM ACLs gate the ability for a principle
2124 # to attach an occurrence to a given note. It also provides a single point of
2125 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
2126 # live in the same project.
2127 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
2128 # authority. Because the name of a note acts as its resource reference, it is
2129 # important to disambiguate the canonical name of the Note (which might be a
2130 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
2131 # output. Note that these hints should not be used to look up authorities in
2132 # security sensitive contexts, such as when looking up attestations to
2133 # verify.
2134 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
2135 # example &quot;qa&quot;.
2136 },
2137 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002138 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
2139 # chain step in an in-toto layout. This information goes into a Grafeas note.
2140 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
2141 # artifacts that enter this supply chain step, and exit the supply chain
2142 # step, i.e. materials and products of the step.
2143 { # Defines an object to declare an in-toto artifact rule
2144 &quot;artifactRule&quot;: [
2145 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -07002146 ],
2147 },
2148 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002149 &quot;expectedProducts&quot;: [
2150 { # Defines an object to declare an in-toto artifact rule
2151 &quot;artifactRule&quot;: [
2152 &quot;A String&quot;,
2153 ],
2154 },
2155 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002156 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
2157 # signatures on the step metadata.
2158 { # This defines the format used to record keys used in the software supply
2159 # chain. An in-toto link is attested using one or more keys defined in the
2160 # in-toto layout. An example of this is:
2161 # {
2162 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
2163 # &quot;key_type&quot;: &quot;rsa&quot;,
2164 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
2165 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
2166 # }
2167 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
2168 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002169 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
2170 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002171 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
2172 # and &quot;ecdsa&quot;.
2173 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
2174 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002175 },
2176 ],
2177 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
2178 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002179 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002180 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
2181 &quot;A String&quot;,
2182 ],
2183 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002184 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
2185 # list requests.
2186 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002187 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
2188 # relationship. Linked occurrences are derived from this or an
2189 # equivalent image via:
2190 # FROM &lt;Basis.resource_url&gt;
2191 # Or an equivalent reference, e.g. a tag of the resource_url.
2192 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002193 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
2194 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002195 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
2196 &quot;A String&quot;,
2197 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002198 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
2199 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
2200 # Only the name of the final blob is kept.
2201 },
2202 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
2203 # basis of associated occurrence images.
2204 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002205 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
2206 # a filter in list requests.
2207 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
2208 # provenance message in the build details occurrence.
2209 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
2210 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
2211 # containing build details.
2212 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
2213 # findings are valid and unchanged. If `key_type` is empty, this defaults
2214 # to PEM encoded public keys.
2215 #
2216 # This field may be empty if `key_id` references an external key.
2217 #
2218 # For Cloud Build based signatures, this is a PEM encoded public
2219 # key. To verify the Cloud Build signature, place the contents of
2220 # this field into a file (public.pem). The signature field is base64-decoded
2221 # into its binary representation in signature.bin, and the provenance bytes
2222 # from `BuildDetails` are base64-decoded into a binary representation in
2223 # signed.bin. OpenSSL can then verify the signature:
2224 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
2225 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
2226 # `key_id`.
2227 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
2228 # base-64 encoded.
2229 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
2230 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
2231 # CN for a cert), or a reference to an external key (such as a reference to a
2232 # key in Cloud Key Management Service).
2233 },
2234 },
2235 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
2236 &quot;relatedUrl&quot;: [ # URLs associated with this note.
2237 { # Metadata for any related URL information.
2238 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
2239 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
2240 },
2241 ],
2242 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
2243 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
2244 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
2245 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
2246 # patches, thus Windows vulnerabilities really are a missing package, rather
2247 # than a package being at an incorrect version.
2248 {
2249 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
2250 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
2251 # [cpe format](https://cpe.mitre.org/specification/) in which the
2252 # vulnerability manifests. Examples include distro or storage location for
2253 # vulnerable jar.
2254 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
2255 # vulnerability. Note that there may be multiple hotfixes (and thus
2256 # multiple KBs) that mitigate a given vulnerability. Currently any listed
2257 # kb&#x27;s presence is considered a fix.
2258 {
2259 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
2260 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
2261 # https://www.catalog.update.microsoft.com/
2262 },
2263 ],
2264 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
2265 },
2266 ],
2267 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
2268 # upstream timestamp from the underlying information source - e.g. Ubuntu
2269 # security tracker.
2270 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
2271 &quot;details&quot;: [ # All information about the package to specifically identify this
2272 # vulnerability. One entry per (version range and cpe_uri) the package
2273 # vulnerability has manifested in.
2274 { # Identifies all appearances of this vulnerability in the package for a
2275 # specific distro/location. For example: glibc in
2276 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
2277 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
2278 # upstream timestamp from the underlying information source - e.g. Ubuntu
2279 # security tracker.
2280 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
2281 # packages etc).
2282 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
2283 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
2284 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
2285 # format. Examples include distro or storage location for vulnerable jar.
2286 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
2287 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2288 # versions.
2289 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2290 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2291 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2292 # name.
2293 },
2294 },
2295 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
2296 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2297 # versions.
2298 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2299 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2300 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2301 # name.
2302 },
2303 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
2304 # [cpe format](https://cpe.mitre.org/specification/) in which the
2305 # vulnerability manifests. Examples include distro or storage location for
2306 # vulnerable jar.
2307 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
2308 # obsolete details.
2309 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
2310 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
2311 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2312 # versions.
2313 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2314 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2315 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2316 # name.
2317 },
2318 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
2319 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
2320 },
2321 ],
2322 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
2323 # For details, see https://www.first.org/cvss/specification-document
2324 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
2325 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
2326 &quot;availabilityImpact&quot;: &quot;A String&quot;,
2327 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
2328 # Represents the intrinsic characteristics of a vulnerability that are
2329 # constant over time and across user environments.
2330 &quot;privilegesRequired&quot;: &quot;A String&quot;,
2331 &quot;impactScore&quot;: 3.14,
2332 &quot;attackComplexity&quot;: &quot;A String&quot;,
2333 &quot;scope&quot;: &quot;A String&quot;,
2334 &quot;exploitabilityScore&quot;: 3.14,
2335 &quot;userInteraction&quot;: &quot;A String&quot;,
2336 &quot;integrityImpact&quot;: &quot;A String&quot;,
2337 },
2338 },
2339 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
2340 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
2341 &quot;A String&quot;,
2342 ],
2343 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
2344 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002345 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
2346 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
2347 &quot;A String&quot;,
2348 ],
2349 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002350 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
2351 # channels. E.g., glibc (aka libc6) is distributed by many, at various
2352 # versions.
2353 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
2354 { # This represents a particular channel of distribution for a given package.
2355 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
2356 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
2357 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2358 # versions.
2359 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2360 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2361 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2362 # name.
2363 },
2364 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
2365 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
2366 # denoting the package manager version distributing a package.
2367 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
2368 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
2369 # built.
2370 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
2371 },
2372 ],
2373 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
2374 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002375}
2376
2377 updateMask: string, The fields to update.
2378 x__xgafv: string, V1 error format.
2379 Allowed values
2380 1 - v1 error format
2381 2 - v2 error format
2382
2383Returns:
2384 An object of the form:
2385
2386 { # A type of analysis that can be done for a resource.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002387 &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing the initial analysis of a resource.
2388 # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
2389 # consumer&#x27;s project at the start of analysis.
2390 &quot;analysisKind&quot;: &quot;A String&quot;, # Required. Immutable. The kind of analysis that is handled by this
2391 # discovery.
2392 },
2393 &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the note in the form of
2394 # `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
Bu Sun Kim65020912020-05-20 12:08:20 -07002395 &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;. For # A note describing an attestation role.
2396 # example, an organization might have one `Authority` for &quot;QA&quot; and one for
2397 # &quot;build&quot;. This note is intended to act strictly as a grouping mechanism for
2398 # the attached occurrences (Attestations). This grouping mechanism also
2399 # provides a security boundary, since IAM ACLs gate the ability for a principle
2400 # to attach an occurrence to a given note. It also provides a single point of
2401 # lookup to find all attached attestation occurrences, even if they don&#x27;t all
2402 # live in the same project.
2403 &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the # Hint hints at the purpose of the attestation authority.
2404 # authority. Because the name of a note acts as its resource reference, it is
2405 # important to disambiguate the canonical name of the Note (which might be a
2406 # UUID for security purposes) from &quot;readable&quot; names more suitable for debug
2407 # output. Note that these hints should not be used to look up authorities in
2408 # security sensitive contexts, such as when looking up attestations to
2409 # verify.
2410 &quot;humanReadableName&quot;: &quot;A String&quot;, # Required. The human readable name of this attestation authority, for
2411 # example &quot;qa&quot;.
2412 },
2413 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002414 &quot;intoto&quot;: { # This contains the fields corresponding to the definition of a software supply # A note describing an in-toto link.
2415 # chain step in an in-toto layout. This information goes into a Grafeas note.
2416 &quot;expectedMaterials&quot;: [ # The following fields contain in-toto artifact rules identifying the
2417 # artifacts that enter this supply chain step, and exit the supply chain
2418 # step, i.e. materials and products of the step.
2419 { # Defines an object to declare an in-toto artifact rule
2420 &quot;artifactRule&quot;: [
2421 &quot;A String&quot;,
Bu Sun Kim65020912020-05-20 12:08:20 -07002422 ],
2423 },
2424 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002425 &quot;expectedProducts&quot;: [
2426 { # Defines an object to declare an in-toto artifact rule
2427 &quot;artifactRule&quot;: [
2428 &quot;A String&quot;,
2429 ],
2430 },
2431 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002432 &quot;signingKeys&quot;: [ # This field contains the public keys that can be used to verify the
2433 # signatures on the step metadata.
2434 { # This defines the format used to record keys used in the software supply
2435 # chain. An in-toto link is attested using one or more keys defined in the
2436 # in-toto layout. An example of this is:
2437 # {
2438 # &quot;key_id&quot;: &quot;776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...&quot;,
2439 # &quot;key_type&quot;: &quot;rsa&quot;,
2440 # &quot;public_key_value&quot;: &quot;-----BEGIN PUBLIC KEY-----\nMIIBojANBgkqhkiG9w0B...&quot;,
2441 # &quot;key_scheme&quot;: &quot;rsassa-pss-sha256&quot;
2442 # }
2443 # The format for in-toto&#x27;s key definition can be found in section 4.2 of the
2444 # in-toto specification.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002445 &quot;keyScheme&quot;: &quot;A String&quot;, # This field contains the corresponding signature scheme.
2446 # Eg: &quot;rsassa-pss-sha256&quot;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002447 &quot;keyType&quot;: &quot;A String&quot;, # This field identifies the specific signing method. Eg: &quot;rsa&quot;, &quot;ed25519&quot;,
2448 # and &quot;ecdsa&quot;.
2449 &quot;keyId&quot;: &quot;A String&quot;, # key_id is an identifier for the signing key.
2450 &quot;publicKeyValue&quot;: &quot;A String&quot;, # This field contains the actual public key.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002451 },
2452 ],
2453 &quot;threshold&quot;: &quot;A String&quot;, # This field contains a value that indicates the minimum number of keys that
2454 # need to be used to sign the step&#x27;s in-toto link.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002455 &quot;stepName&quot;: &quot;A String&quot;, # This field identifies the name of the step in the supply chain.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002456 &quot;expectedCommand&quot;: [ # This field contains the expected command used to perform the step.
2457 &quot;A String&quot;,
2458 ],
2459 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002460 &quot;kind&quot;: &quot;A String&quot;, # Output only. The type of analysis. This field can be used as a filter in
2461 # list requests.
2462 &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this note.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002463 &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
2464 # relationship. Linked occurrences are derived from this or an
2465 # equivalent image via:
2466 # FROM &lt;Basis.resource_url&gt;
2467 # Or an equivalent reference, e.g. a tag of the resource_url.
2468 &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # Required. Immutable. The fingerprint of the base image.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002469 &quot;v1Name&quot;: &quot;A String&quot;, # Required. The layer ID of the final layer in the Docker image&#x27;s v1
2470 # representation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002471 &quot;v2Blob&quot;: [ # Required. The ordered list of v2 blobs that represent a given image.
2472 &quot;A String&quot;,
2473 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002474 &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
2475 # [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
2476 # Only the name of the final blob is kept.
2477 },
2478 &quot;resourceUrl&quot;: &quot;A String&quot;, # Required. Immutable. The resource_url for the resource representing the
2479 # basis of associated occurrence images.
2480 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002481 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
2482 # a filter in list requests.
2483 &quot;build&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of the # A note describing build provenance for a verifiable build.
2484 # provenance message in the build details occurrence.
2485 &quot;builderVersion&quot;: &quot;A String&quot;, # Required. Immutable. Version of the builder which produced this build.
2486 &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in occurrences pointing to this build note
2487 # containing build details.
2488 &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
2489 # findings are valid and unchanged. If `key_type` is empty, this defaults
2490 # to PEM encoded public keys.
2491 #
2492 # This field may be empty if `key_id` references an external key.
2493 #
2494 # For Cloud Build based signatures, this is a PEM encoded public
2495 # key. To verify the Cloud Build signature, place the contents of
2496 # this field into a file (public.pem). The signature field is base64-decoded
2497 # into its binary representation in signature.bin, and the provenance bytes
2498 # from `BuildDetails` are base64-decoded into a binary representation in
2499 # signed.bin. OpenSSL can then verify the signature:
2500 # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
2501 &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
2502 # `key_id`.
2503 &quot;signature&quot;: &quot;A String&quot;, # Required. Signature of the related `BuildProvenance`. In JSON, this is
2504 # base-64 encoded.
2505 &quot;keyId&quot;: &quot;A String&quot;, # An ID for the key used to sign. This could be either an ID for the key
2506 # stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
2507 # CN for a cert), or a reference to an external key (such as a reference to a
2508 # key in Cloud Key Management Service).
2509 },
2510 },
2511 &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note. Empty if note does not expire.
2512 &quot;relatedUrl&quot;: [ # URLs associated with this note.
2513 { # Metadata for any related URL information.
2514 &quot;url&quot;: &quot;A String&quot;, # Specific URL associated with the resource.
2515 &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL.
2516 },
2517 ],
2518 &quot;vulnerability&quot;: { # Vulnerability provides metadata about a security vulnerability in a Note. # A note describing a package vulnerability.
2519 &quot;cvssScore&quot;: 3.14, # The CVSS score for this vulnerability.
2520 &quot;windowsDetails&quot;: [ # Windows details get their own format because the information format and
2521 # model don&#x27;t match a normal detail. Specifically Windows updates are done as
2522 # patches, thus Windows vulnerabilities really are a missing package, rather
2523 # than a package being at an incorrect version.
2524 {
2525 &quot;name&quot;: &quot;A String&quot;, # Required. The name of the vulnerability.
2526 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
2527 # [cpe format](https://cpe.mitre.org/specification/) in which the
2528 # vulnerability manifests. Examples include distro or storage location for
2529 # vulnerable jar.
2530 &quot;fixingKbs&quot;: [ # Required. The names of the KBs which have hotfixes to mitigate this
2531 # vulnerability. Note that there may be multiple hotfixes (and thus
2532 # multiple KBs) that mitigate a given vulnerability. Currently any listed
2533 # kb&#x27;s presence is considered a fix.
2534 {
2535 &quot;name&quot;: &quot;A String&quot;, # The KB name (generally of the form KB[0-9]+ i.e. KB123456).
2536 &quot;url&quot;: &quot;A String&quot;, # A link to the KB in the Windows update catalog -
2537 # https://www.catalog.update.microsoft.com/
2538 },
2539 ],
2540 &quot;description&quot;: &quot;A String&quot;, # The description of the vulnerability.
2541 },
2542 ],
2543 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
2544 # upstream timestamp from the underlying information source - e.g. Ubuntu
2545 # security tracker.
2546 &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability.
2547 &quot;details&quot;: [ # All information about the package to specifically identify this
2548 # vulnerability. One entry per (version range and cpe_uri) the package
2549 # vulnerability has manifested in.
2550 { # Identifies all appearances of this vulnerability in the package for a
2551 # specific distro/location. For example: glibc in
2552 # cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
2553 &quot;sourceUpdateTime&quot;: &quot;A String&quot;, # The time this information was last changed at the source. This is an
2554 # upstream timestamp from the underlying information source - e.g. Ubuntu
2555 # security tracker.
2556 &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems, node.js
2557 # packages etc).
2558 &quot;fixedLocation&quot;: { # The location of the vulnerability. # The fix for this specific package version.
2559 &quot;package&quot;: &quot;A String&quot;, # Required. The package being described.
2560 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
2561 # format. Examples include distro or storage location for vulnerable jar.
2562 &quot;version&quot;: { # Version contains structured information about the version of a package. # Required. The version of the package being described.
2563 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2564 # versions.
2565 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2566 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2567 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2568 # name.
2569 },
2570 },
2571 &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The min version of the package in which the vulnerability exists.
2572 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2573 # versions.
2574 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2575 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2576 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2577 # name.
2578 },
2579 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The CPE URI in
2580 # [cpe format](https://cpe.mitre.org/specification/) in which the
2581 # vulnerability manifests. Examples include distro or storage location for
2582 # vulnerable jar.
2583 &quot;isObsolete&quot;: True or False, # Whether this detail is obsolete. Occurrences are expected not to point to
2584 # obsolete details.
2585 &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
2586 &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of a package. # The max version of the package in which the vulnerability exists.
2587 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2588 # versions.
2589 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2590 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2591 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2592 # name.
2593 },
2594 &quot;package&quot;: &quot;A String&quot;, # Required. The name of the package where the vulnerability was found.
2595 &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
2596 },
2597 ],
2598 &quot;cvssV3&quot;: { # Common Vulnerability Scoring System version 3. # The full description of the CVSSv3.
2599 # For details, see https://www.first.org/cvss/specification-document
2600 &quot;baseScore&quot;: 3.14, # The base score is a function of the base metric scores.
2601 &quot;confidentialityImpact&quot;: &quot;A String&quot;,
2602 &quot;availabilityImpact&quot;: &quot;A String&quot;,
2603 &quot;attackVector&quot;: &quot;A String&quot;, # Base Metrics
2604 # Represents the intrinsic characteristics of a vulnerability that are
2605 # constant over time and across user environments.
2606 &quot;privilegesRequired&quot;: &quot;A String&quot;,
2607 &quot;impactScore&quot;: 3.14,
2608 &quot;attackComplexity&quot;: &quot;A String&quot;,
2609 &quot;scope&quot;: &quot;A String&quot;,
2610 &quot;exploitabilityScore&quot;: 3.14,
2611 &quot;userInteraction&quot;: &quot;A String&quot;,
2612 &quot;integrityImpact&quot;: &quot;A String&quot;,
2613 },
2614 },
2615 &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this note.
2616 &quot;relatedNoteNames&quot;: [ # Other notes related to this note.
2617 &quot;A String&quot;,
2618 ],
2619 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
2620 # filter in list requests.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002621 &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
2622 &quot;resourceUri&quot;: [ # Required. Resource URI for the artifact being deployed.
2623 &quot;A String&quot;,
2624 ],
2625 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002626 &quot;package&quot;: { # This represents a particular package that is distributed over various # A note describing a package hosted by various package managers.
2627 # channels. E.g., glibc (aka libc6) is distributed by many, at various
2628 # versions.
2629 &quot;distribution&quot;: [ # The various channels by which a package is distributed.
2630 { # This represents a particular channel of distribution for a given package.
2631 # E.g., Debian&#x27;s jessie-backports dpkg mirror.
2632 &quot;latestVersion&quot;: { # Version contains structured information about the version of a package. # The latest available version of this package in this distribution channel.
2633 &quot;kind&quot;: &quot;A String&quot;, # Required. Distinguishes between sentinel MIN/MAX versions and normal
2634 # versions.
2635 &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
2636 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
2637 &quot;name&quot;: &quot;A String&quot;, # Required only when version kind is NORMAL. The main part of the version
2638 # name.
2639 },
2640 &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
2641 &quot;cpeUri&quot;: &quot;A String&quot;, # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
2642 # denoting the package manager version distributing a package.
2643 &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
2644 &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution channel were
2645 # built.
2646 &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
2647 },
2648 ],
2649 &quot;name&quot;: &quot;A String&quot;, # Required. Immutable. The name of the package.
2650 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002651 }</pre>
2652</div>
2653
2654<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07002655 <code class="details" id="setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002656 <pre>Sets the access control policy on the specified note or occurrence.
2657Requires `containeranalysis.notes.setIamPolicy` or
2658`containeranalysis.occurrences.setIamPolicy` permission if the resource is
2659a note or an occurrence, respectively.
2660
2661The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
2662notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
2663occurrences.
2664
2665Args:
2666 resource: string, REQUIRED: The resource for which the policy is being specified.
2667See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07002668 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002669 The object takes the form of:
2670
2671{ # Request message for `SetIamPolicy` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07002672 &quot;policy&quot;: { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002673 # the policy is limited to a few 10s of KB. An empty policy is a
2674 # valid policy but certain Cloud Platform services (such as Projects)
2675 # might reject them.
Dan O'Mearadd494642020-05-01 07:42:23 -07002676 # controls for Google Cloud resources.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002677 #
2678 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002679 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
2680 # `members` to a single `role`. Members can be user accounts, service accounts,
2681 # Google groups, and domains (such as G Suite). A `role` is a named list of
2682 # permissions; each `role` can be an IAM predefined role or a user-created
2683 # custom role.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002684 #
Bu Sun Kim65020912020-05-20 12:08:20 -07002685 # For some types of Google Cloud resources, a `binding` can also specify a
2686 # `condition`, which is a logical expression that allows access to a resource
2687 # only if the expression evaluates to `true`. A condition can add constraints
2688 # based on attributes of the request, the resource, or both. To learn which
2689 # resources support conditions in their IAM policies, see the
2690 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07002691 #
2692 # **JSON example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002693 #
2694 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07002695 # &quot;bindings&quot;: [
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002696 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07002697 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
2698 # &quot;members&quot;: [
2699 # &quot;user:mike@example.com&quot;,
2700 # &quot;group:admins@example.com&quot;,
2701 # &quot;domain:google.com&quot;,
2702 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002703 # ]
2704 # },
2705 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07002706 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
2707 # &quot;members&quot;: [
2708 # &quot;user:eve@example.com&quot;
2709 # ],
2710 # &quot;condition&quot;: {
2711 # &quot;title&quot;: &quot;expirable access&quot;,
2712 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
2713 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -07002714 # }
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002715 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07002716 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002717 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
2718 # &quot;version&quot;: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002719 # }
2720 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002721 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002722 #
2723 # bindings:
2724 # - members:
2725 # - user:mike@example.com
2726 # - group:admins@example.com
2727 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07002728 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
2729 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002730 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07002731 # - user:eve@example.com
2732 # role: roles/resourcemanager.organizationViewer
2733 # condition:
2734 # title: expirable access
2735 # description: Does not grant access after Sep 2020
Bu Sun Kim65020912020-05-20 12:08:20 -07002736 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
Dan O'Mearadd494642020-05-01 07:42:23 -07002737 # - etag: BwWWja0YfJA=
2738 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002739 #
2740 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07002741 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002742 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
2743 # prevent simultaneous updates of a policy from overwriting each other.
2744 # It is strongly suggested that systems make use of the `etag` in the
2745 # read-modify-write cycle to perform policy updates in order to avoid race
2746 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
2747 # systems are expected to put that etag in the request to `setIamPolicy` to
2748 # ensure that their change will be applied to the same version of the policy.
2749 #
2750 # **Important:** If you use IAM Conditions, you must include the `etag` field
2751 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
2752 # you to overwrite a version `3` policy with a version `1` policy, and all of
2753 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07002754 &quot;version&quot;: 42, # Specifies the format of the policy.
2755 #
2756 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
2757 # are rejected.
2758 #
2759 # Any operation that affects conditional role bindings must specify version
2760 # `3`. This requirement applies to the following operations:
2761 #
2762 # * Getting a policy that includes a conditional role binding
2763 # * Adding a conditional role binding to a policy
2764 # * Changing a conditional role binding in a policy
2765 # * Removing any role binding, with or without a condition, from a policy
2766 # that includes conditions
2767 #
2768 # **Important:** If you use IAM Conditions, you must include the `etag` field
2769 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
2770 # you to overwrite a version `3` policy with a version `1` policy, and all of
2771 # the conditions in the version `3` policy are lost.
2772 #
2773 # If a policy does not include any conditions, operations on that policy may
2774 # specify any valid version or leave the field unset.
2775 #
2776 # To learn which resources support conditions in their IAM policies, see the
2777 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
2778 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
Dan O'Mearadd494642020-05-01 07:42:23 -07002779 # `condition` that determines how and when the `bindings` are applied. Each
2780 # of the `bindings` must contain at least one member.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002781 { # Associates `members` with a `role`.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002782 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
2783 # `members` can have the following values:
2784 #
2785 # * `allUsers`: A special identifier that represents anyone who is
2786 # on the internet; with or without a Google account.
2787 #
2788 # * `allAuthenticatedUsers`: A special identifier that represents anyone
2789 # who is authenticated with a Google account or a service account.
2790 #
2791 # * `user:{emailid}`: An email address that represents a specific Google
2792 # account. For example, `alice@example.com` .
2793 #
2794 #
2795 # * `serviceAccount:{emailid}`: An email address that represents a service
2796 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
2797 #
2798 # * `group:{emailid}`: An email address that represents a Google group.
2799 # For example, `admins@example.com`.
2800 #
2801 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
2802 # identifier) representing a user that has been recently deleted. For
2803 # example, `alice@example.com?uid=123456789012345678901`. If the user is
2804 # recovered, this value reverts to `user:{emailid}` and the recovered user
2805 # retains the role in the binding.
2806 #
2807 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
2808 # unique identifier) representing a service account that has been recently
2809 # deleted. For example,
2810 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
2811 # If the service account is undeleted, this value reverts to
2812 # `serviceAccount:{emailid}` and the undeleted service account retains the
2813 # role in the binding.
2814 #
2815 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
2816 # identifier) representing a Google group that has been recently
2817 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
2818 # the group is recovered, this value reverts to `group:{emailid}` and the
2819 # recovered group retains the role in the binding.
2820 #
2821 #
2822 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
2823 # users of that domain. For example, `google.com` or `example.com`.
2824 #
2825 &quot;A String&quot;,
2826 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002827 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
2828 #
2829 # If the condition evaluates to `true`, then this binding applies to the
2830 # current request.
2831 #
2832 # If the condition evaluates to `false`, then this binding does not apply to
2833 # the current request. However, a different role binding might grant the same
2834 # role to one or more of the members in this binding.
2835 #
2836 # To learn which resources support conditions in their IAM policies, see the
2837 # [IAM
2838 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
2839 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
2840 # are documented at https://github.com/google/cel-spec.
2841 #
2842 # Example (Comparison):
2843 #
2844 # title: &quot;Summary size limit&quot;
2845 # description: &quot;Determines if a summary is less than 100 chars&quot;
2846 # expression: &quot;document.summary.size() &lt; 100&quot;
2847 #
2848 # Example (Equality):
2849 #
2850 # title: &quot;Requestor is owner&quot;
2851 # description: &quot;Determines if requestor is the document owner&quot;
2852 # expression: &quot;document.owner == request.auth.claims.email&quot;
2853 #
2854 # Example (Logic):
2855 #
2856 # title: &quot;Public documents&quot;
2857 # description: &quot;Determine whether the document should be publicly visible&quot;
2858 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
2859 #
2860 # Example (Data Manipulation):
2861 #
2862 # title: &quot;Notification string&quot;
2863 # description: &quot;Create a notification string with a timestamp.&quot;
2864 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
2865 #
2866 # The exact variables and functions that may be referenced within an expression
2867 # are determined by the service that evaluates it. See the service
2868 # documentation for additional information.
2869 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
2870 # describes the expression, e.g. when hovered over it in a UI.
2871 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
2872 # syntax.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07002873 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
2874 # reporting, e.g. a file name and a position in the file.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002875 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
2876 # its purpose. This can be used e.g. in UIs which allow to enter the
2877 # expression.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002878 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002879 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
2880 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002881 },
2882 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002883 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002884 }
2885
2886 x__xgafv: string, V1 error format.
2887 Allowed values
2888 1 - v1 error format
2889 2 - v2 error format
2890
2891Returns:
2892 An object of the form:
2893
Dan O'Mearadd494642020-05-01 07:42:23 -07002894 { # An Identity and Access Management (IAM) policy, which specifies access
2895 # controls for Google Cloud resources.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002896 #
2897 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002898 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
2899 # `members` to a single `role`. Members can be user accounts, service accounts,
2900 # Google groups, and domains (such as G Suite). A `role` is a named list of
2901 # permissions; each `role` can be an IAM predefined role or a user-created
2902 # custom role.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002903 #
Bu Sun Kim65020912020-05-20 12:08:20 -07002904 # For some types of Google Cloud resources, a `binding` can also specify a
2905 # `condition`, which is a logical expression that allows access to a resource
2906 # only if the expression evaluates to `true`. A condition can add constraints
2907 # based on attributes of the request, the resource, or both. To learn which
2908 # resources support conditions in their IAM policies, see the
2909 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07002910 #
2911 # **JSON example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002912 #
2913 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07002914 # &quot;bindings&quot;: [
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002915 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07002916 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
2917 # &quot;members&quot;: [
2918 # &quot;user:mike@example.com&quot;,
2919 # &quot;group:admins@example.com&quot;,
2920 # &quot;domain:google.com&quot;,
2921 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002922 # ]
2923 # },
2924 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07002925 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
2926 # &quot;members&quot;: [
2927 # &quot;user:eve@example.com&quot;
2928 # ],
2929 # &quot;condition&quot;: {
2930 # &quot;title&quot;: &quot;expirable access&quot;,
2931 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
2932 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -07002933 # }
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002934 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07002935 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002936 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
2937 # &quot;version&quot;: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002938 # }
2939 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002940 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002941 #
2942 # bindings:
2943 # - members:
2944 # - user:mike@example.com
2945 # - group:admins@example.com
2946 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07002947 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
2948 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002949 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07002950 # - user:eve@example.com
2951 # role: roles/resourcemanager.organizationViewer
2952 # condition:
2953 # title: expirable access
2954 # description: Does not grant access after Sep 2020
Bu Sun Kim65020912020-05-20 12:08:20 -07002955 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
Dan O'Mearadd494642020-05-01 07:42:23 -07002956 # - etag: BwWWja0YfJA=
2957 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002958 #
2959 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07002960 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002961 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
2962 # prevent simultaneous updates of a policy from overwriting each other.
2963 # It is strongly suggested that systems make use of the `etag` in the
2964 # read-modify-write cycle to perform policy updates in order to avoid race
2965 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
2966 # systems are expected to put that etag in the request to `setIamPolicy` to
2967 # ensure that their change will be applied to the same version of the policy.
2968 #
2969 # **Important:** If you use IAM Conditions, you must include the `etag` field
2970 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
2971 # you to overwrite a version `3` policy with a version `1` policy, and all of
2972 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07002973 &quot;version&quot;: 42, # Specifies the format of the policy.
2974 #
2975 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
2976 # are rejected.
2977 #
2978 # Any operation that affects conditional role bindings must specify version
2979 # `3`. This requirement applies to the following operations:
2980 #
2981 # * Getting a policy that includes a conditional role binding
2982 # * Adding a conditional role binding to a policy
2983 # * Changing a conditional role binding in a policy
2984 # * Removing any role binding, with or without a condition, from a policy
2985 # that includes conditions
2986 #
2987 # **Important:** If you use IAM Conditions, you must include the `etag` field
2988 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
2989 # you to overwrite a version `3` policy with a version `1` policy, and all of
2990 # the conditions in the version `3` policy are lost.
2991 #
2992 # If a policy does not include any conditions, operations on that policy may
2993 # specify any valid version or leave the field unset.
2994 #
2995 # To learn which resources support conditions in their IAM policies, see the
2996 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
2997 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
Dan O'Mearadd494642020-05-01 07:42:23 -07002998 # `condition` that determines how and when the `bindings` are applied. Each
2999 # of the `bindings` must contain at least one member.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003000 { # Associates `members` with a `role`.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07003001 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
3002 # `members` can have the following values:
3003 #
3004 # * `allUsers`: A special identifier that represents anyone who is
3005 # on the internet; with or without a Google account.
3006 #
3007 # * `allAuthenticatedUsers`: A special identifier that represents anyone
3008 # who is authenticated with a Google account or a service account.
3009 #
3010 # * `user:{emailid}`: An email address that represents a specific Google
3011 # account. For example, `alice@example.com` .
3012 #
3013 #
3014 # * `serviceAccount:{emailid}`: An email address that represents a service
3015 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
3016 #
3017 # * `group:{emailid}`: An email address that represents a Google group.
3018 # For example, `admins@example.com`.
3019 #
3020 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
3021 # identifier) representing a user that has been recently deleted. For
3022 # example, `alice@example.com?uid=123456789012345678901`. If the user is
3023 # recovered, this value reverts to `user:{emailid}` and the recovered user
3024 # retains the role in the binding.
3025 #
3026 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
3027 # unique identifier) representing a service account that has been recently
3028 # deleted. For example,
3029 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
3030 # If the service account is undeleted, this value reverts to
3031 # `serviceAccount:{emailid}` and the undeleted service account retains the
3032 # role in the binding.
3033 #
3034 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
3035 # identifier) representing a Google group that has been recently
3036 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
3037 # the group is recovered, this value reverts to `group:{emailid}` and the
3038 # recovered group retains the role in the binding.
3039 #
3040 #
3041 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
3042 # users of that domain. For example, `google.com` or `example.com`.
3043 #
3044 &quot;A String&quot;,
3045 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003046 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
3047 #
3048 # If the condition evaluates to `true`, then this binding applies to the
3049 # current request.
3050 #
3051 # If the condition evaluates to `false`, then this binding does not apply to
3052 # the current request. However, a different role binding might grant the same
3053 # role to one or more of the members in this binding.
3054 #
3055 # To learn which resources support conditions in their IAM policies, see the
3056 # [IAM
3057 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
3058 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
3059 # are documented at https://github.com/google/cel-spec.
3060 #
3061 # Example (Comparison):
3062 #
3063 # title: &quot;Summary size limit&quot;
3064 # description: &quot;Determines if a summary is less than 100 chars&quot;
3065 # expression: &quot;document.summary.size() &lt; 100&quot;
3066 #
3067 # Example (Equality):
3068 #
3069 # title: &quot;Requestor is owner&quot;
3070 # description: &quot;Determines if requestor is the document owner&quot;
3071 # expression: &quot;document.owner == request.auth.claims.email&quot;
3072 #
3073 # Example (Logic):
3074 #
3075 # title: &quot;Public documents&quot;
3076 # description: &quot;Determine whether the document should be publicly visible&quot;
3077 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
3078 #
3079 # Example (Data Manipulation):
3080 #
3081 # title: &quot;Notification string&quot;
3082 # description: &quot;Create a notification string with a timestamp.&quot;
3083 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
3084 #
3085 # The exact variables and functions that may be referenced within an expression
3086 # are determined by the service that evaluates it. See the service
3087 # documentation for additional information.
3088 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
3089 # describes the expression, e.g. when hovered over it in a UI.
3090 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
3091 # syntax.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07003092 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
3093 # reporting, e.g. a file name and a position in the file.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003094 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
3095 # its purpose. This can be used e.g. in UIs which allow to enter the
3096 # expression.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003097 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003098 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
3099 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003100 },
3101 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003102 }</pre>
3103</div>
3104
3105<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07003106 <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003107 <pre>Returns the permissions that a caller has on the specified note or
3108occurrence. Requires list permission on the project (for example,
3109`containeranalysis.notes.list`).
3110
3111The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
3112notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
3113occurrences.
3114
3115Args:
3116 resource: string, REQUIRED: The resource for which the policy detail is being requested.
3117See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07003118 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003119 The object takes the form of:
3120
3121{ # Request message for `TestIamPermissions` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07003122 &quot;permissions&quot;: [ # The set of permissions to check for the `resource`. Permissions with
3123 # wildcards (such as &#x27;*&#x27; or &#x27;storage.*&#x27;) are not allowed. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003124 # information see
3125 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
Bu Sun Kim65020912020-05-20 12:08:20 -07003126 &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003127 ],
3128 }
3129
3130 x__xgafv: string, V1 error format.
3131 Allowed values
3132 1 - v1 error format
3133 2 - v2 error format
3134
3135Returns:
3136 An object of the form:
3137
3138 { # Response message for `TestIamPermissions` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07003139 &quot;permissions&quot;: [ # A subset of `TestPermissionsRequest.permissions` that the caller is
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003140 # allowed.
Bu Sun Kim65020912020-05-20 12:08:20 -07003141 &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003142 ],
3143 }</pre>
3144</div>
3145
3146</body></html>