generated/google/apis/securitycenter_v1p1alpha1/classes.rb in google-api-client-0.36.4 vs generated/google/apis/securitycenter_v1p1alpha1/classes.rb in google-api-client-0.37.0

- old
+ new

@@ -89,9 +89,402 @@ @duration = args[:duration] if args.key?(:duration) @state = args[:state] if args.key?(:state) end end + # Cloud Security Command Center's (Cloud SCC) representation of a Google Cloud + # Platform (GCP) resource. + # The Asset is a Cloud SCC resource that captures information about a single + # GCP resource. All modifications to an Asset are only within the context of + # Cloud SCC and don't affect the referenced GCP resource. + class GoogleCloudSecuritycenterV1p1beta1Asset + include Google::Apis::Core::Hashable + + # The time at which the asset was created in Cloud SCC. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # IAM Policy information associated with the GCP resource described by the + # Cloud SCC asset. This information is managed and defined by the GCP + # resource and cannot be modified by the user. + # Corresponds to the JSON property `iamPolicy` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1IamPolicy] + attr_accessor :iam_policy + + # The relative resource name of this asset. See: + # https://cloud.google.com/apis/design/resource_names#relative_resource_name + # Example: + # "organizations/`organization_id`/assets/`asset_id`". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Resource managed properties. These properties are managed and defined by + # the GCP resource and cannot be modified by the user. + # Corresponds to the JSON property `resourceProperties` + # @return [Hash<String,Object>] + attr_accessor :resource_properties + + # Cloud SCC managed properties. These properties are managed by Cloud SCC and + # cannot be modified by the user. + # Corresponds to the JSON property `securityCenterProperties` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1SecurityCenterProperties] + attr_accessor :security_center_properties + + # User specified security marks that are attached to the parent Cloud Security + # Command Center (Cloud SCC) resource. Security marks are scoped within a Cloud + # SCC organization -- they can be modified and viewed by all users who have + # proper permissions on the organization. + # Corresponds to the JSON property `securityMarks` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1SecurityMarks] + attr_accessor :security_marks + + # The time at which the asset was last updated, added, or deleted in Cloud + # SCC. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @iam_policy = args[:iam_policy] if args.key?(:iam_policy) + @name = args[:name] if args.key?(:name) + @resource_properties = args[:resource_properties] if args.key?(:resource_properties) + @security_center_properties = args[:security_center_properties] if args.key?(:security_center_properties) + @security_marks = args[:security_marks] if args.key?(:security_marks) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Cloud Security Command Center (Cloud SCC) finding. + # A finding is a record of assessment data (security, risk, health or privacy) + # ingested into Cloud SCC for presentation, notification, analysis, + # policy testing, and enforcement. For example, an XSS vulnerability in an + # App Engine application is a finding. + class GoogleCloudSecuritycenterV1p1beta1Finding + include Google::Apis::Core::Hashable + + # The additional taxonomy group within findings from a given source. + # This field is immutable after creation time. + # Example: "XSS_FLASH_INJECTION" + # Corresponds to the JSON property `category` + # @return [String] + attr_accessor :category + + # The time at which the finding was created in Cloud SCC. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The time at which the event took place. For example, if the finding + # represents an open firewall it would capture the time the detector believes + # the firewall became open. The accuracy is determined by the detector. + # Corresponds to the JSON property `eventTime` + # @return [String] + attr_accessor :event_time + + # The URI that, if available, points to a web page outside of Cloud SCC + # where additional information about the finding can be found. This field is + # guaranteed to be either empty or a well formed URL. + # Corresponds to the JSON property `externalUri` + # @return [String] + attr_accessor :external_uri + + # The relative resource name of this finding. See: + # https://cloud.google.com/apis/design/resource_names#relative_resource_name + # Example: + # "organizations/`organization_id`/sources/`source_id`/findings/`finding_id`" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The relative resource name of the source the finding belongs to. See: + # https://cloud.google.com/apis/design/resource_names#relative_resource_name + # This field is immutable after creation time. + # For example: + # "organizations/`organization_id`/sources/`source_id`" + # Corresponds to the JSON property `parent` + # @return [String] + attr_accessor :parent + + # For findings on Google Cloud Platform (GCP) resources, the full resource + # name of the GCP resource this finding is for. See: + # https://cloud.google.com/apis/design/resource_names#full_resource_name + # When the finding is for a non-GCP resource, the resourceName can be a + # customer or partner defined string. + # This field is immutable after creation time. + # Corresponds to the JSON property `resourceName` + # @return [String] + attr_accessor :resource_name + + # User specified security marks that are attached to the parent Cloud Security + # Command Center (Cloud SCC) resource. Security marks are scoped within a Cloud + # SCC organization -- they can be modified and viewed by all users who have + # proper permissions on the organization. + # Corresponds to the JSON property `securityMarks` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1SecurityMarks] + attr_accessor :security_marks + + # Source specific properties. These properties are managed by the source + # that writes the finding. The key names in the source_properties map must be + # between 1 and 255 characters, and must start with a letter and contain + # alphanumeric characters or underscores only. + # Corresponds to the JSON property `sourceProperties` + # @return [Hash<String,Object>] + attr_accessor :source_properties + + # The state of the finding. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @category = args[:category] if args.key?(:category) + @create_time = args[:create_time] if args.key?(:create_time) + @event_time = args[:event_time] if args.key?(:event_time) + @external_uri = args[:external_uri] if args.key?(:external_uri) + @name = args[:name] if args.key?(:name) + @parent = args[:parent] if args.key?(:parent) + @resource_name = args[:resource_name] if args.key?(:resource_name) + @security_marks = args[:security_marks] if args.key?(:security_marks) + @source_properties = args[:source_properties] if args.key?(:source_properties) + @state = args[:state] if args.key?(:state) + end + end + + # IAM Policy information associated with the GCP resource described by the + # Cloud SCC asset. This information is managed and defined by the GCP + # resource and cannot be modified by the user. + class GoogleCloudSecuritycenterV1p1beta1IamPolicy + include Google::Apis::Core::Hashable + + # The JSON representation of the Policy associated with the asset. + # See https://cloud.google.com/iam/reference/rest/v1p1beta1/Policy for + # format details. + # Corresponds to the JSON property `policyBlob` + # @return [String] + attr_accessor :policy_blob + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy_blob = args[:policy_blob] if args.key?(:policy_blob) + end + end + + # Cloud SCC's Notification + class GoogleCloudSecuritycenterV1p1beta1NotificationMessage + include Google::Apis::Core::Hashable + + # Cloud Security Command Center (Cloud SCC) finding. + # A finding is a record of assessment data (security, risk, health or privacy) + # ingested into Cloud SCC for presentation, notification, analysis, + # policy testing, and enforcement. For example, an XSS vulnerability in an + # App Engine application is a finding. + # Corresponds to the JSON property `finding` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1Finding] + attr_accessor :finding + + # Name of the notification config that generated current notification. + # Corresponds to the JSON property `notificationConfigName` + # @return [String] + attr_accessor :notification_config_name + + # Wrapper over asset object that also captures the state change for the asset + # e.g. if it was a newly created asset vs updated or deleted asset. + # Corresponds to the JSON property `temporalAsset` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1TemporalAsset] + attr_accessor :temporal_asset + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @finding = args[:finding] if args.key?(:finding) + @notification_config_name = args[:notification_config_name] if args.key?(:notification_config_name) + @temporal_asset = args[:temporal_asset] if args.key?(:temporal_asset) + end + end + + # Response of asset discovery run + class GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse + include Google::Apis::Core::Hashable + + # The duration between asset discovery run start and end + # Corresponds to the JSON property `duration` + # @return [String] + attr_accessor :duration + + # The state of an asset discovery run. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @duration = args[:duration] if args.key?(:duration) + @state = args[:state] if args.key?(:state) + end + end + + # Cloud SCC managed properties. These properties are managed by Cloud SCC and + # cannot be modified by the user. + class GoogleCloudSecuritycenterV1p1beta1SecurityCenterProperties + include Google::Apis::Core::Hashable + + # The user defined display name for this resource. + # Corresponds to the JSON property `resourceDisplayName` + # @return [String] + attr_accessor :resource_display_name + + # The full resource name of the GCP resource this asset + # represents. This field is immutable after create time. See: + # https://cloud.google.com/apis/design/resource_names#full_resource_name + # Corresponds to the JSON property `resourceName` + # @return [String] + attr_accessor :resource_name + + # Owners of the Google Cloud resource. + # Corresponds to the JSON property `resourceOwners` + # @return [Array<String>] + attr_accessor :resource_owners + + # The full resource name of the immediate parent of the resource. See: + # https://cloud.google.com/apis/design/resource_names#full_resource_name + # Corresponds to the JSON property `resourceParent` + # @return [String] + attr_accessor :resource_parent + + # The user defined display name for the parent of this resource. + # Corresponds to the JSON property `resourceParentDisplayName` + # @return [String] + attr_accessor :resource_parent_display_name + + # The full resource name of the project the resource belongs to. See: + # https://cloud.google.com/apis/design/resource_names#full_resource_name + # Corresponds to the JSON property `resourceProject` + # @return [String] + attr_accessor :resource_project + + # The user defined display name for the project of this resource. + # Corresponds to the JSON property `resourceProjectDisplayName` + # @return [String] + attr_accessor :resource_project_display_name + + # The type of the GCP resource. Examples include: APPLICATION, + # PROJECT, and ORGANIZATION. This is a case insensitive field defined by + # Cloud SCC and/or the producer of the resource and is immutable + # after create time. + # Corresponds to the JSON property `resourceType` + # @return [String] + attr_accessor :resource_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource_display_name = args[:resource_display_name] if args.key?(:resource_display_name) + @resource_name = args[:resource_name] if args.key?(:resource_name) + @resource_owners = args[:resource_owners] if args.key?(:resource_owners) + @resource_parent = args[:resource_parent] if args.key?(:resource_parent) + @resource_parent_display_name = args[:resource_parent_display_name] if args.key?(:resource_parent_display_name) + @resource_project = args[:resource_project] if args.key?(:resource_project) + @resource_project_display_name = args[:resource_project_display_name] if args.key?(:resource_project_display_name) + @resource_type = args[:resource_type] if args.key?(:resource_type) + end + end + + # User specified security marks that are attached to the parent Cloud Security + # Command Center (Cloud SCC) resource. Security marks are scoped within a Cloud + # SCC organization -- they can be modified and viewed by all users who have + # proper permissions on the organization. + class GoogleCloudSecuritycenterV1p1beta1SecurityMarks + include Google::Apis::Core::Hashable + + # Mutable user specified security marks belonging to the parent resource. + # Constraints are as follows: + # * Keys and values are treated as case insensitive + # * Keys must be between 1 - 256 characters (inclusive) + # * Keys must be letters, numbers, underscores, or dashes + # * Values have leading and trailing whitespace trimmed, remaining + # characters must be between 1 - 4096 characters (inclusive) + # Corresponds to the JSON property `marks` + # @return [Hash<String,String>] + attr_accessor :marks + + # The relative resource name of the SecurityMarks. See: + # https://cloud.google.com/apis/design/resource_names#relative_resource_name + # Examples: + # "organizations/`organization_id`/assets/`asset_id`/securityMarks" + # "organizations/`organization_id`/sources/`source_id`/findings/`finding_id`/ + # securityMarks". + # 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) + @marks = args[:marks] if args.key?(:marks) + @name = args[:name] if args.key?(:name) + end + end + + # Wrapper over asset object that also captures the state change for the asset + # e.g. if it was a newly created asset vs updated or deleted asset. + class GoogleCloudSecuritycenterV1p1beta1TemporalAsset + include Google::Apis::Core::Hashable + + # Cloud Security Command Center's (Cloud SCC) representation of a Google Cloud + # Platform (GCP) resource. + # The Asset is a Cloud SCC resource that captures information about a single + # GCP resource. All modifications to an Asset are only within the context of + # Cloud SCC and don't affect the referenced GCP resource. + # Corresponds to the JSON property `asset` + # @return [Google::Apis::SecuritycenterV1p1alpha1::GoogleCloudSecuritycenterV1p1beta1Asset] + attr_accessor :asset + + # Represents if the asset was created/updated/deleted. + # Corresponds to the JSON property `changeType` + # @return [String] + attr_accessor :change_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @asset = args[:asset] if args.key?(:asset) + @change_type = args[:change_type] if args.key?(:change_type) + end + end + # The response message for Operations.ListOperations. class ListOperationsResponse include Google::Apis::Core::Hashable # The standard List next-page token.