google-cloud-security_center-v2 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/security_center/v2/rest.rb +37 -0
  6. data/lib/google/cloud/security_center/v2/security_center/client.rb +4728 -0
  7. data/lib/google/cloud/security_center/v2/security_center/credentials.rb +51 -0
  8. data/lib/google/cloud/security_center/v2/security_center/operations.rb +801 -0
  9. data/lib/google/cloud/security_center/v2/security_center/paths.rb +973 -0
  10. data/lib/google/cloud/security_center/v2/security_center/rest/client.rb +4347 -0
  11. data/lib/google/cloud/security_center/v2/security_center/rest/operations.rb +894 -0
  12. data/lib/google/cloud/security_center/v2/security_center/rest/service_stub.rb +3165 -0
  13. data/lib/google/cloud/security_center/v2/security_center/rest.rb +53 -0
  14. data/lib/google/cloud/security_center/v2/security_center.rb +56 -0
  15. data/lib/google/cloud/security_center/v2/version.rb +7 -2
  16. data/lib/google/cloud/security_center/v2.rb +45 -0
  17. data/lib/google/cloud/securitycenter/v2/access_pb.rb +44 -0
  18. data/lib/google/cloud/securitycenter/v2/application_pb.rb +42 -0
  19. data/lib/google/cloud/securitycenter/v2/attack_exposure_pb.rb +47 -0
  20. data/lib/google/cloud/securitycenter/v2/attack_path_pb.rb +49 -0
  21. data/lib/google/cloud/securitycenter/v2/backup_disaster_recovery_pb.rb +45 -0
  22. data/lib/google/cloud/securitycenter/v2/bigquery_export_pb.rb +47 -0
  23. data/lib/google/cloud/securitycenter/v2/cloud_dlp_data_profile_pb.rb +45 -0
  24. data/lib/google/cloud/securitycenter/v2/cloud_dlp_inspection_pb.rb +44 -0
  25. data/lib/google/cloud/securitycenter/v2/compliance_pb.rb +42 -0
  26. data/lib/google/cloud/securitycenter/v2/connection_pb.rb +43 -0
  27. data/lib/google/cloud/securitycenter/v2/contact_details_pb.rb +43 -0
  28. data/lib/google/cloud/securitycenter/v2/container_pb.rb +47 -0
  29. data/lib/google/cloud/securitycenter/v2/database_pb.rb +42 -0
  30. data/lib/google/cloud/securitycenter/v2/exfiltration_pb.rb +43 -0
  31. data/lib/google/cloud/securitycenter/v2/external_system_pb.rb +47 -0
  32. data/lib/google/cloud/securitycenter/v2/file_pb.rb +43 -0
  33. data/lib/google/cloud/securitycenter/v2/finding_pb.rb +105 -0
  34. data/lib/google/cloud/securitycenter/v2/iam_binding_pb.rb +43 -0
  35. data/lib/google/cloud/securitycenter/v2/indicator_pb.rb +47 -0
  36. data/lib/google/cloud/securitycenter/v2/kernel_rootkit_pb.rb +42 -0
  37. data/lib/google/cloud/securitycenter/v2/kubernetes_pb.rb +57 -0
  38. data/lib/google/cloud/securitycenter/v2/label_pb.rb +42 -0
  39. data/lib/google/cloud/securitycenter/v2/load_balancer_pb.rb +42 -0
  40. data/lib/google/cloud/securitycenter/v2/log_entry_pb.rb +46 -0
  41. data/lib/google/cloud/securitycenter/v2/mitre_attack_pb.rb +44 -0
  42. data/lib/google/cloud/securitycenter/v2/mute_config_pb.rb +48 -0
  43. data/lib/google/cloud/securitycenter/v2/notification_config_pb.rb +46 -0
  44. data/lib/google/cloud/securitycenter/v2/notification_message_pb.rb +47 -0
  45. data/lib/google/cloud/securitycenter/v2/org_policy_pb.rb +44 -0
  46. data/lib/google/cloud/securitycenter/v2/process_pb.rb +46 -0
  47. data/lib/google/cloud/securitycenter/v2/resource_pb.rb +44 -0
  48. data/lib/google/cloud/securitycenter/v2/resource_value_config_pb.rb +49 -0
  49. data/lib/google/cloud/securitycenter/v2/security_marks_pb.rb +44 -0
  50. data/lib/google/cloud/securitycenter/v2/security_posture_pb.rb +43 -0
  51. data/lib/google/cloud/securitycenter/v2/securitycenter_service_pb.rb +128 -0
  52. data/lib/google/cloud/securitycenter/v2/securitycenter_service_services_pb.rb +167 -0
  53. data/lib/google/cloud/securitycenter/v2/simulation_pb.rb +49 -0
  54. data/lib/google/cloud/securitycenter/v2/source_pb.rb +44 -0
  55. data/lib/google/cloud/securitycenter/v2/valued_resource_pb.rb +46 -0
  56. data/lib/google/cloud/securitycenter/v2/vulnerability_pb.rb +58 -0
  57. data/lib/google-cloud-security_center-v2.rb +21 -0
  58. data/proto_docs/README.md +4 -0
  59. data/proto_docs/google/api/client.rb +399 -0
  60. data/proto_docs/google/api/field_behavior.rb +85 -0
  61. data/proto_docs/google/api/launch_stage.rb +71 -0
  62. data/proto_docs/google/api/resource.rb +222 -0
  63. data/proto_docs/google/api/routing.rb +459 -0
  64. data/proto_docs/google/cloud/securitycenter/v2/access.rb +120 -0
  65. data/proto_docs/google/cloud/securitycenter/v2/application.rb +40 -0
  66. data/proto_docs/google/cloud/securitycenter/v2/attack_exposure.rb +73 -0
  67. data/proto_docs/google/cloud/securitycenter/v2/attack_path.rb +147 -0
  68. data/proto_docs/google/cloud/securitycenter/v2/backup_disaster_recovery.rb +90 -0
  69. data/proto_docs/google/cloud/securitycenter/v2/bigquery_export.rb +96 -0
  70. data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_data_profile.rb +52 -0
  71. data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_inspection.rb +50 -0
  72. data/proto_docs/google/cloud/securitycenter/v2/compliance.rb +43 -0
  73. data/proto_docs/google/cloud/securitycenter/v2/connection.rb +70 -0
  74. data/proto_docs/google/cloud/securitycenter/v2/contact_details.rb +44 -0
  75. data/proto_docs/google/cloud/securitycenter/v2/container.rb +49 -0
  76. data/proto_docs/google/cloud/securitycenter/v2/database.rb +67 -0
  77. data/proto_docs/google/cloud/securitycenter/v2/exfiltration.rb +64 -0
  78. data/proto_docs/google/cloud/securitycenter/v2/external_system.rb +106 -0
  79. data/proto_docs/google/cloud/securitycenter/v2/file.rb +72 -0
  80. data/proto_docs/google/cloud/securitycenter/v2/finding.rb +411 -0
  81. data/proto_docs/google/cloud/securitycenter/v2/iam_binding.rb +56 -0
  82. data/proto_docs/google/cloud/securitycenter/v2/indicator.rb +112 -0
  83. data/proto_docs/google/cloud/securitycenter/v2/kernel_rootkit.rb +66 -0
  84. data/proto_docs/google/cloud/securitycenter/v2/kubernetes.rb +241 -0
  85. data/proto_docs/google/cloud/securitycenter/v2/label.rb +41 -0
  86. data/proto_docs/google/cloud/securitycenter/v2/load_balancer.rb +36 -0
  87. data/proto_docs/google/cloud/securitycenter/v2/log_entry.rb +58 -0
  88. data/proto_docs/google/cloud/securitycenter/v2/mitre_attack.rb +285 -0
  89. data/proto_docs/google/cloud/securitycenter/v2/mute_config.rb +100 -0
  90. data/proto_docs/google/cloud/securitycenter/v2/notification_config.rb +90 -0
  91. data/proto_docs/google/cloud/securitycenter/v2/notification_message.rb +42 -0
  92. data/proto_docs/google/cloud/securitycenter/v2/org_policy.rb +37 -0
  93. data/proto_docs/google/cloud/securitycenter/v2/process.rb +79 -0
  94. data/proto_docs/google/cloud/securitycenter/v2/resource.rb +42 -0
  95. data/proto_docs/google/cloud/securitycenter/v2/resource_value_config.rb +122 -0
  96. data/proto_docs/google/cloud/securitycenter/v2/security_marks.rb +84 -0
  97. data/proto_docs/google/cloud/securitycenter/v2/security_posture.rb +83 -0
  98. data/proto_docs/google/cloud/securitycenter/v2/securitycenter_service.rb +1136 -0
  99. data/proto_docs/google/cloud/securitycenter/v2/simulation.rb +43 -0
  100. data/proto_docs/google/cloud/securitycenter/v2/source.rb +65 -0
  101. data/proto_docs/google/cloud/securitycenter/v2/valued_resource.rb +86 -0
  102. data/proto_docs/google/cloud/securitycenter/v2/vulnerability.rb +333 -0
  103. data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
  104. data/proto_docs/google/iam/v1/options.rb +50 -0
  105. data/proto_docs/google/iam/v1/policy.rb +426 -0
  106. data/proto_docs/google/longrunning/operations.rb +164 -0
  107. data/proto_docs/google/protobuf/any.rb +145 -0
  108. data/proto_docs/google/protobuf/duration.rb +98 -0
  109. data/proto_docs/google/protobuf/empty.rb +34 -0
  110. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  111. data/proto_docs/google/protobuf/struct.rb +96 -0
  112. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  113. data/proto_docs/google/rpc/status.rb +48 -0
  114. data/proto_docs/google/type/expr.rb +75 -0
  115. metadata +169 -10
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # A mute config is a Cloud SCC resource that contains the configuration
25
+ # to mute create/update events of findings.
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # This field will be ignored if provided on config creation. The following
29
+ # list shows some examples of the format:
30
+ #
31
+ # + `organizations/{organization}/muteConfigs/{mute_config}`
32
+ # +
33
+ # `organizations/{organization}locations/{location}//muteConfigs/{mute_config}`
34
+ # + `folders/{folder}/muteConfigs/{mute_config}`
35
+ # + `folders/{folder}/locations/{location}/muteConfigs/{mute_config}`
36
+ # + `projects/{project}/muteConfigs/{mute_config}`
37
+ # + `projects/{project}/locations/{location}/muteConfigs/{mute_config}`
38
+ # @!attribute [rw] description
39
+ # @return [::String]
40
+ # A description of the mute config.
41
+ # @!attribute [rw] filter
42
+ # @return [::String]
43
+ # Required. An expression that defines the filter to apply across
44
+ # create/update events of findings. While creating a filter string, be
45
+ # mindful of the scope in which the mute configuration is being created.
46
+ # E.g., If a filter contains project = X but is created under the project = Y
47
+ # scope, it might not match any findings.
48
+ #
49
+ # The following field and operator combinations are supported:
50
+ #
51
+ # * severity: `=`, `:`
52
+ # * category: `=`, `:`
53
+ # * resource.name: `=`, `:`
54
+ # * resource.project_name: `=`, `:`
55
+ # * resource.project_display_name: `=`, `:`
56
+ # * resource.folders.resource_folder: `=`, `:`
57
+ # * resource.parent_name: `=`, `:`
58
+ # * resource.parent_display_name: `=`, `:`
59
+ # * resource.type: `=`, `:`
60
+ # * finding_class: `=`, `:`
61
+ # * indicator.ip_addresses: `=`, `:`
62
+ # * indicator.domains: `=`, `:`
63
+ # @!attribute [r] create_time
64
+ # @return [::Google::Protobuf::Timestamp]
65
+ # Output only. The time at which the mute config was created.
66
+ # This field is set by the server and will be ignored if provided on config
67
+ # creation.
68
+ # @!attribute [r] update_time
69
+ # @return [::Google::Protobuf::Timestamp]
70
+ # Output only. The most recent time at which the mute config was updated.
71
+ # This field is set by the server and will be ignored if provided on config
72
+ # creation or update.
73
+ # @!attribute [r] most_recent_editor
74
+ # @return [::String]
75
+ # Output only. Email address of the user who last edited the mute config.
76
+ # This field is set by the server and will be ignored if provided on config
77
+ # creation or update.
78
+ # @!attribute [rw] type
79
+ # @return [::Google::Cloud::SecurityCenter::V2::MuteConfig::MuteConfigType]
80
+ # Required. The type of the mute config, which determines what type of mute
81
+ # state the config affects. Immutable after creation.
82
+ class MuteConfig
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+
86
+ # The type of MuteConfig.
87
+ module MuteConfigType
88
+ # Unused.
89
+ MUTE_CONFIG_TYPE_UNSPECIFIED = 0
90
+
91
+ # A static mute config, which sets the static mute state of future matching
92
+ # findings to muted. Once the static mute state has been set, finding or
93
+ # config modifications will not affect the state.
94
+ STATIC = 1
95
+ end
96
+ end
97
+ end
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,90 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # Cloud Security Command Center (Cloud SCC) notification configs.
25
+ #
26
+ # A notification config is a Cloud SCC resource that contains the configuration
27
+ # to send notifications for create/update events of findings, assets and etc.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # The relative resource name of this notification config. See:
31
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
32
+ # The following list shows some examples:
33
+ # +
34
+ # `organizations/{organization_id}/locations/{location_id}/notificationConfigs/notify_public_bucket`
35
+ # +
36
+ # `folders/{folder_id}/locations/{location_id}/notificationConfigs/notify_public_bucket`
37
+ # +
38
+ # `projects/{project_id}/locations/{location_id}/notificationConfigs/notify_public_bucket`
39
+ # @!attribute [rw] description
40
+ # @return [::String]
41
+ # The description of the notification config (max of 1024 characters).
42
+ # @!attribute [rw] pubsub_topic
43
+ # @return [::String]
44
+ # The Pub/Sub topic to send notifications to. Its format is
45
+ # "projects/[project_id]/topics/[topic]".
46
+ # @!attribute [r] service_account
47
+ # @return [::String]
48
+ # Output only. The service account that needs "pubsub.topics.publish"
49
+ # permission to publish to the Pub/Sub topic.
50
+ # @!attribute [rw] streaming_config
51
+ # @return [::Google::Cloud::SecurityCenter::V2::NotificationConfig::StreamingConfig]
52
+ # The config for triggering streaming-based notifications.
53
+ class NotificationConfig
54
+ include ::Google::Protobuf::MessageExts
55
+ extend ::Google::Protobuf::MessageExts::ClassMethods
56
+
57
+ # The config for streaming-based notifications, which send each event as soon
58
+ # as it is detected.
59
+ # @!attribute [rw] filter
60
+ # @return [::String]
61
+ # Expression that defines the filter to apply across create/update events
62
+ # of assets or findings as specified by the event type. The expression is a
63
+ # list of zero or more restrictions combined via logical operators `AND`
64
+ # and `OR`. Parentheses are supported, and `OR` has higher precedence than
65
+ # `AND`.
66
+ #
67
+ # Restrictions have the form `<field> <operator> <value>` and may have a
68
+ # `-` character in front of them to indicate negation. The fields map to
69
+ # those defined in the corresponding resource.
70
+ #
71
+ # The supported operators are:
72
+ #
73
+ # * `=` for all value types.
74
+ # * `>`, `<`, `>=`, `<=` for integer values.
75
+ # * `:`, meaning substring matching, for strings.
76
+ #
77
+ # The supported value types are:
78
+ #
79
+ # * string literals in quotes.
80
+ # * integer literals without quotes.
81
+ # * boolean literals `true` and `false` without quotes.
82
+ class StreamingConfig
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # Cloud SCC's Notification
25
+ # @!attribute [rw] notification_config_name
26
+ # @return [::String]
27
+ # Name of the notification config that generated current notification.
28
+ # @!attribute [rw] finding
29
+ # @return [::Google::Cloud::SecurityCenter::V2::Finding]
30
+ # If it's a Finding based notification config, this field will be
31
+ # populated.
32
+ # @!attribute [rw] resource
33
+ # @return [::Google::Cloud::SecurityCenter::V2::Resource]
34
+ # The Cloud resource tied to this notification's Finding.
35
+ class NotificationMessage
36
+ include ::Google::Protobuf::MessageExts
37
+ extend ::Google::Protobuf::MessageExts::ClassMethods
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # Contains information about the org policies associated with the finding.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The resource name of the org policy.
28
+ # Example:
29
+ # "organizations/\\{organization_id}/policies/\\{constraint_name}"
30
+ class OrgPolicy
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,79 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # Represents an operating system process.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The process name, as displayed in utilities like `top` and `ps`. This name
28
+ # can be accessed through `/proc/[pid]/comm` and changed with
29
+ # `prctl(PR_SET_NAME)`.
30
+ # @!attribute [rw] binary
31
+ # @return [::Google::Cloud::SecurityCenter::V2::File]
32
+ # File information for the process executable.
33
+ # @!attribute [rw] libraries
34
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::File>]
35
+ # File information for libraries loaded by the process.
36
+ # @!attribute [rw] script
37
+ # @return [::Google::Cloud::SecurityCenter::V2::File]
38
+ # When the process represents the invocation of a script, `binary` provides
39
+ # information about the interpreter, while `script` provides information
40
+ # about the script file provided to the interpreter.
41
+ # @!attribute [rw] args
42
+ # @return [::Array<::String>]
43
+ # Process arguments as JSON encoded strings.
44
+ # @!attribute [rw] arguments_truncated
45
+ # @return [::Boolean]
46
+ # True if `args` is incomplete.
47
+ # @!attribute [rw] env_variables
48
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::EnvironmentVariable>]
49
+ # Process environment variables.
50
+ # @!attribute [rw] env_variables_truncated
51
+ # @return [::Boolean]
52
+ # True if `env_variables` is incomplete.
53
+ # @!attribute [rw] pid
54
+ # @return [::Integer]
55
+ # The process ID.
56
+ # @!attribute [rw] parent_pid
57
+ # @return [::Integer]
58
+ # The parent process ID.
59
+ class Process
60
+ include ::Google::Protobuf::MessageExts
61
+ extend ::Google::Protobuf::MessageExts::ClassMethods
62
+ end
63
+
64
+ # A name-value pair representing an environment variable used in an operating
65
+ # system process.
66
+ # @!attribute [rw] name
67
+ # @return [::String]
68
+ # Environment variable name as a JSON encoded string.
69
+ # @!attribute [rw] val
70
+ # @return [::String]
71
+ # Environment variable value as a JSON encoded string.
72
+ class EnvironmentVariable
73
+ include ::Google::Protobuf::MessageExts
74
+ extend ::Google::Protobuf::MessageExts::ClassMethods
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # Information related to the Google Cloud resource.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The full resource name of the resource. See:
28
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
29
+ # @!attribute [rw] display_name
30
+ # @return [::String]
31
+ # The human readable name of the resource.
32
+ # @!attribute [rw] type
33
+ # @return [::String]
34
+ # The full resource type of the resource.
35
+ class Resource
36
+ include ::Google::Protobuf::MessageExts
37
+ extend ::Google::Protobuf::MessageExts::ClassMethods
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,122 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # A resource value config (RVC) is a mapping configuration of user's resources
25
+ # to resource values. Used in Attack path simulations.
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # Name for the resource value config
29
+ # @!attribute [rw] resource_value
30
+ # @return [::Google::Cloud::SecurityCenter::V2::ResourceValue]
31
+ # Resource value level this expression represents
32
+ # Only required when there is no SDP mapping in the request
33
+ # @!attribute [rw] tag_values
34
+ # @return [::Array<::String>]
35
+ # Required. Tag values combined with AND to check against.
36
+ # Values in the form "tagValues/123"
37
+ # E.g. [ "tagValues/123", "tagValues/456", "tagValues/789" ]
38
+ # https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
39
+ # @!attribute [rw] resource_type
40
+ # @return [::String]
41
+ # Apply resource_value only to resources that match resource_type.
42
+ # resource_type will be checked with "AND" of other resources.
43
+ # E.g. "storage.googleapis.com/Bucket" with resource_value "HIGH" will
44
+ # apply "HIGH" value only to "storage.googleapis.com/Bucket" resources.
45
+ # @!attribute [rw] scope
46
+ # @return [::String]
47
+ # Project or folder to scope this config to.
48
+ # For example, "project/456" would apply this config only to resources in
49
+ # "project/456"
50
+ # scope will be checked with "AND" of other resources.
51
+ # @!attribute [rw] resource_labels_selector
52
+ # @return [::Google::Protobuf::Map{::String => ::String}]
53
+ # List of resource labels to search for, evaluated with AND.
54
+ # E.g. "resource_labels_selector": \\{"key": "value", "env": "prod"}
55
+ # will match resources with labels "key": "value" AND "env": "prod"
56
+ # https://cloud.google.com/resource-manager/docs/creating-managing-labels
57
+ # @!attribute [rw] description
58
+ # @return [::String]
59
+ # Description of the resource value config.
60
+ # @!attribute [r] create_time
61
+ # @return [::Google::Protobuf::Timestamp]
62
+ # Output only. Timestamp this resource value config was created.
63
+ # @!attribute [r] update_time
64
+ # @return [::Google::Protobuf::Timestamp]
65
+ # Output only. Timestamp this resource value config was last updated.
66
+ # @!attribute [rw] sensitive_data_protection_mapping
67
+ # @return [::Google::Cloud::SecurityCenter::V2::ResourceValueConfig::SensitiveDataProtectionMapping]
68
+ # A mapping of the sensitivity on Sensitive Data Protection finding to
69
+ # resource values. This mapping can only be used in combination with a
70
+ # resource_type that is related to BigQuery, e.g.
71
+ # "bigquery.googleapis.com/Dataset".
72
+ class ResourceValueConfig
73
+ include ::Google::Protobuf::MessageExts
74
+ extend ::Google::Protobuf::MessageExts::ClassMethods
75
+
76
+ # Resource value mapping for Sensitive Data Protection findings
77
+ # If any of these mappings have a resource value that is not unspecified,
78
+ # the resource_value field will be ignored when reading this configuration.
79
+ # @!attribute [rw] high_sensitivity_mapping
80
+ # @return [::Google::Cloud::SecurityCenter::V2::ResourceValue]
81
+ # Resource value mapping for high-sensitivity Sensitive Data Protection
82
+ # findings
83
+ # @!attribute [rw] medium_sensitivity_mapping
84
+ # @return [::Google::Cloud::SecurityCenter::V2::ResourceValue]
85
+ # Resource value mapping for medium-sensitivity Sensitive Data Protection
86
+ # findings
87
+ class SensitiveDataProtectionMapping
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+ end
91
+
92
+ # @!attribute [rw] key
93
+ # @return [::String]
94
+ # @!attribute [rw] value
95
+ # @return [::String]
96
+ class ResourceLabelsSelectorEntry
97
+ include ::Google::Protobuf::MessageExts
98
+ extend ::Google::Protobuf::MessageExts::ClassMethods
99
+ end
100
+ end
101
+
102
+ # Value enum to map to a resource
103
+ module ResourceValue
104
+ # Unspecific value
105
+ RESOURCE_VALUE_UNSPECIFIED = 0
106
+
107
+ # High resource value
108
+ HIGH = 1
109
+
110
+ # Medium resource value
111
+ MEDIUM = 2
112
+
113
+ # Low resource value
114
+ LOW = 3
115
+
116
+ # No resource value, e.g. ignore these resources
117
+ NONE = 4
118
+ end
119
+ end
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,84 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V2
24
+ # User specified security marks that are attached to the parent Security
25
+ # Command Center resource. Security marks are scoped within a Security Command
26
+ # Center organization -- they can be modified and viewed by all users who have
27
+ # proper permissions on the organization.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # The relative resource name of the SecurityMarks. See:
31
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
32
+ # The following list shows some examples:
33
+ #
34
+ # + `organizations/{organization_id}/assets/{asset_id}/securityMarks`
35
+ # +
36
+ # `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks`
37
+ # +
38
+ # `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`
39
+ # @!attribute [rw] marks
40
+ # @return [::Google::Protobuf::Map{::String => ::String}]
41
+ # Mutable user specified security marks belonging to the parent resource.
42
+ # Constraints are as follows:
43
+ #
44
+ # * Keys and values are treated as case insensitive
45
+ # * Keys must be between 1 - 256 characters (inclusive)
46
+ # * Keys must be letters, numbers, underscores, or dashes
47
+ # * Values have leading and trailing whitespace trimmed, remaining
48
+ # characters must be between 1 - 4096 characters (inclusive)
49
+ # @!attribute [rw] canonical_name
50
+ # @return [::String]
51
+ # The canonical name of the marks. The following list shows some examples:
52
+ #
53
+ # + `organizations/{organization_id}/assets/{asset_id}/securityMarks`
54
+ # +
55
+ # `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks`
56
+ # +
57
+ # `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`
58
+ # + `folders/{folder_id}/assets/{asset_id}/securityMarks`
59
+ # +
60
+ # `folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks`
61
+ # +
62
+ # `folders/{folder_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`
63
+ # + `projects/{project_number}/assets/{asset_id}/securityMarks`
64
+ # +
65
+ # `projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks`
66
+ # +
67
+ # `projects/{project_number}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`
68
+ class SecurityMarks
69
+ include ::Google::Protobuf::MessageExts
70
+ extend ::Google::Protobuf::MessageExts::ClassMethods
71
+
72
+ # @!attribute [rw] key
73
+ # @return [::String]
74
+ # @!attribute [rw] value
75
+ # @return [::String]
76
+ class MarksEntry
77
+ include ::Google::Protobuf::MessageExts
78
+ extend ::Google::Protobuf::MessageExts::ClassMethods
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end