google-cloud-security_center 0.5.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/security_center/v1p1beta1.rb +149 -0
  3. data/lib/google/cloud/security_center/v1p1beta1/asset_pb.rb +41 -0
  4. data/lib/google/cloud/security_center/v1p1beta1/credentials.rb +41 -0
  5. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/asset.rb +105 -0
  6. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/finding.rb +96 -0
  7. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/notification_config.rb +87 -0
  8. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/organization_settings.rb +72 -0
  9. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/security_marks.rb +45 -0
  10. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/securitycenter_service.rb +923 -0
  11. data/lib/google/cloud/security_center/v1p1beta1/doc/google/cloud/securitycenter/v1p1beta1/source.rb +49 -0
  12. data/lib/google/cloud/security_center/v1p1beta1/doc/google/iam/v1/iam_policy.rb +64 -0
  13. data/lib/google/cloud/security_center/v1p1beta1/doc/google/iam/v1/options.rb +33 -0
  14. data/lib/google/cloud/security_center/v1p1beta1/doc/google/iam/v1/policy.rb +151 -0
  15. data/lib/google/cloud/security_center/v1p1beta1/doc/google/longrunning/operations.rb +51 -0
  16. data/lib/google/cloud/security_center/v1p1beta1/doc/google/protobuf/any.rb +131 -0
  17. data/lib/google/cloud/security_center/v1p1beta1/doc/google/protobuf/duration.rb +91 -0
  18. data/lib/google/cloud/security_center/v1p1beta1/doc/google/protobuf/empty.rb +29 -0
  19. data/lib/google/cloud/security_center/v1p1beta1/doc/google/protobuf/field_mask.rb +222 -0
  20. data/lib/google/cloud/security_center/v1p1beta1/doc/google/protobuf/struct.rb +74 -0
  21. data/lib/google/cloud/security_center/v1p1beta1/doc/google/protobuf/timestamp.rb +113 -0
  22. data/lib/google/cloud/security_center/v1p1beta1/doc/google/rpc/status.rb +39 -0
  23. data/lib/google/cloud/security_center/v1p1beta1/doc/google/type/expr.rb +45 -0
  24. data/lib/google/cloud/security_center/v1p1beta1/finding_pb.rb +36 -0
  25. data/lib/google/cloud/security_center/v1p1beta1/helpers.rb +71 -0
  26. data/lib/google/cloud/security_center/v1p1beta1/notification_config_pb.rb +34 -0
  27. data/lib/google/cloud/security_center/v1p1beta1/notification_message_pb.rb +21 -0
  28. data/lib/google/cloud/security_center/v1p1beta1/organization_settings_pb.rb +30 -0
  29. data/lib/google/cloud/security_center/v1p1beta1/run_asset_discovery_response_pb.rb +25 -0
  30. data/lib/google/cloud/security_center/v1p1beta1/security_center_client.rb +2090 -0
  31. data/lib/google/cloud/security_center/v1p1beta1/security_center_client_config.json +141 -0
  32. data/lib/google/cloud/security_center/v1p1beta1/security_marks_pb.rb +18 -0
  33. data/lib/google/cloud/security_center/v1p1beta1/securitycenter_service_pb.rb +234 -0
  34. data/lib/google/cloud/security_center/v1p1beta1/securitycenter_service_services_pb.rb +103 -0
  35. data/lib/google/cloud/security_center/v1p1beta1/source_pb.rb +19 -0
  36. data/lib/google/cloud/security_center/version.rb +1 -1
  37. metadata +36 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 50d4b784ca901d3560eeb3ac3a584a4235c390a3b5be1e9d1aec690bbce104bc
4
- data.tar.gz: 7c6a8ee5dad3896ddf7f8da677609f2cd47b2ff03f746bd603d4d71590c78c6a
3
+ metadata.gz: d381b69c5fbbb368fd9b5e2f33a5d70ac5191d6178c7c599460f42c91b7651db
4
+ data.tar.gz: 2c4bdf0224df6c5831de578cf9ddd775c528a5b8a2ddde78890d3b09c61643d0
5
5
  SHA512:
