Class: Google::Apis::OndemandscanningV1::Occurrence

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/ondemandscanning_v1/classes.rb,
lib/google/apis/ondemandscanning_v1/representations.rb,
lib/google/apis/ondemandscanning_v1/representations.rb

Overview

An instance of an analysis type that has been found on a resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Occurrence

Returns a new instance of Occurrence.



2569
2570
2571
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2569

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#advisory_publish_timeString

The time this advisory was published by the source. Corresponds to the JSON property advisoryPublishTime

Returns:

  • (String)


2440
2441
2442
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2440

def advisory_publish_time
  @advisory_publish_time
end

#ai_skill_analysisGoogle::Apis::OndemandscanningV1::AiSkillAnalysisOccurrence

AISkillAnalysisOccurrence provides the results of an AI-based skill analysis. Corresponds to the JSON property aiSkillAnalysis



2445
2446
2447
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2445

def ai_skill_analysis
  @ai_skill_analysis
end

#attestationGoogle::Apis::OndemandscanningV1::AttestationOccurrence

Occurrence that represents a single "attestation". The authenticity of an attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the authority to which this attestation is attached is primarily useful for lookup (how to find this attestation if you already know the authority and artifact to be verified) and intent (for which authority this attestation was intended to sign. Corresponds to the JSON property attestation



2456
2457
2458
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2456

def attestation
  @attestation
end

#buildGoogle::Apis::OndemandscanningV1::BuildOccurrence

Details of a build occurrence. Corresponds to the JSON property build



2461
2462
2463
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2461

def build
  @build
end

#complianceGoogle::Apis::OndemandscanningV1::ComplianceOccurrence

An indication that the compliance checks in the associated ComplianceNote were not satisfied for particular resources or a specified reason. Corresponds to the JSON property compliance



2467
2468
2469
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2467

def compliance
  @compliance
end

#create_timeString

Output only. The time this occurrence was created. Corresponds to the JSON property createTime

Returns:

  • (String)


2472
2473
2474
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2472

def create_time
  @create_time
end

#deploymentGoogle::Apis::OndemandscanningV1::DeploymentOccurrence

The period during which some deployable was active in a runtime. Corresponds to the JSON property deployment



2477
2478
2479
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2477

def deployment
  @deployment
end

#discoveryGoogle::Apis::OndemandscanningV1::DiscoveryOccurrence

Provides information about the analysis status of a discovered resource. Corresponds to the JSON property discovery



2482
2483
2484
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2482

def discovery
  @discovery
end

#dsse_attestationGoogle::Apis::OndemandscanningV1::DsseAttestationOccurrence

Deprecated. Prefer to use a regular Occurrence, and populate the Envelope at the top level of the Occurrence. Corresponds to the JSON property dsseAttestation



2488
2489
2490
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2488

def dsse_attestation
  @dsse_attestation
end

#envelopeGoogle::Apis::OndemandscanningV1::Envelope

MUST match https://github.com/secure-systems-lab/dsse/blob/master/envelope. proto. An authenticated message of arbitrary type. Corresponds to the JSON property envelope



2494
2495
2496
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2494

def envelope
  @envelope
end

#imageGoogle::Apis::OndemandscanningV1::ImageOccurrence

Details of the derived image portion of the DockerImage relationship. This image would be produced from a Dockerfile with FROM . Corresponds to the JSON property image



2500
2501
2502
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2500

def image
  @image
end

#kindString

Output only. This explicitly denotes which of the occurrence details are specified. This field can be used as a filter in list requests. Corresponds to the JSON property kind

Returns:

  • (String)


2506
2507
2508
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2506

def kind
  @kind
end

#nameString

Output only. The name of the occurrence in the form of projects/[PROJECT_ID]/ occurrences/[OCCURRENCE_ID]. Corresponds to the JSON property name

Returns:

  • (String)


2512
2513
2514
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2512

def name
  @name
end

#note_nameString

Required. Immutable. The analysis note associated with this occurrence, in the form of projects/[PROVIDER_ID]/notes/[NOTE_ID]. This field can be used as a filter in list requests. Corresponds to the JSON property noteName

Returns:

  • (String)


2519
2520
2521
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2519

def note_name
  @note_name
end

#packageGoogle::Apis::OndemandscanningV1::PackageOccurrence

Details on how a particular software package was installed on a system. Corresponds to the JSON property package



2524
2525
2526
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2524

def package
  @package
end

#remediationString

A description of actions that can be taken to remedy the note. Corresponds to the JSON property remediation

Returns:

  • (String)


2529
2530
2531
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2529

def remediation
  @remediation
end

#resource_uriString

Required. Immutable. A URI that represents the resource for which the occurrence applies. For example, https://gcr.io/project/image@sha256:123abc for a Docker image. Corresponds to the JSON property resourceUri

Returns:

  • (String)


2536
2537
2538
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2536

def resource_uri
  @resource_uri
end

#sbom_referenceGoogle::Apis::OndemandscanningV1::SbomReferenceOccurrence

The occurrence representing an SBOM reference as applied to a specific resource. The occurrence follows the DSSE specification. See https://github. com/secure-systems-lab/dsse/blob/master/envelope.md for more details. Corresponds to the JSON property sbomReference



2543
2544
2545
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2543

def sbom_reference
  @sbom_reference
end

#secretGoogle::Apis::OndemandscanningV1::SecretOccurrence

The occurrence provides details of a secret. Corresponds to the JSON property secret



2548
2549
2550
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2548

def secret
  @secret
end

#update_timeString

Output only. The time this occurrence was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


2553
2554
2555
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2553

def update_time
  @update_time
end

#upgradeGoogle::Apis::OndemandscanningV1::UpgradeOccurrence

An Upgrade Occurrence represents that a specific resource_url could install a specific upgrade. This presence is supplied via local sources (i.e. it is present in the mirror and the running system has noticed its availability). For Windows, both distribution and windows_update contain information for the Windows update. Corresponds to the JSON property upgrade



2562
2563
2564
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2562

def upgrade
  @upgrade
end

#vulnerabilityGoogle::Apis::OndemandscanningV1::VulnerabilityOccurrence

An occurrence of a severity vulnerability on a resource. Corresponds to the JSON property vulnerability



2567
2568
2569
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2567

def vulnerability
  @vulnerability
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
# File 'lib/google/apis/ondemandscanning_v1/classes.rb', line 2574

def update!(**args)
  @advisory_publish_time = args[:advisory_publish_time] if args.key?(:advisory_publish_time)
  @ai_skill_analysis = args[:ai_skill_analysis] if args.key?(:ai_skill_analysis)
  @attestation = args[:attestation] if args.key?(:attestation)
  @build = args[:build] if args.key?(:build)
  @compliance = args[:compliance] if args.key?(:compliance)
  @create_time = args[:create_time] if args.key?(:create_time)
  @deployment = args[:deployment] if args.key?(:deployment)
  @discovery = args[:discovery] if args.key?(:discovery)
  @dsse_attestation = args[:dsse_attestation] if args.key?(:dsse_attestation)
  @envelope = args[:envelope] if args.key?(:envelope)
  @image = args[:image] if args.key?(:image)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @note_name = args[:note_name] if args.key?(:note_name)
  @package = args[:package] if args.key?(:package)
  @remediation = args[:remediation] if args.key?(:remediation)
  @resource_uri = args[:resource_uri] if args.key?(:resource_uri)
  @sbom_reference = args[:sbom_reference] if args.key?(:sbom_reference)
  @secret = args[:secret] if args.key?(:secret)
  @update_time = args[:update_time] if args.key?(:update_time)
  @upgrade = args[:upgrade] if args.key?(:upgrade)
  @vulnerability = args[:vulnerability] if args.key?(:vulnerability)
end