Class: Google::Apis::SecuritycenterV1beta1::Cvssv3

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

Overview

Common Vulnerability Scoring System version 3.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Cvssv3

Returns a new instance of Cvssv3.



1018
1019
1020
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 1018

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

Instance Attribute Details

#attack_complexityString

This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. Corresponds to the JSON property attackComplexity

Returns:

  • (String)


967
968
969
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 967

def attack_complexity
  @attack_complexity
end

#attack_vectorString

Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. Corresponds to the JSON property attackVector

Returns:

  • (String)


974
975
976
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 974

def attack_vector
  @attack_vector
end

#availability_impactString

This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. Corresponds to the JSON property availabilityImpact

Returns:

  • (String)


980
981
982
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 980

def availability_impact
  @availability_impact
end

#base_scoreFloat

The base score is a function of the base metric scores. Corresponds to the JSON property baseScore

Returns:

  • (Float)


985
986
987
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 985

def base_score
  @base_score
end

#confidentiality_impactString

This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. Corresponds to the JSON property confidentialityImpact

Returns:

  • (String)


992
993
994
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 992

def confidentiality_impact
  @confidentiality_impact
end

#integrity_impactString

This metric measures the impact to integrity of a successfully exploited vulnerability. Corresponds to the JSON property integrityImpact

Returns:

  • (String)


998
999
1000
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 998

def integrity_impact
  @integrity_impact
end

#privileges_requiredString

This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. Corresponds to the JSON property privilegesRequired

Returns:

  • (String)


1004
1005
1006
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 1004

def privileges_required
  @privileges_required
end

#scopeString

The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. Corresponds to the JSON property scope

Returns:

  • (String)


1010
1011
1012
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 1010

def scope
  @scope
end

#user_interactionString

This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. Corresponds to the JSON property userInteraction

Returns:

  • (String)


1016
1017
1018
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 1016

def user_interaction
  @user_interaction
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 1023

def update!(**args)
  @attack_complexity = args[:attack_complexity] if args.key?(:attack_complexity)
  @attack_vector = args[:attack_vector] if args.key?(:attack_vector)
  @availability_impact = args[:availability_impact] if args.key?(:availability_impact)
  @base_score = args[:base_score] if args.key?(:base_score)
  @confidentiality_impact = args[:confidentiality_impact] if args.key?(:confidentiality_impact)
  @integrity_impact = args[:integrity_impact] if args.key?(:integrity_impact)
  @privileges_required = args[:privileges_required] if args.key?(:privileges_required)
  @scope = args[:scope] if args.key?(:scope)
  @user_interaction = args[:user_interaction] if args.key?(:user_interaction)
end