6
- metadata.gz: d05583e510acd7a2784657544e6df0660e30231a7c406a2d1e6e39c143275090e1ac0c72d6e64576748e979c31b92fbcad76e9959302ad2b71599b7c2769285f
7
- data.tar.gz: dffdc7fa0aa48673071b6e62107b933da9706e2dbbe203852b1a6bd896bdbe1562fa8befa0d965a6b248b7c7764741535244afe543a395deb3c11b996711401f
6
+ metadata.gz: ec0518134687aac0c09b9e17381c5419bf58bcf44a9e8e54d6733e8b653958217887ff90bf3e4e137435e51ea3630c0e0dcc49fd5fad5725c200b3af65ca419d
7
+ data.tar.gz: 01de529448dc8ffaf90e04b681289232b541f306da2e1150830124b9ddb2a7158e5553390102f1781c51e2a4718519e337636a4e922ba0fa29d6d0a32a3314f8
@@ -0,0 +1,149 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ require "google/cloud/security_center/v1p1beta1/security_center_client"
17
+ require "google/cloud/security_center/v1p1beta1/helpers"
18
+ require "google/cloud/security_center/v1p1beta1/notification_message_pb"
19
+ require "google/cloud/security_center/v1p1beta1/run_asset_discovery_response_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module SecurityCenter
24
+ # rubocop:disable LineLength
25
+
26
+ ##
27
+ # # Ruby Client for Cloud Security Command Center API ([Alpha](https://github.com/googleapis/google-cloud-ruby#versioning))
28
+ #
29
+ # [Cloud Security Command Center API][Product Documentation]:
30
+ # Cloud Security Command Center API provides access to temporal views of
31
+ # assets and findings within an organization.
32
+ # - [Product Documentation][]
33
+ #
34
+ # ## Quick Start
35
+ # In order to use this library, you first need to go through the following
36
+ # steps:
37
+ #
38
+ # 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
39
+ # 2. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
40
+ # 3. [Enable the Cloud Security Command Center API.](https://console.cloud.google.com/apis/library/securitycenter.googleapis.com)
41
+ # 4. [Setup Authentication.](https://googleapis.dev/ruby/google-cloud-security_center/latest/file.AUTHENTICATION.html)
42
+ #
43
+ # ### Installation
44
+ # ```
45
+ # $ gem install google-cloud-security_center
46
+ # ```
47
+ #
48
+ # ### Next Steps
49
+ # - Read the [Cloud Security Command Center API Product documentation][Product Documentation]
50
+ # to learn more about the product and see How-to Guides.
51
+ # - View this [repository's main README](https://github.com/googleapis/google-cloud-ruby/blob/master/README.md)
52
+ # to see the full list of Cloud APIs that we cover.
53
+ #
54
+ # [Product Documentation]: https://cloud.google.com/security-command-center/
55
+ #
56
+ # ## Enabling Logging
57
+ #
58
+ # To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
59
+ # The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below,
60
+ # or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
61
+ # that will write logs to [Stackdriver Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
62
+ # and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
63
+ #
64
+ # Configuring a Ruby stdlib logger:
65
+ #
66
+ # ```ruby
67
+ # require "logger"
68
+ #
69
+ # module MyLogger
70
+ # LOGGER = Logger.new $stderr, level: Logger::WARN
71
+ # def logger
72
+ # LOGGER
73
+ # end
74
+ # end
75
+ #
76
+ # # Define a gRPC module-level logger method before grpc/logconfig.rb loads.
77
+ # module GRPC
78
+ # extend MyLogger
79
+ # end
80
+ # ```
81
+ #
82
+ module V1p1beta1
83
+ # rubocop:enable LineLength
84
+
85
+ ##
86
+ # V1p1Beta1 APIs for Security Center service.
87
+ #
88
+ # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
89
+ # Provides the means for authenticating requests made by the client. This parameter can
90
+ # be many types.
91
+ # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
92
+ # authenticating requests made by this client.
93
+ # A `String` will be treated as the path to the keyfile to be used for the construction of
94
+ # credentials for this client.
95
+ # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
96
+ # credentials for this client.
97
+ # A `GRPC::Core::Channel` will be used to make calls through.
98
+ # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
99
+ # should already be composed with a `GRPC::Core::CallCredentials` object.
100
+ # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
101
+ # metadata for requests, generally, to give OAuth credentials.
102
+ # @param scopes [Array<String>]
103
+ # The OAuth scopes for this service. This parameter is ignored if
104
+ # an updater_proc is supplied.
105
+ # @param client_config [Hash]
106
+ # A Hash for call options for each method. See
107
+ # Google::Gax#construct_settings for the structure of
108
+ # this data. Falls back to the default config if not specified
109
+ # or the specified config is missing data points.
110
+ # @param timeout [Numeric]
111
+ # The default timeout, in seconds, for calls made through this client.
112
+ # @param metadata [Hash]
113
+ # Default metadata to be sent with each request. This can be overridden on a per call basis.
114
+ # @param service_address [String]
115
+ # Override for the service hostname, or `nil` to leave as the default.
116
+ # @param service_port [Integer]
117
+ # Override for the service port, or `nil` to leave as the default.
118
+ # @param exception_transformer [Proc]
119
+ # An optional proc that intercepts any exceptions raised during an API call to inject
120
+ # custom error handling.
121
+ def self.new \
122
+ credentials: nil,
123
+ scopes: nil,
124
+ client_config: nil,
125
+ timeout: nil,
126
+ metadata: nil,
127
+ service_address: nil,
128
+ service_port: nil,
129
+ exception_transformer: nil,
130
+ lib_name: nil,
131
+ lib_version: nil
132
+ kwargs = {
133
+ credentials: credentials,
134
+ scopes: scopes,
135
+ client_config: client_config,
136
+ timeout: timeout,
137
+ metadata: metadata,
138
+ exception_transformer: exception_transformer,
139
+ lib_name: lib_name,
140
+ service_address: service_address,
141
+ service_port: service_port,
142
+ lib_version: lib_version
143
+ }.select { |_, v| v != nil }
144
+ Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenterClient.new(**kwargs)
145
+ end
146
+ end
147
+ end
148
+ end
149
+ end
@@ -0,0 +1,41 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/security_center/v1p1beta1/asset.proto
3
+
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/annotations_pb'
8
+ require 'google/api/resource_pb'
9
+ require 'google/cloud/security_center/v1p1beta1/security_marks_pb'
10
+ require 'google/protobuf/struct_pb'
11
+ require 'google/protobuf/timestamp_pb'
12
+ Google::Protobuf::DescriptorPool.generated_pool.build do
13
+ add_message "google.cloud.securitycenter.v1p1beta1.Asset" do
14
+ optional :name, :string, 1
15
+ optional :security_center_properties, :message, 2, "google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties"
16
+ map :resource_properties, :string, :message, 7, "google.protobuf.Value"
17
+ optional :security_marks, :message, 8, "google.cloud.securitycenter.v1p1beta1.SecurityMarks"
18
+ optional :create_time, :message, 9, "google.protobuf.Timestamp"
19
+ optional :update_time, :message, 10, "google.protobuf.Timestamp"
20
+ optional :iam_policy, :message, 11, "google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy"
21
+ end
22
+ add_message "google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties" do
23
+ optional :resource_name, :string, 1
24
+ optional :resource_type, :string, 2
25
+ optional :resource_parent, :string, 3
26
+ optional :resource_project, :string, 4
27
+ repeated :resource_owners, :string, 5
28
+ optional :resource_display_name, :string, 6
29
+ optional :resource_parent_display_name, :string, 7
30
+ optional :resource_project_display_name, :string, 8
31
+ end
32
+ add_message "google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy" do
33
+ optional :policy_blob, :string, 1
34
+ end
35
+ end
36
+
37
+ module Google::Cloud::SecurityCenter::V1p1beta1
38
+ Asset = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1p1beta1.Asset").msgclass
39
+ Asset::SecurityCenterProperties = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties").msgclass
40
+ Asset::IamPolicy = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy").msgclass
41
+ end
@@ -0,0 +1,41 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ require "googleauth"
17
+
18
+ module Google
19
+ module Cloud
20
+ module SecurityCenter
21
+ module V1p1beta1
22
+ class Credentials < Google::Auth::Credentials
23
+ SCOPE = [
24
+ "https://www.googleapis.com/auth/cloud-platform"
25
+ ].freeze
26
+ PATH_ENV_VARS = %w(SECURITY_CENTER_CREDENTIALS
27
+ SECURITY_CENTER_KEYFILE
28
+ GOOGLE_CLOUD_CREDENTIALS
29
+ GOOGLE_CLOUD_KEYFILE
30
+ GCLOUD_KEYFILE)
31
+ JSON_ENV_VARS = %w(SECURITY_CENTER_CREDENTIALS_JSON
32
+ SECURITY_CENTER_KEYFILE_JSON
33
+ GOOGLE_CLOUD_CREDENTIALS_JSON
34
+ GOOGLE_CLOUD_KEYFILE_JSON
35
+ GCLOUD_KEYFILE_JSON)
36
+ DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,105 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ module Google
17
+ module Cloud
18
+ module Securitycenter
19
+ module V1p1beta1
20
+ # Cloud Security Command Center's (Cloud SCC) representation of a Google Cloud
21
+ # Platform (GCP) resource.
22
+ #
23
+ # The Asset is a Cloud SCC resource that captures information about a single
24
+ # GCP resource. All modifications to an Asset are only within the context of
25
+ # Cloud SCC and don't affect the referenced GCP resource.
26
+ # @!attribute [rw] name
27
+ # @return [String]
28
+ # The relative resource name of this asset. See:
29
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
30
+ # Example:
31
+ # "organizations/{organization_id}/assets/{asset_id}".
32
+ # @!attribute [rw] security_center_properties
33
+ # @return [Google::Cloud::SecurityCenter::V1p1beta1::Asset::SecurityCenterProperties]
34
+ # Cloud SCC managed properties. These properties are managed by
35
+ # Cloud SCC and cannot be modified by the user.
36
+ # @!attribute [rw] resource_properties
37
+ # @return [Hash{String => Google::Protobuf::Value}]
38
+ # Resource managed properties. These properties are managed and defined by
39
+ # the GCP resource and cannot be modified by the user.
40
+ # @!attribute [rw] security_marks
41
+ # @return [Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks]
42
+ # User specified security marks. These marks are entirely managed by the user
43
+ # and come from the SecurityMarks resource that belongs to the asset.
44
+ # @!attribute [rw] create_time
45
+ # @return [Google::Protobuf::Timestamp]
46
+ # The time at which the asset was created in Cloud SCC.
47
+ # @!attribute [rw] update_time
48
+ # @return [Google::Protobuf::Timestamp]
49
+ # The time at which the asset was last updated, added, or deleted in Cloud
50
+ # SCC.
51
+ # @!attribute [rw] iam_policy
52
+ # @return [Google::Cloud::SecurityCenter::V1p1beta1::Asset::IamPolicy]
53
+ # IAM Policy information associated with the GCP resource described by the
54
+ # Cloud SCC asset. This information is managed and defined by the GCP
55
+ # resource and cannot be modified by the user.
56
+ class Asset
57
+ # Cloud SCC managed properties. These properties are managed by Cloud SCC and
58
+ # cannot be modified by the user.
59
+ # @!attribute [rw] resource_name
60
+ # @return [String]
61
+ # The full resource name of the GCP resource this asset
62
+ # represents. This field is immutable after create time. See:
63
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
64
+ # @!attribute [rw] resource_type
65
+ # @return [String]
66
+ # The type of the GCP resource. Examples include: APPLICATION,
67
+ # PROJECT, and ORGANIZATION. This is a case insensitive field defined by
68
+ # Cloud SCC and/or the producer of the resource and is immutable
69
+ # after create time.
70
+ # @!attribute [rw] resource_parent
71
+ # @return [String]
72
+ # The full resource name of the immediate parent of the resource. See:
73
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
74
+ # @!attribute [rw] resource_project
75
+ # @return [String]
76
+ # The full resource name of the project the resource belongs to. See:
77
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
78
+ # @!attribute [rw] resource_owners
79
+ # @return [Array<String>]
80
+ # Owners of the Google Cloud resource.
81
+ # @!attribute [rw] resource_display_name
82
+ # @return [String]
83
+ # The user defined display name for this resource.
84
+ # @!attribute [rw] resource_parent_display_name
85
+ # @return [String]
86
+ # The user defined display name for the parent of this resource.
87
+ # @!attribute [rw] resource_project_display_name
88
+ # @return [String]
89
+ # The user defined display name for the project of this resource.
90
+ class SecurityCenterProperties; end
91
+
92
+ # IAM Policy information associated with the GCP resource described by the
93
+ # Cloud SCC asset. This information is managed and defined by the GCP
94
+ # resource and cannot be modified by the user.
95
+ # @!attribute [rw] policy_blob
96
+ # @return [String]
97
+ # The JSON representation of the Policy associated with the asset.
98
+ # See https://cloud.google.com/iam/reference/rest/v1p1beta1/Policy for
99
+ # format details.
100
+ class IamPolicy; end
101
+ end
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,96 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ module Google
17
+ module Cloud
18
+ module Securitycenter
19
+ module V1p1beta1
20
+ # Cloud Security Command Center (Cloud SCC) finding.
21
+ #
22
+ # A finding is a record of assessment data (security, risk, health or privacy)
23
+ # ingested into Cloud SCC for presentation, notification, analysis,
24
+ # policy testing, and enforcement. For example, an XSS vulnerability in an
25
+ # App Engine application is a finding.
26
+ # @!attribute [rw] name
27
+ # @return [String]
28
+ # The relative resource name of this finding. See:
29
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
30
+ # Example:
31
+ # "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
32
+ # @!attribute [rw] parent
33
+ # @return [String]
34
+ # The relative resource name of the source the finding belongs to. See:
35
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
36
+ # This field is immutable after creation time.
37
+ # For example:
38
+ # "organizations/{organization_id}/sources/{source_id}"
39
+ # @!attribute [rw] resource_name
40
+ # @return [String]
41
+ # For findings on Google Cloud Platform (GCP) resources, the full resource
42
+ # name of the GCP resource this finding is for. See:
43
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
44
+ # When the finding is for a non-GCP resource, the resourceName can be a
45
+ # customer or partner defined string.
46
+ # This field is immutable after creation time.
47
+ # @!attribute [rw] state
48
+ # @return [Google::Cloud::SecurityCenter::V1p1beta1::Finding::State]
49
+ # The state of the finding.
50
+ # @!attribute [rw] category
51
+ # @return [String]
52
+ # The additional taxonomy group within findings from a given source.
53
+ # This field is immutable after creation time.
54
+ # Example: "XSS_FLASH_INJECTION"
55
+ # @!attribute [rw] external_uri
56
+ # @return [String]
57
+ # The URI that, if available, points to a web page outside of Cloud SCC
58
+ # where additional information about the finding can be found. This field is
59
+ # guaranteed to be either empty or a well formed URL.
60
+ # @!attribute [rw] source_properties
61
+ # @return [Hash{String => Google::Protobuf::Value}]
62
+ # Source specific properties. These properties are managed by the source
63
+ # that writes the finding. The key names in the source_properties map must be
64
+ # between 1 and 255 characters, and must start with a letter and contain
65
+ # alphanumeric characters or underscores only.
66
+ # @!attribute [rw] security_marks
67
+ # @return [Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks]
68
+ # Output only. User specified security marks. These marks are entirely
69
+ # managed by the user and come from the SecurityMarks resource that belongs
70
+ # to the finding.
71
+ # @!attribute [rw] event_time
72
+ # @return [Google::Protobuf::Timestamp]
73
+ # The time at which the event took place. For example, if the finding
74
+ # represents an open firewall it would capture the time the detector believes
75
+ # the firewall became open. The accuracy is determined by the detector.
76
+ # @!attribute [rw] create_time
77
+ # @return [Google::Protobuf::Timestamp]
78
+ # The time at which the finding was created in Cloud SCC.
79
+ class Finding
80
+ # The state of the finding.
81
+ module State
82
+ # Unspecified state.
83
+ STATE_UNSPECIFIED = 0
84
+
85
+ # The finding requires attention and has not been addressed yet.
86
+ ACTIVE = 1
87
+
88
+ # The finding has been fixed, triaged as a non-issue or otherwise addressed
89
+ # and is no longer active.
90
+ INACTIVE = 2
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end