lib/google/apis/securitycenter_v1beta2/classes.rb in google-apis-securitycenter_v1beta2-0.54.0 vs lib/google/apis/securitycenter_v1beta2/classes.rb in google-apis-securitycenter_v1beta2-0.55.0
- old
+ new
@@ -1189,10 +1189,15 @@
# Kubernetes-related attributes.
# Corresponds to the JSON property `kubernetes`
# @return [Google::Apis::SecuritycenterV1beta2::Kubernetes]
attr_accessor :kubernetes
+ # The load balancers associated with the finding.
+ # Corresponds to the JSON property `loadBalancers`
+ # @return [Array<Google::Apis::SecuritycenterV1beta2::LoadBalancer>]
+ attr_accessor :load_balancers
+
# MITRE ATT&CK tactics and techniques related to this finding. See: https://
# attack.mitre.org
# Corresponds to the JSON property `mitreAttack`
# @return [Google::Apis::SecuritycenterV1beta2::MitreAttack]
attr_accessor :mitre_attack
@@ -1270,10 +1275,18 @@
# permissions on the organization.
# Corresponds to the JSON property `securityMarks`
# @return [Google::Apis::SecuritycenterV1beta2::SecurityMarks]
attr_accessor :security_marks
+ # Represents a posture that is deployed on Google Cloud by the Security Command
+ # Center Posture Management service. A posture contains one or more policy sets.
+ # A policy set is a group of policies that enforce a set of security rules on
+ # Google Cloud.
+ # Corresponds to the JSON property `securityPosture`
+ # @return [Google::Apis::SecuritycenterV1beta2::SecurityPosture]
+ attr_accessor :security_posture
+
# The severity of the finding. This field is managed by the source that writes
# the finding.
# Corresponds to the JSON property `severity`
# @return [String]
attr_accessor :severity
@@ -1323,10 +1336,11 @@
@finding_class = args[:finding_class] if args.key?(:finding_class)
@iam_bindings = args[:iam_bindings] if args.key?(:iam_bindings)
@indicator = args[:indicator] if args.key?(:indicator)
@kernel_rootkit = args[:kernel_rootkit] if args.key?(:kernel_rootkit)
@kubernetes = args[:kubernetes] if args.key?(:kubernetes)
+ @load_balancers = args[:load_balancers] if args.key?(:load_balancers)
@mitre_attack = args[:mitre_attack] if args.key?(:mitre_attack)
@module_name = args[:module_name] if args.key?(:module_name)
@mute = args[:mute] if args.key?(:mute)
@mute_initiator = args[:mute_initiator] if args.key?(:mute_initiator)
@mute_update_time = args[:mute_update_time] if args.key?(:mute_update_time)
@@ -1335,10 +1349,11 @@
@parent = args[:parent] if args.key?(:parent)
@parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
@processes = args[:processes] if args.key?(:processes)
@resource_name = args[:resource_name] if args.key?(:resource_name)
@security_marks = args[:security_marks] if args.key?(:security_marks)
+ @security_posture = args[:security_posture] if args.key?(:security_posture)
@severity = args[:severity] if args.key?(:severity)
@source_properties = args[:source_properties] if args.key?(:source_properties)
@state = args[:state] if args.key?(:state)
@vulnerability = args[:vulnerability] if args.key?(:vulnerability)
end
@@ -2637,10 +2652,15 @@
# concepts/cluster-architecture#nodes) information.
# Corresponds to the JSON property `nodes`
# @return [Array<Google::Apis::SecuritycenterV1beta2::Node>]
attr_accessor :nodes
+ # Kubernetes objects related to the finding.
+ # Corresponds to the JSON property `objects`
+ # @return [Array<Google::Apis::SecuritycenterV1beta2::Object>]
+ attr_accessor :objects
+
# Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod)
# associated with the finding. This field contains Pod records for each
# container that is owned by a Pod.
# Corresponds to the JSON property `pods`
# @return [Array<Google::Apis::SecuritycenterV1beta2::Pod>]
@@ -2661,10 +2681,11 @@
def update!(**args)
@access_reviews = args[:access_reviews] if args.key?(:access_reviews)
@bindings = args[:bindings] if args.key?(:bindings)
@node_pools = args[:node_pools] if args.key?(:node_pools)
@nodes = args[:nodes] if args.key?(:nodes)
+ @objects = args[:objects] if args.key?(:objects)
@pods = args[:pods] if args.key?(:pods)
@roles = args[:roles] if args.key?(:roles)
end
end
@@ -2695,10 +2716,29 @@
@name = args[:name] if args.key?(:name)
@value = args[:value] if args.key?(:value)
end
end
+ # Contains information related to the load balancer associated with the finding.
+ class LoadBalancer
+ include Google::Apis::Core::Hashable
+
+ # The name of the load balancer associated with the finding.
+ # Corresponds to the JSON property `name`
+ # @return [String]
+ attr_accessor :name
+
+ def initialize(**args)
+ update!(**args)
+ end
+
+ # Update properties of this object
+ def update!(**args)
+ @name = args[:name] if args.key?(:name)
+ end
+ end
+
# A signature corresponding to memory page hashes.
class MemoryHashSignature
include Google::Apis::Core::Hashable
# The binary family.
@@ -2815,35 +2855,48 @@
@name = args[:name] if args.key?(:name)
@nodes = args[:nodes] if args.key?(:nodes)
end
end
- # Resource capturing onboarding information for a given CRM resource.
- class OnboardingState
+ # Kubernetes object related to the finding, uniquely identified by GKNN. Used if
+ # the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.
+ class Object
include Google::Apis::Core::Hashable
- # The resource name of the OnboardingState. Format: organizations/`organization`/
- # onboardingState Format: folders/`folder`/onboardingState Format: projects/`
- # project`/onboardingState
+ # Kubernetes object group, such as "policy.k8s.io/v1".
+ # Corresponds to the JSON property `group`
+ # @return [String]
+ attr_accessor :group
+
+ # Kubernetes object kind, such as “Namespace”.
+ # Corresponds to the JSON property `kind`
+ # @return [String]
+ attr_accessor :kind
+
+ # Kubernetes object name. For details see https://kubernetes.io/docs/concepts/
+ # overview/working-with-objects/names/.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
- # Describes the level a given organization, folder, or project is onboarded with
- # SCC. If the resource wasn't onboarded, NOT_FOUND would have been thrown.
- # Corresponds to the JSON property `onboardingLevel`
+ # Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid
+ # collision with C++ namespace keyword. For details see https://kubernetes.io/
+ # docs/tasks/administer-cluster/namespaces/.
+ # Corresponds to the JSON property `ns`
# @return [String]
- attr_accessor :onboarding_level
+ attr_accessor :ns
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
+ @group = args[:group] if args.key?(:group)
+ @kind = args[:kind] if args.key?(:kind)
@name = args[:name] if args.key?(:name)
- @onboarding_level = args[:onboarding_level] if args.key?(:onboarding_level)
+ @ns = args[:ns] if args.key?(:ns)
end
end
# A Kubernetes Pod.
class Pod
@@ -3221,9 +3274,59 @@
# Update properties of this object
def update!(**args)
@canonical_name = args[:canonical_name] if args.key?(:canonical_name)
@marks = args[:marks] if args.key?(:marks)
@name = args[:name] if args.key?(:name)
+ end
+ end
+
+ # Represents a posture that is deployed on Google Cloud by the Security Command
+ # Center Posture Management service. A posture contains one or more policy sets.
+ # A policy set is a group of policies that enforce a set of security rules on
+ # Google Cloud.
+ class SecurityPosture
+ include Google::Apis::Core::Hashable
+
+ # The name of the policy that has been updated, for example, `projects/`
+ # project_id`/policies/`constraint_name``.
+ # Corresponds to the JSON property `changedPolicy`
+ # @return [String]
+ attr_accessor :changed_policy
+
+ # Name of the posture, for example, `organizations/`org_id`/locations/`location`/
+ # postures/`posture_name``.
+ # Corresponds to the JSON property `name`
+ # @return [String]
+ attr_accessor :name
+
+ # The name of the posture deployment, for example, `projects/`project_id`/
+ # posturedeployments/`posture_deployment_id``.
+ # Corresponds to the JSON property `postureDeployment`
+ # @return [String]
+ attr_accessor :posture_deployment
+
+ # The project, folder, or organization on which the posture is deployed, for
+ # example, `projects/`project_id``.
+ # Corresponds to the JSON property `postureDeploymentResource`
+ # @return [String]
+ attr_accessor :posture_deployment_resource
+
+ # The version of the posture, for example, `c7cfa2a8`.
+ # Corresponds to the JSON property `revisionId`
+ # @return [String]
+ attr_accessor :revision_id
+
+ def initialize(**args)
+ update!(**args)
+ end
+
+ # Update properties of this object
+ def update!(**args)
+ @changed_policy = args[:changed_policy] if args.key?(:changed_policy)
+ @name = args[:name] if args.key?(:name)
+ @posture_deployment = args[:posture_deployment] if args.key?(:posture_deployment)
+ @posture_deployment_resource = args[:posture_deployment_resource] if args.key?(:posture_deployment_resource)
+ @revision_id = args[:revision_id] if args.key?(:revision_id)
end
end
# Identity delegation history of an authenticated service account.
class ServiceAccountDelegationInfo